BxBaseStudioDashboard.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  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 DolphinView Dolphin Studio Representation classes
  7. * @ingroup DolphinStudio
  8. * @{
  9. */
  10. defined('BX_DOL') or die('hack attempt');
  11. bx_import('BxDolStudioDashboard');
  12. class BxBaseStudioDashboard extends BxDolStudioDashboard {
  13. function __construct() {
  14. parent::__construct();
  15. }
  16. function getPageCss() {
  17. return array_merge(parent::getPageCss(), array('dashboard.css'));
  18. }
  19. function getPageJs() {
  20. return array_merge(parent::getPageJs(), array('dashboard.js'));
  21. }
  22. function getPageJsObject() {
  23. return 'oBxDolStudioDashboard';
  24. }
  25. function getPageCode($bHidden = false) {
  26. $oTemplate = BxDolStudioTemplate::getInstance();
  27. $aBlocks = $this->loadBlocks();
  28. $aTmplVars = array(
  29. 'js_object' => $this->getPageJsObject(),
  30. 'bx_repeat:blocks' => array()
  31. );
  32. $sActions = "";
  33. foreach($aBlocks as $sName => $aBlock) {
  34. $sMethod = 'getBlockCode' . ucfirst($sName);
  35. if(!method_exists($this, $sMethod))
  36. continue;
  37. $aTmplVars['bx_repeat:blocks'][] = array(
  38. 'caption' => $this->getBlockCaption($aBlock),
  39. 'items' => $this->$sMethod($sName, $aBlock)
  40. );
  41. }
  42. return $oTemplate->parseHtmlByName('dashboard.html', $aTmplVars);
  43. }
  44. protected function getBlockCodeVersions($sName, $aBlock)
  45. {
  46. $oDb = BxDolDb::getInstance();
  47. $oTemplate = BxDolStudioTemplate::getInstance();
  48. $oTemplate->addJsTranslation('_adm_dbd_txt_dolphin_n_available');
  49. return $oTemplate->parseHtmlByName('dbd_versions.html', array(
  50. 'domain' => $oDb->getParam('site_title'),
  51. 'version' => $oDb->getParam('sys_version'),
  52. 'installed' => bx_time_js(time()-1000)
  53. ));
  54. }
  55. protected function getBlockCodeSpace($sName, $aBlock)
  56. {
  57. $sSizesSpace = $this->getFolderSize(BX_DIRECTORY_PATH_ROOT);
  58. $iSizeDb = $this->getDbSize();
  59. $sSizesMedia = $this->getFolderSize(BX_DIRECTORY_STORAGE);
  60. return BxDolStudioTemplate::getInstance()->parseHtmlByName('dbd_space.html', array(
  61. 'space_size' => _t_format_size($sSizesSpace),
  62. 'db_size' => _t_format_size($iSizeDb),
  63. 'media_size' => _t_format_size($sSizesMedia)
  64. ));
  65. }
  66. }
  67. /** @} */