예제 #1
0
require_once _PS_MODULE_DIR_ . 'erpillicopresta/erpillicopresta.php';
require_once _PS_MODULE_DIR_ . 'erpillicopresta/config/Licence.php';
$cookie = new Cookie('psAdmin');
$context = Context::getContext();
$employee = new Employee($cookie->id_employee);
$context->employee = $employee;
$erpip = new ErpIllicopresta();
$token = Tools::getValue('token');
/* check Token */
if (!Tools::isSubmit('token') || $token != Tools::getAdminToken('AdminAdvancedStock' . (int) Tab::getIdFromClassName('AdminAdvancedStock') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminSupplyOrders' . (int) Tab::getIdFromClassName('AdminSupplyOrders') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminStockTransfer' . (int) Tab::getIdFromClassName('AdminStockTransfer') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminInventory' . (int) Tab::getIdFromClassName('AdminInventory') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminStockGap' . (int) Tab::getIdFromClassName('AdminStockGap') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminAdvancedOrder' . (int) Tab::getIdFromClassName('AdminAdvancedOrder') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminAdvancedSupplyOrder' . (int) Tab::getIdFromClassName('AdminAdvancedSupplyOrder') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminModules' . (int) Tab::getIdFromClassName('AdminModules') . (int) $cookie->id_employee) && $token != Tools::getAdminToken('AdminERP' . (int) Tab::getIdFromClassName('AdminERP') . (int) $cookie->id_employee) || Tools::getValue('task') === false) {
    exit('ERROR');
}
switch (Tools::getValue('task')) {
    case 'updateOrderStatus':
        if (Configuration::get($erpip->getControllerStatusName('ADVANCEDORDER')) == STATUS1 && Tools::getValue('action') == 'masse' && count(Tools::getValue('idOrder')) > ERP_ORDERFR) {
            $erp_orderfr = array('free_limitation_msg' => sprintf($erpip->l('You are using a free version of 1-Click ERP which limits the order change state to %d orders.'), ERP_ORDERFR));
            print Tools::jsonEncode($erp_orderfr);
            exit;
        } else {
            if (Tools::isSubmit('idOrder') && Tools::isSubmit('idState') && Tools::isSubmit('action') && Tools::isSubmit('id_employee')) {
                $retour = null;
                $id_employee = (int) Tools::getValue('id_employee');
                require_once _PS_MODULE_DIR_ . 'erpillicopresta/classes/order/ErpOrder.php';
                set_error_handler(array('ErpOrder', 'ErpOrdersAjaxErrorHandler'));
                switch (Tools::getValue('action')) {
                    case 'unique':
                        $retour = array('res' => false, 'newColor' => null);
                        $currOrder = new ErpOrder((int) Tools::getValue('idOrder'));
                        $currOrder->setCurrentState((int) Tools::getValue('idState'), (int) $id_employee);
                        $currOrder = new ErpOrder((int) Tools::getValue('idOrder'));
                        /* Recreate object because the prvious one do not update after modification */