Esempio n. 1
0
 /**
  * Function to get the pinned items 
  * @param array of fieldids.
  * @return <Array> - List of Settings_Vtiger_MenuItem_Model instances
  */
 public static function getPinnedItems($fieldList = array())
 {
     $skipMenuItemList = array('LBL_AUDIT_TRAIL', 'LBL_SYSTEM_INFO', 'LBL_PROXY_SETTINGS', 'LBL_DEFAULT_MODULE_VIEW', 'LBL_FIELDFORMULAS', 'LBL_FIELDS_ACCESS', 'LBL_MAIL_MERGE', 'NOTIFICATIONSCHEDULERS', 'INVENTORYNOTIFICATION', 'ModTracker', 'LBL_WORKFLOW_LIST', 'LBL_TOOLTIP_MANAGEMENT', 'Webforms Configuration Editor');
     $db = PearDatabase::getInstance();
     $query = 'SELECT * FROM ' . self::$itemsTable . ' WHERE pinned=1 AND active = 0';
     if (!empty($fieldList)) {
         if (!is_array($fieldList)) {
             $fieldList = array($fieldList);
         }
         $query .= ' AND ' . self::$itemsId . ' IN (' . generateQuestionMarks($fieldList) . ')';
     }
     $query .= ' AND name NOT IN (' . generateQuestionMarks($skipMenuItemList) . ')';
     $result = $db->pquery($query, array_merge($fieldList, $skipMenuItemList));
     $noOfMenus = $db->num_rows($result);
     $menuItemModels = array();
     for ($i = 0; $i < $noOfMenus; ++$i) {
         $fieldId = $db->query_result($result, $i, self::$itemId);
         $rowData = $db->query_result_rowdata($result, $i);
         $menuItem = Settings_Vtiger_MenuItem_Model::getInstanceFromArray($rowData);
         $menuItem->setMenu($rowData['blockid']);
         $menuItemModels[$fieldId] = $menuItem;
     }
     return $menuItemModels;
 }