PHP code example of evence / grid-bundle
1. Go to this page and download the library: Download evence/grid-bundle library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
evence / grid-bundle example snippets php
new Evence\Bundle\GridBundle\EvenceGridBundle()
php
$gridHelper = $this->get('evence.grid');
$grid = $gridHelper->createGridBuilder('EvenceOptinBundle:Supplier')
->addDataField('name', 'Name')
-> addAction('edit', 'Edit supplier', 'evence_optin_supplier_edit', array(), array('ROLE_ADMIN'), array('icon' => 'pencil'))
->setMappedParameters(array('id'));
return $gridHelper->gridResponse('EvenceCoreBundle:Admin:simple_grid.html.twig', array(
'grid' => $grid->createView()));
php
namespace Acme\Bundle\DemoBundle\Grid;
use Evence\Bundle\GridBundle\Grid\Grid;
use Evence\Bundle\GridBundle\Grid\GridFieldConfigurator;
use Evence\Bundle\GridBundle\Grid\GridActionConfigurator;
use Evence\Bundle\GridBundle\Grid\GridFilterConfigurator;
use Evence\Bundle\GridBundle\Grid\Filter\FilterMapper;
class UserGrid extends Grid {
public function getEntityName() {
return 'EvenceCoreBundle:AdminUser';
}
public function getOptions(){
return array('numbers' => false, 'checkbox' => false);
}
public function configureFields(GridFieldConfigurator $FieldConfigurator){
$FieldConfigurator ->addDataField('firstname', 'Firstname')
->addDataField('lastname', 'Lastname')
->addDataField('username', 'Username')
->addCustomField('fullname', 'Volledige naam', 'text', function($source, $field){
return $source->getFirstname(). ' ' . $source->getLastname();
})
->addDataField('roles', 'Rollen', 'choice', array('choices' => AdminUser::getRoleTypes(), 'mapped' => false));
}
public function getDataSourceType(){
return parent::DATA_SOURCE_ENTITY;
}
public function configureActions(GridActionConfigurator $actionConfigurator){
$actionConfigurator
->addAction('edit', 'Edit', 'admin_user_edit', array(),array('ROLE_ADMIN'), array('icon' => 'pencil', 'iconType' => 'fontawesome'))
->addAction('remove', 'Delete', 'admin_user_delete', array(),array('ROLE_ADMIN'), array('icon' => 'times', 'iconType' => 'fontawesome'));
$actionConfigurator->setMappedParameters(array('id'));
}
/*
* (non-PHPdoc)
* @see \Evence\Bundle\GridBundle\Grid\Grid::configureFilter()
*/
public function configureFilter(GridFilterConfigurator $filterConfigurator)
{
$filterConfigurator->add('status', 'choice', [
'choices' => Transaction::getStatusses()
])
->add('dateFrom', 'datetime', [])
->add('dateTill', 'datetime', []);
$fm = $filterConfigurator->getFilterMapper();
$fm->add(FilterMapper::gt('transactionAt', 'dateFrom'))->add(FilterMapper::lt('transactionAt', 'dateTill'));
}
}
php
$gridHelper = $this->get('evence.grid');
$grid = $gridHelper->createGrid(new UserGrid());
return $gridHelper->gridResponse('EvenceCoreBundle:Admin:user_read.html.twig', array('grid' => $grid->createView()));