customiser.plugin.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. //Fonction executée lors de l'activation du plugin
  3. function customiser_install($id){
  4. if($id != 'fr.idleman.customiser') return;
  5. Entity::install(__DIR__);
  6. copy(__DIR__.SLASH.'css'.SLASH.'theme.sample.css',__DIR__.SLASH.'css'.SLASH.'theme.css');
  7. }
  8. //Fonction executée lors de la désactivation du plugin
  9. function customiser_uninstall($id){
  10. if($id != 'fr.idleman.customiser') return;
  11. Entity::uninstall(__DIR__);
  12. if(file_exists(__DIR__.SLASH.'css'.SLASH.'theme.css'))
  13. unlink(__DIR__.SLASH.'css'.SLASH.'theme.css');
  14. }
  15. //Déclaration des sections de droits du plugin
  16. function customiser_section(&$sections){
  17. $sections['customiser'] = "Gestion des droits sur le plugin customiser";
  18. // $sections[''] = "Gestion des droits sur l'entité ";
  19. }
  20. //Cette fonction comprends toutes les actions
  21. //du plugin qui ne nécessitent pas de vue html
  22. function customiser_action(){
  23. require_once(__DIR__.SLASH.'action.php');
  24. }
  25. //Déclaration du menu de réglages
  26. function customiser_menu_setting(&$settingMenu){
  27. global $_, $myUser;
  28. if(!$myUser->can('customiser','configure')) return;
  29. $settingMenu[]= array(
  30. 'sort' =>1,
  31. 'url' => 'setting.php?section=global.customiser',
  32. 'icon' => 'fas fa-angle-right',
  33. 'label' => 'Thème'
  34. );
  35. }
  36. //Déclaration des pages de réglages
  37. function customiser_content_setting(){
  38. global $_;
  39. if(file_exists(__DIR__.SLASH.'setting.'.$_['section'].'.php'))
  40. require_once(__DIR__.SLASH.'setting.'.$_['section'].'.php');
  41. }
  42. //Déclation des assets
  43. if(file_exists(__DIR__.SLASH.'css'.SLASH.'theme.css'))
  44. Plugin::addCss("/css/theme.css?v=".filemtime(__DIR__.SLASH.'css'.SLASH.'theme.css'));
  45. Plugin::addCss("/css/main.css?v=1");
  46. Plugin::addJs("/js/main.js?v=1");
  47. //Mapping hook / fonctions
  48. Plugin::addHook("install", "customiser_install");
  49. Plugin::addHook("uninstall", "customiser_uninstall");
  50. Plugin::addHook("section", "customiser_section");
  51. Plugin::addHook("action", "customiser_action");
  52. Plugin::addHook("menu_setting", "customiser_menu_setting");
  53. Plugin::addHook("content_setting", "customiser_content_setting");
  54. ?>