BxDevStudioPage.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <? 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 Developer Developer
  7. * @ingroup DolphinModules
  8. *
  9. * @{
  10. */
  11. bx_import('BxTemplStudioModule');
  12. class BxDevStudioPage extends BxTemplStudioModule {
  13. protected $oModule;
  14. protected $sUrl;
  15. function BxDevStudioPage($sModule = "", $sPage = "") {
  16. parent::BxTemplStudioModule($sModule, $sPage);
  17. bx_import('BxDolModule');
  18. $this->oModule = BxDolModule::getInstance('bx_developer');
  19. $this->sUrl = BX_DOL_URL_STUDIO . 'module.php?name=%s&page=%s';
  20. }
  21. function getPageMenu($aMenu = array(), $aMarkers = array()) {
  22. $this->aMenuItems = array();
  23. foreach($this->oModule->aTools as $aTool)
  24. $this->aMenuItems[] = array(
  25. 'name' => $aTool['name'],
  26. 'icon' => 'bx-dev-mi-' . $aTool['name'] . '.png',
  27. 'link' => sprintf($this->sUrl, $this->sModule, $aTool['name']),
  28. 'title' => '',
  29. 'selected' => $aTool['name'] == $this->sPage
  30. );
  31. bx_import('BxTemplStudioMenu');
  32. $oMenu = new BxTemplStudioMenu(array('template' => 'menu_main.html', 'menu_items' => $this->aMenuItems), $this->oModule->_oTemplate);
  33. return $oMenu->getCode();
  34. }
  35. function getPageCode($bHidden = false) {
  36. if(in_array($this->sPage, array('general')) || (int)$this->aModule['enabled'] == 0)
  37. $this->oModule->_oTemplate->addStudioInjection('injection_body_style', 'text', ' bx-dev-page-body-single');
  38. else
  39. $this->oModule->_oTemplate->addStudioInjection('injection_body_style', 'text', ' bx-dev-page-body-columns');
  40. return parent::getPageCode();
  41. }
  42. protected function getForms() {
  43. $sPage = bx_get('form_page');
  44. $sPage = $sPage !== false ? bx_process_input($sPage) : '';
  45. $oContent = new BxDevForms(array(
  46. 'page' => $sPage,
  47. 'url' => sprintf($this->sUrl, $this->sModule, BX_DEV_TOOLS_FORMS),
  48. ));
  49. return $this->oModule->_oTemplate->displayPageContent($oContent);
  50. }
  51. protected function getNavigation() {
  52. $sPage = bx_get('nav_page');
  53. $sPage = $sPage !== false ? bx_process_input($sPage) : '';
  54. $oContent = new BxDevNavigation(array(
  55. 'page' => $sPage,
  56. 'url' => sprintf($this->sUrl, $this->sModule, BX_DEV_TOOLS_NAVIGATION),
  57. ));
  58. return $this->oModule->_oTemplate->displayPageContent($oContent);
  59. }
  60. protected function getPages() {
  61. $sType = bx_get('bp_type');
  62. $sType = $sType !== false ? bx_process_input($sType) : '';
  63. $sPage = bx_get('bp_page');
  64. $sPage = $sPage !== false ? bx_process_input($sPage) : '';
  65. $oContent = new BxDevBuilderPage(array(
  66. 'type' => $sType,
  67. 'page' => $sPage,
  68. 'url' => sprintf($this->sUrl, $this->sModule, BX_DEV_TOOLS_PAGES),
  69. ));
  70. $oContent->init();
  71. return $this->oModule->_oTemplate->displayPageContent($oContent);
  72. }
  73. protected function getPermissions() {
  74. $sPage = bx_get('prm_page');
  75. $sPage = $sPage !== false ? bx_process_input($sPage) : '';
  76. $oContent = new BxDevPermissions(array(
  77. 'page' => $sPage,
  78. 'url' => sprintf($this->sUrl, $this->sModule, BX_DEV_TOOLS_PERMISSIONS),
  79. ));
  80. return $this->oModule->_oTemplate->displayPageContent($oContent);
  81. }
  82. }
  83. /** @} */