case 'orders': $result = $result->read('[Order Details]', array('OrderID', 'ProductID', 'Quantity'), $request); break; } echo json_encode($result); exit; } require_once '../include/header.php'; $transport = new \Kendo\Data\DataSourceTransport(); $read = new \Kendo\Data\DataSourceTransportRead(); $read->url('cascadingdropdownlist.php?type=categories')->contentType('application/json')->type('POST'); $transport->read($read)->parameterMap('function(data) { return kendo.stringify(data); }'); $schema = new \Kendo\Data\DataSourceSchema(); $schema->data('data')->total('total'); ?> <div class="demo-section"> <h2>View Order Details</h2> <p> <label for="categories">Categories:</label> <?php $categories = new \Kendo\UI\DropDownList('categories'); $categories->dataSource(array('transport' => $transport, 'schema' => $schema, 'serverFiltering' => true))->dataTextField('CategoryName')->dataValueField('CategoryID')->attr('style', 'width: 300px')->optionLabel('Select category ...'); echo $categories->render(); ?> </p> <p> <label for="products">Products:</label> <?php $read->url('cascadingdropdownlist.php?type=products');
return kendo.stringify(data); }'); $model = new \Kendo\Data\DataSourceSchemaModel(); $productIDField = new \Kendo\Data\DataSourceSchemaModelField('ProductID'); $productIDField->type('number')->editable(false)->nullable(true); $productNameField = new \Kendo\Data\DataSourceSchemaModelField('ProductName'); $productNameField->type('string'); $unitPriceField = new \Kendo\Data\DataSourceSchemaModelField('UnitPrice'); $unitPriceField->type('number'); $unitsInStockField = new \Kendo\Data\DataSourceSchemaModelField('UnitsInStock'); $unitsInStockField->type('number'); $discontinuedField = new \Kendo\Data\DataSourceSchemaModelField('Discontinued'); $discontinuedField->type('boolean'); $model->id('ProductID')->addField($productIDField)->addField($productNameField)->addField($unitPriceField)->addField($discontinuedField)->addField($unitsInStockField); $schema = new \Kendo\Data\DataSourceSchema(); $schema->data('data')->errors('errors')->model($model)->total('total'); $dataSource = new \Kendo\Data\DataSource(); $dataSource->transport($transport)->batch(true)->schema($schema)->pageSize(4); $listview = new \Kendo\UI\ListView('listView'); $listview->dataSource($dataSource)->templateId('template')->editTemplateId('editTemplate')->selectable(true)->navigatable(true)->pageable(true); echo $listview->render(); ?> </div> <script> $(function() { $(".k-add-button").click(function(e) { var listView = $("#listView").data("kendoListView"); listView.add(); e.preventDefault();
<?php $transport = new \Kendo\Data\DataSourceTransport(); $read = new \Kendo\Data\DataSourceTransportRead(); $read->url('selection.php')->contentType('application/json')->type('POST'); $transport->read($read)->parameterMap('function(data) { return kendo.stringify(data); }'); $model = new \Kendo\Data\DataSourceSchemaModel(); $productNameField = new \Kendo\Data\DataSourceSchemaModelField('ProductName'); $productNameField->type('string'); $unitPriceField = new \Kendo\Data\DataSourceSchemaModelField('UnitPrice'); $unitPriceField->type('number'); $unitsInStockField = new \Kendo\Data\DataSourceSchemaModelField('UnitsInStock'); $unitsInStockField->type('number'); $model->addField($productNameField)->addField($unitPriceField)->addField($unitsInStockField); $schema = new \Kendo\Data\DataSourceSchema(); $schema->data('data')->model($model)->total('total'); $dataSource = new \Kendo\Data\DataSource(); $dataSource->transport($transport)->schema($schema)->pageSize(12); $listview = new \Kendo\UI\ListView('listView'); $listview->dataSource($dataSource)->templateId('template')->selectable('multiple')->pageable(true)->dataBound("onDataBound")->change("onChange"); echo $listview->render(); ?> </div> <div class="demo-section"> <h2>Console Log</h2> <div class="console"></div> </div> <script>
$endTimezoneField->from('EndTimezone'); $isAllDayField = new \Kendo\Data\DataSourceSchemaModelField('isAllDay'); $isAllDayField->type('boolean')->from('IsAllDay'); $descriptionField = new \Kendo\Data\DataSourceSchemaModelField('description'); $descriptionField->type('string')->from('Description'); $recurrenceIdField = new \Kendo\Data\DataSourceSchemaModelField('recurrenceId'); $recurrenceIdField->from('RecurrenceID'); $recurrenceRuleField = new \Kendo\Data\DataSourceSchemaModelField('recurrenceRule'); $recurrenceRuleField->from('RecurrenceRule'); $recurrenceExceptionField = new \Kendo\Data\DataSourceSchemaModelField('recurrenceException'); $recurrenceExceptionField->from('RecurrenceException'); $ownerIdField = new \Kendo\Data\DataSourceSchemaModelField('ownerId'); $ownerIdField->from('OwnerID')->defaultValue(1); $model->id('taskID')->addField($taskIDField)->addField($titleField)->addField($startField)->addField($endField)->addField($startTimezoneField)->addField($endTimezoneField)->addField($descriptionField)->addField($recurrenceIdField)->addField($recurrenceRuleField)->addField($recurrenceExceptionField)->addField($ownerIdField)->addField($isAllDayField); $schema = new \Kendo\Data\DataSourceSchema(); $schema->data('data')->errors('errors')->model($model); $dataSource = new \Kendo\Data\DataSource(); $dataSource->transport($transport)->schema($schema)->batch(true); $scheduler = new \Kendo\UI\Scheduler('scheduler'); $scheduler->timezone("Etc/UTC")->date(new DateTime('2013/6/13'))->startTime(new DateTime('2013/6/13 6:00'))->height(600)->addView('day', array('type' => 'week', 'selected' => true))->dataSource($dataSource); ?> <div class="configuration-horizontal"> <div class="config-section"> <label><input type="checkbox" checked />Snap events to slot boundaries</label> </div> </div> <?php echo $scheduler->render(); ?>
?> <script id="toolbar" type="text/x-kendo-template"> <div class="toolbar"> <label class="category-label" for="category">Show products by category:</label> <?php $transport = new \Kendo\Data\DataSourceTransport(); $read = new \Kendo\Data\DataSourceTransportRead(); $read->url('toolbar-template.php?type=categories')->contentType('application/json')->type('POST'); $transport->read($read)->parameterMap('function(data) { return kendo.stringify(data); }'); $schema = new \Kendo\Data\DataSourceSchema(); $schema->data('data'); $dataSource = new \Kendo\Data\DataSource(); $dataSource->transport($transport)->schema($schema); $dropDownList = new \Kendo\UI\DropDownList('category'); $dropDownList->dataSource($dataSource)->dataTextField('CategoryName')->dataValueField('CategoryID')->autoBind(false)->change('categoryChange')->optionLabel('All'); echo $dropDownList->renderInTemplate(); ?> </div> </script> <script> function categoryChange() { var value = this.value(), grid = $("#grid").data("kendoGrid");
if ($_SERVER['REQUEST_METHOD'] == 'POST') { header('Content-Type: application/json'); $request = json_decode(file_get_contents('php://input')); $result = new DataSourceResult('sqlite:..//sample.db'); echo json_encode($result->read('Employees', array('FirstName', 'LastName', 'City', 'Address', 'HomePhone'), $request)); exit; } require_once '../include/header.php'; $transport = new \Kendo\Data\DataSourceTransport(); $read = new \Kendo\Data\DataSourceTransportRead(); $read->url('navigation.php')->contentType('application/json')->type('POST'); $transport->read($read)->parameterMap('function(data) { return kendo.stringify(data); }'); $schema = new \Kendo\Data\DataSourceSchema(); $schema->data('data')->groups('groups')->total('total'); $dataSource = new \Kendo\Data\DataSource(); $group = new \Kendo\Data\DataSourceGroupItem(); $group->field('City'); $dataSource->transport($transport)->pageSize(5)->addGroupItem($group)->schema($schema)->serverSorting(true)->serverFiltering(true)->serverGrouping(true)->serverPaging(true); $grid = new \Kendo\UI\Grid('grid'); $firstName = new \Kendo\UI\GridColumn(); $firstName->field("FirstName")->title('First Name'); $lastName = new \Kendo\UI\GridColumn(); $lastName->field("LastName")->title('Last Name'); $city = new \Kendo\UI\GridColumn(); $city->field('City'); $address = new \Kendo\UI\GridColumn(); $address->field('Address'); $phone = new \Kendo\UI\GridColumn(); $phone->field('HomePhone');
if ($_SERVER['REQUEST_METHOD'] == 'POST') { header('Content-Type: application/json'); $request = json_decode(file_get_contents('php://input')); $result = new DataSourceResult('sqlite:..//sample.db'); echo json_encode($result->read('Products', array('ProductName', 'UnitPrice', 'UnitsInStock', 'UnitsOnOrder'), $request)); exit; } require_once '../include/header.php'; $transport = new \Kendo\Data\DataSourceTransport(); $read = new \Kendo\Data\DataSourceTransportRead(); $read->url('aggregates.php')->contentType('application/json')->type('POST'); $transport->read($read)->parameterMap('function(data) { return kendo.stringify(data); }'); $schema = new \Kendo\Data\DataSourceSchema(); $schema->data('data')->errors('errors')->groups('groups')->aggregates('aggregates')->total('total'); $productNameCount = new \Kendo\Data\DataSourceAggregateItem(); $productNameCount->field("ProductName")->aggregate("count"); $unitsOnOrderAvg = new \Kendo\Data\DataSourceAggregateItem(); $unitsOnOrderAvg->field("UnitsOnOrder")->aggregate("average"); $unitsInStockMin = new \Kendo\Data\DataSourceAggregateItem(); $unitsInStockMin->field("UnitsInStock")->aggregate("min"); $unitsInStockMax = new \Kendo\Data\DataSourceAggregateItem(); $unitsInStockMax->field("UnitsInStock")->aggregate("max"); $unitsInStockCount = new \Kendo\Data\DataSourceAggregateItem(); $unitsInStockCount->field("UnitsInStock")->aggregate("count"); $group = new \Kendo\Data\DataSourceGroupItem(); $group->field('UnitsInStock')->addAggregate($productNameCount, $unitsOnOrderAvg, $unitsInStockMin, $unitsInStockMax, $unitsInStockCount); $dataSource = new \Kendo\Data\DataSource(); $dataSource->transport($transport)->pageSize(7)->serverPaging(true)->serverSorting(true)->serverGrouping(true)->serverFiltering(true)->serverAggregates(true)->addGroupItem($group)->addAggregateItem($productNameCount, $unitsOnOrderAvg, $unitsInStockMin, $unitsInStockMax)->schema($schema); $grid = new \Kendo\UI\Grid('grid');