Exemplo n.º 1
0
 public function getMenu()
 {
     $language = OW::getLanguage();
     $menu = new BASE_CMP_ContentMenu();
     $menuItem = new BASE_MenuItem();
     $menuItem->setKey('all');
     $menuItem->setPrefix('questions');
     $menuItem->setLabel($language->text('questions', 'list_all_tab'));
     $menuItem->setOrder(1);
     $menuItem->setUrl(OW::getRouter()->urlForRoute('questions-all'));
     $menuItem->setIconClass('ow_ic_lens');
     $menu->addElement($menuItem);
     if (OW::getUser()->isAuthenticated()) {
         if (OW::getPluginManager()->isPluginActive('friends')) {
             $menuItem = new BASE_MenuItem();
             $menuItem->setKey('friends');
             $menuItem->setPrefix('questions');
             $menuItem->setLabel($language->text('questions', 'list_friends_tab'));
             $menuItem->setOrder(2);
             $menuItem->setUrl(OW::getRouter()->urlForRoute('questions-friends'));
             $menuItem->setIconClass('ow_ic_user');
             $menu->addElement($menuItem);
         }
         $menuItem = new BASE_MenuItem();
         $menuItem->setKey('my');
         $menuItem->setPrefix('questions');
         $menuItem->setLabel($language->text('questions', 'list_my_tab'));
         $menuItem->setOrder(3);
         $menuItem->setUrl(OW::getRouter()->urlForRoute('questions-my'));
         $menuItem->setIconClass('ow_ic_user');
         $menu->addElement($menuItem);
     }
     return $menu;
 }
Exemplo n.º 2
0
 public function collectMailboxMenu(BASE_CLASS_EventCollector $event)
 {
     if (!OW::getUser()->isAuthorized('mailbox', 'send_message')) {
         return;
     }
     $language = OW::getLanguage();
     $item = new BASE_MenuItem();
     $item->setLabel($language->text('mcompose', 'compose_btn'));
     $item->setIconClass('ow_ic_new');
     $item->setPrefix('mcompose');
     $item->setUrl(OW::getRouter()->urlForRoute("mcompose-index"));
     $item->setKey('compose');
     $item->setOrder(3);
     $event->add($item);
     $staticUrl = OW::getPluginManager()->getPlugin('mcompose')->getStaticUrl();
     OW::getDocument()->addStyleSheet($staticUrl . 'style.css');
 }
Exemplo n.º 3
0
 /**
  * Converts query result array into BASE_MenuItem items array.
  *
  * @param array $items
  */
 public function getMenuItems(array $menuItems)
 {
     $resultArray = array();
     foreach ($menuItems as $value) {
         $visible = (int) $value['visibleFor'];
         $auth = OW::getUser()->isAuthenticated();
         if ($visible === 0 || $visible === 1 && $auth || $visible === 2 && !$auth) {
             continue;
         }
         if (!empty($value['externalUrl'])) {
             $url = $value['externalUrl'];
         } else {
             if (!empty($value['uri'])) {
                 $url = OW::getRouter()->getBaseUrl() . $value['uri'];
             } else {
                 if (!empty($value['routePath'])) {
                     $url = OW::getRouter()->urlForRoute($value['routePath']);
                 } else {
                     if (!empty($value['class']) && !empty($value['action'])) {
                         $url = OW::getRouter()->urlFor($value['class'], $value['action']);
                     } else {
                         $url = '_INVALID_URL_';
                     }
                 }
             }
         }
         $menuItem = new BASE_MenuItem();
         $menuItem->setKey($value['menu_key']);
         $menuItem->setLabel(OW::getLanguage()->text($value['prefix'], $value['menu_key']));
         $menuItem->setOrder($value['order']);
         $menuItem->setUrl($url);
         $menuItem->setNewWindow($value['newWindow']);
         $menuItem->setPrefix($value['prefix']);
         $resultArray[] = $menuItem;
     }
     return $resultArray;
 }