AppGini Changelog

What's new in AppGini 24.11 Revision 1590

Mar 10, 2024
  • New features:
  • Add option to display table view SQL query code for admin user (to enable this, check the option 'Allow admin access to table view SQL' under the 'Security settings' section of the app properties in AppGini).
  • UI/UX enhancements:
  • Fix TV pagination layout for mobile screens
  • Fix .bg-primary and various other color issues in all themes
  • Close app generation log window when clicking 'Upload' or 'Run locally'
  • Bug fixes:
  • Fix default values in lookup drop-downs not getting pre-selected if they contain non-Latin characters.
  • Fix default values in option lists not getting pre-selected if they contain non-Latin characters.
  • Fix empty options not being sorted correctly in drop-downs that contain both Latin and non-Latin items.
  • Fix handling of ut=1 param in ajax_combo.php causing empty lookups (this also fixes a bug in search pages created by the Search Page Maker plugin).
  • Handle error occurring with empty option lists.
  • Client-side programmatic improvements:
  • Add AppGini.copyToClipboard(text) to copy provided text to the clipboard (must be triggered by a user action rather than autonomously)
  • Add AppGini.htmlEntitiesToText(htmlStr) to convert a string of html entities (e.g. 'الاتحاد') to unicode text ('الاتحاد' in this example).

New in AppGini 23.17 Revision 1557 (Dec 17, 2023)

  • New features:
  • Add new tool to automate installing plugins (Admin area > Plugins menu > Install a plugin)
  • UI/UX enhancements:
  • Unify plugins icon height in plugins menu
  • Better alignment of date and lookup fields in detail view
  • If a PK field is editable, mark it as required in detail view
  • hide empty image upload toolbox in read-only mode
  • Fix layout of tech docs window in high DPI screens
  • Fix layout of preferences window in high DPI screens
  • Fix layout of file upload window in high DPI screens
  • Fix image upload window layout in high DPI screens
  • Fix theme preview link
  • Fix theme preview window layout in high DPI screens
  • Fix icon selector window layout for high DPI screens
  • Bug fixes:
  • Fix bug in creation statement of membership_cache table.
  • Include hidden/read-only lookup fields in INSERT query if used as filterer, adding it to $data array before passing to before_insert hook.
  • Server-side programmatic improvements:
  • Add httpRequest() function to launch HTTP requests, with headers and cookies support.
  • Add updateField() function to create or update specified field only if necessary
  • Add addIndex() function to create or update specified index only if necessary
  • Add support for WindowMessages class to allow displaying messages to users on the next page load from within hooks.
  • Performance enhancements:
  • Don't recreate membership fields/indexes unless they don't exist or have changed. Ignore otherwise to prevent slow queries.

New in AppGini 23.15 Revision 1484 (Sep 15, 2023)

  • UI/UX enhancements
  • Prevent right-aligned fields in non-default TV layouts from being too wide.
  • Make selected records in TVDV bold to distinguish them better.
  • Update calculated fields if children count is updated in TV, TVP.
  • Make parent/children settings dialog resizable and Preserve its width in app config.
  • Remove the listbox of child links from table properties as this option has been moved to the parent/children settings dialog.
  • Hide non-applicable record ownership filters in the filters page.
  • Force min height for html editor.
  • Add support for high DPI screens in AppGini.
  • Admin view groups page: Hide 'Prev' link in first page, and 'Next' link in last page.
  • Bug fixes
  • Fix 'back' link behavior in error messages displayed in modal windows to close the modal rather than do nothing.
  • file-uploader.php: Better detection of secure connection when using trusted proxies.
  • Security fixes
  • Upgrade PHPMailer to latest release (v6.8.1).
  • Server-side programmatic changes
  • Add getLookupFields() to retrieve full configuration of lookup fields (refactored from parent-children.php to be available programmatically to other modules).
  • Add getChildTables() to retrieve child tables of a given parent table.
  • Fix 'back' link in error_message() to close modal window rather than do nothing if the message is displayed inside a modal.
  • Add Request::array() to preperly retrieve data sent as an array in requests.
  • Fix return data type docstring of loadView().
  • Add json_response() to send a standardized success/error response.
  • parent-children.php: code refactoring + handle get-count operation to retrieve children count of multiple parent records.
  • Add ctype_alnum() implementation (which is needed by PHPMailer) if not present in current PHP installation.
  • Auto-load PHPMailer.
  • Client-side programmatic changes
  • Prepend child- to column class name for child info columns in table view.
  • Add AppGini.config object, which currently includes the following keys and their corresponding values: imgFolder, url and uri.
  • Replace AppGini.imgFolder with AppGini.config.imgFolder.
  • Add AppGini.Translate.apply() method, which translates page content. It works by looking for container elements that have the attribute data-translate and replaces their content with the translated string corresponding to the key is specified in the attribute.
  • AppGini.Translate.apply() also looks for elements with attribute data-title and sets their title attribute to the translated string corresponding to the key is specified in the attribute.
  • Open links that have modal-link class in a modal window. Window title is set to the title attribute or, if not present, the link text.
  • Add AppGini.updateChildrenCount() to periodically update child records count in TV, TVP (pass false as parameter to update once without scheduling more updates).
  • Add childrenCountChanged event to the document object. Triggered whenever child records count changes.

New in AppGini 23.14 Revision 1435 (Aug 22, 2023)

  • Add 'Update calculated fields' page to admin area to allow batch updates easily through GUI
  • Reduce file size, improve performance and consistency of large database backups

New in AppGini 23.13 Revision 1413 (Jun 25, 2023)

  • For image upload fields, allow mobile users to capture photo via camera (watch short video demo).
  • Add support for drag and drop file uploading.
  • Preview images before uploading (watch short video demo).
  • Allow SHOW queries in interactive SQL page.
  • UI/UX enhancements:
  • Link to admin settings page for changing password of super admin.
  • Smarter caching of js and css files (auto reload on file changes without having to hard refresh).
  • Enhanced UI for image/file upload field in DV.
  • [Privacy] Add 'do not track' (DNT) to twitter widget in admin area.
  • Bug fixes:
  • Fix bug in tablename_csv() hook function not receiving memberInfo array.
  • Fix PHP warnings in DataList class.
  • Prevent freezing while scanning for file changes before uploading app.
  • Fix returned json from getUsers.php causing error in users list.
  • Fix returned json from ajax_combo.php causing error in default lookup values.
  • Client-side programmatic improvements:
  • Add AppGini.createCSSClass() js function to create a CSS class with the provided name and properties, based on selected properties from one or more existing CSS classes.
  • Add rtl-mirror CSS class to an element to horizontally flip it in rtl (e.g. arrow glyphs, ... etc).
  • Other changes:
  • Minor performance enhancement in setupMembership().
  • Various code quality improvements.

