diff --git a/src/QUI/ERP/Shipping/EventHandler.php b/src/QUI/ERP/Shipping/EventHandler.php index 41eca14b30c05d3c2b0e935f20214b866058efc0..d7baaae358e9fa6c1fd43bb46f3b53d94a8420b7 100644 --- a/src/QUI/ERP/Shipping/EventHandler.php +++ b/src/QUI/ERP/Shipping/EventHandler.php @@ -8,6 +8,7 @@ use QUI; use QUI\ERP\Products\Handler\Fields as ProductFields; +use QUI\ERP\Shipping\ShippingStatus\Handler; use \Quiqqer\Engine\Collector; /** @@ -82,9 +83,19 @@ public static function onPackageSetup() }; - $StatusFactory->createShippingStatus(1, '#dbb50c', $getLocaleTranslations('processing.status.default.1')); - $StatusFactory->createShippingStatus(2, '#418e73', $getLocaleTranslations('processing.status.default.2')); - $StatusFactory->createShippingStatus(3, '#4fd500', $getLocaleTranslations('processing.status.default.3')); + $Handler = QUI\ERP\Shipping\ShippingStatus\Handler::getInstance(); + + if (!$Handler->exists(1)) { + $StatusFactory->createShippingStatus(1, '#dbb50c', $getLocaleTranslations('processing.status.default.1')); + } + + if (!$Handler->exists(2)) { + $StatusFactory->createShippingStatus(2, '#418e73', $getLocaleTranslations('processing.status.default.2')); + } + + if (!$Handler->exists(3)) { + $StatusFactory->createShippingStatus(3, '#4fd500', $getLocaleTranslations('processing.status.default.3')); + } // Product fields diff --git a/src/QUI/ERP/Shipping/ShippingStatus/Handler.php b/src/QUI/ERP/Shipping/ShippingStatus/Handler.php index 6bc9c3c534bf52f6a8f22d7156775f84e65d157a..2cc21f851d4263ebf852364ee2cc043302ef3d10 100644 --- a/src/QUI/ERP/Shipping/ShippingStatus/Handler.php +++ b/src/QUI/ERP/Shipping/ShippingStatus/Handler.php @@ -24,6 +24,19 @@ class Handler extends QUI\Utils\Singleton */ protected $list = null; + /** + * Exists a specific status? + * + * @param integer $id + * @return bool + */ + public function exists($id) + { + $list = Handler::getInstance()->getList(); + + return isset($list[$id]); + } + /** * Return all shipping status entries from the config *