PHP Classes

File: docs/column/container.md

Recommend this page to a friend!
  Classes of Matous Nemec   PHP Data Grid View   docs/column/container.md   Download  
File: docs/column/container.md
Role: Auxiliary data
Content type: text/markdown
Description: Auxiliary data
Class: PHP Data Grid View
Display data in an editable grid on a Web page
Author: By
Last change:
Date: 3 years ago
Size: 5,524 bytes
 

Contents

Class file image Download

=info=[Info] Can add ^Mesour\UI\Button^, ^Mesour\UI\DropDown^ or ^Mesour\UI\Control^ too :-)

=info=[Info] Container column have default disabled ordering and filtering

Implements

Methods for ^Mesour\DataGrid\Column\Container^

| Method | Default | Possible values | Returns | Required | Description | |----------------|:--------:|------------------------------------------------|------------------------------------|----------|--------------------------------------------------------------------------------------------| | addText | none | string $name, $header = NULL | ^Mesour\DataGrid\Column\Text^ | no | Add column text | | addDate | none | string $name, $header = NULL | ^Mesour\DataGrid\Column\Date^ | no | Add column date | | addContainer | none | string $name, $header = NULL | ^Mesour\DataGrid\Column\Container^ | no | Add column container | | addImage | none | string $name, $header = NULL | ^Mesour\DataGrid\Column\Image^ | no | Add column image | | addStatus | none | string $name, $header = NULL | ^Mesour\DataGrid\Column\Status^ | no | Add column status | | addTemplate | none | string $name, $header = NULL | ^Mesour\DataGrid\Column\Template^ | no | Add column template | | addButton | none | string $name, $header = NULL | ^Mesour\UI\Button^ | no | Add button | | addDropDown | none | string $name, $header = NULL | ^Mesour\UI\DropDown^ | no | Add dropdown | | addComponent | none | ^Mesour\UI\Control^ $control, $name = NULL | ^Mesour\UI\Control^ | no | Add control | | setCallback | none | callable $callback | ^Mesour\DataGrid\Column\Container^ | no | Fired before component is rendered. Container will add to column output from this callback |

Callback parameters for method setCallback

| Parameter | Type | Description | |------------|:-----------------------------------------------:|----------------------------------------------| | $column | ^Mesour\DataGrid\Column\Container^ | Container column instance | | $rowData | ^Mesour\Sources\ArrayHash^ / Entity / ActiveRow | Data for current row | | $span | ^Mesour\Components\Html^ | Span instance, can change it | | $control | ^Mesour\Comopnents\Control^ | Current control / column / button / dropdown |

Events

=info=[Info] See onRenderon events page

Usage

$mesourApp = //instance Mesour\Components\Application\IApplication
$source = //some <a href="http://components.mesour.com/version3/component/sources/" target="_blank">data source</a> or two-dimensional array
$source->setPrimaryKey('user_id');

$grid = new Mesour\UI\DataGrid('containerDataGrid', $mesourApp);

$grid->setSource($source);

$grid->enablePager(5);

//! here create container column
$container = $grid->addContainer('surname', 'Name')
    ->setOrdering(TRUE);

//! here add columns to container
$container->addText('surname', 'Surname');

$container->addText('name', 'Name');

$grid->addText('email', 'E-mail');

//! here create container column for actions
$container = $grid->addContainer('actions', 'Actions')
    ->setOrdering(TRUE);

//! here add buttons to container
$container->addButton('edit')
    ->setIcon('pencil')
    ->setType('primary')
    ->setAttribute('href', '#');

$container->addButton('delete')
    ->setIcon('trash')
    ->setType('danger')
    ->setConfirm('Really delete item?')
    ->setAttribute('href', '#');

$grid->render();