* refactor(datapolicy): redesign setup and logic for GDPR compliance
- Introduced a data-driven configuration structure for setup.php.
- Added support for a new "recruitment" GDPR datapolicy configuration.
- Streamlined code for managing anonymization and deletion delays.
- Enhanced dropdown generation logic to improve maintainability.
- Simplified data anonymization and deletion methods in cron execution.
This change provides more flexibility and modularity while ensuring compliance with GDPR standards.
* refactor(datapolicy): enhance data cleaning logic and add modular handlers
- Refactored `cleanDataForDataPolicy` method for better readability and efficiency.
- Implemented modular handlers for deletion and anonymization (_handleDelete and _handleAnonymize).
- Added dynamic argument building for method calls based on policy configurations.
- Improved SQL query preparation with placeholders for better database compatibility.
- Enhanced error handling and outcome recording in data processing.
This update simplifies extensibility and ensures robust handling of datapolicies.
* fix precommit
* fix
* fix(datapolicy): resolve uninitialized langs object and improve type hints
- Added a check to ensure `$langs` object is properly initialized, preventing runtime errors.
- Improved type hints in `datapolicycron.class.php` for stronger type checking and clarity.
- Replaced `empty` checks with `isset` for better null safety in setup.php dropdown logic.
- Adjusted SQL placeholders to cast values as strings for compatibility.
These changes enhance code robustness, type safety, and error handling.
* fix(datapolicy): improve type hints and streamline dropdown logic
- Added precise type hints (`string`, `array`) to enhance code clarity and type safety.
- Removed redundant condition in dropdown generation for improved maintainability.
- Added type specification for `$paramName` in `array_map` to strengthen type checking.
- Inserted missing class docblock for `CommonObject` in `datapolicycron.class.php`.
These updates lead to cleaner, safer, and more robust code.
* fix(datapolicy): improve type hints and streamline form submission logic
- Added return type hints (`: int`, `: void`, `: array`) in `datapolicycron.class.php` for better type safety and clarity.
- Simplified loop structures in `setup.php` by removing unnecessary variables.
- Revised `buttonsSaveCancel` method usage to eliminate redundant cancel parameter logic.
- Enhanced maintainability through refactoring `_processPolicyAction`, `_handleDelete`, and `_handleAnonymize` methods.
These refinements improve code readability, maintainability, and robustness.
* refactor(datapolicy): replace custom dropdown generation with `Form::selectarray`
- Removed the custom `$generateSelectHtml` function, simplifying code by using the existing `Form::selectarray` method.
- Updated dropdown generation for 'anonymize' and 'delete' actions to align with Dolibarr's standard practices.
- Enhances maintainability by leveraging built-in utilities and reducing custom logic.
* Update datapolicycron.class.php
* Try to fix CI
* Update datapolicycron.class.php
---------
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
* Fix name of option for supplier
* Update functions.lib.php (#34718)
Add __MYCOMPANY_URL__ & __MYCOMPANY_PHONEMOBILE__ in getCommonSubstitutionArray
* Fix bad value fourn paiement process (#34722)
* Fix bad value fourn paiement process
* best fix
* fix takepos console error (#34709)
* fix console error
* exit early
---------
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
* Fix CI
* Clean code
* Fix table wenhook history
---------
Co-authored-by: ldestailleur <eldy@destailleur.fr>
Co-authored-by: Deefaze <6393617+Deefaze@users.noreply.github.com>
Co-authored-by: Francis Appels <francis.appels@yahoo.com>
* New: Mail template for contacts
* New: Mail template for contacts
* New: Mail template for contacts
* New: Andorra's Accounting Plan
* New: Add function to make substitutions on Takepos receipt
* New: Add function to make substitutions on Takepos receipt
* New: Add note private on order export
---------
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
* backport #b0b2442 to v. 21
* backport #b0b2442 to v. 21
* fix shipment contact same as in #b0b2442
* fix shipment contact same as in #b0b2442
* fix shipment contact same as in #b0b2442
* Changes to follow mvc logic
* Reworked admin page and form to add lines
* Reworked adding line logic
* Adding options when editing subtotal lines
* Fix translations
* Fixed errors/displays and started pdf
* Color for subtotals pdf lines
* FIX display of subtotal totht
* Added pdf azur for propal
* Fix duplicate translation
* Added subtotal support for facture pdf
* Added subtotal support for commande pdf
* Improve UI/translations
* Restored old pdf
* Info to warn user for unsupported pdf
* Added title lines VAT rate and discount support
This is meant for future feature wich is block mass changing vat rate
and discount percentage
* Working on block apply vat and discount
* Added buttons for block actions
* Handle editing vat and discount for subtotal lines
* Editing vat and discount for subtotal lines bloc working
* Added possibility to move by block
* Updated adding and updating a subtotal line
* Improved vat and discount block update
* Improvement for block vat/discount and line edition
Editing a title line edits the corresponding subtotal line
* Improvement for moving by block
* Bad tile or st line placement managing
* Improved bad title or st line placement managing
* Adding subtotal line improved
Adding a subtotal line adds it right under its corresponding title
* Improved deleting subtotal line
Added possibility to choose if you want to delete the corresponding
subtotal line when deleting a title line
* Preventing too high level titles to be created
* Create and update line errors managing
* Improved bad title or st line placement managing
* Improved st line creation
* improve headers
* fix bad block placement managing
* fix adding st line not working if duplicates titles
* fix translations
* Fix block update
* FIX special chars bug
If special char like " ' " was used in title it could be converted to
special char entity.
* Prepare for pdf options
Pdf options like page break befor title should be shown as a picto if activated on a subtotal line on a document
* Added option managing
* Improved subtotal options and PDF integration
* Code refactor
* Action name/Error managment/PDF refreshing
When adding or updating a subtotal line
* Reformat
* Reworked subtotal options database managment
* Changed access to special code
* Remove unecessary call to php trait
* Changed definition of subtotals special code constant
* Reworked align on PDF
* Removed unecessary function and improved error managment
* Typo fix and removed treated todos
* Post typo changed for to better match subtotals names
* Disabled edit if status is not draft
* Changed way subtotals options are stored
* Added view managing when creating a document form an other
* Improved creating document from an other
Can check subtotals lines with table head checkbox and removed highlight
class for better UI.
* Make include of subtotals tpl more clear
* Manage centered or justified case
If user chose to center or justify, we don't change nothing
* Improved pdf
* Removed unecessary code block
* optimisation
* Code sniffer fix
* Code sniffer fix
* Code sniffer fix
* Code sniffer fix
* Code sniffer fix and added missing translation
* Fix php code sniffer
* Reload page when setup saved on subtotals admin page
* Fix php code sniffer
* pjan fix
* phan fix
* phan fix
* phan fix
* phan fix
* phan fix
* phan fix
* phan fix
* phan fix
* phan fix
* phan fix
* phan fix
* php warning fix
* php warning fix
* php phan fix
* php phan fix
* php phan fix
* Fix bug admin page not loading because of const not defined
* php phan fix
* php phan fix
* FIX subtotals admin page display
* php phan fix
* FIX php phan
* Fix bugs and langs
* Fix bug pdf align
* Replace include by require
* Add headers to avoid refreshing and adding unwanted lines
* Fix phan
* Add GETPOST check for security
* Fix phan
* Fix phan
* Fix phan
* Subtotal option when creating a document from another
* Fix phan
* Add field subtotal options for subtotal lines
* Fix phan
* Fix phan
* Fix phan
* Update to follow mvc
* Fix php phan
* Fix php phan
* Fix phpstan/phan
* Fix phpstan
* Fix phpstan
* Fix phpstan
* Fix phpstan
* Fix phpstan
* Update to switch to extraparams
* Update to switch to extraparams
* Retrieve extraparams from db to objectline
* Modified last things to switch to extraparams
* Cleaning unnecessary code lines
* Fix php-stan
* Section subtotal in extraparams to differentiate if needed for further devs
* Fix phan
* Keep extraparams when creating from another object
* Change default value to false when creating a subtotal line
* Fix clone would not keep extraparams in new object
* Fix dark subtotal line background color
Fix when a subtotal background color is too dark and edit pencil or
delete trash could not be seen
* Fix typo
* Fix typo
* Added subtotals for facturerec
* Fix precommit
* Added extraparams when creating rec from fac and other way
* Fix phan
* Fix objectline null
* Desactivating block vat / discount update for facturerec
* reformating code
* Added expeditions for subtotal
* Save extraparams for shipping lines
* Display of subtotals lines in shipments
* Display when creating facture from shipments
* Improve display of lines and invoice creation from shipments
* Fix error if missing line rang
* Deleted duplicate
* Added deletion of subtotal line in shipping documents
* Not including subtotal lines if there is no product line in between
* Update get subtotal lines in shipment docs to disable
* Delete possibility to edit subtotal lines in shipments
* Handle pdf for shipment
* Handle conf stock or shipment supporting services
* Fix precommit
* Fix duplicate name creating bug
* Fix bug where id could be changed by the line id and would create bug
* Deleted subtotal lines when STOCK_SUPPORTS_SERVICES is enabled and block would only have service lines
* Disable shipments in admin modules
Shimpements subtotals lines are only created from commands
* Fixing phan and stan
* Deleted unused template and phan fix
* Fix phan
* Fix phan
* Fix phan
* FIX: phan
* Fix template bug
If document was not in subtotal scope and would use a template used by
subtotal it would create an error.
* Fix php-stan
* Fix bad display when modules and confs were activated
* Fix php codesniffer
* Excluding subtotal lines when mass updating
* Fix shipments service lines exluded + showing subtotal line with specific configs
* Fix line display with situation invoices + bug block line update
* Added ODT managment
This works with invoices but has not been tested with other documents
* Fix bug when editing VAT/discount by block
* Fix error raised when subtotal line added
Subtotal line had no fk_product and raised the error but we want this
line to have no fk product
* Fix precommit
* Added ODT template for documents that uses subtotals
This template can be usefull to understand how to create an odt template
using subtotals module
* Fix phan
* Fix phan
* fix: buttons showing in bad document status
* clean: unwanted commited files
* add: table examples to use with subtotals on ODT templates
* fix: Unwanted print of value when creating a document from another
* feat: renaming for better understanding
* feat: Improved templates for documents related to subtotals
---------
Co-authored-by: Marc de Lima Lucio <68746600+marc-dll@users.noreply.github.com>
Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>