コード例 #1
0
 public function listAction()
 {
     $config = new Zend_Config_Ini(BASE_PATH . DIRECTORY_SEPARATOR . "configs" . DIRECTORY_SEPARATOR . "grid.ini", 'production');
     $grid = Bvb_Grid::factory('Table', $config);
     $data = $this->_listdata();
     // echo "<pre>";
     //print_r($data);exit;
     $source = new Bvb_Grid_Source_Array($data);
     $grid->setSource($source);
     $grid->setImagesUrl('/grid/');
     $editColumn = new Bvb_Grid_Extra_Column();
     $baseUrl = Zend_Controller_Front::getInstance()->getBaseUrl();
     $editColumn->setPosition('right')->setName('Edit')->setDecorator("<a href=\"{$baseUrl}/admin/menu/edit/id/{{front_menu_id}}\">Edit</a><input class=\"address-id\" name=\"address_id[]\" type=\"hidden\" value=\"{{front_menu_id}}\"/>");
     $deleteColumn = new Bvb_Grid_Extra_Column();
     $deleteColumn->setPosition('right')->setName('Delete')->setDecorator("<a class=\"delete-data\" href=\"{$baseUrl}/menu/delete/id/{{front_menu_id}}\">Delete</a>");
     $grid->addExtraColumns($editColumn, $deleteColumn);
     $grid->updateColumn('front_menu_id', array('hidden' => true));
     $grid->updateColumn('del', array('hidden' => true));
     $grid->setRecordsPerPage(20);
     $grid->setPaginationInterval(array(5 => 5, 10 => 10, 20 => 20, 30 => 30, 40 => 40, 50 => 50, 100 => 100));
     $grid->setExport(array('print', 'word', 'csv', 'excel', 'pdf'));
     $this->view->grid = $grid->deploy();
 }
コード例 #2
0
ファイル: SiteController.php プロジェクト: Aeryris/grid
 /**
  * Adding extra columns to a datagrid. They can be at left or right.
  * Also notice that you can use fields values to populate the fields by surrounding the field name with {{}}
  *
  */
 public function extraAction()
 {
     $grid = $this->grid();
     $select = $this->_db->select()->from(array('c' => 'Country'), array('country' => 'Name', 'Continent', 'Population', 'GovernmentForm', 'HeadOfState'))->join(array('ct' => 'City'), 'c.Capital = ct.ID', array('city' => 'Name'));
     $grid->setSource(new Bvb_Grid_Source_Zend_Select($select));
     $grid->updateColumn('country', array('title' => 'Country (Capital)', 'class' => 'hideInput', 'decorator' => '{{country}} <em>({{city}})</em>'));
     $grid->updateColumn('city', array('title' => 'Capital', 'hidden' => 1));
     $grid->updateColumn('Continent', array('title' => 'Continent'));
     $grid->updateColumn('Population', array('title' => 'Population', 'class' => 'width_80'));
     $grid->updateColumn('LifeExpectancy', array('title' => 'Life E.', 'class' => 'width_50'));
     $grid->updateColumn('GovernmentForm', array('title' => 'Government Form'));
     $grid->updateColumn('HeadOfState', array('title' => 'Head Of State', 'hidden' => 1));
     $grid->setPdfGridColumns(array('Continent', 'Population'));
     $right = new Bvb_Grid_Extra_Column();
     $right->setPosition('right')->setName('Right')->setDecorator("<input class='input_p'type='text' value=\"{{Population}}\" size=\"3\" name='number[]'>");
     $left = new Bvb_Grid_Extra_Column();
     $left->setPosition('left')->setName('Left')->setDecorator("<input  type='checkbox' name='number[]'>");
     $grid->addExtraColumns($right, $left);
     $row = new Bvb_Grid_Extra_Rows();
     $row->addRow('beforePagination', array(array('content' => '<button class="addRecord" type="button" onClick="if(confirm(\'Please confirm you wish to approve all.\')){window.location=\'/admin/campaigns/approveall\'};return false;">Approve All</button>', 'colspan' => 6, 'class' => 'r')));
     $grid->addExtraRows($row);
     #$grid->addExtraColumn($grid->getExtraColumn('Left'));
     $this->view->pages = $grid->deploy();
     $this->render('index');
 }