New in AppGini 23.12 Revision 1365 (Jun 4, 2023)

  • Add-ons menu: Add DataTalk and discount links, fix SPM link.
  • Bug fixes:
  • Include browser headers in file upload requests to prevent bot blocking by server firewalls.
  • Add type checks in save_config().
  • Fix file uploader to allow connections from secure proxies (e.g. cloudflare, k8s ingress, containers behind nginx proxy, .. etc).
  • Return separate error messages from file uploader for invalid upload key and insecure connection.
  • More upload log details.
  • Make all loops in app uploader non-blocking to avoid freezing on slower PCs.
  • Security fixes:
  • Security fix: Enforce access prevention to .sql backup files in .htaccess.

New in AppGini 23.11 Revision 1364 (May 24, 2023)

  • Much faster detection of file changes when uploading an app to your server.
  • More detailed upload logging for better troubleshooting of upload errors.

New in AppGini 23.10 Revision 1354 (Mar 22, 2023)

  • Application uploader to automatically upload generated apps to your server.
  • Add more action buttons to project properties pane (view files and upload).
  • UI/UX enhancements:
  • Change wording of 'Preview/run app' to 'Run app locally' for clarity and since we can now also offer run app from server
  • Rename some buttons in generated files log window for clarity.
  • Support for displaying username beside the profile icon in the top navbar. To enable it, add this to hooks/header-extras.php:
  • <style>.profile-menu-text { display: inline; }</style>
  • In generator status window, remove the warning about applying changes when no field/table changes are present
  • Bug and security fixes:
  • Prevent potential SQL injection vulnerability in admin/pageViewMembers.php
  • Don't allow values like in $appURI in config; replace with / (this mainly happens on wampp)
  • Users from a group that can edit group/owner records can't edit their own records if the PK field is set as zero-fill.
  • Don't overwrite config files inside add-ons folder when installing a new version of AppGini to preserve customized settings.

New in AppGini 22.14 Revision 1292 (Jun 14, 2022)

  • Add ability to edit HTML source in rich editor.
  • Add support for custom MySQL port number in setup and db config, with fallback to port number set in php.ini.
  • UI/UX enhancements:
  • Add a link to query error log in pageRebuildFields.php to help debug failed fixing of a field.
  • When reporting an SQL error to admin, add clickable link to pageRebuildFields.php.
  • Add button to manually recheck database connection in setup.php.
  • Improved appearance of 'submit' button in rich editor dialogs.
  • Prevent flicker of tv-tools buttons on page load.
  • Bug fixes:
  • Attempt to create table with a single dummy field (_dummy_deletable_field) if table creation fails. This makes it possible to fix the table in pageRebuildFields.php.
  • Fix: records that have invalid field values can't be deleted.
  • Fix a unique index length issue that prevents creating the membership_userrecords table under some MySQL configurations.
  • Fix: handle NULL comparisons correctly in prepare_sql_set() in both INSERT and UPDATE cases.
  • Server-side programmatic improvements:
  • Add child_records_config() hook for modifying child records config, https://bigprof.com/appgini/help/advanced-topics/hooks/global-hooks#child_records_config
  • Add support for array values in prepare_sql_set() to build IN (values) WHERE conditions.
  • Client-side programmatic improvements:
  • Add AppGini.addToProfileMenu() to allow adding new links and dividers to the user's profile menu. Links are currently appended to the end of the menu, but in future releases, specifying a position might be supported.
  • Remove special support for old IE browsers

