/[openfoncier]/trunk/app/findModuleDeclencheurs.php
ViewVC logotype

Annotation of /trunk/app/findModuleDeclencheurs.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 17976 - (hide annotations)
Tue Jun 18 16:57:22 2024 UTC (7 months, 2 weeks ago) by mbideau
Original Path: branches/6.6.0-develop--ihm-ajout_module/app/findModuleDeclencheurs.php
File size: 1900 byte(s)
feat(modules): support l'affichage dynamique des déclencheurs lors du paramétrage d'un module (fichier manquant à r17971)
1 mbideau 17976 <?php
2     /**
3     * Ce script a pour objet de recuperer la liste des déclencheurs correspondant aux critères de recherche
4     *
5     * @package openfoncier
6     * @version SVN : $Id: findModuleDeclencheurs.php
7     */
8    
9     require_once "../obj/utils.class.php";
10     $f = new utils("nohtml");
11     $f->disableLog();
12    
13     // Vérification des permissions
14     $f->isAccredited(array("lien_module","lien_module_modifier","lien_module_ajouter"), "OR");
15    
16     // Récupération des valeurs envoyées
17     $f->set_submitted_value();
18    
19     // Données
20     $module_name = $f->get_submitted_get_value('module') ?? null;
21     $module_name = html_entity_decode($module_name, ENT_QUOTES);
22     $module_name_escaped = $f->db->escapeSimple($module_name);
23     $f->log(__METHOD__, "module name: ".var_export($module_name, true));
24    
25     $object_name = $f->get_submitted_get_value('object_name') ?? null;
26     $object_name = html_entity_decode($object_name, ENT_QUOTES);
27     $object_name_escaped = $f->db->escapeSimple($object_name);
28     $f->log(__METHOD__, "object name: ".var_export($object_name, true));
29    
30     $object_id = $f->get_submitted_get_value('object_id') ?? null;
31     $object_id = html_entity_decode($object_id, ENT_QUOTES);
32     $object_id_escaped = $f->db->escapeSimple($object_id);
33     $f->log(__METHOD__, "object id: ".var_export($object_id, true));
34    
35     // recherche l'objet métier et l'objet lien_module
36     $object = null;
37     $lien_module_inst = null;
38     if (! empty($object_name) && ! empty($object_id)) {
39     $object = $f->findObjectById($object_name, $object_id);
40     $lien_module_inst = $f->findObjectByCondition('lien_module', "module = '$module_name_escaped' AND object_name = '$object_name_escaped' AND object_id = '$object_id_escaped'");
41     }
42    
43     $declencheurs = array();
44    
45     // instancie le module
46     $module_inst = $f->module_manager->get_module_instance($module_name, $lien_module_inst, $object);
47    
48     if (! empty($module_inst)) {
49     $declencheurs = $module_inst->get_supported_hooks(true);
50     }
51    
52     echo json_encode($declencheurs);

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26