BxBaseMenuCreatePost.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php defined('BX_DOL') or die('hack attempt');
  2. /**
  3. * Copyright (c) UNA, Inc - https://una.io
  4. * MIT License - https://opensource.org/licenses/MIT
  5. *
  6. * @defgroup UnaBaseView UNA Base Representation Classes
  7. * @{
  8. */
  9. /**
  10. * Menu representation.
  11. * @see BxDolMenu
  12. */
  13. class BxBaseMenuCreatePost extends BxTemplMenuCustom
  14. {
  15. protected $_sJsObject;
  16. public function __construct ($aObject, $oTemplate)
  17. {
  18. parent::__construct ($aObject);
  19. $this->_aObject['menu_id'] = 'sys-create-post-menu';
  20. $this->_bShowDivider = false;
  21. $this->_sJsObject = 'oBxDolCreatePost';
  22. }
  23. protected function getMenuItemsRaw ()
  24. {
  25. $aModules = BxDolModuleQuery::getInstance()->getModulesBy(array('type' => 'all_pairs_name_uri', 'active' => 1));
  26. $aMenuItems = $this->_oQuery->getMenuItems();
  27. foreach($aMenuItems as $iKey => $aMenuItem) {
  28. $sModule = $aMenuItem['module'];
  29. if(!isset($aModules[$sModule]))
  30. continue;
  31. $aMenuItems[$iKey]['id'] = $sModule;
  32. $aMenuItems[$iKey]['name'] = $sModule;
  33. $aMenuItems[$iKey]['onclick'] = "return " . $this->_sJsObject . ".getForm('" . $sModule . "', '" . $aModules[$sModule] . "', this)";
  34. }
  35. $aMenuItems['more-auto'] = array(
  36. 'module' => 'system',
  37. 'id' => 'more-auto',
  38. 'name' => 'more-auto',
  39. 'title' => '_sys_menu_item_title_va_more_auto',
  40. 'href' => 'javascript:void(0)',
  41. 'icon' => 'ellipsis-v',
  42. 'active' => 1
  43. );
  44. return $aMenuItems;
  45. }
  46. protected function _isVisible ($a)
  47. {
  48. if(BxDolRequest::serviceExists($a['module'], 'act_as_profile'))
  49. return false;
  50. return parent::_isVisible($a);
  51. }
  52. }
  53. /** @} */