BxTemplMenuDropdownSite.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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 UnaTemplate UNA Template Classes
  7. * @{
  8. */
  9. /**
  10. * @see BxDolMenu
  11. */
  12. class BxTemplMenuDropdownSite extends BxTemplMenu
  13. {
  14. public function __construct ($aObject, $oTemplate = false)
  15. {
  16. parent::__construct ($aObject, $oTemplate);
  17. }
  18. protected function _getMenuItem ($a)
  19. {
  20. $aResult = parent::_getMenuItem($a);
  21. if(empty($aResult) || !is_array($aResult))
  22. return $aResult;
  23. $aTmplVarsSubmenu = array();
  24. $bTmplVarsSubmenu = !empty($aResult['submenu_object']);
  25. if($bTmplVarsSubmenu && ($oSubmenu = BxDolMenu::getObjectInstance($aResult['submenu_object'])) !== false) {
  26. $aResult['onclick'] = '';
  27. $aResult['class_add'] .= ' has-children';
  28. $aTmplVarsSubmenu['bx_repeat:submenu_items'] = $oSubmenu->getMenuItems();
  29. }
  30. $aResult['bx_if:show_arrow'] = array (
  31. 'condition' => false && $bTmplVarsSubmenu,
  32. 'content' => array(),
  33. );
  34. $aResult['bx_if:show_line'] = array (
  35. 'condition' => true,
  36. 'content' => array(),
  37. );
  38. $aResult['bx_if:show_submenu'] = array (
  39. 'condition' => $bTmplVarsSubmenu,
  40. 'content' => $aTmplVarsSubmenu,
  41. );
  42. return $aResult;
  43. }
  44. }
  45. /** @} */