Wigii® software ChangeLog

Actual major release: 4.8

Compatible with PHP 7.4

13.04.2021   Wigii 4.828 R2_34

- RecordEvaluator: recurringController: added onRecurringInstanceInsertExp callback to allow custom callbacks when recurring instances are created (for example, used on module Events to manage reminders)
- NotificationService: set public access on methods getButtonViewElement, getButtonAccess, wrapButtonAccessForEmail to factorise Wigii access button look & feel in wigii outbounding emails.
- RecordEvaluator, FuncExpVMStdFL: fixed isNull, isNotNull FuncExp to support MultipleAttributs array of type [0]=''; fixed addVal FuncExp to avoid duplicates if same value is added two times
- WigiiCoreExecutor, FiltersFormExecutor, ExecutionServiceWebImpl: pushes searchActivity cache key to browser
- moduleToolsBar.bsp: if group config changed, then invalids searchActivity cache
- dico.txt: added organizedBy, reminderOfElement, reminderTitle + fixed typo
- ActivityRecord: added data type in return comment

07.04.2021   Wigii 4.827 R2_31

- config.xml : prepares rollout of pilot phase for js caching of html drop-downs.
- TemplateRecordManager, WigiiForm.js, FormRenderer, Attributs_displayForm.tpl, MultiplAttributs_displayForm.tpl: manage js caching of html drop-downs.
- WigiiCoreExecutor: added action refreshDropDownCache to ask for drop-down cache refresh on browser from user's session
- WigiiAPI.js: parseUpdateResult: handles HtmlCache answer to automatically update js cache on push from server
- AttributeExpConfigController: activates jsCacheKey tagging on drop-down options for js caching of html drop-downs
- WigiiFL, WigiiCoreExecutor: extended ctlClearCache FuncExp and clearConfig method to invalid drop-downs js cache in session and on browser
- WigiiCoreExecutor: removed deprecated code (old wakeup code, moved to BackendServiceFormExecutor since 12.10.2020)
- add lazyLoading for images and iframes in WigiiCMSElementEvaluator
- extend StandardStatisticsDFA with setDimensionFieldNames($fieldNamesArray)

29.03.2021   Wigii 4.826 R2_24

- Apply rounding to cents on amounts operations

23.03.2021   Wigii 4.825 R2_21

- config.xml, configPack/configPack-readme-PNew.html: Scripting activity for upgrade instructions: supports automatic filtering of list view
- FuncExpVMStdFL: fixed logIsMultipleVAT logic
- WigiiAPI.js: added htmlEntityDecode method; fixed ok and cancel button accessors on query editor
- RecordEvaluator, FuncExpVMStdFL: implode FuncExp: supports more than 2 levels of array imbrication
- WigiiMedidataFL: controls street length to max 35 chars of any entity adresses (insurance, patient, debitor, etc.)
- FormExecutor: added method addErrorsToFields
- FormException: added code FORM_HAS_ERRORS and get/set FormFieldsErrors
- RecordException: added code MISSING_MANDATORY_FIELD
- ArgValidator: added methods checkFieldNotNull, assertFieldNotNull
- Record: added method exportMatrixAsStdClass
- ElementDFA: added element statistics capturing
- WigiiAPI.js: added methods txtHashTag, numEq
- DataFlowServiceImpl, UserAdminServiceImpl, ArgValidator: fixed typo


New FuncExps: ctlIsFormOnStart, ctlIsFormOnCheck, logIsMultipleVAT

15.03.2021   Wigii 4.824 R2_20

- moduleView.tpl, ListContext: enhanced module view to support 'Switch view' menu at group configuration level
- index.php: enforced security by upgrading session cookie to secure=1, httponly=1 and samesite=Lax
- AuthenticationServiceWebImpl: fixes Wigii credentials cookie to site root alias if defined
- Booleans, Floats, Numerics, Strings, Texts, Varchars form fields: fixes field content cookie to site root alias if defined
- Urls: checkValues: allows spaces in URL
- WigiiAPI.js: FormHelper: fixed ok and cancel buttons accessors to support element forms displayed in activity dialog.
- addons/Medidata/WigiiMedidataFL: added tarif code 452 mapped to LiMA law


New DataFlow activity: ValueListBufferDFA
New FuncExp: buildUrlFragment

10.03.2021   Wigii 4.823 R2_17

- PrintElementFormExecutor, WigiiCoreExecutor: added autoPrint configuration option, active by default on element standard print.
- GroupAdminService, GroupAdminServiceImpl, AuthorizationServiceImpl: added method doesGroupContainElement
- ElementFileAdminService: walkthroughUserFiles: fixed path sanitization

08.03.2021   Wigii 4.823 R2_15

- ClientAdminServiceImpl, functions wigii_ec_rename, wigii_ec_copy: refactored Wigii Encryption Layer to handle encryption of large files (more than 150Mo); max file size allowed for encryption is linked to PHP ini upload_max_filesize
- FormExecutor: manageUploadedFileForm: calls ClientAdminService::initializeEncryptionLayer to prepare into memory openssl encryption library before persisting uploaded file.
- ElementFileAdminService: method walkthroughUserFiles: call PHP GC after each file visit to keep memory consumption low during batch run
- Added function File::upload_max_filesize to get the max allowed size of uploaded files in bytes
- RecordEvalutator: FuncExp fillActivityFromUrl: fixed automatic creation of dynamic attributes
- ActivityRecord: added interface compatible with Element dynamic attributes methods to ease business coding simultanuously on Elements and Activity records

