Esempio n. 1
0
/**
 * Запрос на добавление заказа
 *
 * @param array &$Controller объект котнроллера
 *
 * @return array
 */
function cmdAdd(array &$Controller)
{
    $Request =& getRequest($Controller);
    $price = (int) Request\getPostParam($Request, 'price');
    $text = Request\getPostParam($Request, 'text');
    $token = Request\getPostParam($Request, 'token');
    $isValid = validateParams($price, $text, $token);
    if ($isValid !== true) {
        return ['errorMsg' => $isValid];
    }
    $OrderRepository =& ServiceManager\get(getServiceManager($Controller), 'OrderRepository');
    if (OrderRepository\create($OrderRepository, $price, $text) === false) {
        return ['errorMsg' => 'Ошибка создания запроса'];
    } else {
        return [];
    }
}
Esempio n. 2
0
/**
 * Разлогинивание
 *
 * @param array &$Controller объект контроллера
 */
function logoutAction(array &$Controller)
{
    $Request =& getRequest($Controller);
    if (Request\isPost($Request)) {
        $logout = Request\getPostParam($Request, 'logout');
        $token = Request\getPostParam($Request, 'token');
        if (!is_null($logout) && $token === Session\getToken()) {
            Session\clearActiveUserData();
        }
    }
    header('Location: /index', true, 303);
    exit;
}
Esempio n. 3
0
/**
 * Подгрузка новых заказов, если есть
 *
 * @param array &$Controller объект контроллера
 *
 * @return array сериализованный список заказов
 */
function cmdCheckNew(array &$Controller)
{
    $Request =& getRequest($Controller);
    $token = Request\getPostParam($Request, 'token');
    $fromId = (int) Request\getPostParam($Request, 'fromId');
    if ($fromId < 1 || is_null($token) || $token !== Session\getToken()) {
        return ['errorMsg' => 'Неверные данные'];
    }
    $OrderRepository =& ServiceManager\get(getServiceManager($Controller), 'OrderRepository');
    return array_map(function (array $Order) {
        return ['id' => Order\getId($Order), 'text' => htmlspecialchars(Order\getText($Order), ENT_COMPAT | ENT_QUOTES), 'price' => Order\getPrice($Order)];
    }, OrderRepository\fetchWithIdOffset($OrderRepository, $fromId));
}