|
| 1 | +<?php |
| 2 | +defined('BASEPATH') OR exit('No direct script access allowed'); |
| 3 | + |
| 4 | +class Example_smartgrid extends CI_Controller { |
| 5 | + |
| 6 | + public function index() |
| 7 | + { |
| 8 | + $employee_name = trim($this->input->get_post('employee_name', TRUE)); |
| 9 | + |
| 10 | + // Load the SmartGrid Library |
| 11 | + $this->load->library('SmartGrid/Smartgrid'); |
| 12 | + |
| 13 | + // SQl for grid |
| 14 | + $where = ''; |
| 15 | + $where .= !empty($employee_name) ? " AND employee_name LIKE '%$employee_name%' " : ""; |
| 16 | + $sql = "SELECT *, '<div>HIHIHI</div>' as htmlEx, 'http://php.net/images/logo.php' as imgEx FROM employee WHERE 1=1 $where "; |
| 17 | + |
| 18 | + // Column settings |
| 19 | + $columns = array( |
| 20 | + "employee_id"=>array("header"=>"Employee ID", "type"=>"label", "align"=>"left", "width"=>"80px"), |
| 21 | + "employee_name"=>array("header"=>"Employee Name", "type"=>"label", "align"=>"left", "width"=>"150px"), |
| 22 | + "employee_dob"=>array("header"=>"Date of Birth", "type"=>"date", "align"=>"center", "width"=>"230px", "date_format"=>"l jS \of F Y h:i:s A", "date_format_from"=>"Y-m-d H:i:s"), |
| 23 | + "employee_join_date"=>array("header"=>"Join Date", "type"=>"relativedate", "align"=>"left", "width"=>"150px"), |
| 24 | + "employee_gender"=>array("header"=>"Gender", "type"=>"label", "align"=>"center", "width"=>"50px"), |
| 25 | + "htmlEx"=>array("header"=>"HTML", "type"=>"html", "align"=>"center", "width"=>"50px"), |
| 26 | + "imgEx"=>array("header"=>"Image", "type"=>"image", "align"=>"center", "width"=>"50px", "image_width"=>"50px") |
| 27 | + ); |
| 28 | + // Config settings, optional |
| 29 | + $config = array("page_size"=> 5, |
| 30 | + "grid_name"=> "sg_1", |
| 31 | + "paging_enabled"=> true, |
| 32 | + "toolbar_position"=> 'top', |
| 33 | + "auto_generate_columns"=> true); |
| 34 | + // Set the grid |
| 35 | + $this->smartgrid->set_grid($sql, $columns, $config); |
| 36 | + // Render the grid and assign to data array, so it can be print to on the view |
| 37 | + $data['grid_html1'] = $this->smartgrid->render_grid(); |
| 38 | + |
| 39 | + // Data as array |
| 40 | + $data_list = array( |
| 41 | + array("employee_id"=> "1" ,"employee_name"=> "Dipu Raj1", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 42 | + array("employee_id"=> "2" ,"employee_name"=> "Dipu Raj2", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 43 | + array("employee_id"=> "3" ,"employee_name"=> "Dipu Raj3", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 44 | + array("employee_id"=> "4" ,"employee_name"=> "Dipu Raj4", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 45 | + array("employee_id"=> "5" ,"employee_name"=> "Dipu Raj5", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 46 | + array("employee_id"=> "6" ,"employee_name"=> "Dipu Raj6", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 47 | + array("employee_id"=> "7" ,"employee_name"=> "Dipu Raj7", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 48 | + array("employee_id"=> "8" ,"employee_name"=> "Dipu Raj8", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 49 | + array("employee_id"=> "9" ,"employee_name"=> "Dipu Raj9", "employee_join_date"=> "2017-03-18 15:09:02" ,"employee_gender"=> "Male", "employee_dob"=> "1981-03-17" ), |
| 50 | + ); |
| 51 | + |
| 52 | + // Column settings |
| 53 | + $columns = array( |
| 54 | + "employee_id"=>array("header"=>"Employee ID", "type"=>"label", "align"=>"left", "width"=>"80px"), |
| 55 | + "employee_name"=>array("header"=>"Employee Name", "type"=>"label", "align"=>"left", "width"=>"150px"), |
| 56 | + "employee_dob"=>array("header"=>"Date of Birth", "type"=>"date", "align"=>"center", "width"=>"230px", "date_format"=>"l jS \of F Y h:i:s A", "date_format_from"=>"Y-m-d H:i:s"), |
| 57 | + "employee_join_date"=>array("header"=>"Join Date", "type"=>"relativedate", "align"=>"left", "width"=>"150px"), |
| 58 | + "employee_gender"=>array("header"=>"Gender", "type"=>"label", "align"=>"center", "width"=>"50px"), |
| 59 | + ); |
| 60 | + // Config settings, optional |
| 61 | + $config = array("page_size"=> 5, |
| 62 | + "grid_name"=> "sg_2", |
| 63 | + "paging_enabled"=> true, |
| 64 | + "toolbar_position"=> 'both', |
| 65 | + "auto_generate_columns"=> true); |
| 66 | + // Set the grid |
| 67 | + $this->smartgrid->set_grid($data_list, $columns, $config); |
| 68 | + // Render the grid and assign to data array, so it can be print to on the view |
| 69 | + $data['grid_html2'] = $this->smartgrid->render_grid(); |
| 70 | + |
| 71 | + // Load view |
| 72 | + $this->load->view('example_smartgrid', $data); |
| 73 | + } |
| 74 | +} |
0 commit comments