public function getList($filter, $list_data = array())
{
$url = '?';
$list_data['quantities'] = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10');
$list_data['show_menu_images'] = $this->config->item('show_menu_images');
$list_data['menus'] = $this->Menus_model->getList($filter);
$categories = $this->Categories_model->getCategories();
$list_data['categories'] = array();
foreach (sort_array($categories) as $category) {
if (!empty($filter['filter_category']) and $filter['filter_category'] != $category['category_id']) {
continue;
}
$category_image = '';
if (!empty($category['image'])) {
$category_image = $this->Image_tool_model->resize($category['image'], '800', '115');
}
$list_data['categories'][$category['category_id']] = array('category_id' => $category['category_id'], 'name' => $category['name'], 'description' => $category['description'], 'priority' => $category['priority'], 'image' => $category_image);
}
$list_data['menu_options'] = array();
$menu_options = $this->Menu_options_model->getMenuOptions();
foreach ($menu_options as $menu_id => $option) {
$option_values = array();
foreach ($option['option_values'] as $value) {
$option_values[] = array('option_value_id' => $value['option_value_id'], 'value' => $value['value'], 'price' => (empty($value['new_price']) or $value['new_price'] == '0.00') ? $this->currency->format($value['price']) : $this->currency->format($value['new_price']));
}
$list_data['menu_options'][$option['menu_id']][] = array('menu_option_id' => $option['menu_option_id'], 'option_id' => $option['option_id'], 'option_name' => $option['option_name'], 'display_type' => $option['display_type'], 'priority' => $option['priority'], 'default_value_id' => isset($option['default_value_id']) ? $option['default_value_id'] : 0, 'option_values' => $option_values);
}
$list_data['option_values'] = array();
foreach ($menu_options as $option) {
if (!isset($list_data['option_values'][$option['option_id']])) {
$list_data['option_values'][$option['option_id']] = $this->Menu_options_model->getOptionValues($option['option_id']);
}
}
if ($this->input->get('category_id')) {
$prefs['base_url'] = site_url('menus?category_id=' . $this->input->get('category_id')) . $url;
} else {
$prefs['base_url'] = site_url('menus' . $url);
}
$prefs['total_rows'] = $this->Menus_model->getCount($filter);
$prefs['per_page'] = $filter['limit'];
$this->load->library('pagination');
$this->pagination->initialize($prefs);
$list_data['pagination'] = array('info' => $this->pagination->create_infos(), 'links' => $this->pagination->create_links());
return $list_data;
}