コード例 #1
0
ファイル: nodes.php プロジェクト: kosmosby/medicine-prof
 protected function _buildQueryColumns(KDatabaseQuery $query)
 {
     $query->select('COUNT(crumbs.ancestor_id) AS level')->select('GROUP_CONCAT(crumbs.ancestor_id ORDER BY crumbs.level DESC SEPARATOR \'/\') AS path');
     if ($this->getTable()->hasBehavior('orderable')) {
         if (!$query->count) {
             $query->select('o2.custom AS ordering');
         }
         if (in_array($this->_state->sort, array('title', 'created_on', 'custom'))) {
             $column = sprintf('GROUP_CONCAT(LPAD(`o`.`%s`, 5, \'0\') ORDER BY crumbs.level DESC  SEPARATOR \'/\') AS order_path', $this->_state->sort);
             $query->select($column);
         }
     }
     parent::_buildQueryColumns($query);
 }
コード例 #2
0
ファイル: documents.php プロジェクト: kosmosby/medicine-prof
 protected function _buildQueryColumns(KDatabaseQuery $query)
 {
     $query->select('c.title AS category_title')->select('c.slug AS category_slug')->select('CONCAT_WS(\'-\', tbl.docman_document_id, tbl.slug) AS alias')->select('tbl.access AS access_raw')->select('(CASE tbl.access WHEN -1 THEN COALESCE(c.access, 1) ELSE tbl.access END) AS access')->select('creator.name AS created_by_name')->select('viewlevel.title AS access_title')->select('IF(tbl.publish_on = 0, tbl.created_on, tbl.publish_on) AS publish_date');
     parent::_buildQueryColumns($query);
 }