Skip to content
Code-Schnipsel Gruppen Projekte
list.php 1,98 KiB
Newer Older
Henning Leutz's avatar
Henning Leutz committed
<?php

/**
 * This file contains package_quiqqer_discount_ajax_list
 */

/**
 * Returns discount list
 *
 * @param string $params - JSON query params
 *
 * @return array
 */
QUI::$Ajax->registerFunction(
    'package_quiqqer_discount_ajax_list',
    function ($params) {
Henning Leutz's avatar
Henning Leutz committed
        $Grid = new QUI\Utils\Grid();
Henning Leutz's avatar
Henning Leutz committed
        $Discounts = new QUI\ERP\Discount\Handler();
Henning Leutz's avatar
Henning Leutz committed
        $result = [];
        $Locale = QUI::getLocale();
Henning Leutz's avatar
Henning Leutz committed

        // search
        $params = $Grid->parseDBParams(\json_decode($params, true));

        $params['where'] = [
            'hidden' => 0
        ];

        $data = $Discounts->getChildrenData($params);
Henning Leutz's avatar
Henning Leutz committed

        foreach ($data as $entry) {
            $entry['title'] = [
Henning Leutz's avatar
Henning Leutz committed
                'quiqqer/discount',
Henning Leutz's avatar
Henning Leutz committed
                'discount.' . $entry['id'] . '.title'
Henning Leutz's avatar
Henning Leutz committed

            $entry['text'] = $Locale->get(
                'quiqqer/discount',
Henning Leutz's avatar
Henning Leutz committed
                'discount.' . $entry['id'] . '.title'
Henning Leutz's avatar
Henning Leutz committed
            $type = (int)$entry['discount_type'];
            $usageType = (int)$entry['usage_type'];
Henning Leutz's avatar
Henning Leutz committed

            // attributes
            switch ($type) {
                case QUI\ERP\Discount\Handler::DISCOUNT_TYPE_CURRENCY:
                case QUI\ERP\Discount\Handler::DISCOUNT_TYPE_PERCENT:
                    break;

                default:
                    $entry['discount_type'] = QUI\ERP\Discount\Handler::DISCOUNT_TYPE_PERCENT;
                    break;
            }

            switch ($usageType) {
                case QUI\ERP\Discount\Handler::DISCOUNT_USAGE_TYPE_MANUEL:
                case QUI\ERP\Discount\Handler::DISCOUNT_USAGE_TYPE_AUTOMATIC:
                    break;

                default:
                    $entry['usage_type'] = QUI\ERP\Discount\Handler::DISCOUNT_USAGE_TYPE_MANUEL;
                    break;
            }

Henning Leutz's avatar
Henning Leutz committed
            $result[] = $entry;
        }

        return $Grid->parseResult($result, $Discounts->countChildren(['where' => ['hidden' => 0]]));
Henning Leutz's avatar
Henning Leutz committed
    },
    ['params'],
Henning Leutz's avatar
Henning Leutz committed
    'Permission::checkAdminUser'
);