03.03.2021   Wigii 4.822 R2_14

- FormChecker: Emails multiple: show invalid emails detected in list and auto-cleans form field
- Emails: checkValues: keeps track of invalid emails
- FormCheckerException: added error code INVALID_MULTIPLE_EMAILS, added errorDetail field to carry FormChecker contextual information when error occurs.
- Model: added function acceptValidEmails; enhanced function validateEmails to return a list of detected invalid emails
- ClientAdminServiceImpl: encryptKeyStore: fixed non-re-encryption of keystore
- WigiiMedidataFL: ignores empty lines in street sub adressing
- AttributeExpConfigController: rollback dev in progress for Attributs/MultipleAttributs js caching

24.02.2021   Wigii 4.822 R2_11

- WigiiCoreExecutor: listView: if sorting key changes then removes any group by
- Element: added in memory attribute discardFromMultipleUpdate to indicate to ElementService to discard persisting element in case of a call to updateMultipleElement
- Enhanced FuncExp sysMultipleSelection to return at choice, an array of element IDs or an ElementPList
- ElementServiceImpl: updateMultipleElement, getSqlForUpdateMultipleElement: handles discardFromMultipleUpdate element attribute
- TemplateRecordManager, AttributeExpConfigController, Attributs_displayForm.tpl, MultipleAttributs_displayForm.tpl: Dev in progress for Attributs and MultipleAttributs html caching in js browser cache
- ClientAdminServiceImpl: Wigii Encryption Layer: refactored keystore persistence into private method persistKeyStore
- EmailsFromImapDataFlowConnector: fixed email parsing of type MIXED, with no body and only attachments
- Wigii Live Monitoring dev in progress
- ConfigurationContextImpl: when calling ma method, ensures mf method has been called at least once to guarentee that module fields are loaded, even if current config is a group configuration
- Start of Wigii trunk versioning on Wigiipole2 at Wigii.org. Migrated from GitHub master repository https://github.com/wigii/wigii G778.


New FuncExps: elementSubList, multipleSelectionElementP

02.02.2021   Wigii 4.821 G776

- FiltersFormExecutor: considers sortingKey and groupByKey parameters on SearchActivity fields
- config.xml / SearchActivity: move grouping and sorting to advanced filters section
- WigiiCMSElementEvaluator: fixed method copyFileToClientWebFolder to be compatible with Wigii Encryption Layer; fixed fatal error if sitemap without any introduction element
- WigiiFL: enhanced FuncExps countElements and elementExists to support usage of Root principal if needed
- FieldSelector, FieldSortingKey: added helpers buildKey and getDirection


New config parameters: sortingKey and groupByKey that can be added to SearchActivity fields or attributes to influence the list view sorting and grouping when searching by this field

25.01.2021   Wigii 4.820 G774

- ExecutionServiceImpl: added method getPrincipalExternalLabel to fetch a human friendly label of real user behind current principal
- RecordEvaluator, NotificationService, FuncExpVMStdFL, WigiiBPL: modified add comments, notifications and history tracking to use the ExecutionService::getPrincipalExternalLabel method instead of raw username.
- config.xml: field attribute expandOnMultipleColumn can be dynamic
- addons/NCD/AgileStoryBoard: changed border color of Tasks with priority P1 to yellow
- WigiiAPI.js: added method FieldHelper::disable to dynamically disable or enable a field, following Wigii form styling and standard
- example.index.php, example.htaccess: enforced security by removing or commenting lines of code which are not strictly necessary for Wigii server to run into production
- addons/NCD/wigii-ncd-stdlib.js, wigii-ncd-stdlib.css: AgileStoryBoard: maps Wigii Tasks priority to priority class and colorizes tasks by priority
- FiltersFormExecutor: added /find/elementByKey url to display an element detail given a business key
- WigiiAPI.js: showElement: supports passing a business key instead of element ID to fetch and display the element detail
- CliExecutor: added commands listHashAlgos, hashFile, checkClientFiles, encryptAllClientFiles, removeClientFileEncryption, renewClientFileEncryptionKey
- ElementFileAdminService: added method walkthroughUserFiles to execute a callback on each client file
- ClientAdminServiceImpl: release Wigii encryption layer on client files
- BackendServiceFormExecutor: runs encryption backend tasks
- ServiceProvider, CreditServiceImpl, CreditServiceException: handles CreditService implementation and instanciation
- AttributeExpConfigController: considers cacheKey xml attribute on attributeExp to define a custom cache key (instead of FuncExp signature)
- configs/Example/config.php: added ENABLE_ENCRYPTION_ADMIN_CLI=false
- _cliImplExecutor/main: fixed missing TEST_ON=false
- ElementEvaluator: fixed module null pointer exception in cfgParam and cfgParamExp FuncExps
- StandardStatisticsDFA: fixed missing unset of private variable


New classes: CreditService, WigiiCredit and WigiiTimer
New FuncExps: cfgAttrExtendedDimension, cfgCurrentListContextGroup, sysEncryptAllClientFiles, sysRemoveClientFileEncryption, sysRenewClientFileEncryptionKey
Readme/Technical Documentation: release 'Wigii Encryption concepts'

Archive of previous change log

Up to 2015 on code.google.com

Up to Jan 2021 on github.com