New in AppGini 22.13 Revision 1291 (Apr 23, 2022)

  • Better context help, with updated and clear screenshots to make it easier than ever to use every feature of AppGini.
  • Support for emojis and other 4-byte unicode symbols by implementing utf8mb4 database encoding, with a conversion tool in 'Rebuild fields' page. More technical details at https://mathiasbynens.be/notes/mysql-utf8mb4
  • Set default encoding for new projects to '4-Byte UTF-8'.
  • Better theme previews: when previewing a theme in the theme window, the live online northwind demo is opened, with the selected theme applied.
  • Support for webp images in image upload fields (webp thumbnails can be created only on PHP 7.1+).
  • UI/UX enhancements:
  • Compact 'sign out', profile link, and keyboard icon into a single profile menu.
  • Improved UX for Youtube and Google Maps options window.
  • Smarter app generate nudge when schema changes (won't nudge if project not yet generated).
  • If DV has a visible alert, don't scroll to focused element to avoid user missing the notification.
  • More meaningful color hints in generated files window.
  • Set redirect after insert to be empty by default. And if so, use default redirection after inserting records.
  • After inserting a new record, if user has view permission, and no custom redirect url is set, select inserted record.
  • In case of insertion error, show error inside page template.
  • If not in embedded mode, and user has insert only but no view/update/delete, remove 'back' button.
  • Show notification alerts above other form elements rather than hidden behind them.
  • UI: show specific table icon rather than a generic one in child table links on top of DV.
  • Move field data type guidelines to help section, removing them from field props pane.
  • Vertically align TV title and quick search box.
  • Adjust date drop-down styling to match the app theme.
  • Bug fixes:
  • db.php: better connection error handling.
  • Fix images aren't removed from records if the option to preserve uploads is checked.
  • Allow editing of date fields if user has insert but no edit permission AND save as copy is enabled.
  • If user has insert but no edit permission and no 'Save as copy', lookup fields should not be editable in DV of existing record.
  • Fix display bugs under localization settings on Windows 11.
  • Append AppGini version when loading AppGini js and css files to make sure changes to them in new versions of AppGini are applied without users having to hard-refresh pages.
  • Skip setupMembership() for guest users (empty session) and when executing ajax-update-calculated-fields.php to avoid unnecessary db load.
  • Bug fix: Prevent multiple sandbox attributes from being added to iframe when pasted into nicedit.
  • Programmatic improvements:
  • Server-side:
  • Add Authentication::isGuest() to indicate whether current user is guest
  • Add SHOW VARIABLES output to database status dump in 'Server status' page.
  • Client-side:
  • Add new CSS classes, .flip-horizontal and .flip-vertical that can be added to .glyphicon to variate icons.
  • Other changes:
  • Updates to readme.txt (displayed during the pro setup).
  • Security fixes:
  • Don't include inserted record ID in redirection URL if user has no view permission an no custom redirection URL configured

New in AppGini 22.12 Revision 1273 (Feb 24, 2022)

  • New features:
  • New project option under security settings: All members of 'Admins' group can access the admin area.
  • Query logs page: show hint that logs older than x days are automatically cleaned up, with a button to clean up slow queries, and another for error queries.
  • UI/UX enhancements:
  • Check uniqueness of editable primary key fields and show error accordingly, preventing submission of DV.
  • Show 'loading' icon on 'save changes' and 'save new' buttons in DV during blocking checks.
  • Apply locale formatting to column sums.
  • Update last record and record count when deleting records in TV using mass delete.
  • Easier to read file extensions list in upload field config window.
  • Use flex layout to fix the layout of lookup drop-downs.
  • Apply flex layout to date pickers to have the same alignment as lookup drop-downs.
  • Unicode support for table group button in table properties pane.
  • Extend validity of CSRF token to avoid need to frequently refresh SPA pages.
  • Bug fixes:
  • Prevent loss of default value for fields hidden in DV on update.
  • Fix links to uploaded files not working inside modals.
  • Fix thumbnails failing to load images when opened inside a modal window.
  • Fix: Auto value editingDate displays a wrong date for records that haven't been edited yet rather than being empty.
  • Fix loader taking too long in read-only DV.
  • Fix: Empty date field is displayed as zeros in DVP and read-only DV rather than just blank.
  • Programmatic improvements:
  • Server-side:
  • Add new PHP constant, APP_VERSION in definitions.php that contains the AppGini version for the current app.
  • Add Request::oneOf() to limit a request variable to specified values or a default if one of them or not set.
  • Client-side:
  • Automatic locale formatting for numbers wrapped inside elements having locale-int or locale-float CSS classes (can be disabled by setting the JS property AppGini.noLocaleFormatting = true).
  • Other changes:
  • Clarify how column width is applied in context help

New in AppGini 22.10 Revision 1254 (Jan 10, 2022)

  • New versioning scheme for AppGini to allow a faster release cycle.
  • New utility in Admin area: Interactive SQL queries tool (accessible from the Utilties menu). This is a great way to run quick queries to retrieve info from the database. You can bookmark the queries to run them later. Here is a quick demo. To enable interactive SQL queries utility, check the option "Allow admin access to interactive SQL tool" under "Security settings" in your AppGini project.
  • Bug fix: when overwriting an already-existing generated file, delete original file to ensure correct file name case.
  • Bug fix: corruption of special characters in table groups when deleting a group.
  • UX: refocus left treeview pane after table/field rename error.
  • Bug fix: redirect after insert doesn't update renamed table name in some cases.
  • Fix csrf token issue preventing deletion of parent records after user confirmation.
  • Fix bug with handing of old dates in date fields.

New in AppGini 5.97 Revision 1141 (Jun 13, 2021)

  • Fix SameSite value of remember_me cookie for future compatibility with browsers.
  • Re-order admin utilities menu for better organization.
  • Add pageQueryLogs.php to view log of slow and error queries for debugging (Admin area > Utilties menu > Query logs)
  • Add 'nothing' table icon (useful when you want no icons for a table)
  • Refactor tablename_view to delegate code for applying membership permissions to DataList.
  • Add DataList::applyPermissionsToQuery() and DataList::fieldIsDateTime().
  • Refactor various parts of DataList.
  • Fix filtering query error for non-admin users that don't have full view permissions.
  • Add logSlowQuery() and logErrorQuery() functions to help diagnose problematic queries executed by sql().
  • Refactor sql() function by separating dieErrorPage() and openDBConnection().
  • Add new options to the $o array passed to sql() to suppress logging if set to true: 'noSlowQueryLog' and 'noErrorQueryLog'.
  • Add CSS classes .signed-in-as and .username to the 'Signed in as ..' text and the username link in the navigation bar for easier scripting.
  • Fix issue where TVDV page with 0 records in TV has missing date pickup components.
  • Render read-only checkboxes in DVP in all cases
  • MakeSafe(): return an empty string for 0-length inputs without further checks.

New in AppGini 5.96 Revision 1137 (May 18, 2021)

  • UX fix: don't automatically sign out a user when they access a table they have no access to.
  • Show 'table access denied' error if user is accessing a DV record they don't have access to, rather than a blank page.
  • Fix issue with empty lookup values for lookup fields of short char/varchar datatype.
  • CSS rule to hide empty email links.
  • Show "Don't rename uploaded files" and "Delete files from server when removed from record" options in image options window.
  • CheckMemberID.php: change the way availability is reported to prevent minifying services that strip comments from ruining the result.
  • Render read-only (rather than editable) check-boxes in DVP.
  • Enable auto-increasing rich editor height for long content.
  • Add more randomness to generated file names by randomly seeding microtime() to hinder brute force filename guesses.
  • Sanitize filterer_* against reflected XSS in 'Add new' form.
  • Misc syntax fixes.

New in AppGini 5.95 Revision 1136 (Mar 29, 2021)

  • UI/UX enhancements:
  • Remove empty images from DVP
  • Align sum cells the same as their corresponding data cells.
  • Fix tooltip appearance in admin/pageRebuildFields
  • Fix and improve UX for inserting joins in query helper window
  • Better handling of DV loader (no compile time vars, show only if there is a non-native focus field, don't show in TVDV unless a record is selected, hide once focus field is ready instead of waiting unnecessarily for > 1 sec.)
  • Focus form field in TVDV if a record is selected.
  • don't focus DV on load if in same page as TV.
  • Improve appearance of file overwrite window.
  • Show insert button for lookups in embedded mode.
  • Fix nicEdit (rich HTML area) height
  • Bug fixes:
  • Ignore not null for auto_increment fields when comparing in admin/pageRebuildFields.php
  • Correctly escape default values containing slashes.
  • Fix PHP8 error on filtering lookup fields.
  • Fix issue with autofocusing radio lookup fields.
  • Fix nl2br issue in textareas.
  • Preserve background highlight color applied by nicedit.
  • Fix sorting bug in admin/pageViewRecords.php
  • Fix Filters + $options->QueryWhere = causes SQL syntax error
  • Fix localStorage clearing issue that leads to disabling enabled shortcut keys
  • Security fixes:
  • Filter data when exporting to CSV to prevent CSV injection in Excel.
  • Sanitize group description in groups list page
  • Programmatic improvements/changes:
  • Server-side:
  • The $mail param of sendmail() can optionally include tag key to pass any desired value to sendmail_handler() hook.

New in AppGini 5.94 Revision 1131 (Jan 21, 2021)

  • Fix 'no direct access allowed' in CSV import page.

New in AppGini 5.93 Revision 1129 (Jan 20, 2021)

  • New features:
  • Add new table property Default focus field to allow control over which field (if any) has focus by default when the detail view form is loaded (Previous behavior was to always auto-focus the first editable field).
  • Implement instant search in admin settings page to quickly find a setting by label.
  • Move the setting of the file upload path to the admin settings page, making it more convenient to change.
  • UI/UX enhancements:
  • Add button for clearing date fields in detail view.
  • Usability and layout fixes to admin/pageSettings.php
  • Add some space between plugin icon and name in plugins menu
  • admin/pageTransferOwnership.php: prevent moving super admin user to non-admin group, or any user to anonymous group
  • Move server-side code from common.js.php to header.php, and rename as common.js for better performance through native server/browser caching.
  • Remove misleading help mouse pointer from title bars of table props section.
  • trim option list separators from start and end of options list to prevent unintended empty options.
  • Add autocomplete="new-password" for new password fields in app pages to prevent browser auto-completion (this prevents pre-filling passwords, but not password suggestions).
  • Add checks during setup for PHP extensions: xml and mbstring, and a more descriptive error message if images folder is misconfigured.
  • Fix bottom margin of field description in detail view.
  • Adjust glyphicon size for download links using new CSS class .glyphicon-lg
  • Adjust icon links alignment/margins in detail view for a more consistent UI.
  • Rename dynamic.css.php to dynamic.css for speedier processing and better loading performance.
  • Center alert text in admin/pageEditMember.php.
  • Don't show link to pageRebuildThumbnails.php in admin Utilties menu if app has no thumbnail fields.
  • admin/pageSettings.php can initiate a search through the URL GET parameter search-settings to allow direct linking to a specific setting from other admin pages.
  • Proper autofocus for date fields.
  • Fix layout of web link input field in detail view.
  • You can now navigate between the project browser, the search box and the properties pane in AppGini using either F6 or F4 shortcut keys.
  • Project inspector (F12) now displays field and table names on the main field/table nodes for easier/quicker access.
  • UX enhancements when user clicks the label for date, link, YouTube and google map fields.
  • If user specifies that a link field displays the contents of another field, they must specify the other field.
  • More descriptive message for field changes warning when closing AppGini without regenerating app.
  • Show warning message when trying to import a table from a CSV file while no project is open.
  • admin/pageViewRecords.php: support for {none} member, indicating ownership records having no member.
  • Bug fixes:
  • Fix technical documentation preview issue.
  • Fix modal height bug on iOS.
  • Fix bug in YouTube thumbnail URL.
  • bug fix in refactored datalist.php.
  • Fix bug in combo class.
  • Quick search: fix highlight behavior when no matches are found.
  • Fix js bug in admin/pageViewMembers.php that prevents confirmation dialog when deleting a user.
  • Admin homepage: indicate and correctly handle ownership records with empty username.
  • Fix bug in Save changes button locking behavior during ajax requests.
  • Fix YouTube videos error due to YouTube API change.
  • Properly close <form> and grid in filters page.
  • Avoid invalid HTML in file upload fields.
  • If field is configured as a lookup and image simultaneously, remove image config and prioritize lookup config to consist with UI and fix generated code js error.
  • Fix PDF files not displaying in modals.
  • Handle error when homepage panel height is set to invalid value.
  • Fix: separator between parent caption fields appears twice in lookups if parent caption field is itself a lookup field.
  • Security fixes:
  • Update CI_Input to prevent recently revealed XSS vulnerabilities, CVE-2021-21260.
  • Move the setting of Google Maps API key to the admin settings page (storing it in config.php) to prevent hard-coding the API key into generated code, making it safer to distribute your app to third parties.
  • Prevent potential minor reflected XSS vulnerability in CSVImportUI.php.
  • Programmatic improvements:
  • Server-side:
  • Use getLoggedAdmin() whenever checking for admin access rather than getMemberInfo()['admin'] to ensure the admin check is centralized.
  • typo fix in admin/pageUploadCSV.php.
  • Fix for the case where ctype* functions are not included with PHP.
  • Fix some PHP8 compatibility issues.
  • Use PHP's built-in filter_var() to validate emails in isEmail() instead of hard-to-maintain regex.
  • Code refactoring in admin/pageRebuildThumbnails.php and ensuring usage of configured image upload path rather than a hard-coded one.
  • Use <%%BASE_UPLOAD_PATH%%> placeholder in templates instead of <%%TRANSLATION(ImageFolder)%%>.
  • Refactor DataList::templateTranslate() method to parseTemplate() function in admin/incFunctions.php.
  • Client-side:
  • Add new CSS spacer classes: tspacer-* (top spacer), bspacer-* (bottom spacer), lspacer-* (left spacer, RTL safe), rspacer-* (right spacer, RTL safe), where * is one of xs, sm, md or lg.
  • Replace AppGini.focusFirstFormElement() js function with the more versatile AppGini.focusFormElement(tn, fn).
  • Add optional 2nd parameter shift to AppGini.scrollToDOMElement() to specify a shift value, useful to make scrolled-to DOM element more visible near the mid of the screen rather than on top.
  • Use AppGini.imgFolder in js instead of AppGini.Translate._map['ImageFolder'].
  • Add id attribute to read-only YouTube, google map and web/email link fields.
  • Other changes:
  • Remove Google Maps API setting from AppGini preferences window (since it's configurable from admin settings page now).
  • Update http links to https counterparts.

New in AppGini 5.92 Revision 1126 (Nov 10, 2020)

  • Fix bug where applying quick search + filters caused an error.
  • Fix error message when default value of a field contains single quotes
  • Append DV next/previous buttons to the first .btn-toolbar only to avoid duplicates if the page contains multiple .btn-toolbar elements.
  • Disable special handling of Ctrl + right/left arrow when inside a non-empty input/textarea
  • AppGini.inputHasFocus(): detect focus in inputs and contenteditable elements.
  • Add vertical spacer between child link buttons on top of DV for better UI with many buttons that wrap.
  • Fix bug occuring with users having insert and no view permission.
  • If user has insert-only access (and no view) to a table, redirect to DV form after insertion rather than to a blank page.
  • Fix bug with validation and focusing of required rich text fields
  • UX enhancement in import-csv.php: if user manually clicks #start-upload, hide timer

New in AppGini 5.91 Revision 1122 (Nov 1, 2020)

  • Usability enhancement: In detail view pages where both 'Save changes' and 'Save as copy' are enabled, add a lock button to 'Save changes' that allows user to disable 'Save changes' button to avoid clicking it by mistake when they actually mean 'Save as copy'.
  • Performance improvement: combine all calculated field ajax calls of TV and child tables into a single call rather than one call per record.
  • Display a link to keyboard shortcuts reference page in the keyboard reference modal.
  • Fix DV layout bug for fields that have the option 'Column width' checked (introduced after adding .tablename-fieldname CSS class to DV inputs).
  • Fix guest navigation and signup issue.
  • Fix bug in admin/pageEditMember.php that prevents saving changes.
  • Fix bug where __global.php hook functions were not executed properly.
  • Fix disappearing .warning class issue in TV rows when added programatically.
  • pageBackupRestore.php: Show mysqldump command on error (redacting db password)
  • CSV preview page: prevent new lines in field separator and wrapper.

New in AppGini 5.90 Revision 1115 (Oct 26, 2020)

  • Add new CSV import tool that allows non-admin users to import CSV files (if their group settings permit so) into tables they have insert/edit access to.
  • Implement Next/Prev navigation in detail view.
  • New usability feature: Implement keyboard shortcut keys in users area (Ctrl + F1 or Shift + F1 to display available shorcuts).
  • Add %TABLENAME% and %PKFIELD% placeholders in calculated field query.
  • Add support for Powerpoint file types for file upload fields.
  • Super admin can always mass-delete, filter, save filters, sort, print, print DV, save as CSV regardless of table options set in AppGini (these still apply to other users, but no longer to super admin).
  • Remove language-admin.php and merge its contents into language.php for a unified translation file.
  • Add Open app icon (shortcut: SHIFT + F5) to open current AppGini app in browser (as last generated).
  • If app title already includes UPPERCASE characters in AppGini, leave case as-is.
  • Passing noQuickSearchFocus=1 when linking to a table view prevents auto-focusing of quick search button. This is useful when you embed a table view in another page and don't want the browser to "jump" down to the embedded page.
  • Various UI/UX enhancements.
  • Various bug and security fixes.

New in AppGini 5.84 Revision 1108 (Jul 14, 2020)

  • Fixed bug in 5.83 where assigning record owner from users area caused an error.

New in AppGini 5.83 Revision 1105 (Jul 13, 2020)

  • Important security fixes.

New in AppGini 5.82 Revision 1101 (Feb 23, 2020)

  • Added Preview button to app generation log window to open generated app in web browser (works by configuring localhost settings in AppGini Preferences window).
  • Added support for formatting numbers like 1.234,56 in 'Data Format' tab.
  • Added command-line utility for updating calculated fields, php cli-update-calculated-fields.php to enable automation (via crontab, .. etc).
  • Enhanced server status page UI to allow zooming in sections of the page.
  • When TV has no records, hide unnecessary elements (#Print, #CSV, #tv-tools, thead).
  • Added new CSS classes to child label tabs for better JS manipulation: .child-tab-label, .child-table-{tablename}, .lookup-field-{fieldname}.
  • Updated AppGini logo.
  • Fixed regression where .form-inline styling is breaking customizations described in AppGini customization course.
  • Added .admin-area CSS class to container div in admin area pages.
  • Added .users-area CSS class to container div in users area pages.
  • Moved js initialization code to top of common.js.php file.
  • UI enhancement: Focus the first filter in filters page.
  • Calculated fields window: CTRL + TAB to insert tab, ENTER for a new line rather than closing window.
  • Correctly show files as appearance/code files during file generation.
  • moved calculated fields config to calculated_fields() function in admin/incFunctions.php for better reuse.
  • Renamed generate icon to 'Generate AppGini app' for consistence.
  • Override default home.php if hooks/home-custom.php exists, allowing creation of advanced custom dashboards.
  • Fixed regression bug with deep auto-fill lookup fields.
  • Fixed issue with displaying special characters in tech docs.

New in AppGini 5.81 Revision 1094 (Oct 15, 2019)

  • Fixed issue where copying child records didn't work correctly on some server configurations.
  • Added new config.php parameter, host, for use when copying child records.
  • Fixed behavior of Same as project file button in Specify Output Folder window (switching to the same folder where the project file is stored).
  • PHP API: added backtick_keys_once($arr) to apply backticks around given array keys.
  • Fixed issue with inserting data to fields named like mysql keywords.
  • Prevented stripping of last comma in array lists to make source code diffs more precise.
  • Fixed a bug where some projects failed to load in AppGini.
  • Bug fix in admin/incFunctions.php#insert() and update().
  • Fixed a bug in populating calculated fields in detail view.
  • Added link to mass update plugin in add-ons menu.
  • AppGini command line: Added support for --log {path-to-log-file} parameter for saving app generation log to provided file name.
  • Fixed: Focus correctly on first element in form if it's a rich text or select2 drop-down.
  • Added selected/skipped files counter in files list window when generating apps.
  • Displaying output folder path in files list window.
  • Fixed: Preserve size of generation log window if resized by user.
  • Files list window is resizable.
  • Calculated fields: Child table: Refresh button updates calculations.
  • Calculated fields: Fixed issue where calculated fields returning HTML displayed source code in table view.

New in AppGini 5.80 Revision 1072 (Oct 7, 2019)

  • Automatically copy child records when copying parent.
  • Enhanced UI of group permissions page for faster editing.
  • Enhanced UI for ‘Specify output folder’ window.
  • Enhanced file upload UI with minimum frustration!
  • Smart enhancements to auto-complete drop-downs.
  • Developer/admin technical documentation.
  • API changes.
  • Bug fix in Edit record ownership page.
  • Preserve table view settings when going back from TV using the top left (table name) link, just like when clicking Cancel/Back button.
  • Fixed: Changes to rich text (nicedit) are not detected by the Save changes button.
  • When saving CSV files, set the name to include date and time to make it easier to version CSVs if users are downloading them frequently.
  • Fixed: Prevent triggering of auto-loading for PHPMailer and Notification classes.
  • Added a UI hint for lookup fields that have custom queries.
  • Fixed a potential run time error when resetting a custom query to default one for a lookup field.
  • Fixed: Configured data format for field should take priority over default date/time formatting in both table view and detail view.
  • Fixed a bug that lead to failure generating some files when some special UTF8 characters are used in table/field captions.
  • For a detailed explanation of all the new features, please refer to this blog post.

New in AppGini 5.75 Revision 1055 (Mar 20, 2019)

  • When adding a new parent record from the DV of a child record, auto-select it in drop-down
  • Ability to search icons by name in the table icons window
  • Pressing F4 in AppGini, you can switch between the left tree-view, the search box, and the right pane.
  • MySQL2AppGini import utility updated to use mysqli and is available through online download link
  • Better handling of nav menu height when it's too long
  • Added new JS function in common.js.php for retrieving Text of a lookup field given ID, AppGini.lookupText()
  • Naming new projects new_app rather than new_db to infer this is the app name not the db name.
  • Extended RemeberMe renewal window to 20 minutes.
  • auto-focus on group name box in pageEditGroup.php
  • Ignoring 'Read-only' option for 'Auto-fill' lookup fields.
  • Silencing SQL errors in sqlValue() and adding an optional pass-by-ref argument to retrieve errors.
  • Added CSS classes to elements of pageEditGroup.php in order to allow mass-control later
  • Fixed a bug with populating auto-fill lookups under certain conditions
  • Fixed bug where print DV option was visible in 'More' menu when DV printing is disabled
  • Fixed rebuild fields behavior when renaming PK fields
  • Added a hint for admin SQL errors to rebuild fields
  • Fixed bug in cascading drop-downs where View/Add buttons disappeared after parent selection.
  • Fixing display issue with Sandstone compact theme.
  • Fixed index size issue when creating membership_userrecords table with a UTF8 encoding
  • bug fix in application_url()

New in AppGini 5.74 Revision 1054 (Feb 7, 2019)

  • Fixed a redirection bug on servers where DOCUMENT_ROOT is an alias.
  • Updated help links in AppGini menu, and added new 'Add-ons' menu.

New in AppGini 5.73 Revision 1050 (Feb 5, 2019)

  • Added 'Generate Application' option when right-clicking a project file in Windows Explorer to generate the app without opening AppGini first.
  • Added support for new command line parameter --output to specify output folder from a shell or a batch file (AppGini Pro only).
  • Hardened remember-me cookies to use dynamic tokens and prevent session theft.
  • Hardened stored password hashes to comply with best practices for storing user credentials.
  • Improved performance of records count in homepage.
  • Auto-complete now works in all drop-downs if they contain 5 items or more.
  • Admin area: added a 'Server status' page, useful for diagnosing server/database issues.
  • For full changelog, please see the release announcement on our community forum.

New in AppGini 5.72 Revision 1036 (Jun 11, 2018)

  • Fixed: Radio lookups: 'view parent' link not working.
  • Fixed: In-page validation for required radio button lookups/option lists.
  • Fixed: Save flag not triggered when moving field up.
  • Added hide all and toggle buttons to column toggle menu.
  • Fixed count() warning on PHP 7.2.x
  • Fixed vertical spacing of date combos.
  • Added link to YouTube channel on the toolbar.
  • Fixed datetimepicker European date formats.
  • Fixed bug in sql() function causing Notification::placeholder() not to be declared on silent errors.
  • Unified utf8 conversion functions to use to_utf8() and from_utf8()
  • Fixed utf8-related bugs in select2 drop-downs and auto-fill lookups
  • Fixed image caching issues in thumbnail.php

New in AppGini 5.71 Revision 1030 (May 24, 2018)

  • Implementing datetime picker for datetime fields
  • Unicode-friendly copy/paste of tables and fields
  • Shortening columns cookie name to avoid 'bad request' errors,
  • Improved responsiveness of 'Edit theme' dialog to prevent freezing
  • Fixed: Record permissions are not honored in children view in some cases
  • Fixed: image upload fields don't display the image if no renaming and file name contains a hyphen.
  • Fixed image lookup DV issues
  • Set column hide/show cookies to expire after 30 days rather than on closing the browser.
  • Fixed a bug with image uploads in tables containing 2 or more image upload fields.
  • Fixed an issue with backups on servers having no MySQL password.
  • Fixed bug with show/hide columns dialog in vertical TV layout
  • Cleanup of some obsolete image files no longer used.
  • UX enhancements.
  • Allow long TLDs in email field of the activation window
  • Removed 'DB name' label from project page to avoid confusion
  • Fixing issue with initial values of auto value time fields.
  • Fixing issue with default value for time fields in 12hr mode.
  • Fixed issue with displaying empty time values in DV
  • inserting null in time fields if left empty when inserting a new record.
  • Changed the data type info icon to text, and also the lookup auto data type icon.
  • Updated the data type choice link to use the https version.
  • Added uninstaller icon (in Windows Add or Remove Programs dialog)
  • Prevent adding .alert-link to button links.
  • Fixed an activation bug validating emails with long TLDs.
  • Fixed bugs with sorting of lookup fields in child tables.
  • Fixed a bug where addslashes was incorrectly applied to cached auto-fill lookups, causing escaped quotes
  • Added html_attr_tags_ok() function and applied to cached auto fill data.
  • Added thumbnail caching to thumbnail.php (except for super admin user for administrative purposes)
  • Fixed issue with defining datalist_image_uploads_exist constant in datalist.php
  • Fixed issue with templates/tablename-ajax-cache.php where auto-fill lookups having parent images were not displayed correctly
  • Loading moment.js and bootstrap-datetimepicker in header.php
  • When saving filters, remove the FilterAnd for undefined filters from the filter URL

New in AppGini 5.70 Revision 1018 (Jan 23, 2018)

  • Added database backup/restore page in the admin area (accessible under the Utilities menu).
  • Option to display the record count of each table in the homepage (to enable, select the table in AppGini and check the option Show record count in homepage).
  • Added 'Show/hide columns' button above table view.
  • Better handling of wide tables in mobile view by allowing users to easily scroll horizontally, one column at a time.
  • Added 'Fix all' button to 'Rebuild fields' page.
  • Added more table icons to choose from.

New in AppGini 5.62 Revision 989 (May 8, 2017)

  • Implemented PHPMailer as the mail function for apps, with SMTP support configurable in admin settings.
  • Included hooks/__global.php in admin area.
  • Added new hook in __global.php, sendmail_handler() for intercepting mail sending operations.
  • Fixed PHP 7.1 compatibility issue.
  • Fixed preg_replace calls with /e modifier.
  • Added validation checks to make sure undefined data formats are properly handled.
  • Fixed XSS vulnerability in quick search responsibly reported by Netsparker.
  • Added hooks/README.html.
  • Fixed error with line breaks in emails sent from the admin area.
  • Bug fix with sorting of formatted lookup fields.
  • Bug fix for array_map warning when a record is selected in a table with a non-numeric PK.

New in AppGini 5.61 Revision 987 (Apr 18, 2017)

  • Improved detail view loading performance by preloading lookup values.
  • Bug fixed: Redirects don't work correctly if a non-standard port is used.
  • Configurable detail view template in DataList so that it can be set in hooks.
  • Fixed sorting behavior of lookup fields containing numeric data in table view.
  • Fixed a bug with anonymous users unable to directly access tables that they are allowed to view.
  • Fixed bug with error reporting behavior of unique fields.

New in AppGini 5.60 Revision 979 (Jan 2, 2017)

  • New table view templates and layout options.
  • Added admin tools menu in detail view to make it easier for the admin to view/edit ownership info..
  • New CSV import interface (allows advanced field mappings and a much smoother live preview experience)..
  • 'Add new' button in detail view to allow adding records directly after insertion/update.
  • Bootstrapped admin area (enhanced look and responsive mobile-friendly behavior).
  • Option to close child modal after saving the record.
  • Applied persistence functions to print-preview (AppGini apps now remember user's choice of expanding/collapsing child records in print-preview).
  • UI improvements in pageViewMembers.php: highlighting super admin + disabling selection and actions for guest user.
  • Added buttons for selecting another member/group in admin/pageMail.php.
  • Added button for adding a new member to the members list page.
  • Added helpful action buttons to pageEditGroup.php.
  • Added a button for adding a new group in the list of groups page.
  • More than 40 UI enhancements and bug fixes.

New in AppGini 5.51 Build 904 (Jun 28, 2016)

  • Added support for maintenance mode (where site is accessible only to admin).
  • Better handling of unique value errors through Ajax-based validation.
  • Ensuring PHP 7 compatibility.
  • Keep "Action Button Scrolling" enabled by default for long forms.
  • Bug and security fixes plus usability enhancements.

New in AppGini 5.50 Build 834 (Dec 16, 2015)

  • Added ability to organize tables into separate groups to make it easier for users to access applications with a large number of tables.
  • Added optional printing of child records in the detail view.
  • Added option to keep action buttons visible when scrolling down the detail view form.
  • Added a per-table option to enable/disable 'Add new records' from homepage.
  • Added new option for lookup fields to control the behavior of the link to parent record in detail view.
  • Added language-admin.php to make it easier to translate the admin interface.
  • Many bug fixes and usability enhancements.

New in AppGini 5.41 (Jun 17, 2015)

  • Ability to add records directly from the home page
  • Various improvements for RTL (right to left) languages
  • Hiding 'Sign up' link if no groups are set up to allow user registration
  • Various bug fixes and usability enhancements

New in AppGini 5.40 (May 20, 2015)

  • Support for displaying google maps in your application, just by providing a google map url.
  • Support for displaying youtube videos in your application, just by providing a youtube url.
  • 17 bootstrap themes to choose from, each with a large and a compact version. All 17 themes work in both left-to-right and right-to-left languages .
  • New parent records can be added easily without leaving the child record form.
  • Easier bookmarking of filtered tables.
  • Better UI in filters page.
  • Convenient highlighting of form errors before submitting.
  • Enhanced appearance of download links.
  • Enhanced application security.
  • Improved compatibility with IE.
  • A huge list of UI enhancements and bug fixes.

New in AppGini 5.31 (Jan 13, 2015)

  • This is a stabilization release where many bugs have been fixed and many UI and performance enhancements introduced.

New in AppGini 5.30 (Jun 3, 2014)

  • Time fields now display a time picker in the detail view.
  • Time fields now support 12hr and 24hr time formats.
  • Added "Rebuild fields" utility to the admin area to detect and easily fix database schema errors.
  • Users can now select one or more records in the table view and perform batch actions on them.
  • Added support for batch deleting of multiple records in the table view for users with delete permissions.
  • Admin user can now change the owner of multiple records easily from the table view.
  • Added batch_actions hook to create custom batch actions for records.
  • Various bug fixes and usability enhancements.

New in AppGini 5.23 (Feb 5, 2014)

  • Auto-fill lookups that have parent captions set as image fields can now display their parent images.
  • Fixed long URL wrapping in table view (See the forum post).
  • Fixed display issues with long fields in table view.
  • Fixed issues with clearing lookup drop-downs.
  • Fixed bugs with modal window in child tabs.
  • In case of setup errors while creating tables, automatic redirection to finish page is disabled and errors are displayed.
  • No zooming of empty image fields.
  • Other minor cosmetic changes.

New in AppGini 5.22 (Dec 4, 2013)

  • Fixed a bug with sorting of fields that occurred in some cases.
  • Fixed a bug with custom queries for lookup fields not working correctly.

New in AppGini 5.21 (Nov 11, 2013)

  • Added a compact (small fonts, less spaces) Bootstrap theme to the project themes.
  • Ability to specify column alignment (left, right, center) in table view.
  • Layout improvements in admin area.
  • Various bug fixes in lookup drop-downs, user permissions, and several others.

New in AppGini 5.20 (Oct 28, 2013)

  • AppGini applications are now mobile-friendly and responsive.
  • Added 13 new themes, including a dedicated RTL theme for right-to-left languages.
  • The new themes are all based on Twitter Bootstrap 3, so you can easily add more themes as thousands are available online.
  • New searchable drop-downs for lookup fields and option list fields.
  • Multiple-choice option lists are much easier to use now.
  • Major usability and UI improvements.
  • Various bug fixes.

New in AppGini 5.12 (Aug 13, 2013)

  • Removed unnecessary redirections for non-logged users.
  • Fixed a bug with characters above ASCII 128 not displaying correctly when using Unicode encoding.
  • Fixed a bug with sorting resetting filters if detail view is in the same page as table view.
  • Bug fix where lookup menus didn't display in detail view if user had insert permission but no update permission.
  • Fixed a stack overflow error when generating an application with complicated hierarchical lookup fields.
  • Fixed a bug with header redirection not working in some special cases.

New in AppGini 5.10 (Jun 18, 2013)

  • Enhanced and simplified setup page for generated applications.
  • Enhanced and simplified password reset process.
  • One-step application generation by pressing Ctrl key while clicking the "Generate" icon.
  • Added support for --generate command line option to generate AppGini applications without dealing with the GUI. This way, you can use batch files and integration tools to automate creating your application.
  • Enhanced copying/pasting of tables and fields to work across multiple instances of AppGini.
  • Applied pagination alignment to the top buttons to avoid horizontal scrolling to see those buttons on wide tables.
  • Added an option to remove "Powered by AppGini" footer (Pro version only).
  • Implemented displaying grand parent lookup values (lookups that point to caption fields that are in turn lookups now display the exact content of the parent lookups).
  • "Go to page" drop down in the table view now displays a partial list of pages for better performance with huge tables.
  • Lookups are now loaded using ajax to enhance performance for huge lookup lists.
  • Optimized the ownership assignment process (in the admin area) to take much less time when dealing with huge tables.
  • Added a link to download language files beside the encoding drop-down in AppGini.
  • Various bug fixes and usability enhancements.

New in AppGini 5.00 (Jun 18, 2013)

  • Support for parent/children views to access all children of a record from one page.
  • Easier and faster design of your database: Ability to copy and paste fields and tables within a project and between 2 projects.
  • Better application interface: Enhanced sign-in and and sign-up forms.
  • Selection of table icons from an icons gallery.
  • Choice between 2 homepage themes (classic and metro).
  • More database search power: users can now search for records owned by them or their group.
  • Control of the alignment of the pagination section below the table view (full-width, left- or right-aligned).
  • Major UI enhancements in both AppGini and the generated applications.
  • If user applies a filter to one or more fields, an indicator icon is displayed in the field title.
  • Many bug fixes, usability enhancements, and elimination of most cross-browser inconsistencies.

New in AppGini 4.81 (Jun 18, 2013)

  • Bug fix for the MySQL database import utility.
  • Bug fix in some of the generated files to work with PHP installations that don't support short_open_tag

New in AppGini 4.80 (Jun 18, 2013)

  • Multi-level cascading drop-downs (for example, selecting a model from the car models drop down filters the car make drop down).
  • New metro-style home page.
  • Redesigned login page (please make sure to apply a theme to your old projects to take advantage of the new design).
  • Member profile page (where users can view and edit their profile, change their password, and view their permissions).
  • Easier page navigation in all views.
  • Sorting of tables in AppGini.
  • Filters pages redesigned.
  • Easier code generation procedure (new folders are automatically created, smarter output folder guesses).
  • New member notification email contains all member info.
  • Various usability enhancements and bug fixes.

New in AppGini 4.70 (Jan 30, 2012)

  • Added support for time zones
  • Added "maxlength" parameter to form inputs to limit input size based on max field length
  • Easier quick search by just clicking rather than having to click the search button
  • Added option to highlight a field/table in AppGini to easily refer to it later
  • Updated Prototype and Scriptaculous javascript libraries to the latest release
  • Various usability enhancements and bug fixes

New in AppGini 4.61 (Oct 31, 2010)

  • This is a maintenance release that includes various bug fixes.

New in AppGini 4.60 (Oct 2, 2010)

  • Better themes management: A new theme editor in AppGini makes it much easier to modify the application appearance. Also, we added some new better looking themes.
  • Usability enhancements:
  • Users can now resize text areas by merely dragging their bottom border.
  • Added an automatic description for upload fields showing the allowed upload size and accepted file types.
  • Long drop-down combos are now automatically replaced by auto-complete text fields to make it easier for users to search them by simply typing part of an item.
  • Easier and more powerful customizations:
  • You can now customize the query for lookup fields to control the contents of the drop down.
  • A new hook file to add customized javascript code to control the behavior of forms. Please refer to the hooks documentation for more details.
  • You can now easily customize the filters page for each table, group, and even for each user. Please refer to the hooks documentation for more details.
  • Performance enhancements: drop down fields that contain a large number of items caused pages to slow down. This has now been fixed by automatically using auto-complete text fields if the number of items exceeds a certain limit.
  • Better support for non-Latin characters, and for right-to-left page layouts.
  • Added phone, 12-hour time, and Canadian postal code formatting to the available data formats.
  • Various bug fixes, security, and usability enhancements.

New in AppGini 4.53 (Oct 2, 2010)

  • This is a maintenance release that includes various bug fixes.

New in AppGini 4.52 (Apr 12, 2010)

  • This is a maintenance release that includes various bug fixes.

New in AppGini 4.51 (Mar 10, 2010)

  • More printing options: Added option to partially select records for printing them as a list (table view) or as details (detail view).
  • Added multiple selection option fields (users can select more than one value from a list box).
  • Create your database fields faster than ever before: When you create a new field and set its name to image, photo, comments, notes, date or id, AppGini smartly guesses the field properties so you don't have to waste time on this.
  • Increased performance and responsiveness of AppGini, various bug fixes and usability enhancements.

New in AppGini 4.50 (Mar 10, 2010)

  • Support for automatic creation of thumbnails for uploaded images.
  • Option to zoom thumbnails when clicked using lightbox2.
  • Added a javascript date picker for date fields for easy selection of dates.
  • Easier management of large projects: you can now type a part of the name of any field or table in AppGini to search for it quickly.
  • Enhanced security of data: You can now set lookup fields to inherit permissions of parent tables so that users can only see the data they have access to.
  • More convenient user login experience: Added Remember me option during login to avoid typing the username and password on every visit.
  • More flexibility and power to you: Added hook functions for easier customization of the generated application for adding new functionality. Check the easy-to-follow examples in the online help.
  • Usability enhancements and bug fixes.

New in AppGini 4.4 (Jun 25, 2009)

  • Support for rich HTML text area fields.
  • Implemented a printer-friendly detail view option.
  • Added option to display lookup field data as radio buttons (in addition to the drop-down menu option).
  • Added support for automatic values (values inserted automatically into read-only fields when inserting or updating records).
  • Enhanced the CSV data import feature.
  • Added table description property.
  • Added the option to open the last project from the start screen of AppGini for faster access.
  • For easier member signup, if only one group is available for sign up, it's now set as default in the registration form.
  • Fixed "page has expired" issues with IE.
  • Various usability enhancements and bug fixes.

New in AppGini 4.3 (Mar 4, 2009)

  • Better support for international encodings and right-to-left languages.
  • The File menu now contains a list of the recently opened projects for quick access to your work.
  • AppGini can now add a table to your project using a CSV file.
  • The Data Format tab enables you to specify a special formatting for the selected field.
  • You can add description to each field in your project. This can be used as a help hint for your application users.
  • In the admin area of the generated applications, you can now populate any table with data imported from a CSV file.
  • Added support for enforcing a pre-selected parent value for a read-only lookup field.
  • Several usability enhancements, and better accessibility support.