- Email log form
- Added Browse Filters to Email log & nuDebug
- Table zzzzsys_debug: Add deb_flag column
- Added JS functions:
- nuBrowseRowsPerPageFilter()
- nuGetHTML(), jQuery.fn.nuGetHTML
- nujQueryObj()
- nuOnSubformDeleteClick()
- nuSelectSelectedInfo()
- nuSelectSetIndex()
- nuSetAttributes()
- nuTriggerEvent()
- nuUserHasPermission()
- nuUserPermissions()
- String.prototype.nuStringToArray
- nuInputMaxLength(): Also get the max length
- Added PHP functions:
- class nuDebug
- nuDebug: Add "Flag" column
- db_fetch_all_key_pair_array()
- db_fetch-functions: Optional 2nd parameter $fetchAll = false
- nuDebugResult: add $nuDebugFlag
- nuDecode()
- nuFailIfUnsetHashCookies() in nuEval()
- nuHasProperty()
- nuPrintIncludeColumns()
- nuRecordId()
- nuSendEmailEx(), Table zzzzsys_email_log
- nuUserId(), nuFormId()
- Settings: $nuConfigShowJSErrors
- TFM $nuConfigFileMangerUsers
- Bump ctxmenu to v1.7.0
- Bump Font Awesome to v6.5.2
- Bump TinyMCE to v7.0.0
- Bump uppy to v3.23.0
- Translations
- Updated updated JS nuSelectRemoveMultiple() due to changes in jQuery
- Updated nuSetToolTip() due to deprecation of Query.fn.hover()
- Updated PHP Procedure NUDEBUGRESULTADDED_TEMPLATE
Changed:
- Changed TinyMCE license key to 'gpl'
- Beautified hidden/not available for SQL in ACE
- Switched to using UTF8MB4 instead of utf8 in JS nuBrowseWhereClause()
- Changed 2nd parameter of nuReadonly() to readonly = true
- Excluded invisible tabs by default in JS nuSelectNextTab()
- Moved code from core\nuchoosesetup.php to core\nusessiondata.php
- Updated functionality for Non-Bound Objects: Don't Set Form to Edited
- Adjusted nuInclude() to not include the file again within the same session
- nuUserHasPermission() returns true for globeadmin
- Options menu: Changed shortcut for sessions (ctrl+shift+j)
- Passed true as 2nd parameter to run nuBeforeSave() in PHP nuRunPHPHidden()
- Changed PHP nuRunQueryTest() to return PDOEception object instead of $ex->getMessage()
- Split PHP code into nuphp, nuprocedure Forms
- Changed datetime to timestamp in zzzzsys_email_log table
- nuPad2(), nuPad3(), nuPad4(): Optional pad = '0' parameter
- nuSelectRemoveOption(): 3rd parameter: findByText
Renamed:
- Renamed $.fn.nuEnterKey to $.fn.nuOnEnterKey
- Renamed core\nubuilder_session_data.php to core\nusessiondata.php
- Updated Date.prototype methods to begin with "nu"
- Renamed JS functions:
- fixNbsp() to nuReplaceNonBreakingSpaces()
- getTabIndexByTitle() to nuGetTabIndexByTitle()
- handleCtrlComma() to nuACEhandleCtrlComma()
- jQuery.fn.cssNumber to jQuery.fn.nuCSSNumber
- String.prototype.capitalise to .nuCapitalise
- String.prototype.isEmpty to String.prototype.nuIsEmpty
- String.prototype.justNumbers to String.prototype.nuJustNumbers
- String.prototype.withoutNumber to String.prototype.nuWithoutNumbers
- Renamed PHP functions:
- hex2rgb to nuHex2rgb()
- ColorToHex() to nuColorToHex()
- String.prototype.toTitleCase to .nuToTitleCase
- Browse SQL: Allow single line // comments
- Made undo possible in ACE only when applicable
- Improved Admin Context Menu functionality
- Enhanced Browse Print to show Errors of BB
- Made adjustments to various JS functions for better performance and usability
- Improved PHP functions for better functionality and readability
- nubuilder4.css: checkbox, radio: vertical margin
- JS nuEnableDisableAllObjects(): Exclude html objects
- JS nuContextMenuItemText(): Translate labels
- JS nuBrowseTableHoverIn(): Set Title, also check Offset Height
- JS nuLogout(): Log out event if session expired
- JS nuPad2(), nuPad3(), nuPad4(): Optional pad = '0' parameter
Fixed:
- Fixed JS functions:
- nuBindCtrlEvents(): Do not override all shortcuts
- nuRunPHPHiddenWithParams(): Fix Out Of Range exception in window.btoa for Unicode Strings
- nuUppySetLanguage()
- nuEmptyNoClone(), clone subforms
- nuShow(): Check if selected tab (any tabs) exist
- Fixed PHP functions:
- class nuBuilderSessionData: Remove duplicate 'DB_PORT" key
- nuRunQuery(): $DBCharset return value
- nuSQLRemoveComments(): Handle null parameter
- nuRecordId(): Return -1 when running a Procedure in New Record
- nuRemoveNuRecords(): Correct Delete Statements
- Access to phpMyAdmin, TFM while 2FA status pending
- Deleting Records could fail when PK is auto increment
- Prevent possible double click when using custom JS nuSelectBrowse()
- Setup -> Header: Allow variables starting with $
- Subform: No Duplicates/Blanks checks within subform
- Subform: Objects menu, Subform Object does not work
- Update nuSystemList(): Correct table name
- nuvendorlogin.php: Cookie set without "secure" flag
- Breadcrumbs: Strip Slashes
- Admin Menu: Show Icon after Renaming
Removed:
Removed unused JS and PHP functions and methods:
- JS loginInputKeyup(),
- JS nuBase64decode(),
- JS nuBase64encode(),
- JS nuCopyText(),
- JS nuDuplicates(), JS nuPopJS(),
- JS nuRunIt(), JS nuRunPHPAction(),
- JS nuRunReportAction(),
- JS nuEmailReportAction(),
- JS nuSelectObject.getJoins(),
- PHP hashCookieNotSetOrEmpty()
