BxDolStudioLauncher.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php defined('BX_DOL') or die('hack attempt');
  2. /**
  3. * Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
  4. * CC-BY License - http://creativecommons.org/licenses/by/3.0/
  5. *
  6. * @defgroup DolphinStudio Dolphin Studio
  7. * @{
  8. */
  9. bx_import('BxDolModuleQuery');
  10. bx_import('BxTemplStudioWidgets');
  11. bx_import('BxTemplStudioDesigns');
  12. bx_import('BxTemplStudioLanguages');
  13. bx_import('BxTemplStudioModules');
  14. class BxDolStudioLauncher extends BxTemplStudioWidgets
  15. {
  16. protected $aIncludes;
  17. function __construct()
  18. {
  19. parent::__construct(BX_DOL_STUDIO_PAGE_HOME);
  20. $aClasses = array(
  21. 'BxTemplStudioModules',
  22. 'BxTemplStudioDesigns',
  23. 'BxTemplStudioLanguages'
  24. );
  25. //--- Check actions ---//
  26. if(($sAction = bx_get('action')) !== false) {
  27. $sAction = bx_process_input($sAction);
  28. $aResult = array('code' => 1, 'message' => _t('_adm_err_operation_failed'));
  29. switch($sAction) {
  30. case 'launcher-update-cache':
  31. $aResult = $this->updateCache();
  32. break;
  33. case 'launcher-reorder':
  34. $sPage = bx_process_input(bx_get('page'));
  35. $aItems = bx_process_input(bx_get('items'));
  36. BxDolStudioWidgetsQuery::getInstance()->reorder($sPage, $aItems);
  37. $aResult = array('code' => 0, 'message' => _t('_adm_scs_operation_done'));
  38. break;
  39. }
  40. echo json_encode($aResult);
  41. exit;
  42. }
  43. $this->aIncludes = array();
  44. foreach($aClasses as $sClass)
  45. $this->aIncludes[] = new $sClass();
  46. }
  47. function isEnabled($aWidget)
  48. {
  49. $aModule = BxDolModuleQuery::getInstance()->getModuleByName($aWidget['module']);
  50. if(empty($aModule) || !is_array($aModule))
  51. return true;
  52. return (int)$aModule['enabled'] == 1;
  53. }
  54. }
  55. /** @} */