/**
  * @param int $dataset_id
  * @return array
  */
 public function getDatasetInfo($dataset_id)
 {
     $dataset_id = (int) $dataset_id;
     if (!$dataset_id) {
         return array();
     }
     $sql = "SELECT dataset_name, dataset_key FROM " . $this->db->table("datasets") . " WHERE dataset_id = " . $dataset_id;
     $result = $this->db->query($sql);
     if (!$result->row['dataset_name']) {
         return array();
     }
     $dataset = new ADataset($result->row['dataset_name'], $result->row['dataset_key']);
     $output['dataset_name'] = $result->row['dataset_name'];
     $output['dataset_key'] = $result->row['dataset_key'];
     $output['num_rows'] = sizeof($dataset->getRows());
     $output['dataset_properties'] = $dataset->getDatasetProperties();
     if (!$output['dataset_properties']) {
         unset($output['dataset_properties']);
     }
     $cols = $dataset->getColumnDefinitions();
     if ($cols) {
         foreach ($cols as $column) {
             $output['dataset_column_definition'][] = array($column['dataset_column_name'] => $column['dataset_column_type']);
         }
     }
     $output['dataset_column_properties'] = $dataset->getColumnsProperties();
     if (!$output['dataset_column_properties']) {
         unset($output['dataset_column_properties']);
     }
     return $output;
 }
示例#2
0
 public function main()
 {
     $this->loadLanguage('common/header');
     $cache_name = 'admin_menu';
     //$this->data['menu_items'] = $this->cache->get($cache_name);
     if (!$this->data['menu_items']) {
         $menu = new ADataset('menu', 'admin');
         $this->data['menu_items'] = $menu->getRows();
         // need to resort by sort_order property and exlude disabled extension items
         $enabled_extension = $this->extensions->getEnabledExtensions();
         $offset = 0;
         // it needs for process repeating order numbers
         $tmp = array();
         foreach ($this->data['menu_items'] as $i => $item) {
             if ($i > 0) {
                 if ($this->data['menu_items'][$i - 1]['parent_id'] != $item['parent_id']) {
                     $offset = 0;
                 }
             }
             //checks for disabled extension
             if ($item['item_type'] == 'extension') {
                 // looks for this name in enabled extensions list. if is not there - skip it
                 if (!$this->_find_itemId_in_extensions($item['item_id'], $enabled_extension)) {
                     continue;
                 } else {
                     // if all fine - loads language of extension for menu item text show
                     if (strpos($item['item_url'], 'http') === false) {
                         $this->loadLanguage($item['item_id'] . '/' . $item['item_id'], 'silent');
                         $item['language'] = $item['item_id'] . '/' . $item['item_id'];
                     }
                 }
             }
             if (isset($tmp[$item['parent_id']][$item['sort_order']])) {
                 $offset++;
             }
             $tmp[$item['parent_id']][$item['sort_order'] + $offset] = $item;
         }
         $this->data['menu_items'] = array();
         foreach ($tmp as $item) {
             ksort($item);
             $this->data['menu_items'] = array_merge($this->data['menu_items'], $item);
         }
         unset($tmp);
         // now set menu array
         $this->cache->set($cache_name, $this->data['menu_items']);
     }
     $this->data['admin_menu'] = $this->_buildMenuArray($this->data['menu_items']);
     $this->view->assign('menu', $this->data['admin_menu']);
     $this->processTemplate('common/menu.tpl');
     //use to update data before render
     $this->extensions->hk_UpdateData($this, __FUNCTION__);
 }
 public function getLog($data = array())
 {
     if (!isset($data['sort'])) {
         $data['sort'] = 'date_added';
     }
     if ($data['offset'] < 0) {
         $data['offset'] = 0;
     }
     if ($data['limit'] < 1) {
         $data['limit'] = 10;
     }
     $dataset = new ADataset('install_upgrade_history', 'admin');
     $rows = $dataset->getRows(array(), $data['sort'], $data['limit'], $data['offset']);
     return $rows;
 }