Release Notes


Support for Theme Manager
Version: 25.0

27.03.2025

  • Adding theme manager support implementation on Extra tabs.
  • Adding theme manager support implementation on Extra tabs.
  • Updating & optimizing theme implementation
  • Implementing the function getUiThemeInUse in order to get the theme_code for the theme in use.
  • Added a check for KFW_THEME_MANAGER in support of themes
  • Added databaseExists in KDatabase
  • Move getDatabaseTableFields & getDatabaseTables from static call in KCommon to object call KDatabase
  • Added theme param in KCommon.showThemeIconUnderSelect call
  • Added getPrettyItemList method in KFormat for list of checked items
  • Updated default SSN and code read in KSystem
  • Added messaging language tag to global lang
  • Updated KDate getI18nMonthsArray method to stop using strftime due to the deprecation and started using DateTime
  • Added isPostVariableBySuffixMatchingValue in KValidate
  • Updated KGUI widget width calculation
  • Added support for other algorithm(sha256, sha512, blake2b) for MFA, PASSWORD History, USER_PASSCODE, Cookie key, Session key
  • Removing redundant date intializing script from generateGanttChart function.
  • Adding Gantt chart to KChart.
  • fixed explode issie on line 714 on KPermission
  • Added throw exception with SQL and DATA when system is on DEV mode
  • Adding KChart to the framework for creating graphs.
  • Added rgbTohex conversion in KConverter
  • Fixed TOTP alternative checks
  • Updated the MFA TOTP limit rate
  • Added an implementation for MFA_ACCOUNT_DEFAULT_MFA_METHOD
  • Fixed ctype_digit warning on string - KValidate
  • KGenerator::createTabs - Added icon positioning for left tabs, and Added ajax flag
  • Added minutesBetweenTwoDates to KConverter
  • Added routine helpers for mfa: (account, system,interface,user-role)
  • Fixed owner issue on KGatewayA
  • Added trust-shield support for onsite framework implementation 
  • changed the select-helper trigger to support swal popup(kfw-winswal="yes"). This allow select-helpers to be used in a fancy box screens
  • Added KCommon.hideIFrameLoader for PDF viewer in an iframe
  • Updated FPDI-PDF-Parser to support PHP 8.4
  • Added support for checkbox enableSorting
  • Updated KSystemManager to support Heading Field group fields
  • Added MFA timeout is not valid and not over 30 minutes
  • Updated KConfiguration::heading method to support group_fields & force_single_group_access
  • Added KConfiguration::groupFields KConfiguration::forceSingleGroupAccess
  • Added executeDynamicRestfulWebserviceCall & executeCustomRestfulWebserviceCall
  • Added new language tags to handle metadata for AI Assist
  • Added isAlphanumericHyphen method in the KValidate
  • KSecurity bug fix in createAPICredentials for handling of autogen_session_key & restrict_to_same_origin
  • Updated the jsonToArrayStringExport method in the KFormat to allow for multidimensional array formatting
  • Added getDatabaseName in the KDatabase
  • Added getDatabaseTableFields & getDatabaseTables in the KCommon
  • Added storageMedia in KConfiguration
  • Added registerShutdownFunction for fatal error handling
  • Added jsonToArrayStringExport in the KFormat
  • Added list page group filter ignore on clicking funnel
  • Added executeRestfulService in KWebService to support dynamic service builds
  • Updated languages/en.xml and Added kfw-winswal option under kfwajax to support selectHelper function
  • Added  $type and $extra_data options in the KConfiguration::selectHelper
  • Added handling of theme_code to support assets/themes option
  • Added KCommon::getThemeIconsSelection to support working with new theme modules
  • Removed the PHPSpreadsheet.
  • Added getAccountID method in KSecurity
  • Added $database_object optional parameter in KSecurity::generateFrameworkBarcode

Application
Version: 24.0

