Init
This commit is contained in:
67
simpla/rest/RestOrders.php
Normal file
67
simpla/rest/RestOrders.php
Normal file
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Simpla CMS
|
||||
*
|
||||
* @copyright 2012 Denis Pikusov
|
||||
* @link http://simplacms.ru
|
||||
* @author Denis Pikusov
|
||||
*
|
||||
*/
|
||||
|
||||
require_once('Rest.php');
|
||||
|
||||
class RestOrders extends Rest
|
||||
{
|
||||
public function get()
|
||||
{
|
||||
$items = array();
|
||||
$filter = array();
|
||||
|
||||
// id
|
||||
$filter['id'] = $this->request->get('id');
|
||||
// Сортировка
|
||||
$filter['status'] = $this->request->get('status');
|
||||
// Страница
|
||||
$filter['page'] = $this->request->get('page');
|
||||
// Количество элементов на странице
|
||||
$filter['limit'] = $this->request->get('limit');
|
||||
|
||||
// Какие поля отдавать
|
||||
if($fields = $this->request->get('fields'))
|
||||
$fields = explode(',', $fields);
|
||||
|
||||
// Выбираем
|
||||
foreach($this->orders->get_orders($filter) as $item)
|
||||
{
|
||||
$items[$item->id] = new stdClass();
|
||||
if($fields)
|
||||
{
|
||||
foreach($fields as $field)
|
||||
if(isset($item->$field))
|
||||
$items[$item->id]->$field = $item->$field;
|
||||
}
|
||||
else
|
||||
$items[$item->id] = $item;
|
||||
}
|
||||
if(empty($items))
|
||||
return false;
|
||||
|
||||
// Выбранные id
|
||||
$items_ids = array_keys($items);
|
||||
|
||||
// Присоединяемые данные
|
||||
if($join = $this->request->get('join'))
|
||||
{
|
||||
$join = explode(',', $join);
|
||||
// Изображения
|
||||
if(in_array('purchases', $join))
|
||||
{
|
||||
foreach($this->orders->get_purchases(array('order_id'=>$items_ids)) as $i)
|
||||
if(isset($items[$i->order_id]))
|
||||
$items[$i->order_id]->purchases[] = $i;
|
||||
}
|
||||
}
|
||||
return array_values($items);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user