Exemplo n.º 1
0
 /**
  * Возвращает массив из пяти популярных целей
  * @param int $index С какой цели возвращать
  * @return array mixed
  */
 public function getPopList($index = 0)
 {
     $limit = $start = 0;
     if ((int) $index == 0) {
         $limit = $this->limitCommon;
         $start = 0;
     } else {
         $limit = $this->limitFull;
         $start = (int) $index * $limit;
         //-1
     }
     $list = $this->db->selectPage($total, "\n            SELECT t.category_id AS category, COUNT(t.id) AS cnt, SUM(`close`) AS cl,\n             CASE t.category_id\n              WHEN 1 THEN 'Квартира'\n              WHEN 2 THEN 'Автомобиль'\n              WHEN 3 THEN 'Отпуск'\n              WHEN 4 THEN 'Финансовая подушка'\n              WHEN 5 THEN 'Другое'\n              WHEN 6 THEN 'Свадьба'\n              WHEN 7 THEN 'Бытовая техника'\n              WHEN 8 THEN 'Компьютер'\n             END AS title\n            FROM target t\n            WHERE t.category_id BETWEEN 1 AND 8\n            GROUP BY category\n            ORDER BY cnt DESC;\n        ", $start, $limit);
     $array = array();
     foreach ($list as $k => $v) {
         //@FIXME Дописать работу с системными категориями
         $array[] = array('cat_id' => $v['category'], 'title' => $v['title'], 'count' => $v['cnt'], 'cat_name' => 'АБА-ХАБА', 'cl' => $v['cl']);
     }
     return array('options' => array('total' => $total, 'index' => $index, 'limit' => $limit), 'list' => $array);
 }