dolibarr/htdocs/modulebuilder/template/sql/data.sql

33 lines
1.8 KiB
MySQL
Raw Normal View History

-- Copyright (C) ---Replace with your own copyright and developer email---
2017-05-08 19:00:23 +00:00
--
-- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation, either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
2019-09-23 19:55:30 +00:00
-- along with this program. If not, see <https://www.gnu.org/licenses/>.
2017-05-08 19:00:23 +00:00
-- delete from llx_mymodule_myobject;
--INSERT INTO llx_mymodule_myobject VALUES (1, 1, 'mydata');
-- delete from llx_c_mydictionarytabme;
--INSERT INTO llx_c_mydictionarytabme (code,label,active) VALUES ('ABC', 'Label ABC', 1);
--INSERT INTO llx_c_mydictionarytabme (code,label,active) VALUES ('DEF', 'Label DEF', 1);
-- new types of automatic events to record in agenda
NEW: ModuleBuilder - consistent status labels and explicit trigger naming (#38883) * NEW : Derive ModuleBuilder status labels from arrayofkeyval LibStatut() in the ModuleBuilder object template hardcoded the Draft/Enabled/Disabled labels, which diverged from the labels defined in the 'status' field arrayofkeyval used by the list filter and the select. Build labelStatus/labelStatusShort from arrayofkeyval so the badge, the filter and the select all show the same configurable labels. Add ModuleBuilderTemplateConventionsTest covering the derivation. Next: normalize trigger codes to MYMODULE_MYOBJECT_ACTION in class line 637 + typo line 50, sql/data.sql lines 27/30-32, myobject_card.php line 378; extend the test with trigger assertions. * NEW : Use explicit MODULE_OBJECT_ACTION trigger naming in template The ModuleBuilder object template emitted the validate trigger as the generic MYOBJECT_VALIDATE, inconsistent with the MYMODULE_MYOBJECT prefix already advertised by $TRIGGER_PREFIX and used by the unvalidate/cancel/reopen/sentbymail trigger codes. Normalize the validate trigger, the seed data.sql agenda triggers and the close notification example to the MYMODULE_MYOBJECT_<ACTION> policy so generated modules expose clear, non-ambiguous trigger codes. Also fix a typo in the $TRIGGER_PREFIX comment. Extend ModuleBuilderTemplateConventionsTest with trigger naming checks. Next: ChangeLog entry covering both features, then dolibarr-audit + functional verification, then push to remote quentin and run pr-review-v2. * DOC : Add ChangeLog entries for ModuleBuilder status labels and triggers Next: dolibarr-audit on both features, then functional verification, then push to remote quentin and run pr-review-v2. * FIX : Guard ModuleBuilder LibStatut against undefined status key Hardening from audit: when LibStatut() is called with a status value that is not present in the 'status' field arrayofkeyval, reading labelStatus/labelStatusShort raised an undefined-array-key warning under PHP 8. Default both labels to an empty string, which dolGetStatus already accepts, so the badge degrades gracefully to the status code. Next: push branch to remote quentin and run dolibarr-pr-review-v2 on the full diff vs develop. * CHORE Drop the files CONTRIBUTING forbids to edit in a PR [skip-claudemd] ChangeLog is generated from the commit messages at release time, and the language files other than en_US are synced from Transifex. --------- Co-authored-by: Laurent Destailleur <eldy@destailleur.fr> Co-authored-by: Alexandre SPANGARO <aspangaro.dolibarr@gmail.com>
2026-08-17 19:41:18 +00:00
-- 'code' must be a value matching 'MYMODULE_MYOBJECT_ACTION'
-- 'elementtype' must be value 'mymodule' ('myobject@mymodule' may be possible but should not be required)
NEW: ModuleBuilder - consistent status labels and explicit trigger naming (#38883) * NEW : Derive ModuleBuilder status labels from arrayofkeyval LibStatut() in the ModuleBuilder object template hardcoded the Draft/Enabled/Disabled labels, which diverged from the labels defined in the 'status' field arrayofkeyval used by the list filter and the select. Build labelStatus/labelStatusShort from arrayofkeyval so the badge, the filter and the select all show the same configurable labels. Add ModuleBuilderTemplateConventionsTest covering the derivation. Next: normalize trigger codes to MYMODULE_MYOBJECT_ACTION in class line 637 + typo line 50, sql/data.sql lines 27/30-32, myobject_card.php line 378; extend the test with trigger assertions. * NEW : Use explicit MODULE_OBJECT_ACTION trigger naming in template The ModuleBuilder object template emitted the validate trigger as the generic MYOBJECT_VALIDATE, inconsistent with the MYMODULE_MYOBJECT prefix already advertised by $TRIGGER_PREFIX and used by the unvalidate/cancel/reopen/sentbymail trigger codes. Normalize the validate trigger, the seed data.sql agenda triggers and the close notification example to the MYMODULE_MYOBJECT_<ACTION> policy so generated modules expose clear, non-ambiguous trigger codes. Also fix a typo in the $TRIGGER_PREFIX comment. Extend ModuleBuilderTemplateConventionsTest with trigger naming checks. Next: ChangeLog entry covering both features, then dolibarr-audit + functional verification, then push to remote quentin and run pr-review-v2. * DOC : Add ChangeLog entries for ModuleBuilder status labels and triggers Next: dolibarr-audit on both features, then functional verification, then push to remote quentin and run pr-review-v2. * FIX : Guard ModuleBuilder LibStatut against undefined status key Hardening from audit: when LibStatut() is called with a status value that is not present in the 'status' field arrayofkeyval, reading labelStatus/labelStatusShort raised an undefined-array-key warning under PHP 8. Default both labels to an empty string, which dolGetStatus already accepts, so the badge degrades gracefully to the status code. Next: push branch to remote quentin and run dolibarr-pr-review-v2 on the full diff vs develop. * CHORE Drop the files CONTRIBUTING forbids to edit in a PR [skip-claudemd] ChangeLog is generated from the commit messages at release time, and the language files other than en_US are synced from Transifex. --------- Co-authored-by: Laurent Destailleur <eldy@destailleur.fr> Co-authored-by: Alexandre SPANGARO <aspangaro.dolibarr@gmail.com>
2026-08-17 19:41:18 +00:00
--insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MYMODULE_MYOBJECT_VALIDATE','MyObject validated','Executed when myobject is validated', 'myobject@mymodule', 1000);
--insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MYMODULE_MYOBJECT_UNVALIDATE','MyObject unvalidated','Executed when myobject is unvalidated', 'myobject@mymodule', 1001);
--insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MYMODULE_MYOBJECT_DELETE','MyObject deleted','Executed when myobject deleted', 'myobject@mymodule', 1004);