From a2824ef03cba05570ba605c291758d36bced0ffc Mon Sep 17 00:00:00 2001
From: Henning Leutz <leutz@pcsg.de>
Date: Tue, 30 Jul 2019 08:47:30 +0200
Subject: [PATCH] refactor: code performance + code style

---
 ajax/create.php                               |  4 +-
 ajax/delete.php                               |  8 ++--
 ajax/edit.php                                 |  4 +-
 ajax/frontend/redeem.php                      |  2 +-
 ajax/getList.php                              |  4 +-
 ajax/settings/getCodeGenerators.php           |  2 +-
 src/QUI/ERP/Coupons/CodeGenerator.php         | 10 ++---
 .../Coupons/CodeGenerators/SimpleString.php   | 17 ++++++--
 src/QUI/ERP/Coupons/CodeGenerators/Uuid.php   |  2 +-
 src/QUI/ERP/Coupons/CouponCode.php            | 38 ++++++++----------
 src/QUI/ERP/Coupons/CouponCodeException.php   |  6 ++-
 src/QUI/ERP/Coupons/Handler.php               | 40 +++++++++----------
 12 files changed, 71 insertions(+), 66 deletions(-)

diff --git a/ajax/create.php b/ajax/create.php
index f388f32..8058856 100644
--- a/ajax/create.php
+++ b/ajax/create.php
@@ -16,7 +16,7 @@
 QUI::$Ajax->registerFunction(
     'package_quiqqer_coupons_ajax_create',
     function ($attributes) {
-        $attributes = Orthos::clearArray(json_decode($attributes, true));
+        $attributes = Orthos::clearArray(\json_decode($attributes, true));
 
         try {
             $amount      = 1;
@@ -30,7 +30,7 @@ function ($attributes) {
             $discountIds = [];
 
             if (!empty($attributes['discountIds'])) {
-                $discountIds = explode(',', $attributes['discountIds']);
+                $discountIds = \explode(',', $attributes['discountIds']);
             }
 
             for ($i = 0; $i < $amount; $i++) {
diff --git a/ajax/delete.php b/ajax/delete.php
index 4e45815..9ba4161 100644
--- a/ajax/delete.php
+++ b/ajax/delete.php
@@ -16,7 +16,7 @@
 QUI::$Ajax->registerFunction(
     'package_quiqqer_coupons_ajax_delete',
     function ($ids) {
-        $ids = Orthos::clearArray(json_decode($ids, true));
+        $ids = Orthos::clearArray(\json_decode($ids, true));
 
         try {
             foreach ($ids as $id) {
@@ -28,9 +28,9 @@ function ($ids) {
                 QUI::getLocale()->get(
                     'quiqqer/coupons',
                     'message.ajax.delete.error',
-                    array(
+                    [
                         'error' => $Exception->getMessage()
-                    )
+                    ]
                 )
             );
 
@@ -59,6 +59,6 @@ function ($ids) {
 
         return true;
     },
-    array('ids'),
+    ['ids'],
     'Permission::checkAdminUser'
 );
diff --git a/ajax/edit.php b/ajax/edit.php
index 02f1dd6..1285a40 100644
--- a/ajax/edit.php
+++ b/ajax/edit.php
@@ -17,13 +17,13 @@
     'package_quiqqer_coupons_ajax_edit',
     function ($id, $attributes) {
         $id         = (int)$id;
-        $attributes = Orthos::clearArray(json_decode($attributes, true));
+        $attributes = Orthos::clearArray(\json_decode($attributes, true));
 
         try {
             $discountIds = [];
 
             if (!empty($attributes['discountIds'])) {
-                $discountIds = explode(',', $attributes['discountIds']);
+                $discountIds = \explode(',', $attributes['discountIds']);
             }
 
             $couponCodes[] = Handler::editCouponCode($id, $discountIds, $attributes);
diff --git a/ajax/frontend/redeem.php b/ajax/frontend/redeem.php
index 6ad85bd..45e12d2 100644
--- a/ajax/frontend/redeem.php
+++ b/ajax/frontend/redeem.php
@@ -42,7 +42,7 @@ function ($code, $orderHash) {
         $coupons   = $Order->getDataEntry('quiqqer-coupons');
         $coupons[] = $code;
 
-        $coupons = array_unique($coupons);
+        $coupons = \array_unique($coupons);
 
         $Order->setData('quiqqer-coupons', $coupons);
         $Order->update();
diff --git a/ajax/getList.php b/ajax/getList.php
index 5787df2..66fc414 100644
--- a/ajax/getList.php
+++ b/ajax/getList.php
@@ -20,7 +20,7 @@
     function ($searchParams) {
         Permission::hasPermission(Handler::PERMISSION_VIEW);
 
-        $searchParams = Orthos::clearArray(json_decode($searchParams, true));
+        $searchParams = Orthos::clearArray(\json_decode($searchParams, true));
         $couponCodes  = [];
         $Users        = QUI::getUsers();
         $L            = QUI::getLocale();
@@ -35,7 +35,7 @@ function ($searchParams) {
                     $couponCode['usages'][$k]['userName'] = $User->getUsername();
 
                     // Date
-                    $Date = new DateTime($usage['date']);
+                    $Date                             = new DateTime($usage['date']);
                     $couponCode['usages'][$k]['date'] = $L->formatDate($Date->getTimestamp());
                 }
 
diff --git a/ajax/settings/getCodeGenerators.php b/ajax/settings/getCodeGenerators.php
index 4582049..ac24a4a 100644
--- a/ajax/settings/getCodeGenerators.php
+++ b/ajax/settings/getCodeGenerators.php
@@ -16,6 +16,6 @@
     function () {
         return CodeGenerator::getList();
     },
-    array(),
+    [],
     'Permission::checkAdminUser'
 );
diff --git a/src/QUI/ERP/Coupons/CodeGenerator.php b/src/QUI/ERP/Coupons/CodeGenerator.php
index 84df868..378d4fa 100644
--- a/src/QUI/ERP/Coupons/CodeGenerator.php
+++ b/src/QUI/ERP/Coupons/CodeGenerator.php
@@ -20,7 +20,7 @@ class CodeGenerator
      */
     public static function generate()
     {
-        $generator = '\\QUI\\ERP\\Coupons\\CodeGenerators\\' . self::getCurrentGenerator();
+        $generator = '\\QUI\\ERP\\Coupons\\CodeGenerators\\'.self::getCurrentGenerator();
 
         $Config = QUI::getPackage('quiqqer/coupons')->getConfig();
         $prefix = $Config->get('settings', 'prefix');
@@ -29,7 +29,7 @@ public static function generate()
             $prefix = '';
         }
 
-        return call_user_func($generator . '::generate', $prefix);
+        return \call_user_func($generator.'::generate', $prefix);
     }
 
     /**
@@ -58,11 +58,11 @@ protected static function getCurrentGenerator()
      */
     public static function getList()
     {
-        $dir        = QUI::getPackage('quiqqer/coupons')->getDir() . 'src/QUI/ERP/Coupons/CodeGenerators';
-        $generators = array();
+        $dir        = QUI::getPackage('quiqqer/coupons')->getDir().'src/QUI/ERP/Coupons/CodeGenerators';
+        $generators = [];
 
         foreach (File::readDir($dir, true) as $file) {
-            $generators[] = basename($file, '.php');
+            $generators[] = \basename($file, '.php');
         }
 
         return $generators;
diff --git a/src/QUI/ERP/Coupons/CodeGenerators/SimpleString.php b/src/QUI/ERP/Coupons/CodeGenerators/SimpleString.php
index 2d16799..bc17f69 100644
--- a/src/QUI/ERP/Coupons/CodeGenerators/SimpleString.php
+++ b/src/QUI/ERP/Coupons/CodeGenerators/SimpleString.php
@@ -1,10 +1,19 @@
 <?php
 
+/**
+ * This file contains QUI\ERP\Coupons\CodeGenerators\SimpleString
+ */
+
 namespace QUI\ERP\Coupons\CodeGenerators;
 
 use QUI\ERP\Coupons\CodeGeneratorInterface;
 use QUI\ERP\Coupons\Handler;
 
+/**
+ * Class SimpleString
+ *
+ * @package QUI\ERP\Coupons\CodeGenerators
+ */
 class SimpleString implements CodeGeneratorInterface
 {
     const CODE_LENGTH = 8;
@@ -18,9 +27,9 @@ class SimpleString implements CodeGeneratorInterface
      */
     public static function generate($prefix = '')
     {
-        $characters = array_merge(
-            range('A', 'Z'),
-            range(0, 9)
+        $characters = \array_merge(
+            \range('A', 'Z'),
+            \range(0, 9)
         );
 
         $count = count($characters) - 1;
@@ -29,7 +38,7 @@ public static function generate($prefix = '')
             $code = $prefix;
 
             for ($i = 0; $i < self::CODE_LENGTH; $i++) {
-                $code .= $characters[random_int(0, $count)];
+                $code .= $characters[\random_int(0, $count)];
             }
         } while (Handler::existsCode($code));
 
diff --git a/src/QUI/ERP/Coupons/CodeGenerators/Uuid.php b/src/QUI/ERP/Coupons/CodeGenerators/Uuid.php
index 26e76f8..1efeb2c 100644
--- a/src/QUI/ERP/Coupons/CodeGenerators/Uuid.php
+++ b/src/QUI/ERP/Coupons/CodeGenerators/Uuid.php
@@ -15,6 +15,6 @@ class Uuid implements CodeGeneratorInterface
      */
     public static function generate($prefix = '')
     {
-        return $prefix . UuidCreator::uuid1()->toString();
+        return $prefix.UuidCreator::uuid1()->toString();
     }
 }
diff --git a/src/QUI/ERP/Coupons/CouponCode.php b/src/QUI/ERP/Coupons/CouponCode.php
index 1b7e5f8..a1130c6 100644
--- a/src/QUI/ERP/Coupons/CouponCode.php
+++ b/src/QUI/ERP/Coupons/CouponCode.php
@@ -114,22 +114,22 @@ public function __construct($id)
             ], 404);
         }
 
-        $data = current($result);
+        $data = \current($result);
 
         $this->id    = (int)$data['id'];
         $this->code  = $data['code'];
         $this->title = $data['title'];
 
         if (!empty($data['usages'])) {
-            $this->usages = json_decode($data['usages'], true);
+            $this->usages = \json_decode($data['usages'], true);
         }
 
         if (!empty($data['userIds'])) {
-            $this->userIds = json_decode($data['userIds'], true);
+            $this->userIds = \json_decode($data['userIds'], true);
         }
 
         if (!empty($data['groupIds'])) {
-            $this->groupIds = json_decode($data['groupIds'], true);
+            $this->groupIds = \json_decode($data['groupIds'], true);
         }
 
         if (!empty($data['maxUsages'])) {
@@ -137,7 +137,7 @@ public function __construct($id)
         }
 
         if (!empty($data['discountIds'])) {
-            $this->discountIds = json_decode($data['discountIds'], true);
+            $this->discountIds = \json_decode($data['discountIds'], true);
         }
 
         $this->CreateDate = new \DateTime($data['createDate']);
@@ -241,7 +241,7 @@ public function getDiscounts()
      */
     public function redeem($User = null, $Order = null)
     {
-        if (is_null($User)) {
+        if (\is_null($User)) {
             $User = QUI::getUserBySession();
         }
 
@@ -255,7 +255,7 @@ public function redeem($User = null, $Order = null)
             'orderPrefixedId' => false
         ];
 
-        if (!is_null($Order) && $Order instanceof QUI\ERP\Order\Order) {
+        if (!\is_null($Order) && $Order instanceof QUI\ERP\Order\Order) {
             $usage['orderPrefixedId'] = $Order->getPrefixedId();
         }
 
@@ -263,12 +263,8 @@ public function redeem($User = null, $Order = null)
 
         QUI::getDataBase()->update(
             Handler::getTable(),
-            [
-                'usages' => json_encode($this->usages)
-            ],
-            [
-                'id' => $this->id
-            ]
+            ['usages' => \json_encode($this->usages)],
+            ['id' => $this->id]
         );
 
         $this->checkValidity();
@@ -318,7 +314,7 @@ public function checkRedemption($User)
         }
 
         if (!$discountsValid) {
-            if (count($this->discountIds) === 1) {
+            if (\count($this->discountIds) === 1) {
                 throw new CouponCodeException([
                     'quiqqer/coupons',
                     'exception.CouponCode.discount_invalid',
@@ -357,7 +353,7 @@ public function checkRedemption($User)
 
         // Restriction to QUIQQER user(s)
         if (!empty($this->userIds)) {
-            if (in_array($User->getId(), $this->userIds)) {
+            if (\in_array($User->getId(), $this->userIds)) {
                 if ($this->maxUsages !== Handler::MAX_USAGE_UNLIMITED
                     && $this->hasUserRedeemed($User)) {
                     throw new CouponCodeException([
@@ -459,9 +455,7 @@ public function delete()
 
         QUI::getDataBase()->delete(
             Handler::getTable(),
-            [
-                'id' => $this->id
-            ]
+            ['id' => $this->id]
         );
     }
 
@@ -508,6 +502,7 @@ protected function checkValidity()
 
             if ($Now > $this->ValidUntilDate) {
                 $this->valid = false;
+
                 return;
             }
         }
@@ -518,6 +513,7 @@ protected function checkValidity()
 
         if ($this->maxUsages === Handler::MAX_USAGE_ONCE && !empty($this->usages)) {
             $this->valid = false;
+
             return;
         }
 
@@ -557,7 +553,7 @@ public function addToOrder(QUI\ERP\Order\OrderInProcess $Order)
             return;
         }
 
-        if (!is_array($coupons)) {
+        if (!\is_array($coupons)) {
             return;
         }
 
@@ -619,13 +615,13 @@ public function addToOrder(QUI\ERP\Order\OrderInProcess $Order)
             $code     = $Article->getCustomData()['code'];
 
             foreach ($articles as $Entry) {
-                if (!method_exists($Entry, 'getCustomData')) {
+                if (!\method_exists($Entry, 'getCustomData')) {
                     continue;
                 }
 
                 $customData = $Entry->getCustomData();
 
-                if (!$customData || !is_array($customData)) {
+                if (!$customData || !\is_array($customData)) {
                     continue;
                 }
 
diff --git a/src/QUI/ERP/Coupons/CouponCodeException.php b/src/QUI/ERP/Coupons/CouponCodeException.php
index 818fb11..bffdcc8 100644
--- a/src/QUI/ERP/Coupons/CouponCodeException.php
+++ b/src/QUI/ERP/Coupons/CouponCodeException.php
@@ -4,7 +4,11 @@
 
 use QUI;
 
+/**
+ * Class CouponCodeException
+ *
+ * @package QUI\ERP\Coupons
+ */
 class CouponCodeException extends QUI\Exception
 {
-
 }
diff --git a/src/QUI/ERP/Coupons/Handler.php b/src/QUI/ERP/Coupons/Handler.php
index 0b721a0..cd62db5 100644
--- a/src/QUI/ERP/Coupons/Handler.php
+++ b/src/QUI/ERP/Coupons/Handler.php
@@ -17,17 +17,17 @@ class Handler
     /**
      * Permissions
      */
-    const PERMISSION_VIEW   = 'quiqqer.couponcode.view';
+    const PERMISSION_VIEW = 'quiqqer.couponcode.view';
     const PERMISSION_CREATE = 'quiqqer.couponcode.create';
-    const PERMISSION_EDIT   = 'quiqqer.couponcode.edit';
+    const PERMISSION_EDIT = 'quiqqer.couponcode.edit';
     const PERMISSION_DELETE = 'quiqqer.couponcode.delete';
 
     /**
      * Valur for `maxUsage`
      */
     const MAX_USAGE_ONCE_PER_USER = 'oncePerUser';
-    const MAX_USAGE_ONCE          = 'once';
-    const MAX_USAGE_UNLIMITED     = 'unlimited';
+    const MAX_USAGE_ONCE = 'once';
+    const MAX_USAGE_UNLIMITED = 'unlimited';
 
     /**
      * CouponCode runtime cache
@@ -153,7 +153,7 @@ public static function createCouponCode($discountIds, $settings = [])
             'createDate'  => $Now->format('Y-m-d H:i:s'),
             'code'        => $code,
             'maxUsages'   => $maxUsages,
-            'discountIds' => json_encode($discountIds)
+            'discountIds' => \json_encode($discountIds)
         ];
 
         if (!empty($settings['validUntilDate'])) {
@@ -162,11 +162,11 @@ public static function createCouponCode($discountIds, $settings = [])
         }
 
         if (!empty($settings['userIds'])) {
-            $couponCode['userIds'] = json_encode(explode(",", $settings['userIds']));
+            $couponCode['userIds'] = \json_encode(\explode(",", $settings['userIds']));
         }
 
         if (!empty($settings['groupIds'])) {
-            $couponCode['groupIds'] = json_encode(explode(",", $settings['groupIds']));
+            $couponCode['groupIds'] = \json_encode(\explode(",", $settings['groupIds']));
         }
 
         QUI::getDataBase()->insert(
@@ -250,7 +250,7 @@ public static function editCouponCode($id, $discountIds, $settings = [])
             'createDate'  => $Now->format('Y-m-d H:i:s'),
             'code'        => $code,
             'maxUsages'   => $maxUsages,
-            'discountIds' => json_encode($discountIds)
+            'discountIds' => \json_encode($discountIds)
         ];
 
         if (!empty($settings['validUntilDate'])) {
@@ -261,13 +261,13 @@ public static function editCouponCode($id, $discountIds, $settings = [])
         }
 
         if (!empty($settings['userIds'])) {
-            $couponCode['userIds'] = json_encode(explode(",", $settings['userIds']));
+            $couponCode['userIds'] = \json_encode(\explode(",", $settings['userIds']));
         } else {
             $couponCode['userIds'] = null;
         }
 
         if (!empty($settings['groupIds'])) {
-            $couponCode['groupIds'] = json_encode(explode(",", $settings['groupIds']));
+            $couponCode['groupIds'] = \json_encode(\explode(",", $settings['groupIds']));
         } else {
             $couponCode['groupIds'] = null;
         }
@@ -275,9 +275,7 @@ public static function editCouponCode($id, $discountIds, $settings = [])
         QUI::getDataBase()->update(
             self::getTable(),
             $couponCode,
-            [
-                'id' => $id
-            ]
+            ['id' => $id]
         );
 
         return self::getCouponCode($id);
@@ -322,7 +320,7 @@ public static function search($searchParams, $countOnly = false)
             }
 
             if (!empty($whereOr)) {
-                $where[] = '('.implode(' OR ', $whereOr).')';
+                $where[] = '('.\implode(' OR ', $whereOr).')';
 
                 $binds['search'] = [
                     'value' => '%'.$searchParams['search'].'%',
@@ -333,7 +331,7 @@ public static function search($searchParams, $countOnly = false)
 
         // build WHERE query string
         if (!empty($where)) {
-            $sql .= " WHERE ".implode(" AND ", $where);
+            $sql .= " WHERE ".\implode(" AND ", $where);
         }
 
         // ORDER
@@ -356,9 +354,7 @@ public static function search($searchParams, $countOnly = false)
         }
 
         // LIMIT
-        if (!empty($gridParams['limit'])
-            && !$countOnly
-        ) {
+        if (!empty($gridParams['limit']) && !$countOnly) {
             $sql .= " LIMIT ".$gridParams['limit'];
         } else {
             if (!$countOnly) {
@@ -385,7 +381,7 @@ public static function search($searchParams, $countOnly = false)
         }
 
         if ($countOnly) {
-            return (int)current(current($result));
+            return (int)\current(\current($result));
         }
 
         foreach ($result as $row) {
@@ -460,7 +456,7 @@ public static function deleteExpiredCouponCodes($days = null)
             ]
         ];
 
-        if (!is_null($days)) {
+        if (!\is_null($days)) {
             $days    = (int)$days;
             $OldDate = new \DateTime();
             $OldDate->sub(new \DateInterval('P'.$days.'D'));
@@ -494,7 +490,7 @@ public static function deleteRedeemedCouponCodes($days = null)
             ]
         ];
 
-        if (!is_null($days)) {
+        if (!\is_null($days)) {
             $days    = (int)$days;
             $OldDate = new \DateTime();
             $OldDate->sub(new \DateInterval('P'.$days.'D'));
@@ -519,7 +515,7 @@ public static function deleteRedeemedCouponCodes($days = null)
      */
     public static function sanitizeCode($code)
     {
-        return preg_replace('#[^A-Za-z0-9\.\-_\*&$% ]#i', '', $code);
+        return \preg_replace('#[^A-Za-z0-9\.\-_\*&$% ]#i', '', $code);
     }
 
     /**
-- 
GitLab