PageRenderTime 39ms CodeModel.GetById 17ms RepoModel.GetById 1ms app.codeStats 0ms

/diem/dmFrontPlugin/config/dmFrontPluginConfiguration.class.php

https://github.com/winder84/kofe_merc
PHP | 56 lines | 47 code | 9 blank | 0 comment | 2 complexity | 86f5ffcd5bdb8868317b79649bfae07c MD5 | raw file
Possible License(s): ISC
  1. <?php
  2. class dmFrontPluginConfiguration extends sfPluginConfiguration
  3. {
  4. protected static
  5. $dependencies = array(),
  6. $helpers = array('Dm', 'DmFront'),
  7. $externalModules = array('dmUser');
  8. public function configure()
  9. {
  10. sfConfig::set('dm_front_dir', realpath(dirname(__FILE__)."/.."));
  11. sfConfig::set('dm_context_type', 'front');
  12. require_once(sfConfig::get('dm_core_dir').'/lib/config/dmFactoryConfigHandler.php');
  13. require_once(sfConfig::get('dm_front_dir').'/lib/config/dmFrontRoutingConfigHandler.php');
  14. }
  15. public function initialize()
  16. {
  17. $this->enableModules();
  18. $this->enableHelpers();
  19. }
  20. protected function enableModules()
  21. {
  22. sfConfig::set('sf_enabled_modules', array_unique(array_merge($this->getAvailableModules(), sfConfig::get('sf_enabled_modules', array()))));
  23. }
  24. protected function getAvailableModules()
  25. {
  26. $modules = array();
  27. foreach(glob(dmOs::join(sfConfig::get('dm_front_dir'), 'modules/*'), GLOB_ONLYDIR) as $dir)
  28. {
  29. $modules[] = basename($dir);
  30. }
  31. if($dirs = glob(dmOs::join(sfConfig::get('sf_plugins_dir'), '*/modules/*'), GLOB_ONLYDIR))
  32. {
  33. foreach($dirs as $dir)
  34. {
  35. if ('Admin' !== substr($dir, -5))
  36. {
  37. $modules[] = basename($dir);
  38. }
  39. }
  40. }
  41. return array_unique(array_merge($modules, self::$externalModules));
  42. }
  43. protected function enableHelpers()
  44. {
  45. sfConfig::set('sf_standard_helpers', array_unique(array_merge(self::$helpers, sfConfig::get('sf_standard_helpers', array()))));
  46. }
  47. }