/** * Возвращает массив из пяти популярных целей * @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); }