24.07.2024

  • KCommon - fixed to support the new assets: Changes TAGS: site_dir to images_uri
  • Moved ketroute.js to js/framework.ketroute.js
  • added syntax-container.tpl
  • fix Trim deprecation issue on empty string
  • Added getViewItemsFromLoadedData to the delete and edit core modules
  • KSystemData - Added getFieldDataWrapCharacter getFieldDataElementSeparator for data storage to checkboxes and multiple selects
  • KGUI - added kgui_left_widgets_2 for the extra left widget that are independed of the main left widget that will now go to the bottom: usage: $this->ui()->appendLeftWidgets('data goes here', $bottom = true);
  • KGateway - added parent ID to support bulk messages
  • KetrouteApplication WebService call activity logging using registry:WEBSERVICE_ACTIVITY_LOGGING - data will be encrypted on production
  • KetrouteApplication WebService call activity logging by default in system mode: DEV, UAT & DEBUG - data will not be encrypted
  • Introduction of KWebServiceHandler to help with activity logging of soap calls before function routing
  • Debug support in RESTful service call by just adding parameter called debug with value 1
  • KSecurity - added a call: setWebserviceApiId during the  apiAuthentication & 
  • API Account - integration_code for routing web service call to an external service program/interface
  • KSystemManager encodeGroupedData & decodeGroupedData allow to use custom separators
  • added images-uri attribute to the base in application, in support of js/css/images migration to assets directory
  • Note: It is recommended to utilize $this->getComponentRealname() when referencing the component name. This practice ensures that if the component name changes in the future, you will not need to manually update your code.

Web Service & GUI
Version: 23.5

24.04.2024

  • syntaxFormattingFieldtype: KConfiguration.
  • getFilename: KFile enforce lowercase filename.
  • sendBulkSMS: KGateway support for parent_id field
  • KGUI: system-mode as a flag for UX/UI.
  • generateGroupFilters: KSYstemData Runtime fix on urldecode on null values
  • reuseModule: list module fix on urldecode on null values
  • KWebService: invoke enhancement & open API (swagger) raw data
  • generateFileEncryptionIv: KGenerator
  • arrayToSql: KConverter upgrade
  • createPdfKFile show numbers issue on new document format and issue with data indexing that pushed the last column data outside the render

PDF
Version: 23.3

21.04.2024

  • KFile - method createPdf updated an option to pass data as array
  • KPDF - moved document timestamp to the bottom by a few inches
  • KPDF - updated FancyRow to implement $style parameter
  • KSystemData - fixed group filter multiple where clause issue

Application
Version: 23.2

20.04.2024

  • added custom path for the saveAjaxCachedFile runtime function
  • added arrayToSql function in the KConvertor class
  • added runSql in the KDatabase class
  • Fixed issues with the joinTable: where the groupfilter was failing to feature on child table
  • Added support for heading field
  • Fixed get coordinates translation
  • added reuseModule: in the configurations that will now allow developers to reuse the list, add, delete, approve, reject in any of their modules
  • updated delete of linked table: To not delete the records when doing an update
  • fixed trim with the silencing of deprecation @trim
  • wallpaperComponent: Customizable login background
  • maintenancePlan: Application support for standalone design
  • restrictionIpAddress: Application enhancement
  • destroyDatabaseCredential: Database encryption of config in memory
  • StreamingKVideo: Header to serve the video content
  • isJsonString: Validation checks
  • getDivElement: System Manager view formatting
  • getValidationString: System Manager validation based on fields
  • cloneField: System Manager for reuse of field properties and structure
  • downloadFile: System Manager hook file FTP connect
  • loadedComponentConfiguration: System Manager for support with sub modules

Application
Version: 20.2

16.02.2023

  • reuseModule: enhancement on error handling
  • fixed KSystemManager::getFormElementError
  • fixed linked table table fields
  • fixed linktable issue on view and approve modules
  • Cleaned the approve module: With redundant script
  • added showSelectDeSelectOption: in KConfiguration
  • fixed get coordinates translation: updated delete of linked table to not delete the records when doing an update
  • fixed trim with the silencing of deprecation @trim
  • SelectboxNoOptionLabel: Configuration select box with one item UI/UX support
  • broadcastFormErrors: System Manager support formatting with new themes
  • buildCustomDefaultListActions: System Manager eval verification checks
  • getDisableNormalExport: System Manager flag to disable normal export

Application
Version: 18.0

