/** * 分类信息列表 */ public function index() { // 初始化默认查询条件 $request_struct_current = array('where' => array('site_id' => NULL), 'like' => array(), 'orderby' => array('id' => 'DESC'), 'limit' => array('per_page' => 20, 'offset' => 0)); // 收集请求数据 $request_data = $this->input->get(); /* b2c类型的站点列表 */ $site_id_list = role::check('product_category', 0, 0); // 权限验证 if (empty($site_id_list)) { remind::set(Kohana::lang('o_global.access_denied'), request::referrer(), 'error'); } if (isset($request_data['site_id']) && is_numeric($request_data['site_id']) && $request_data['site_id'] != -1) { if (!in_array($request_data['site_id'], $site_id_list)) { remind::set(Kohana::lang('o_global.access_denied'), request::referrer(), 'error'); } } // 站点查询 controller_tool::request_site($request_struct_current, $request_data, $site_id_list); // 排序处理 controller_tool::request_orderby($request_struct_current, $request_data); // 每页条目数 controller_tool::request_per_page($request_struct_current, $request_data); // 当前支持的查询业务逻辑 if (isset($request_data['type']) && isset($request_data['keyword']) && !empty($request_data['keyword'])) { switch ($request_data['type']) { case 'id': $request_struct_current['where'][$request_data['type']] = intval(trim($request_data['keyword'])); $request_data['keyword'] = $request_struct_current['where'][$request_data['type']]; break; case 'name_url': $request_struct_current['where'][$request_data['type']] = trim($request_data['keyword']); $request_data['keyword'] = $request_struct_current['where'][$request_data['type']]; break; case 'name': $request_struct_current['like'][$request_data['type']] = trim($request_data['keyword']); $request_data['keyword'] = $request_struct_current['like'][$request_data['type']]; break; } } //当前查询 $request_struct_current['where']['virtual'] = 1; $count = Mycategory::instance()->count($request_struct_current); // 模板输出 分页 $this->pagination = new Pagination(array('total_items' => $count, 'items_per_page' => $request_struct_current['limit']['per_page'])); $request_struct_current['limit']['offset'] = $this->pagination->sql_offset; $category_list = Mycategory::instance()->lists($request_struct_current); foreach ($category_list as $key => $rs) { $category_list[$key]['site'] = Mysite::instance($rs['site_id'])->get(); $category_list[$key]['parent_category'] = Mycategory::instance($rs['parent_id'])->get('name'); } // 模板输出 $this->template->content = new View("product/virtualcategory_list"); // 变量绑定 $this->template->content->category_list = $category_list; $this->template->content->count = $count; $this->template->content->request_data = $request_data; // 当前应用专用数据 $this->template->content->site_list = Mysite::instance()->select_list($site_id_list); $this->template->content->category_level_list = Mycategory::instance()->sites_subcategories($site_id_list); }