public function action_index() { $grid = new Petro_Grid('Model_User', static::_columns()); // $grid = new Petro_Grid('Model_User', array('id', 'username', 'email')); // $data['index_content'] = $grid->render(array('username', 'id', 'email')); $this->sidebars->add('Filters', Petro::render_filters(array('username' => array('type' => 'string'), 'email' => array('type' => 'string')))); $this->action_items = array(array('title' => 'Add New User', 'link' => Petro::get_routes('new'))); // $this->template->page_title = "Users"; $this->template->set('content', $grid->render(), false); }
public function action_index() { // $grid = new Petro_Grid($this->model); $grid = new Petro_Grid($this); $this->sidebars->add('Filters', Petro::render_filters(array('code' => array('label' => 'Code', 'type' => 'string'), 'name' => array('type' => 'string'), 'status' => array('type' => 'checkbox', 'collection' => Petro_Lookup::get('client.status'))))); $this->action_items = array(array('title' => 'Add New Client', 'link' => Petro::get_routes('new'), 'visible' => $this->can_create())); // $this->template->page_title = "Clients"; $this->template->set('content', $grid->render(), false); // Petro_Menu::load_from_table(); }
/** * Index */ public function action_index($page = 1, $order_by = null, $scope = null, $filter = null) { $grid = new Petro_Grid('Model_DocMK011', static::_columns('index')); $data['index_content'] = $grid->render(); //$page, $order_by, $scope, $filter); $this->sidebars->add('Sample Sidebar', "This is a sample. Delete this section from code, if you don't want them"); $this->action_items = array(array('title' => 'New Cutting Order', 'link' => 'docmk011/create')); // set this to override default page_title // $this->template->page_title = "docmk011"; $this->template->content = View::forge('docmk011/index', $data, false); }
/** * Define columns */ protected static function _columns($page = 'index') { $columns_for = array('view' => array('id' => array('required' => true), 'mk_no' => array('required' => true), 'mk_date' => array('required' => true, 'grid' => array('process' => function ($data) { return Petro::to_app_date($data->mk_date); })), 'client_id' => array('required' => true), 'client_po', 'delivery_date' => array('grid' => array('process' => function ($data) { return Petro::to_app_date($data['delivery_date']); })), 'deliver_to', 'product_type' => array('grid' => array('process' => function ($data) { return Petro_Lookup::get('product.type', $data->product_type); })), 'belt_type' => array('required' => true, 'grid' => array('process' => function ($data) { return Petro_Lookup::get('belt.type', $data['belt_type']); })), 'belt_color' => array('required' => true, 'grid' => array('process' => function ($data) { return Petro_Lookup::get('belt.color', $data['belt_color']); })), 'belt_width' => array('required' => true, 'grid' => array('process' => function ($data) { return $data->belt_width . ' ' . Petro_Lookup::get('belt.w.unit', $data->belt_width_unit); })), 'belt_width_unit' => array('required' => true, 'grid' => array('process' => function ($data) { return Petro_Lookup::get('belt.w.unit', $data['belt_width_unit']); })), 'belt_ply' => array('required' => true), 'belt_ep' => array('required' => true, 'grid' => array('process' => function ($data) { return Petro_Lookup::get('belt.ep', $data['belt_ep']); })), 'belt_grade' => array('required' => true, 'grid' => array('process' => function ($data) { return Petro_Lookup::get('belt.grade', $data['belt_grade']); })), 'belt_top_grade', 'belt_bot_grade', 'belt_thick' => array('required' => true), 'belt_top_thick' => array('required' => true), 'belt_bot_thick' => array('required' => true), 'belt_length' => array('required' => true), 'belt_length_unit' => array('required' => true), 'belt_end' => array('required' => true, 'grid' => array('process' => function ($data) { return Petro_Lookup::get('belt.end', $data['belt_end']); })), 'belt_qty' => array('required' => true), 'belt_price', 'belt_disc1' => array('label' => 'Discount1'), 'belt_disc2' => array('label' => 'Discount2'), 'belt_disc3' => array('label' => 'Discount3'), 'belt_price_net', 'belt_amount', 'remark', 'creator_id', 'creator_name', 'status'), 'index' => array('id' => array('visible' => false), 'mk_no' => array('label' => __('mk_no'), 'grid' => array('sortable' => true, 'process' => function ($data) { return '<a href="' . Uri::base() . Uri::segment(1) . '/view/' . $data->id . '">' . $data->mk_no . '</a>'; })), 'mk_date' => array('label' => __('mk_date'), 'grid' => array('format' => 'date', 'sortable' => true)), 'client_id' => array('label' => __('client_id'), 'grid' => array('sortable' => true, 'process' => function ($data) { return Petro_Lookup::table('clients', 'id', 'code', $data->client_id); })), 'belt_info' => array('label' => __('belt_info'), 'grid' => array('process' => function ($data) { return BeltInfo::short($data); })), 'belt_qty' => array('label' => __('belt_qty'), 'grid' => array('align' => 'right', 'process' => function ($data) { return $data->belt_qty . ' ' . __('belt_piece'); })), 'belt_price_net' => array('label' => __('belt_price_net'), 'grid' => array('align' => 'right', 'format' => 'number')), 'belt_amount' => array('label' => __('belt_amount'), 'grid' => array('align' => 'right', 'format' => 'number')), 'status' => array('label' => __('status'), 'grid' => array('process' => function ($data) { $t = ''; switch ($data->status) { case 0: $t = 'warning'; break; case 1: $t = 'success'; break; case 2: $t = ''; break; default: $t = 'important'; } return '<span class="label ' . $t . '">' . Petro_Lookup::get('prd.status', $data->status) . '</span>'; })), '_action_' => Petro_Grid::default_actions())); return $columns_for[$page]; }