02.11.2021

  • isSignatureField: System Manager support for digital signatures
  • isRgbCodeField: System Manager for UI/UX color pickers
  • isJoinedField: System Manager for database query builders
  • updateProperties: System Manager with combinations of parameters supported
  • getAllRequiredIfChildren: System Manager forms field with relationship flag
  • isAnyStatus: Status validation of multiple values
  • allowMoreSecurityQuestions: Security control user when has reached maximum allowed security questions
  • clearSecurityPatternSession: Security MFA login pattern use case
  • getRequestReLoadPopup: GUI library update on modals and reloading
  • maskPhoneNumber: Data formatting for international mobile numbers
  • readIntoLines: File manipulation of data into an array
  • getTimeSpendInWords: Data format on money fields
  • maskEmail: Data Security and privacy implementation
  • getHtmlSyntax: Data formatting for source code on UI/UX
  • radio: Form formation and styling
  • downloadFile: File Custom Header for application ownership
  • runSql: Database execution using query string
  • checkbox: Form formation and styling

Application
Version: 15.0

15.06.2018

  • createSwagger: KWebService for Hybrid Calls
  • reateEmptySwagger: KWebService for Hybrid Calls
  • validMethodCall: KWebService flexible required parameter validation
  • setupContextEnvironment: Application
  • setupRouting: Application to support unlimited interfaces
  • apiAuthentication: Security apply the same origin policy implementation
  • buildUserAccountList: Security addedreference name for the account switching
  • byPassUrlPartOnSessionIdle: Security & Navigate controls
  • signature: Configuration render for digital signatures
  • joinedField: Configuration reference on other components and tables
  • rgbToCmyk: Convert from RGB colors
  • startSession: Application check for MVC to work with flexible context
  • resizeToFitRectangle: Image manipulator for responsive UI/UX
  • generateTippyMenu: Generator to work with frontend libraries
  • communicationInterface: Gateway for SMS & email adapters
  • secondsToHoursMinutes: Convert seconds to minutes with UI/UX formatting
  • automatedFields: Configuration control on Database standard fields
  • customValidation: Configuration setting for form validations
  • downloadable: Configuration properties to flag upload files
  • feedFrom: Configuration joined fields navigation
  • reuseModule: Configuration scalability of modules
  • sourceComponent & SourceModule: Configuration support on sub modules for image viewing
  • manageObjectOverwrite: reuseModule
  • applyCustomModuleExtraFieldsRule: System Manager control of automated field

Application
Version: 11.0

14.02.2015

  • getCoordinates: Configuration support for browser GPS support
  • heading: Configuration non-form field for UI/UX formatting
  • hexColor: Configuration support for color pickers
  • i18nMobile: Configuration support for international mobile numbers storage
  • ignoreLangConversion: Configuration support for field drag and drop result storage
  • switchToAccount: Security to support multiple user profiles
  • aesRead: Security backwards compatibility check for mcrypt_decrypt
  • saveCredentials: Security update to allow registry data encryption
  • buildPermissions: AccessControl support for restriction and prohibited to work with flexible context
  • getPagerInfo: Pagination fix formatting on UI/UX
  • fancyTable: PDF bug fix on document alignment
  • showVerticalTimestampOnAllPages: PDF ability to switch timestamp on/off
  • createAPICredentials: Security custom endpoint to advanced API account setup
  • createPatternFormField: Security switch between patterns
  • generateFrameworkBarcode: Application support custom barcode field
  • initializeForcePath: Security controls for user password change enforcement - terminateForcePath

Application
Version: 5.0

07.03.2010

  • connect: Database fix for OS environment variables
  • htmlAttributesToIndexedArray:htmlAttributesToIndexedArray: Convert for html tag attributes which works for all markup languageswyciwygTags . Configuration rich text editor user tags injections
  • encryptUploadedFile: Configuration Securoty of file data binary storage
  • removeMatchedValues :Common Function on values maching the token list
  • getDataSequenceTree: Common Function recursive data tree extraction
  • sValidMfaPIN: iSecurity on authentication with Multi Fator AUthentication
  • mfaAllowSMSAsAlternative, mfaAllowEmailAsAlternative, mfaAllowPatternAsAlternative
  • initiateCloudAthenticator: Security mobile security application 2FA
  • ketroute.JS implementaion of SmartTabs
  • getAllRequiredIfChildren: Validation process