diff --git a/.env.example b/.env.example
index bfb76ce72..38583fd78 100644
--- a/.env.example
+++ b/.env.example
@@ -1,6 +1,6 @@
APP_NAME=Bagisto
APP_ENV=local
-APP_VERSION=1.1.2
+APP_VERSION=1.2.0-BETA1
APP_KEY=
APP_DEBUG=true
APP_URL=http://localhost
diff --git a/.env.testing b/.env.testing
index 845e4d42e..bb2ef3626 100644
--- a/.env.testing
+++ b/.env.testing
@@ -1,6 +1,6 @@
APP_NAME=Laravel
APP_ENV=local
-APP_VERSION=1.1.2
+APP_VERSION=1.2.0-BETA1
APP_KEY=base64:G4KY3tUsTaY9ONo1n/QyJvVLQZdJDgbIkSJswFK01HE=
APP_DEBUG=true
APP_URL=http://localhost
diff --git a/CHANGELOG for v1.x.x.md b/CHANGELOG for v1.x.x.md
index cf19fcff5..84c5b1bdf 100644
--- a/CHANGELOG for v1.x.x.md
+++ b/CHANGELOG for v1.x.x.md
@@ -2,7 +2,7 @@
#### This changelog consists the bug & security fixes and new features being included in the releases listed below.
-## **v1.1.3 (19th of June 2020)** - *Release*
+## **v1.2.0-BETA1 (18th of August 2020)** - *Release*
* [feature] - Customer group price for products implemented
@@ -12,6 +12,23 @@
* [feature] - Search engine optimization with rich snippet
+* [feature] - Blade file tracer
+
+* [feature] - Search with Elastic and Algolia
+
+* [feature] - Support for admin multi theme
+
+* [feature] - One click upgrade
+
+* [feature] - Social login (Facebook, Twitter, Google, Linkedin, Github)
+
+* [feature] - Social share
+
+* [feature] - Store configuration added
+
+* [feature] - Feature to disable compare option
+
+* [feature] - Store configuration added for product listing
* #343 [fixed] - Translation strings are missing from awful amount of controllers when returning responses with flash. And optimise translation strings for faster static translations.
@@ -21,6 +38,8 @@
* #985 [fixed] - Dynamically insert products
+* #1246 [fixed] - Implement a feature to import product through csv file.
+
* #1258 [fixed] - If payment is done through paypal then invoice should generate automatically and status of Order should be processing.
* #1362 [fixed] - Site logo and Category Image are broken
@@ -37,6 +56,8 @@
* #2060 [fixed] - auto generate coupon accordion not getting hidden while selecting no specific coupons
+* #2141 [fixed] - SQLSTATE[42S02]: Base table or view not found: 1146 Table '[DB_PREFIX].category_translations' doesn't exist
+
* #2159 [fixed] - Taking more time to load product details in shopping cart.
* #2415 [fixed] - Add TO CART button should replace by “BOOk NOW” button for booking product.
@@ -81,6 +102,8 @@
* #2936 [fixed] - change the admin route for another
+* #2937 [fixed] - Checkout old theme
+
* #2942 [fixed] - Randomize New and Featured Products
* #2949 [fixed] - failed to migrate with new database using installer
@@ -91,10 +114,16 @@
* #2969 [fixed] - Cancel icon is not visible in velocity theme for customer order detail
+* #2971 [fixed] - Need to add the possibility to translate velocity metadata
+
* #2972 [fixed] - can add to homescreen on mobile device in velocity theme
+* #2973 [fixed] - force the execution of the shipping methods trigger
+
* #2974 [fixed] - Thumbnails are not generating on mobile ifproduct has more than 4 photos
+* #2981 [fixed] - When paying with Paypal the user can change the amounts of the products
+
* #2886 [fixed] - Configuration option for Compare
* #2985 [fixed] - Product category is not saving
@@ -143,6 +172,8 @@
* #3029 [fixed] - velocity theme not fully responsive
+* #3030 [fixed] - Api for coupons..
+
* #3032 [fixed] - [Critical] Onecheckout preventing to continue to shipping method after selecting address
* #3035 [fixed] - Please update pwa for bagisto
@@ -205,6 +236,8 @@
* #3120 [fixed] - admin panel multi locale
+* #3131 [fixed] - Velocity theme responsiveness issue after changing the language to Arabic RTL
+
* #3135 [fixed] - How can I cad comment box in checkout form.
* #3136 [fixed] - configurable product variant name gets removed from the catalog list
@@ -267,6 +300,8 @@
* #3222 [fixed] - UI issue in event ticket booking special price date field
+* #3231 [fixed] - "error!options are missing alert" on home page shouldn't be shown
+
* #3232 [fixed] - homepage is showing 404 error page in both theme
* #3234 [fixed] - UI Issue for cart, wishlist, compare icon number indicator in RTL
@@ -283,6 +318,8 @@
* #3241 [fixed] - login fields(email,passwords) are in the center when in RTL
+* #3243 [fixed] - Email settings are empty in backend
+
* #3246 [fixed] - fix icon layout in edit booking product page for RTL
* #3248 [fixed] - fix css for cancel icon on success alert RTL
@@ -313,6 +350,320 @@
* #3298 [fixed] - Header content category always redirect to 404 error page
+* #3301 [fixed] - fix search keys in search bar for analysed keywords in velocity
+
+* #3303 [fixed] - Getting exception on changing locale when customer has opened downloadable products grid from his account
+
+* #3304 [fixed] - Getting incorrect message on delete all from wishlist in case of guest user only
+
+* #3307 [fixed] - Getting exception on changing locale when customer has opened order grid from his account
+
+* #3309 [fixed] - 500 error when loading /search with "term" in query string
+
+* #3310 [fixed] - Editing product title should not change URL if it has already been set
+
+* #3311 [fixed] - Mobile Bug - Filters disappear when no products match filters
+
+* #3313 [fixed] - In cart, in place of only qty, quantity and price both are coming in ar.
+
+* #3314 [fixed] - admin back to sign in link always redirects to same page after admin login
+
+* #3315 [fixed] - compare option should be remove from customer profile options list if the compare is disable
+
+* #3316 [fixed] - layout issues in checkout page while placing order of booking product
+
+* #3317 [fixed] - Pagination layout should be implemented at customer end
+
+* #3319 [fixed] - Issue in validation message while placing order of booking type product if customer did not fill select rent time
+
+* #3320 [fixed] - Getting exception on frontend when opening a category in which brand is selected as filterable attribute.
+
+* #3321 [fixed] - Comapre button should come between wishlist and cart in arabic also.
+
+* #3322 [fixed] - Title and url both are coming same on layered navigation page in velocity theme
+
+* #3323 [fixed] - text written in search page(for invalid search) should be properly aligned
+
+* #3328 [fixed] - velocity logo and shop by category override
+
+* #3330 [fixed] - Layout issue while adding configurable product to cart in velocity theme
+
+* #3331 [fixed] - layout issue while using filter at any grid(admin end) in ar locale
+
+* #3335 [fixed] - New Label is missing in VelocityTheme
+
+* #3338 [fixed] - bundle option should be marked as mandatory if it's required
+
+* #3339 [fixed] - category display mode options are not working
+
+* #3340 [fixed] - mobile view not able to updated currency
+
+* #3341 [fixed] - filter option should be remove from the search page in mobile view
+
+* #3354 [fixed] - error when upload invalid image/file type in search
+
+* #3356 [fixed] - search term removed from the search bar in default theme
+
+* #3357 [fixed] - Image search feature is not available in mobile view default theme
+
+* #3358 [fixed] - New and sale icon lable on product issue in RTL
+
+* #3360 [fixed] - filter and items per page is getting collapsed in ar
+
+* #3363 [fixed] - null value accepted in filter option at customer end
+
+* #3365 [fixed] - On mobile responsive on ios sign up button is missing
+
+* #3369 [fixed] - getting exception when clicking on any social login icon
+
+* #3371 [fixed] - Easy bug: incorrect PL lang file
+
+* #3373 [fixed] - New Error migration Bagisto Install MySQL/MariaDB
+
+* #3374 [fixed] - Social Login Error
+
+* #3377 [fixed] - error when click to twitter social login
+
+* #3379 [fixed] - Getting error on migration command.
+
+* #3380 [fixed] - Layout issues on mobile view in ar locale
+
+* #3381 [fixed] - Customer city name does not allow hyphen
+
+* #3392 [fixed] - Translation key is not added in order settings
+
+* #3393 [fixed] - Getting broken image link for locales in mobile view.
+
+* #3394 [fixed] - Not able to open menu in mobile view having locale arabic.
+
+* #3395 [fixed] - default group should be set for the social login customer
+
+* #3396 [fixed] - getting error when admin view order placed by social customers
+
+* #3399 [fixed] - Remove from wishlist button is displaying as 1 when mouse not hover on product, this occur in all locale except English.
+
+* #3400 [fixed] - fix UI for the compare page in default theme
+
+* #3409 [fixed] - Wrong validation when remove variant(s) of configurable product
+
+* #3411 [fixed] - Sale level is displaying even if special price date has been already expired
+
+* #3417 [fixed] - social login icons in RTL
+
+* #3422 [fixed] - getting exception when view order of deleted customer
+
+* #3423 [fixed] - Cannot change account password
+
+* #3425 [fixed] - Impossible to connect, please check your Algolia Application Id.
+
+* #3443 [fixed] - customer group price functionality is not working
+
+* #3444 [fixed] - Layout issue on review page
+
+* #3445 [fixed] - filter tag is out of box in search key term for long product name
+
+* #3447 [fixed] - By default social login should be enabled
+
+* #3451 [fixed] - Change request regarding shipments
+
+* #3453 [fixed] - Invoice state is always set to paid
+
+* #3457 [fixed] - number indicator are hidden on wishlist or compare icon RTL format
+
+* #3458 [fixed] - not able to add (virtual,booking etc.) product to compare list by logged in user
+
+* #3460 [fixed] - Add address option should come below in velocity theme
+
+* #3465 [fixed] - When I update the folder name from bagisto to new name, the logo image doesn't appear, why?
+
+* #3467 [fixed] - layout issue at shop end in ar
+
+* #3469 [fixed] - Cannot remove a layered navigation attribute from product
+
+* #3472 [fixed] - layout issue in order and downloadable grid at customer end in mobile view
+
+* #3478 [fixed] - Getting exception on putting limit =0 in url
+
+* #3484 [fixed] - missing product quick view icon on search page
+
+* #3485 [fixed] - layout issue on category page for filterable attributes
+
+* #3486 [fixed] - Compare feature shows wrong attribute value
+
+* #3487 [fixed] - Velocity RTL product image zoom floats right - not showing
+
+* #3488 [fixed] - color attribute default swatch value should be selected as dropdown swatch
+
+* #3489 [fixed] - Sale icon is not showing even if catalog rule is applied for grouped and bundle type products
+
+* #3490 [fixed] - Back icon is not working in catalog and cart rule grid
+
+* #3491 [fixed] - broken image for color image swatch type
+
+* #3494 [fixed] - compare feature is not working properly if admin creates a image type attribute and give attribute code and name "image"
+
+* #3495 [fixed] - image is not coming in compare list for any image type attribute
+
+* #3496 [fixed] - showing values in compare list of those attribute which has been removed from attribute family
+
+* #3498 [fixed] - No.of items in compare should be displayed with compare tab in default theme
+
+* #3501 [fixed] - unable to download files while comparing products
+
+* #3502 [fixed] - Side bar menu is getting removed while editing/adding customer address at admin end
+
+* #3505 [fixed] - No message on removing products or deleting all from compare list in default theme
+
+* #3506 [fixed] - Uploaded image is not showing while editing Advertisement 4,3,2 Images for arabic locale
+
+* #3507 [fixed] - locale filter is not working properly in product grid
+
+* #3508 [fixed] - Error on PL lang file
+
+* #3514 [fixed] - Use "has been" in place of "had been" in mail to warehouse
+
+* #3515 [fixed] - Order id is missing in mail which customer get when admin add any comment in order
+
+* #3519 [fixed] - Customer is getting mails in Arabic for order information and rest mails in English for same order which was placed in ar locale.
+
+* #3520 [fixed] - Admin should get mail according to admin's default locale not customer's locale
+
+* #3521 [fixed] - layout issue in order information in default theme at customer end
+
+* #3522 [fixed] - Admin is not getting mail when customer cancels order
+
+* #3526 [fixed] - On changing current password admin/customer should get mail
+
+* #3530 [fixed] - mobile view sortBy functionality in category page is not working
+
+* #3531 [fixed] - In price filter, allow comma(,) for price in filter as in french locale float values used to be separated by , in stead of .
+
+* #3532 [fixed] - (Mobile view) getting product image issue when set grid as List type in category page
+
+* #3533 [fixed] - Products Per Page configuration is not working properly
+
+* #3534 [fixed] - Add validation for products per page field otherwise if admin entered string value then customer gets exception on category page
+
+* #3535 [fixed] - Sort By configuration from admin end is not working properly
+
+* #3546 [fixed] - Shipping charge is not getting calculated properly in case customer removes the product just before clicking on place order
+
+* #3547 [fixed] - checkout country null issue
+
+* #3548 [fixed] - filter is not working properly in attribute grid at admin end
+
+* #3550 [fixed] - there should be tooltip text on mouse hover on compare icon on product
+
+* #3554 [fixed] - Cart Rule Issue
+
+* #3558 [fixed] - Incorrect price showing for configurable product on front end
+
+* #3561 [fixed] - Customer Revenue is not getting minus after refund
+
+* #3562 [fixed] - getting exception when view category page in frontend
+
+* #3564 [fixed] - getting exception if admin uploads higher size image in image swatch while editing/adding attribute
+
+* #3570 [fixed] - Translation issue on uploading high size image
+
+* #3574 [fixed] - One page Checkout loader hits on adding single digit in phone number
+
+* #3575 [fixed] - Inactive child product shouldn't visible in grouped product
+
+* #3577 [fixed] - Customer is able to place order of more than available qty of any bundle option product
+
+* #3580 [fixed] - Incorrect error message while adding bundle product in cart if no.of bundles contains more qty than available qty
+
+* #3591 [fixed] - Getting exception while using layered navigation filters on category page
+
+* #3595 [fixed] - I would like like to change the admin route or url
+
+* #3604 [fixed] - show percentage in place count number in review in velocity theme
+
+* #3606 [fixed] - showing different number of star in velocity and default theme for same rating
+
+* #3611 [fixed] - The content of CMS page is cropped
+
+* #3615 [fixed] - Getting exception while uploading favicon image if image is of high size
+
+* #3617 [fixed] - Add feature to set the category header content limit in velocity
+
+* #3621 [fixed] - Ui issue when applying filter in mobile view
+
+* #3622 [fixed] - channel filter is not working in cart rule
+
+* #3628 [fixed] - Correct the Success message after updating content in velocity meta data.
+
+* #3629 [fixed] - Filter is not working properly in content list grid for content type column
+
+* #3631 [fixed] - Category slug should not accept values in capital letters while adding content for Header content
+
+* #3636 [fixed] - Correct the Ui of profile in mobile view,there is no difference in field name test and field data.
+
+* #3637 [fixed] - No records founds text in downloadable product section of customer should display in centre, in mobile view.
+
+* #3638 [fixed] - Promotion, combine "percentage" & "fixed amount to whole cart" cart rules get wrong discount amount
+
+* #3642 [fixed] - getting exception when creating configurable product in case of DB_Prefix
+
+* #3649 [fixed] - product datagrid filter layout issue
+
+* #3648 [fixed] - custom file type attribute is not visible in PDP
+
+* #3656 [fixed] - Product name gets blank each time we refresh the product page.
+
+* #3657 [fixed] - Auth user can see all users info by id
+
+* #3674 [fixed] - Bugs on category page for list mode
+
+* #3675 [fixed] - Address icon is overlapping on side bar menu in mobile view
+
+* #3676 [fixed] - all cross selling products are not visible in cart page of velocity theme
+
+* #3678 [fixed] - Customer is able to access downloadable products even when invoice state is pending
+
+* #3688 [fixed] - Select icons should be in right side in RTL on payment page in default theme
+
+* #3689 [fixed] - There should not be sale icon in shopping cart in velocity theme
+
+* #3692 [fixed] - Channel filter is not working properly in product grid
+
+* #3693 [fixed] - There should not be any success message while trying to delete system attributes
+
+* #3700 [fixed] - getting exception while creating refund of order placed by deleted customer
+
+* #3702 [fixed] - On deleting customer their invoice and shipment records are getting disappeared.
+
+* #3704 [fixed] - No alert message while deleting customer with pending or processing order from admin end.
+
+* #3717 [fixed] - Layout issue in order grid at customer end
+
+* #3720 [fixed] - Velocity theme option is missing in channel
+
+* #3723 [fixed] - getting exception when download uploaded file from backend
+
+* #3725 [fixed] - getting exception on comparison page of default theme
+
+* #3727 [fixed] - compare page layout issue for logged in user
+
+* #3735 [fixed] - Make Velocity Meta Data section Channel wise.
+
+* #3740 [fixed] - translation of alert when remove compare item in default theme
+
+* #3742 [fixed] - Invoice, ship and cancel buttons are missing in order placed by guest user
+
+* #3745 [fixed] - getting exception in backend when having DB_PREFIX
+
+* #3747 [fixed] - velocity content header route throwing an exception in spanish locale
+
+* #3751 [fixed] - shipping tab is missing in order details for deleted customer
+
+* #3755 [fixed] - Webinstall - SMTP port is not set
+
+* #3757 [fixed] - broken image on guest wishlist
+
+* #3767 [fixed] - Header-nav on mobile view seem buggy on search item
+
## **v1.1.2 (24th of March 2020)** - *Release*
diff --git a/composer.json b/composer.json
index fa1f6435e..1a3187c32 100755
--- a/composer.json
+++ b/composer.json
@@ -21,12 +21,10 @@
"astrotomic/laravel-translatable": "^11.0.0",
"babenkoivan/elastic-scout-driver": "^1.1",
"bagistobrasil/bagisto-product-social-share": "^0.1.2",
- "barryvdh/laravel-debugbar": "^3.1",
"barryvdh/laravel-dompdf": "0.8.6",
"doctrine/dbal": "2.9.2",
"fideloper/proxy": "^4.2",
"flynsarmy/db-blade-compiler": "^5.5",
- "fzaninotto/faker": "^1.9.1",
"guzzlehttp/guzzle": "~6.3",
"intervention/image": "^2.4",
"intervention/imagecache": "^2.3",
diff --git a/composer.lock b/composer.lock
index 3c867c0e3..15ba9899a 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "3332479a65fc6c67057c2946a27fe95e",
+ "content-hash": "b02e22c84c5b91a32e9d1f50e8d14b7f",
"packages": [
{
"name": "algolia/algoliasearch-client-php",
@@ -342,74 +342,6 @@
],
"time": "2020-08-04T12:36:28+00:00"
},
- {
- "name": "barryvdh/laravel-debugbar",
- "version": "v3.3.3",
- "source": {
- "type": "git",
- "url": "https://github.com/barryvdh/laravel-debugbar.git",
- "reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/57f2219f6d9efe41ed1bc880d86701c52f261bf5",
- "reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5",
- "shasum": ""
- },
- "require": {
- "illuminate/routing": "^5.5|^6|^7",
- "illuminate/session": "^5.5|^6|^7",
- "illuminate/support": "^5.5|^6|^7",
- "maximebf/debugbar": "^1.15.1",
- "php": ">=7.0",
- "symfony/debug": "^3|^4|^5",
- "symfony/finder": "^3|^4|^5"
- },
- "require-dev": {
- "laravel/framework": "5.5.x"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- },
- "laravel": {
- "providers": [
- "Barryvdh\\Debugbar\\ServiceProvider"
- ],
- "aliases": {
- "Debugbar": "Barryvdh\\Debugbar\\Facade"
- }
- }
- },
- "autoload": {
- "psr-4": {
- "Barryvdh\\Debugbar\\": "src/"
- },
- "files": [
- "src/helpers.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Barry vd. Heuvel",
- "email": "barryvdh@gmail.com"
- }
- ],
- "description": "PHP Debugbar integration for Laravel",
- "keywords": [
- "debug",
- "debugbar",
- "laravel",
- "profiler",
- "webprofiler"
- ],
- "time": "2020-05-05T10:53:32+00:00"
- },
{
"name": "barryvdh/laravel-dompdf",
"version": "v0.8.6",
@@ -1378,56 +1310,6 @@
],
"time": "2019-07-28T22:19:29+00:00"
},
- {
- "name": "fzaninotto/faker",
- "version": "v1.9.1",
- "source": {
- "type": "git",
- "url": "https://github.com/fzaninotto/Faker.git",
- "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f",
- "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "ext-intl": "*",
- "phpunit/phpunit": "^4.8.35 || ^5.7",
- "squizlabs/php_codesniffer": "^2.9.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.9-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Faker\\": "src/Faker/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "François Zaninotto"
- }
- ],
- "description": "Faker is a PHP library that generates fake data for you.",
- "keywords": [
- "data",
- "faker",
- "fixtures"
- ],
- "time": "2019-12-12T13:22:17+00:00"
- },
{
"name": "guzzlehttp/guzzle",
"version": "6.5.4",
@@ -3005,67 +2887,6 @@
],
"time": "2019-10-06T11:29:25+00:00"
},
- {
- "name": "maximebf/debugbar",
- "version": "v1.16.3",
- "source": {
- "type": "git",
- "url": "https://github.com/maximebf/php-debugbar.git",
- "reference": "1a1605b8e9bacb34cc0c6278206d699772e1d372"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/1a1605b8e9bacb34cc0c6278206d699772e1d372",
- "reference": "1a1605b8e9bacb34cc0c6278206d699772e1d372",
- "shasum": ""
- },
- "require": {
- "php": "^7.1",
- "psr/log": "^1.0",
- "symfony/var-dumper": "^2.6|^3|^4|^5"
- },
- "require-dev": {
- "phpunit/phpunit": "^5"
- },
- "suggest": {
- "kriswallsmith/assetic": "The best way to manage assets",
- "monolog/monolog": "Log using Monolog",
- "predis/predis": "Redis storage"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.16-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "DebugBar\\": "src/DebugBar/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Maxime Bouroumeau-Fuseau",
- "email": "maxime.bouroumeau@gmail.com",
- "homepage": "http://maximebf.com"
- },
- {
- "name": "Barry vd. Heuvel",
- "email": "barryvdh@gmail.com"
- }
- ],
- "description": "Debug bar in the browser for php application",
- "homepage": "https://github.com/maximebf/php-debugbar",
- "keywords": [
- "debug",
- "debugbar"
- ],
- "time": "2020-05-06T07:06:27+00:00"
- },
{
"name": "monolog/monolog",
"version": "2.1.0",
@@ -4556,63 +4377,6 @@
"homepage": "https://symfony.com",
"time": "2020-05-20T17:43:50+00:00"
},
- {
- "name": "symfony/debug",
- "version": "v4.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/28f92d08bb6d1fddf8158e02c194ad43870007e6",
- "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1.3",
- "psr/log": "~1.0",
- "symfony/polyfill-php80": "^1.15"
- },
- "conflict": {
- "symfony/http-kernel": "<3.4"
- },
- "require-dev": {
- "symfony/http-kernel": "^3.4|^4.0|^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Debug Component",
- "homepage": "https://symfony.com",
- "time": "2020-05-24T08:33:35+00:00"
- },
{
"name": "symfony/deprecation-contracts",
"version": "v2.1.2",
@@ -6467,6 +6231,74 @@
}
],
"packages-dev": [
+ {
+ "name": "barryvdh/laravel-debugbar",
+ "version": "v3.3.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/barryvdh/laravel-debugbar.git",
+ "reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/barryvdh/laravel-debugbar/zipball/57f2219f6d9efe41ed1bc880d86701c52f261bf5",
+ "reference": "57f2219f6d9efe41ed1bc880d86701c52f261bf5",
+ "shasum": ""
+ },
+ "require": {
+ "illuminate/routing": "^5.5|^6|^7",
+ "illuminate/session": "^5.5|^6|^7",
+ "illuminate/support": "^5.5|^6|^7",
+ "maximebf/debugbar": "^1.15.1",
+ "php": ">=7.0",
+ "symfony/debug": "^3|^4|^5",
+ "symfony/finder": "^3|^4|^5"
+ },
+ "require-dev": {
+ "laravel/framework": "5.5.x"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.2-dev"
+ },
+ "laravel": {
+ "providers": [
+ "Barryvdh\\Debugbar\\ServiceProvider"
+ ],
+ "aliases": {
+ "Debugbar": "Barryvdh\\Debugbar\\Facade"
+ }
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Barryvdh\\Debugbar\\": "src/"
+ },
+ "files": [
+ "src/helpers.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Barry vd. Heuvel",
+ "email": "barryvdh@gmail.com"
+ }
+ ],
+ "description": "PHP Debugbar integration for Laravel",
+ "keywords": [
+ "debug",
+ "debugbar",
+ "laravel",
+ "profiler",
+ "webprofiler"
+ ],
+ "time": "2020-05-05T10:53:32+00:00"
+ },
{
"name": "behat/gherkin",
"version": "v4.6.2",
@@ -7152,6 +6984,56 @@
],
"time": "2020-05-05T12:28:07+00:00"
},
+ {
+ "name": "fzaninotto/faker",
+ "version": "v1.9.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/fzaninotto/Faker.git",
+ "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f",
+ "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.3.3 || ^7.0"
+ },
+ "require-dev": {
+ "ext-intl": "*",
+ "phpunit/phpunit": "^4.8.35 || ^5.7",
+ "squizlabs/php_codesniffer": "^2.9.2"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.9-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Faker\\": "src/Faker/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "François Zaninotto"
+ }
+ ],
+ "description": "Faker is a PHP library that generates fake data for you.",
+ "keywords": [
+ "data",
+ "faker",
+ "fixtures"
+ ],
+ "time": "2019-12-12T13:22:17+00:00"
+ },
{
"name": "hamcrest/hamcrest-php",
"version": "v2.0.0",
@@ -7200,6 +7082,67 @@
],
"time": "2016-01-20T08:20:44+00:00"
},
+ {
+ "name": "maximebf/debugbar",
+ "version": "v1.16.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/maximebf/php-debugbar.git",
+ "reference": "1a1605b8e9bacb34cc0c6278206d699772e1d372"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/1a1605b8e9bacb34cc0c6278206d699772e1d372",
+ "reference": "1a1605b8e9bacb34cc0c6278206d699772e1d372",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.1",
+ "psr/log": "^1.0",
+ "symfony/var-dumper": "^2.6|^3|^4|^5"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^5"
+ },
+ "suggest": {
+ "kriswallsmith/assetic": "The best way to manage assets",
+ "monolog/monolog": "Log using Monolog",
+ "predis/predis": "Redis storage"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.16-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "DebugBar\\": "src/DebugBar/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Maxime Bouroumeau-Fuseau",
+ "email": "maxime.bouroumeau@gmail.com",
+ "homepage": "http://maximebf.com"
+ },
+ {
+ "name": "Barry vd. Heuvel",
+ "email": "barryvdh@gmail.com"
+ }
+ ],
+ "description": "Debug bar in the browser for php application",
+ "homepage": "https://github.com/maximebf/php-debugbar",
+ "keywords": [
+ "debug",
+ "debugbar"
+ ],
+ "time": "2020-05-06T07:06:27+00:00"
+ },
{
"name": "mockery/mockery",
"version": "1.4.0",
@@ -8773,6 +8716,63 @@
"homepage": "https://symfony.com",
"time": "2020-05-23T13:13:03+00:00"
},
+ {
+ "name": "symfony/debug",
+ "version": "v4.4.9",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/debug.git",
+ "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/debug/zipball/28f92d08bb6d1fddf8158e02c194ad43870007e6",
+ "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1.3",
+ "psr/log": "~1.0",
+ "symfony/polyfill-php80": "^1.15"
+ },
+ "conflict": {
+ "symfony/http-kernel": "<3.4"
+ },
+ "require-dev": {
+ "symfony/http-kernel": "^3.4|^4.0|^5.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "4.4-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\Debug\\": ""
+ },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony Debug Component",
+ "homepage": "https://symfony.com",
+ "time": "2020-05-24T08:33:35+00:00"
+ },
{
"name": "symfony/dom-crawler",
"version": "v5.1.0",
diff --git a/config/modules.php b/config/modules.php
deleted file mode 100644
index 37bf9a64e..000000000
--- a/config/modules.php
+++ /dev/null
@@ -1,188 +0,0 @@
- 'Modules',
-
- /*
- |--------------------------------------------------------------------------
- | Module Stubs
- |--------------------------------------------------------------------------
- |
- | Default module stubs.
- |
- */
-
- 'stubs' => [
- 'enabled' => false,
- 'path' => base_path() . '/vendor/nwidart/laravel-modules/src/Commands/stubs',
- 'files' => [
- 'start' => 'start.php',
- 'routes' => 'Http/routes.php',
- 'views/index' => 'Resources/views/index.blade.php',
- 'views/master' => 'Resources/views/layouts/master.blade.php',
- 'scaffold/config' => 'Config/config.php',
- 'composer' => 'composer.json',
- 'assets/js/app' => 'Resources/assets/js/app.js',
- 'assets/sass/app' => 'Resources/assets/sass/app.scss',
- 'webpack' => 'webpack.mix.js',
- 'package' => 'package.json',
- ],
- 'replacements' => [
- 'start' => ['LOWER_NAME', 'ROUTES_LOCATION'],
- 'routes' => ['LOWER_NAME', 'STUDLY_NAME', 'MODULE_NAMESPACE'],
- 'webpack' => ['LOWER_NAME'],
- 'json' => ['LOWER_NAME', 'STUDLY_NAME', 'MODULE_NAMESPACE'],
- 'views/index' => ['LOWER_NAME'],
- 'views/master' => ['LOWER_NAME', 'STUDLY_NAME'],
- 'scaffold/config' => ['STUDLY_NAME'],
- 'composer' => [
- 'LOWER_NAME',
- 'STUDLY_NAME',
- 'VENDOR',
- 'AUTHOR_NAME',
- 'AUTHOR_EMAIL',
- 'MODULE_NAMESPACE',
- ],
- ],
- 'gitkeep' => true,
- ],
- 'paths' => [
- /*
- |--------------------------------------------------------------------------
- | Modules path
- |--------------------------------------------------------------------------
- |
- | This path used for save the generated module. This path also will be added
- | automatically to list of scanned folders.
- |
- */
-
- 'modules' => base_path('Modules'),
- /*
- |--------------------------------------------------------------------------
- | Modules assets path
- |--------------------------------------------------------------------------
- |
- | Here you may update the modules assets path.
- |
- */
-
- 'assets' => public_path('modules'),
- /*
- |--------------------------------------------------------------------------
- | The migrations path
- |--------------------------------------------------------------------------
- |
- | Where you run 'module:publish-migration' command, where do you publish the
- | the migration files?
- |
- */
-
- 'migration' => base_path('database/migrations'),
- /*
- |--------------------------------------------------------------------------
- | Generator path
- |--------------------------------------------------------------------------
- | Customise the paths where the folders will be generated.
- | Set the generate key to false to not generate that folder
- */
- 'generator' => [
- 'config' => ['path' => 'Config', 'generate' => true],
- 'command' => ['path' => 'Console', 'generate' => true],
- 'migration' => ['path' => 'Database/Migrations', 'generate' => true],
- 'seeder' => ['path' => 'Database/Seeders', 'generate' => true],
- 'factory' => ['path' => 'Database/factories', 'generate' => true],
- 'model' => ['path' => 'Entities', 'generate' => true],
- 'controller' => ['path' => 'Http/Controllers', 'generate' => true],
- 'filter' => ['path' => 'Http/Middleware', 'generate' => true],
- 'request' => ['path' => 'Http/Requests', 'generate' => true],
- 'provider' => ['path' => 'Providers', 'generate' => true],
- 'assets' => ['path' => 'Resources/assets', 'generate' => true],
- 'lang' => ['path' => 'Resources/lang', 'generate' => true],
- 'views' => ['path' => 'Resources/views', 'generate' => true],
- 'test' => ['path' => 'Tests', 'generate' => true],
- 'repository' => ['path' => 'Repositories', 'generate' => false],
- 'event' => ['path' => 'Events', 'generate' => false],
- 'listener' => ['path' => 'Listeners', 'generate' => false],
- 'policies' => ['path' => 'Policies', 'generate' => false],
- 'rules' => ['path' => 'Rules', 'generate' => false],
- 'jobs' => ['path' => 'Jobs', 'generate' => false],
- 'emails' => ['path' => 'Emails', 'generate' => false],
- 'notifications' => ['path' => 'Notifications', 'generate' => false],
- 'resource' => ['path' => 'Transformers', 'generate' => false],
- ],
- ],
- /*
- |--------------------------------------------------------------------------
- | Scan Path
- |--------------------------------------------------------------------------
- |
- | Here you define which folder will be scanned. By default will scan vendor
- | directory. This is useful if you host the package in packagist website.
- |
- */
-
- 'scan' => [
- 'enabled' => false,
- 'paths' => [
- base_path('vendor/*/*'),
- ],
- ],
- /*
- |--------------------------------------------------------------------------
- | Composer File Template
- |--------------------------------------------------------------------------
- |
- | Here is the config for composer.json file, generated by this package
- |
- */
-
- 'composer' => [
- 'vendor' => 'nwidart',
- 'author' => [
- 'name' => 'Nicolas Widart',
- 'email' => 'n.widart@gmail.com',
- ],
- ],
- /*
- |--------------------------------------------------------------------------
- | Caching
- |--------------------------------------------------------------------------
- |
- | Here is the config for setting up caching feature.
- |
- */
- 'cache' => [
- 'enabled' => false,
- 'key' => 'laravel-modules',
- 'lifetime' => 60,
- ],
- /*
- |--------------------------------------------------------------------------
- | Choose what laravel-modules will register as custom namespaces.
- | Setting one to false will require you to register that part
- | in your own Service Provider class.
- |--------------------------------------------------------------------------
- */
- 'register' => [
- 'translations' => true,
- /**
- * load files on boot or register method
- *
- * Note: boot not compatible with asgardcms
- *
- * @example boot|register
- */
- 'files' => 'register',
- ],
-];
diff --git a/config/products.php b/config/products.php
new file mode 100644
index 000000000..6eb93e2fd
--- /dev/null
+++ b/config/products.php
@@ -0,0 +1,14 @@
+catalog->products->copy product).
+ // you can also add every relation that should not be copied here to skip them.
+ // defaults to none (which means everything is copied).
+ 'skipAttributesOnCopy' => [
+
+ ],
+
+ // Make the original and source product 'related' via the 'product_relations' table
+ 'linkProductsOnCopy' => false,
+];
\ No newline at end of file
diff --git a/packages/Webkul/API/Http/Controllers/Shop/CartController.php b/packages/Webkul/API/Http/Controllers/Shop/CartController.php
index dbecc7c01..d54bddb9f 100644
--- a/packages/Webkul/API/Http/Controllers/Shop/CartController.php
+++ b/packages/Webkul/API/Http/Controllers/Shop/CartController.php
@@ -2,15 +2,15 @@
namespace Webkul\API\Http\Controllers\Shop;
+use Cart;
use Exception;
use Illuminate\Http\JsonResponse;
-use Illuminate\Support\Facades\Event;
use Illuminate\Support\Facades\Log;
+use Illuminate\Support\Facades\Event;
use Webkul\Checkout\Repositories\CartRepository;
use Webkul\Checkout\Repositories\CartItemRepository;
-use Webkul\API\Http\Resources\Checkout\Cart as CartResource;
-use Cart;
use Webkul\Customer\Repositories\WishlistRepository;
+use Webkul\API\Http\Resources\Checkout\Cart as CartResource;
class CartController extends Controller
{
@@ -70,7 +70,7 @@ class CartController extends Controller
}
/**
- * Get customer cart
+ * Get customer cart.
*
* @return \Illuminate\Http\JsonResponse
*/
@@ -242,4 +242,55 @@ class CartController extends Controller
'data' => $cart ? new CartResource($cart) : null,
]);
}
+
+ /**
+ * Apply coupon code.
+ *
+ * @return \Illuminate\Http\JsonResponse
+ */
+ public function applyCoupon()
+ {
+ $couponCode = request()->get('code');
+
+ try {
+ if (strlen($couponCode)) {
+ Cart::setCouponCode($couponCode)->collectTotals();
+
+ if (Cart::getCart()->coupon_code == $couponCode) {
+ return response()->json([
+ 'success' => true,
+ 'message' => trans('shop::app.checkout.total.success-coupon'),
+ ]);
+ }
+ }
+
+ return response()->json([
+ 'success' => false,
+ 'message' => trans('shop::app.checkout.total.invalid-coupon'),
+ ]);
+ } catch (\Exception $e) {
+ report($e);
+
+ return response()->json([
+ 'success' => false,
+ 'message' => trans('shop::app.checkout.total.coupon-apply-issue'),
+ ]);
+ }
+
+ }
+
+ /**
+ * Remove coupon code.
+ *
+ * @return \Illuminate\Http\JsonResponse
+ */
+ public function removeCoupon()
+ {
+ Cart::removeCouponCode()->collectTotals();
+
+ return response()->json([
+ 'success' => true,
+ 'message' => trans('shop::app.checkout.total.remove-coupon'),
+ ]);
+ }
}
\ No newline at end of file
diff --git a/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php b/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php
index 222898993..04eca77a1 100644
--- a/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php
+++ b/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php
@@ -2,12 +2,20 @@
namespace Webkul\API\Http\Controllers\Shop;
+use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Event;
use Webkul\Customer\Repositories\CustomerRepository;
use Webkul\Customer\Repositories\CustomerGroupRepository;
class CustomerController extends Controller
{
+ /**
+ * Contains current guard
+ *
+ * @var array
+ */
+ protected $guard;
+
/**
* Contains route related configuration
*
@@ -40,8 +48,17 @@ class CustomerController extends Controller
CustomerRepository $customerRepository,
CustomerGroupRepository $customerGroupRepository
) {
+ $this->guard = request()->has('token') ? 'api' : 'customer';
+
$this->_config = request('_config');
+ if (isset($this->_config['authorization_required']) && $this->_config['authorization_required']) {
+
+ auth()->setDefaultDriver($this->guard);
+
+ $this->middleware('auth:' . $this->guard);
+ }
+
$this->customerRepository = $customerRepository;
$this->customerGroupRepository = $customerGroupRepository;
@@ -81,4 +98,23 @@ class CustomerController extends Controller
'message' => 'Your account has been created successfully.',
]);
}
+
+ /**
+ * Returns a current user data.
+ *
+ * @param int $id
+ * @return \Illuminate\Http\Response
+ */
+ public function get($id)
+ {
+ if (Auth::user($this->guard)->id === (int) $id) {
+ return new $this->_config['resource'](
+ $this->customerRepository->findOrFail($id)
+ );
+ }
+
+ return response()->json([
+ 'message' => 'Invalid Request.',
+ ], 403);
+ }
}
\ No newline at end of file
diff --git a/packages/Webkul/API/Http/routes.php b/packages/Webkul/API/Http/routes.php
index c6ec10827..448d6412f 100755
--- a/packages/Webkul/API/Http/routes.php
+++ b/packages/Webkul/API/Http/routes.php
@@ -75,7 +75,7 @@ Route::group(['prefix' => 'api'], function ($router) {
'resource' => 'Webkul\API\Http\Resources\Catalog\ProductReview',
'authorization_required' => true
]);
-
+
//Channel routes
Route::get('channels', 'ResourceController@index')->defaults('_config', [
@@ -154,7 +154,7 @@ Route::group(['prefix' => 'api'], function ($router) {
Route::post('customer/register', 'CustomerController@create');
- Route::get('customers/{id}', 'ResourceController@get')->defaults('_config', [
+ Route::get('customers/{id}', 'CustomerController@get')->defaults('_config', [
'repository' => 'Webkul\Customer\Repositories\CustomerRepository',
'resource' => 'Webkul\API\Http\Resources\Customer\Customer',
'authorization_required' => true
@@ -246,7 +246,6 @@ Route::group(['prefix' => 'api'], function ($router) {
Route::get('wishlist/add/{id}', 'WishlistController@create');
-
//Checkout routes
Route::group(['prefix' => 'checkout'], function ($router) {
Route::post('cart/add/{id}', 'CartController@store');
@@ -259,6 +258,10 @@ Route::group(['prefix' => 'api'], function ($router) {
Route::get('cart/remove-item/{id}', 'CartController@destroyItem');
+ Route::post('cart/coupon', 'CartController@applyCoupon');
+
+ Route::delete('cart/coupon', 'CartController@removeCoupon');
+
Route::get('cart/move-to-wishlist/{id}', 'CartController@moveToWishlist');
Route::post('save-address', 'CheckoutController@saveAddress');
diff --git a/packages/Webkul/API/composer.json b/packages/Webkul/API/composer.json
index c86d16a7c..cb4bc680a 100755
--- a/packages/Webkul/API/composer.json
+++ b/packages/Webkul/API/composer.json
@@ -1,5 +1,5 @@
{
- "name": "webkul/laravel-api",
+ "name": "bagisto/laravel-api",
"license": "MIT",
"authors": [
{
@@ -8,14 +8,14 @@
}
],
"require": {
- "webkul/laravel-user": "dev-master",
- "webkul/laravel-core": "dev-master",
- "webkul/laravel-product": "dev-master",
- "webkul/laravel-shop": "dev-master",
- "webkul/laravel-category": "dev-master",
- "webkul/laravel-tax": "dev-master",
- "webkul/laravel-inventory": "dev-master",
- "webkul/laravel-checkout": "dev-master"
+ "bagisto/laravel-user": "dev-master",
+ "bagisto/laravel-core": "dev-master",
+ "bagisto/laravel-product": "dev-master",
+ "bagisto/laravel-shop": "dev-master",
+ "bagisto/laravel-category": "dev-master",
+ "bagisto/laravel-tax": "dev-master",
+ "bagisto/laravel-inventory": "dev-master",
+ "bagisto/laravel-checkout": "dev-master"
},
"autoload": {
"psr-4": {
diff --git a/packages/Webkul/Admin/src/Config/system.php b/packages/Webkul/Admin/src/Config/system.php
index 419e79d55..ef32cb708 100644
--- a/packages/Webkul/Admin/src/Config/system.php
+++ b/packages/Webkul/Admin/src/Config/system.php
@@ -194,6 +194,21 @@ return [
'type' => 'boolean',
],
],
+ ], [
+ 'key' => 'catalog.products.attribute',
+ 'name' => 'admin::app.admin.system.attribute',
+ 'sort' => 4,
+ 'fields' => [
+ [
+ 'name' => 'image_attribute_upload_size',
+ 'title' => 'admin::app.admin.system.image-upload-size',
+ 'type' => 'text',
+ ], [
+ 'name' => 'file_attribute_upload_size',
+ 'title' => 'admin::app.admin.system.file-upload-size',
+ 'type' => 'text',
+ ]
+ ],
], [
'key' => 'catalog.inventory',
'name' => 'admin::app.admin.system.inventory',
diff --git a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php
index 845acc865..2f4a072e1 100644
--- a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php
+++ b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php
@@ -187,6 +187,13 @@ class ProductDataGrid extends DataGrid
public function prepareMassActions()
{
+ $this->addAction([
+ 'title' => trans('admin::app.datagrid.copy'),
+ 'method' => 'GET',
+ 'route' => 'admin.catalog.products.copy',
+ 'icon' => 'icon note-icon',
+ ]);
+
$this->addMassAction([
'type' => 'delete',
'label' => trans('admin::app.datagrid.delete'),
diff --git a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php
index 4c4de66c7..b81b8f711 100755
--- a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php
+++ b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php
@@ -206,6 +206,7 @@ class CustomerController extends Controller
$this->customerRepository->delete($id);
} else {
+ session()->flash('error', trans('admin::app.response.order-pending', ['name' => 'Customer']));
return response()->json(['message' => false], 400);
}
diff --git a/packages/Webkul/Admin/src/Http/Controllers/DashboardController.php b/packages/Webkul/Admin/src/Http/Controllers/DashboardController.php
index 7a9415c33..631db0008 100755
--- a/packages/Webkul/Admin/src/Http/Controllers/DashboardController.php
+++ b/packages/Webkul/Admin/src/Http/Controllers/DashboardController.php
@@ -211,7 +211,7 @@ class DashboardController extends Controller
/**
* Returns top selling products
- *
+ *
* @return \Illuminate\Support\Collection
*/
public function getTopSellingProducts()
@@ -235,10 +235,13 @@ class DashboardController extends Controller
*/
public function getCustomerWithMostSales()
{
+ $dbPrefix = DB::getTablePrefix();
+
return $this->orderRepository->getModel()
- ->select(DB::raw('SUM(base_grand_total) as total_base_grand_total'))
- ->addSelect(DB::raw('COUNT(id) as total_orders'))
- ->addSelect('id', 'customer_id', 'customer_email', 'customer_first_name', 'customer_last_name')
+ ->leftJoin('refunds', 'orders.id', 'refunds.order_id')
+ ->select(DB::raw("(SUM({$dbPrefix}orders.base_grand_total) - SUM(IFNULL({$dbPrefix}refunds.base_grand_total, 0))) as total_base_grand_total"))
+ ->addSelect(DB::raw("COUNT({$dbPrefix}orders.id) as total_orders"))
+ ->addSelect('orders.id', 'customer_id', 'customer_email', 'customer_first_name', 'customer_last_name')
->where('orders.created_at', '>=', $this->startDate)
->where('orders.created_at', '<=', $this->endDate)
->where('orders.status', '<>', 'closed')
diff --git a/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php b/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php
index 2d346bf2a..b17d02f1a 100755
--- a/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php
+++ b/packages/Webkul/Admin/src/Http/Controllers/Sales/InvoiceController.php
@@ -160,11 +160,6 @@ class InvoiceController extends Controller
$invoice = $this->invoiceRepository->findOrFail($id);
$task = $this->invoiceRepository->updateInvoiceState($invoice, $request->state);
- if($request->state == 'paid'){
- $order = $this->orderRepository->findOrFail($invoice->order->id);
- $this->orderRepository->updateOrderStatus($order);
- }
-
if ($task){
session()->flash('success', trans('admin::app.sales.orders.invoice-status-confirmed'));
} else {
diff --git a/packages/Webkul/Admin/src/Http/routes.php b/packages/Webkul/Admin/src/Http/routes.php
index 07ab2fc32..2182968a9 100755
--- a/packages/Webkul/Admin/src/Http/routes.php
+++ b/packages/Webkul/Admin/src/Http/routes.php
@@ -273,6 +273,10 @@ Route::group(['middleware' => ['web']], function () {
'redirect' => 'admin.catalog.products.edit',
])->name('admin.catalog.products.store');
+ Route::get('products/copy/{id}', 'Webkul\Product\Http\Controllers\ProductController@copy')->defaults('_config', [
+ 'view' => 'admin::catalog.products.edit',
+ ])->name('admin.catalog.products.copy');
+
Route::get('/products/edit/{id}', 'Webkul\Product\Http\Controllers\ProductController@edit')->defaults('_config', [
'view' => 'admin::catalog.products.edit',
])->name('admin.catalog.products.edit');
diff --git a/packages/Webkul/Admin/src/Resources/lang/ar/app.php b/packages/Webkul/Admin/src/Resources/lang/ar/app.php
index 0c941c43c..7ee6d855b 100644
--- a/packages/Webkul/Admin/src/Resources/lang/ar/app.php
+++ b/packages/Webkul/Admin/src/Resources/lang/ar/app.php
@@ -1,20 +1,22 @@
'حفظ',
- 'create' => 'خلق',
- 'update' => 'تحديث',
- 'delete' => 'حذف',
- 'failed' => 'فشل',
- 'store' => 'متجر',
- 'image' => 'صورة',
- 'no result' => 'لا نتيجة',
- 'product' => 'المنتج',
- 'attribute' => 'ينسب',
- 'actions' => 'أجراءات',
- 'id' => 'ID',
- 'action' => 'عمل',
- 'yes' => 'نعم',
+ 'save' => 'حفظ',
+ 'create' => 'خلق',
+ 'update' => 'تحديث',
+ 'delete' => 'حذف',
+ 'copy-of' => 'نسخة من ',
+ 'copy-of-slug' => 'نسخة-من-',
+ 'failed' => 'فشل',
+ 'store' => 'متجر',
+ 'image' => 'صورة',
+ 'no result' => 'لا نتيجة',
+ 'product' => 'المنتج',
+ 'attribute' => 'ينسب',
+ 'actions' => 'أجراءات',
+ 'id' => 'ID',
+ 'action' => 'عمل',
+ 'yes' => 'نعم',
'no' => 'لا',
'true' => 'صحيح',
'false' => 'خاطئة',
@@ -138,27 +140,28 @@ return [
'datagrid' => [
'mass-ops' => [
- 'method-error' => 'خطأ! تم اكتشاف طريقة خاطئة ، الرجاء التحقق من تشكيل حركة الكتلة',
+ 'method-error' => 'خطأ! تم اكتشاف طريقة خاطئة ، الرجاء التحقق من تشكيل حركة الكتلة',
'delete-success' => "تم حذف المورد بنجاح :Selected",
'partial-action' => 'ولم تنفذ بعض الإجراءات بسبب القيود المفروضة على النظام :resource',
'update-success' => "تم تحديث المورد بنجاح :Selected",
- 'no-resource' => 'المورد المقدم غير كاف للعمل'
+ 'no-resource' => 'المورد المقدم غير كاف للعمل',
],
- 'id' => 'ID',
- 'status' => 'الحالة',
- 'code' => 'رمز',
- 'admin-name' => 'اسم',
- 'name' => 'اسم',
- 'direction' => 'اتجاه',
- 'fullname' => 'الاسم الكامل',
- 'type' => 'النوع',
- 'required' => 'مطلوب',
- 'unique' => 'فريد',
- 'per-locale' => 'على أساس اللغة',
- 'per-channel' => 'قائم على القناة',
- 'position' => 'موضع',
- 'locale' => 'لغة',
+ 'id' => 'ID',
+ 'status' => 'الحالة',
+ 'code' => 'رمز',
+ 'admin-name' => 'اسم',
+ 'copy' => 'نسخ',
+ 'name' => 'اسم',
+ 'direction' => 'اتجاه',
+ 'fullname' => 'الاسم الكامل',
+ 'type' => 'النوع',
+ 'required' => 'مطلوب',
+ 'unique' => 'فريد',
+ 'per-locale' => 'على أساس اللغة',
+ 'per-channel' => 'قائم على القناة',
+ 'position' => 'موضع',
+ 'locale' => 'لغة',
'hostname' => 'اسم المضيف',
'email' => 'البريد الإلكتروني',
'group' => 'المجموعة',
@@ -1201,17 +1204,20 @@ return [
],
'response' => [
- 'being-used' => ':source في :name يتم استخدام هذا المورد',
- 'cannot-delete-default' => 'لا يمكن حذف القناة الافتراضية',
- 'create-success' => 'إنشاء الاسم بنجاح:name',
- 'update-success' => 'تحديث الاسم بنجاح :name ',
- 'delete-success' => 'حذف الاسم بنجاح :name',
- 'delete-failed' => ':name حدث خطأ أثناء حذف',
- 'last-delete-error' => 'مطلوب name: واحد على الأقل',
- 'user-define-error' => 'لا يستطيع حذف نظام :name',
- 'attribute-error' => 'في المنتجات القابلة للتكوين :name يستخدم ' ,
- 'attribute-product-error' => 'في المنتجات :name يستخدم ' ,
- 'customer-associate' => 'لا يمكن حذف :name لأن العميل مرتبط بهذه المجموعة.',
+ 'being-used' => ':source في :name يتم استخدام هذا المورد',
+ 'product-copied' => 'تم نسخ المنتج',
+ 'error-while-copying' => 'خطأ في نسخ المنتج',
+ 'product-can-not-be-copied' => 'لا يمكن نسخ منتجات الحجز',
+ 'cannot-delete-default' => 'لا يمكن حذف القناة الافتراضية',
+ 'create-success' => 'إنشاء الاسم بنجاح:name',
+ 'update-success' => 'تحديث الاسم بنجاح :name ',
+ 'delete-success' => 'حذف الاسم بنجاح :name',
+ 'delete-failed' => ':name حدث خطأ أثناء حذف',
+ 'last-delete-error' => 'مطلوب name: واحد على الأقل',
+ 'user-define-error' => 'لا يستطيع حذف نظام :name',
+ 'attribute-error' => 'في المنتجات القابلة للتكوين :name يستخدم ',
+ 'attribute-product-error' => 'في المنتجات :name يستخدم ',
+ 'customer-associate' => 'لا يمكن حذف :name لأن العميل مرتبط بهذه المجموعة.',
'currency-delete-error' => 'يتم تعيين هذه العملة كعملة أساسية القناة لذلك لا يمكن حذفها.',
'upload-success' => 'بنجاح :name تم تحميل',
'delete-category-root' => 'لا يستطيع حذف الجذر الفئة',
diff --git a/packages/Webkul/Admin/src/Resources/lang/de/app.php b/packages/Webkul/Admin/src/Resources/lang/de/app.php
index 192909b92..c024a5d0e 100755
--- a/packages/Webkul/Admin/src/Resources/lang/de/app.php
+++ b/packages/Webkul/Admin/src/Resources/lang/de/app.php
@@ -1,1338 +1,1340 @@
'Speichern',
- 'copy-of' => 'Kopie von',
- 'create' => 'Erstellen',
- 'update' => 'Update',
- 'delete' => 'Löschen',
- 'failed' => 'Fehlgeschlagen',
- 'store' => 'Speichern',
- 'image' => 'Bild',
- 'no result' => 'Kein Ergebnis',
- 'product' => 'Produkt',
- 'attribute' => 'Attribut',
- 'actions' => 'Aktionen',
- 'id' => 'Id',
- 'action' => 'Aktion',
- 'yes' => 'Ja',
- 'no' => 'Nein',
- 'true' => 'Wahr',
- 'false' => 'Falsch',
- 'apply' => 'Anwenden',
- 'label' => 'Label',
- 'name' => 'Name',
- 'title' => 'Titel',
- 'code' => 'Code',
- 'type' => 'Typ',
- 'required' => 'Erforderlich',
- 'unique' => 'Einzigartig',
- 'locale-based' => 'Sprachabhängig',
+return [
+ 'save' => 'Speichern',
+ 'copy-of' => 'Kopie von ',
+ 'copy-of-slug' => 'kopie-von-',
+ 'create' => 'Erstellen',
+ 'update' => 'Update',
+ 'delete' => 'Löschen',
+ 'failed' => 'Fehlgeschlagen',
+ 'store' => 'Speichern',
+ 'image' => 'Bild',
+ 'no result' => 'Kein Ergebnis',
+ 'product' => 'Produkt',
+ 'attribute' => 'Attribut',
+ 'actions' => 'Aktionen',
+ 'id' => 'Id',
+ 'action' => 'Aktion',
+ 'yes' => 'Ja',
+ 'no' => 'Nein',
+ 'true' => 'Wahr',
+ 'false' => 'Falsch',
+ 'apply' => 'Anwenden',
+ 'label' => 'Label',
+ 'name' => 'Name',
+ 'title' => 'Titel',
+ 'code' => 'Code',
+ 'type' => 'Typ',
+ 'required' => 'Erforderlich',
+ 'unique' => 'Einzigartig',
+ 'locale-based' => 'Sprachabhängig',
'channel-based' => 'Channelabhängig',
- 'status' => 'Status',
+ 'status' => 'Status',
'select-option' => 'Wählen Sie eine Option',
- 'category' => 'Kategorie',
- 'common' =>
- array (
+ 'category' => 'Kategorie',
+ 'common' =>
+ [
'no-result-found' => 'Wir konnten keine Aufzeichnungen finden.',
- 'country' => 'Land',
- 'state' => 'Staat',
- 'true' => 'Wahr',
- 'false' => 'Falsch',
- ),
- 'layouts' =>
- array (
- 'my-account' => 'Mein Konto',
- 'logout' => 'Logout',
- 'visit-shop' => 'Shop besuchen',
- 'dashboard' => 'Dashboard',
- 'sales' => 'Vertrieb',
- 'orders' => 'Bestellungen',
- 'shipments' => 'Sendungen',
- 'invoices' => 'Rechnungen',
- 'refunds' => 'Erstattungen',
- 'catalog' => 'Katalog',
- 'products' => 'Produkte',
- 'categories' => 'Kategorien',
- 'attributes' => 'Attribute',
- 'attribute-families' => 'Attributgruppen',
- 'customers' => 'Kunden',
- 'groups' => 'Gruppen',
- 'reviews' => 'Bewertungen',
+ 'country' => 'Land',
+ 'state' => 'Staat',
+ 'true' => 'Wahr',
+ 'false' => 'Falsch',
+ ],
+ 'layouts' =>
+ [
+ 'my-account' => 'Mein Konto',
+ 'logout' => 'Logout',
+ 'visit-shop' => 'Shop besuchen',
+ 'dashboard' => 'Dashboard',
+ 'sales' => 'Vertrieb',
+ 'orders' => 'Bestellungen',
+ 'shipments' => 'Sendungen',
+ 'invoices' => 'Rechnungen',
+ 'refunds' => 'Erstattungen',
+ 'catalog' => 'Katalog',
+ 'products' => 'Produkte',
+ 'categories' => 'Kategorien',
+ 'attributes' => 'Attribute',
+ 'attribute-families' => 'Attributgruppen',
+ 'customers' => 'Kunden',
+ 'groups' => 'Gruppen',
+ 'reviews' => 'Bewertungen',
'newsletter-subscriptions' => 'Newsletter-Abonnements',
- 'configure' => 'Konfigurieren',
- 'settings' => 'Einstellungen',
- 'locales' => 'Sprachen',
- 'currencies' => 'Währungen',
- 'exchange-rates' => 'Wechselkurse',
- 'inventory-sources' => 'Inventar-Quellen',
- 'channels' => 'Kanäle',
- 'users' => 'Benutzer',
- 'roles' => 'Rollen',
- 'sliders' => 'Slider',
- 'taxes' => 'Steuern',
- 'tax-categories' => 'Steuer-Kategorien',
- 'tax-rates' => 'Steuersätze',
- 'promotions' => 'Promotions',
- 'discount' => 'Rabatt',
- 'cms' => 'CMS',
- ),
- 'acl' =>
- array (
- 'dashboard' => 'Dashboard',
- 'sales' => 'Vertrieb',
- 'orders' => 'Bestellungen',
- 'shipments' => 'Sendungen',
- 'invoices' => 'Rechnungen',
- 'catalog' => 'Katalog',
- 'products' => 'Produkte',
- 'categories' => 'Kategorien',
- 'attributes' => 'Attribute',
- 'attribute-families' => 'Attributgruppen',
- 'customers' => 'Kunden',
- 'groups' => 'Gruppen',
- 'reviews' => 'Bewertungen',
+ 'configure' => 'Konfigurieren',
+ 'settings' => 'Einstellungen',
+ 'locales' => 'Sprachen',
+ 'currencies' => 'Währungen',
+ 'exchange-rates' => 'Wechselkurse',
+ 'inventory-sources' => 'Inventar-Quellen',
+ 'channels' => 'Kanäle',
+ 'users' => 'Benutzer',
+ 'roles' => 'Rollen',
+ 'sliders' => 'Slider',
+ 'taxes' => 'Steuern',
+ 'tax-categories' => 'Steuer-Kategorien',
+ 'tax-rates' => 'Steuersätze',
+ 'promotions' => 'Promotions',
+ 'discount' => 'Rabatt',
+ 'cms' => 'CMS',
+ ],
+ 'acl' =>
+ [
+ 'dashboard' => 'Dashboard',
+ 'sales' => 'Vertrieb',
+ 'orders' => 'Bestellungen',
+ 'shipments' => 'Sendungen',
+ 'invoices' => 'Rechnungen',
+ 'catalog' => 'Katalog',
+ 'products' => 'Produkte',
+ 'categories' => 'Kategorien',
+ 'attributes' => 'Attribute',
+ 'attribute-families' => 'Attributgruppen',
+ 'customers' => 'Kunden',
+ 'groups' => 'Gruppen',
+ 'reviews' => 'Bewertungen',
'newsletter-subscriptions' => 'Newsletter-Abonnements',
- 'configure' => 'Konfigurieren',
- 'settings' => 'Einstellungen',
- 'locales' => 'Sprachen',
- 'currencies' => 'Währungen',
- 'exchange-rates' => 'Wechselkurse',
- 'inventory-sources' => 'Inventarquellen',
- 'channels' => 'Kanäle',
- 'users' => 'Benutzer',
- 'roles' => 'Rollen',
- 'sliders' => 'Sliders',
- 'taxes' => 'Steuern',
- 'tax-categories' => 'Steuerkategorien',
- 'tax-rates' => 'Steuersätze',
- 'edit' => 'Bearbeiten',
- 'create' => 'Hinzufügen',
- 'delete' => 'Löschen',
- 'promotions' => 'Promotions',
- 'cart-rules' => 'Warenkorbregeln',
- 'catalog-rules' => 'Katalogregeln',
- ),
- 'dashboard' =>
- array (
- 'title' => 'Dashboard',
- 'from' => 'Von',
- 'to' => 'An',
- 'total-customers' => 'Anzahl Kunden',
- 'total-orders' => 'Anzahl Aufträge',
- 'total-sale' => 'Gesamterlös',
- 'average-sale' => 'Durchschnitt pro Verkauf',
- 'increased' => ':progress%',
- 'decreased' => ':progress%',
- 'sales' => 'Vertrieb',
+ 'configure' => 'Konfigurieren',
+ 'settings' => 'Einstellungen',
+ 'locales' => 'Sprachen',
+ 'currencies' => 'Währungen',
+ 'exchange-rates' => 'Wechselkurse',
+ 'inventory-sources' => 'Inventarquellen',
+ 'channels' => 'Kanäle',
+ 'users' => 'Benutzer',
+ 'roles' => 'Rollen',
+ 'sliders' => 'Sliders',
+ 'taxes' => 'Steuern',
+ 'tax-categories' => 'Steuerkategorien',
+ 'tax-rates' => 'Steuersätze',
+ 'edit' => 'Bearbeiten',
+ 'create' => 'Hinzufügen',
+ 'delete' => 'Löschen',
+ 'promotions' => 'Promotions',
+ 'cart-rules' => 'Warenkorbregeln',
+ 'catalog-rules' => 'Katalogregeln',
+ ],
+ 'dashboard' =>
+ [
+ 'title' => 'Dashboard',
+ 'from' => 'Von',
+ 'to' => 'An',
+ 'total-customers' => 'Anzahl Kunden',
+ 'total-orders' => 'Anzahl Aufträge',
+ 'total-sale' => 'Gesamterlös',
+ 'average-sale' => 'Durchschnitt pro Verkauf',
+ 'increased' => ':progress%',
+ 'decreased' => ':progress%',
+ 'sales' => 'Vertrieb',
'top-performing-categories' => 'Top Kategorien',
- 'product-count' => ':count Produkte',
- 'top-selling-products' => 'Top Produkte',
- 'sale-count' => ':count Verkäufe',
- 'customer-with-most-sales' => 'Kunden Mit Dem Meisten Umsatz',
- 'order-count' => ':count Bestellungen',
- 'revenue' => 'Einnahmen :total',
- 'stock-threshold' => 'Lagerbestand',
- 'qty-left' => ':qty Verbleibend',
- ),
- 'datagrid' =>
- array (
- 'mass-ops' =>
- array (
- 'method-error' => 'Fehler! Falsche Methode erkannt, überprüfen Sie die Konfiguration der Massenaktion',
+ 'product-count' => ':count Produkte',
+ 'top-selling-products' => 'Top Produkte',
+ 'sale-count' => ':count Verkäufe',
+ 'customer-with-most-sales' => 'Kunden Mit Dem Meisten Umsatz',
+ 'order-count' => ':count Bestellungen',
+ 'revenue' => 'Einnahmen :total',
+ 'stock-threshold' => 'Lagerbestand',
+ 'qty-left' => ':qty Verbleibend',
+ ],
+ 'datagrid' =>
+ [
+ 'mass-ops' =>
+ [
+ 'method-error' => 'Fehler! Falsche Methode erkannt, überprüfen Sie die Konfiguration der Massenaktion',
'delete-success' => 'Ausgewählte :resource wurden erfolgreich gelöscht',
'partial-action' => 'Einige Aktionen wurden nicht durchgeführt, aufgrund von System-Einschränkungen von :resource',
'update-success' => 'Ausgewählt :resource wurden erfolgreich aktualisiert',
- 'no-resource' => 'Die bereitgestellte Ressource reicht für die Aktion nicht aus',
- ),
- 'id' => 'Id',
- 'status' => 'Status',
- 'code' => 'Code',
- 'admin-name' => 'Name',
- 'name' => 'Name',
- 'direction' => 'Richtung',
- 'fullname' => 'Vollständiger Name',
- 'type' => 'Typ',
- 'copy' => 'Kopieren',
- 'required' => 'Erforderlich',
- 'unique' => 'Einzigartig',
- 'per-locale' => 'Sprach-basierend',
- 'per-channel' => 'Channel-basierend',
- 'position' => 'Position',
- 'locale' => 'Sprache',
- 'hostname' => 'Hostname',
- 'email' => 'E-Mail',
- 'group' => 'Gruppe',
- 'phone' => 'Telefon',
- 'gender' => 'Geschlecht',
- 'title' => 'Titel',
- 'layout' => 'Layout',
- 'url-key' => 'URL-Schlüssel',
- 'comment' => 'Kommentar',
- 'product-name' => 'Produkt',
- 'currency-name' => 'Währungsname',
- 'exch-rate' => 'Tauschrate',
- 'priority' => 'Priorität',
- 'subscribed' => 'Abonniert',
- 'base-total' => 'Basis Gesamt',
- 'grand-total' => 'Gesamtsumme',
- 'order-date' => 'Bestelldatum',
- 'channel-name' => 'Kanal Name',
- 'billed-to' => 'Rechnung an',
- 'shipped-to' => 'Versendet an',
- 'order-id' => 'Auftragsnummer',
- 'invoice-date' => 'Rechnungsdatum',
- 'total-qty' => 'Gesamtmenge',
+ 'no-resource' => 'Die bereitgestellte Ressource reicht für die Aktion nicht aus',
+ ],
+ 'id' => 'Id',
+ 'status' => 'Status',
+ 'code' => 'Code',
+ 'admin-name' => 'Name',
+ 'name' => 'Name',
+ 'direction' => 'Richtung',
+ 'fullname' => 'Vollständiger Name',
+ 'type' => 'Typ',
+ 'copy' => 'Kopieren',
+ 'required' => 'Erforderlich',
+ 'unique' => 'Einzigartig',
+ 'per-locale' => 'Sprach-basierend',
+ 'per-channel' => 'Channel-basierend',
+ 'position' => 'Position',
+ 'locale' => 'Sprache',
+ 'hostname' => 'Hostname',
+ 'email' => 'E-Mail',
+ 'group' => 'Gruppe',
+ 'phone' => 'Telefon',
+ 'gender' => 'Geschlecht',
+ 'title' => 'Titel',
+ 'layout' => 'Layout',
+ 'url-key' => 'URL-Schlüssel',
+ 'comment' => 'Kommentar',
+ 'product-name' => 'Produkt',
+ 'currency-name' => 'Währungsname',
+ 'exch-rate' => 'Tauschrate',
+ 'priority' => 'Priorität',
+ 'subscribed' => 'Abonniert',
+ 'base-total' => 'Basis Gesamt',
+ 'grand-total' => 'Gesamtsumme',
+ 'order-date' => 'Bestelldatum',
+ 'channel-name' => 'Kanal Name',
+ 'billed-to' => 'Rechnung an',
+ 'shipped-to' => 'Versendet an',
+ 'order-id' => 'Auftragsnummer',
+ 'invoice-date' => 'Rechnungsdatum',
+ 'total-qty' => 'Gesamtmenge',
'inventory-source' => 'Inventar Quelle',
- 'shipment-date' => 'Versand Datum',
- 'shipment-to' => 'Versand',
- 'sku' => 'SKU',
- 'price' => 'Preis',
- 'qty' => 'Menge',
- 'permission-type' => 'Berechtigungsart',
- 'identifier' => 'Bezeichner',
- 'state' => 'Bundesland',
- 'country' => 'Land',
- 'tax-rate' => 'Rate',
- 'role' => 'Rolle',
- 'sub-total' => 'Zwischensumme',
- 'no-of-products' => 'Anzahl der Produkte',
+ 'shipment-date' => 'Versand Datum',
+ 'shipment-to' => 'Versand',
+ 'sku' => 'SKU',
+ 'price' => 'Preis',
+ 'qty' => 'Menge',
+ 'permission-type' => 'Berechtigungsart',
+ 'identifier' => 'Bezeichner',
+ 'state' => 'Bundesland',
+ 'country' => 'Land',
+ 'tax-rate' => 'Rate',
+ 'role' => 'Rolle',
+ 'sub-total' => 'Zwischensumme',
+ 'no-of-products' => 'Anzahl der Produkte',
'attribute-family' => 'Attributgruppe',
- 'starts-from' => 'Beginnt von',
- 'ends-till' => 'Endet bis',
- 'per-cust' => 'Pro Kunde',
- 'usage-throttle' => 'Einsatzzeiten',
- 'for-guest' => 'Für Gäste',
- 'order_number' => 'Auftragsnummer',
- 'refund-date' => 'Rückerstattung Datum',
- 'refunded' => 'Erstattet',
- 'start' => 'Starten',
- 'end' => 'Ende',
- 'active' => 'Aktiv',
- 'inactive' => 'Inaktiv',
- 'true' => 'Wahr',
- 'false' => 'Falsch',
- 'approved' => 'Genehmigt',
- 'pending' => 'Ausstehend',
- 'disapproved' => 'Abgelehnt',
- 'coupon-code' => 'Gutschein-Code',
- 'times-used' => 'Mal Verwendet',
- 'created-date' => 'Erstellt-Datum',
- 'expiration-date' => 'Ablaufdatum',
- 'edit' => 'Bearbeiten',
- 'delete' => 'Löschen',
- 'view' => 'Anzeigen',
- 'rtl' => 'RTL',
- 'ltr' => 'LTR',
- 'update-status' => 'Update-Status',
- ),
- 'account' =>
- array (
- 'title' => 'Mein Konto',
- 'save-btn-title' => 'Speichern',
- 'general' => 'Allgemein',
- 'name' => 'Name',
- 'email' => 'E-Mail',
- 'password' => 'Passwort',
+ 'starts-from' => 'Beginnt von',
+ 'ends-till' => 'Endet bis',
+ 'per-cust' => 'Pro Kunde',
+ 'usage-throttle' => 'Einsatzzeiten',
+ 'for-guest' => 'Für Gäste',
+ 'order_number' => 'Auftragsnummer',
+ 'refund-date' => 'Rückerstattung Datum',
+ 'refunded' => 'Erstattet',
+ 'start' => 'Starten',
+ 'end' => 'Ende',
+ 'active' => 'Aktiv',
+ 'inactive' => 'Inaktiv',
+ 'true' => 'Wahr',
+ 'false' => 'Falsch',
+ 'approved' => 'Genehmigt',
+ 'pending' => 'Ausstehend',
+ 'disapproved' => 'Abgelehnt',
+ 'coupon-code' => 'Gutschein-Code',
+ 'times-used' => 'Mal Verwendet',
+ 'created-date' => 'Erstellt-Datum',
+ 'expiration-date' => 'Ablaufdatum',
+ 'edit' => 'Bearbeiten',
+ 'delete' => 'Löschen',
+ 'view' => 'Anzeigen',
+ 'rtl' => 'RTL',
+ 'ltr' => 'LTR',
+ 'update-status' => 'Update-Status',
+ ],
+ 'account' =>
+ [
+ 'title' => 'Mein Konto',
+ 'save-btn-title' => 'Speichern',
+ 'general' => 'Allgemein',
+ 'name' => 'Name',
+ 'email' => 'E-Mail',
+ 'password' => 'Passwort',
'confirm-password' => 'Passwort bestätigen',
- 'change-password' => 'Änderung des Account-Passworts',
+ 'change-password' => 'Änderung des Account-Passworts',
'current-password' => 'Aktuelles Passwort',
- ),
- 'users' =>
- array (
+ ],
+ 'users' =>
+ [
'forget-password' =>
- array (
- 'title' => 'Passwort vergessen',
- 'header-title' => 'Passwort wiederherstellen',
- 'email' => 'Registrierte E-Mail-Adresse',
- 'password' => 'Passwort',
+ [
+ 'title' => 'Passwort vergessen',
+ 'header-title' => 'Passwort wiederherstellen',
+ 'email' => 'Registrierte E-Mail-Adresse',
+ 'password' => 'Passwort',
'confirm-password' => 'Passwort bestätigen',
- 'back-link-title' => 'Zurück zur Anmeldung',
+ 'back-link-title' => 'Zurück zur Anmeldung',
'submit-btn-title' => 'E-Mail zum Zurücksetzen des Passworts senden',
- ),
- 'reset-password' =>
- array (
- 'title' => 'Passwort zurücksetzen',
- 'email' => 'Registrierte E-Mail-Adresse',
- 'password' => 'Passwort',
+ ],
+ 'reset-password' =>
+ [
+ 'title' => 'Passwort zurücksetzen',
+ 'email' => 'Registrierte E-Mail-Adresse',
+ 'password' => 'Passwort',
'confirm-password' => 'Passwort bestätigen',
- 'back-link-title' => 'Zurück zur Anmeldung',
+ 'back-link-title' => 'Zurück zur Anmeldung',
'submit-btn-title' => 'Passwort Zurücksetzen',
- ),
- 'roles' =>
- array (
- 'title' => 'Rollen',
- 'add-role-title' => 'Rolle hinzufügen',
+ ],
+ 'roles' =>
+ [
+ 'title' => 'Rollen',
+ 'add-role-title' => 'Rolle hinzufügen',
'edit-role-title' => 'Rolle bearbeiten',
- 'save-btn-title' => 'Rolle speichern',
- 'general' => 'Allgemein',
- 'name' => 'Name',
- 'description' => 'Beschreibung',
- 'access-control' => 'Zugangskontrolle',
- 'permissions' => 'Berechtigungen',
- 'custom' => 'Benutzerdefiniert',
- 'all' => 'Alle',
- ),
- 'users' =>
- array (
- 'title' => 'Benutzer',
- 'add-user-title' => 'Benutzer hinzufügen',
- 'edit-user-title' => 'Benutzer bearbeiten',
- 'save-btn-title' => 'Benutzer speichern',
- 'general' => 'Allgemein',
- 'email' => 'E-Mail',
- 'name' => 'Name',
- 'password' => 'Passwort',
- 'confirm-password' => 'Passwort bestätigen',
- 'status-and-role' => 'Status und Rolle',
- 'role' => 'Rolle',
- 'status' => 'Status',
- 'account-is-active' => 'Konto ist aktiv',
- 'current-password' => 'Geben Sie das aktuelle Passwort ein',
- 'confirm-delete' => 'Bestätigen Sie dieses Konto zu löschen',
+ 'save-btn-title' => 'Rolle speichern',
+ 'general' => 'Allgemein',
+ 'name' => 'Name',
+ 'description' => 'Beschreibung',
+ 'access-control' => 'Zugangskontrolle',
+ 'permissions' => 'Berechtigungen',
+ 'custom' => 'Benutzerdefiniert',
+ 'all' => 'Alle',
+ ],
+ 'users' =>
+ [
+ 'title' => 'Benutzer',
+ 'add-user-title' => 'Benutzer hinzufügen',
+ 'edit-user-title' => 'Benutzer bearbeiten',
+ 'save-btn-title' => 'Benutzer speichern',
+ 'general' => 'Allgemein',
+ 'email' => 'E-Mail',
+ 'name' => 'Name',
+ 'password' => 'Passwort',
+ 'confirm-password' => 'Passwort bestätigen',
+ 'status-and-role' => 'Status und Rolle',
+ 'role' => 'Rolle',
+ 'status' => 'Status',
+ 'account-is-active' => 'Konto ist aktiv',
+ 'current-password' => 'Geben Sie das aktuelle Passwort ein',
+ 'confirm-delete' => 'Bestätigen Sie dieses Konto zu löschen',
'confirm-delete-title' => 'Bestätigen Sie das Passwort vor dem Löschen',
- 'delete-last' => 'Es ist mindestens ein Administrator erforderlich.',
- 'delete-success' => 'Erfolg! Benutzer gelöscht',
- 'incorrect-password' => 'Das von Ihnen eingegebene Passwort ist falsch',
- 'password-match' => 'Aktuelle Passwörter stimmt nicht überein.',
- 'account-save' => 'Konto-Änderungen erfolgreich gespeichert.',
- 'login-error' => 'Bitte überprüfen Sie Ihre Anmeldeinformationen und versuchen Sie es erneut.',
- 'activate-warning' => 'Ihr Konto ist noch nicht aktiviert, kontaktieren Sie bitte den Administrator.',
- ),
- 'sessions' =>
- array (
- 'title' => 'Anmelden',
- 'email' => 'E-Mail',
- 'password' => 'Passwort',
+ 'delete-last' => 'Es ist mindestens ein Administrator erforderlich.',
+ 'delete-success' => 'Erfolg! Benutzer gelöscht',
+ 'incorrect-password' => 'Das von Ihnen eingegebene Passwort ist falsch',
+ 'password-match' => 'Aktuelle Passwörter stimmt nicht überein.',
+ 'account-save' => 'Konto-Änderungen erfolgreich gespeichert.',
+ 'login-error' => 'Bitte überprüfen Sie Ihre Anmeldeinformationen und versuchen Sie es erneut.',
+ 'activate-warning' => 'Ihr Konto ist noch nicht aktiviert, kontaktieren Sie bitte den Administrator.',
+ ],
+ 'sessions' =>
+ [
+ 'title' => 'Anmelden',
+ 'email' => 'E-Mail',
+ 'password' => 'Passwort',
'forget-password-link-title' => 'Passwort vergessen?',
- 'remember-me' => 'Anmeldung merken',
- 'submit-btn-title' => 'Anmelden',
- ),
- ),
- 'sales' =>
- array (
- 'orders' =>
- array (
- 'title' => 'Bestellungen',
- 'view-title' => 'Bestellung #:order_id',
- 'cancel-btn-title' => 'Abbrechen',
- 'shipment-btn-title' => 'Sendung',
- 'invoice-btn-title' => 'Rechnung',
- 'info' => 'Informationen',
- 'invoices' => 'Rechnungen',
- 'invoices-change-title' => 'Change invoice state',
- 'invoices-change-state-desc' => 'Please select the new invoice state:',
- 'invoice-status-paid' => 'Paid',
- 'invoice-status-pending' => 'Pending',
- 'invoice-status-overdue' => 'Overdue',
- 'invoice-status-update' => 'Save changes',
- 'invoice-status-confirmed' => 'The invoice state has been changed.',
- 'invoice-status-error' => 'Could not update the invoice state. ',
- 'shipments' => 'Sendungen',
- 'order-and-account' => 'Bestellung und Rechnung',
- 'order-info' => 'Bestellinformationen',
- 'order-date' => 'Bestelldatum',
- 'order-status' => 'Bestellstatus',
- 'order-status-canceled' => 'Abgebrochen',
- 'order-status-closed' => 'Geschlossen',
- 'order-status-fraud' => 'Betrug',
- 'order-status-pending' => 'Ausstehend',
- 'order-status-pending-payment' => 'Ausstehende Zahlung',
- 'order-status-processing' => 'Verarbeitung',
- 'order-status-success' => 'Abgeschlossen',
- 'channel' => 'Kanal',
- 'customer-name' => 'Name des Kunden',
- 'email' => 'E-Mail',
- 'contact-number' => 'Kontakt-Nummer',
- 'account-info' => 'Account-Informationen',
- 'address' => 'Adresse',
- 'shipping-address' => 'Versandadresse',
- 'billing-address' => 'Rechnungsadresse',
- 'payment-and-shipping' => 'Zahlung und Versand',
- 'payment-info' => 'Zahlungsinformationen',
- 'payment-method' => 'Zahlungsmethode',
- 'currency' => 'Währung',
- 'shipping-info' => 'Versand-Informationen',
- 'shipping-method' => 'Versandart',
- 'shipping-price' => 'Versandkosten',
- 'products-ordered' => 'Bestellte Produkte',
- 'SKU' => 'SKU',
- 'product-name' => 'Produktname',
- 'qty' => 'Menge',
- 'item-status' => 'Produktstatus',
- 'item-ordered' => 'Bestellt (:qty_ordered)',
- 'item-invoice' => 'In Rechnung gestellt (:qty_invoiced)',
- 'item-shipped' => 'Versand (:qty_shipped)',
- 'item-canceled' => 'Abgebrochen (:qty_canceled)',
- 'item-refunded' => 'Erstattet (:qty_refunded)',
- 'price' => 'Preis',
- 'total' => 'Insgesamt',
- 'subtotal' => 'Zwischensumme',
- 'shipping-handling' => 'Versand & Verpackungskosten',
- 'discount' => 'Rabatt',
- 'tax' => 'Umsatzsteuer',
- 'tax-percent' => 'Umsatzsteuer Prozent',
- 'tax-amount' => 'Umsatzsteuer Betrag',
- 'discount-amount' => 'Rabatt Betrag',
- 'grand-total' => 'Gesamtsumme',
- 'total-paid' => 'Insgesamt Bezahlt',
- 'total-refunded' => 'Insgesamt Erstattet',
- 'total-due' => 'Insgesamt fällig',
- 'cancel-confirm-msg' => 'Sind Sie sicher, dass Sie diese Bestellung stornieren möchten?',
- 'refund-btn-title' => 'Rückerstattung',
- 'refunds' => 'Erstattungen',
- ),
- 'invoices' =>
- array (
- 'title' => 'Rechnungen',
- 'id' => 'Id',
- 'invoice-id' => 'Rechnungsnummer',
- 'date' => 'Rechnungsdatum',
- 'order-id' => 'Auftragsnummer',
- 'customer-name' => 'Name des Kunden',
- 'status' => 'Status',
- 'amount' => 'Betrag',
- 'action' => 'Aktion',
- 'add-title' => 'Rechnung erstellen',
- 'save-btn-title' => 'Rechnung speichern',
- 'qty' => 'Menge',
- 'qty-ordered' => 'Bestellte Menge',
- 'qty-to-invoice' => 'Menge in Rechnung zu stellen',
- 'view-title' => 'Rechnung #:invoice_id',
- 'bill-to' => 'Rechnung an',
- 'ship-to' => 'Versenden an',
- 'print' => 'Drucken',
- 'order-date' => 'Bestell-Datum',
- 'creation-error' => 'Die Erstellung einer Bestellrechnung ist nicht zulässig.',
- 'product-error' => 'Eine Rechnung kann nicht ohne Produkte erstellt werden.',
- ),
- 'shipments' =>
- array (
- 'title' => 'Sendungen',
- 'id' => 'Id',
- 'date' => 'Versanddatum',
- 'order-id' => 'Auftragsnummer',
- 'order-date' => 'Bestelldatum',
- 'customer-name' => 'Name des Kunden',
- 'total-qty' => 'Menge insgesamt',
- 'action' => 'Aktion',
- 'add-title' => 'Sendung anlegen',
- 'save-btn-title' => 'Versandkosten sparen',
- 'qty-ordered' => 'Bestellte Menge',
- 'qty-to-ship' => 'Menge zu versenden',
- 'available-sources' => 'Verfügbaren Quellen',
- 'source' => 'Quelle',
- 'select-source' => 'Bitte wählen sie die Quelle',
- 'qty-available' => 'Menge verfügbar',
- 'inventory-source' => 'Inventarquelle',
- 'carrier-title' => 'Zulieferer',
- 'tracking-number' => 'Tracking-Nummer',
- 'view-title' => 'Versand #:shipment_id',
- 'creation-error' => 'Für diese Bestellung kann kein Versand erstellt werden.',
- 'order-error' => 'Die Erstellung von Auftragssendungen ist nicht zulässig.',
- 'quantity-invalid' => 'Die angeforderte Menge ist ungültig oder nicht verfügbar.',
- ),
- 'refunds' =>
- array (
- 'title' => 'Erstattungen',
- 'id' => 'Id',
- 'add-title' => 'Erstattung erstellen',
- 'save-btn-title' => 'Rückerstattung',
- 'order-id' => 'Auftragsnummer',
- 'qty-ordered' => 'Bestellte Menge',
- 'qty-to-refund' => 'Menge zu erstatten',
- 'refund-shipping' => 'Erstattung Versand',
- 'adjustment-refund' => 'Rückerstattung anpassen',
- 'adjustment-fee' => 'Gebühr anpassen',
- 'update-qty' => 'Mengen anpassen',
- 'invalid-qty' => 'Wir haben eine ungültige Menge gefunden, um Artikel zu erstatten.',
- 'refund-limit-error' => 'Das meiste Geld, das zur Rückerstattung zur Verfügung steht, ist :Höhe.',
- 'refunded' => 'Erstattet',
- 'date' => 'Rückerstattungsdatum',
- 'customer-name' => 'Name des Kunden',
- 'status' => 'Status',
- 'action' => 'Aktion',
- 'view-title' => 'Rückerstattung #:refund_id',
- 'invalid-refund-amount-error' => 'Der Rückerstattungsbetrag sollte nicht Null sein.',
- ),
- ),
- 'catalog' =>
- array (
- 'products' =>
- array (
- 'title' => 'Produkte',
- 'add-product-btn-title' => 'Produkt hinzufügen',
- 'add-title' => 'Produkt hinzufügen',
- 'edit-title' => 'Produkt bearbeiten',
- 'save-btn-title' => 'Produkt speichern',
- 'general' => 'Allgemein',
- 'product-type' => 'Produkttyp',
- 'simple' => 'Einfach',
- 'configurable' => 'Konfigurierbar',
- 'familiy' => 'Attributgruppe',
- 'sku' => 'SKU',
- 'configurable-attributes' => 'Konfigurierbare Attribute',
- 'attribute-header' => 'Attribut(s)',
- 'attribute-option-header' => 'Attribut Option(s)',
- 'no' => 'Nein',
- 'yes' => 'Ja',
- 'disabled' => 'Deaktiviert',
- 'enabled' => 'Aktiviert',
- 'add-variant-btn-title' => 'Variante hinzufügen',
- 'name' => 'Name',
- 'qty' => 'Menge',
- 'price' => 'Preis',
- 'weight' => 'Gewicht',
- 'status' => 'Status',
- 'add-variant-title' => 'Variante hinzufügen',
+ 'remember-me' => 'Anmeldung merken',
+ 'submit-btn-title' => 'Anmelden',
+ ],
+ ],
+ 'sales' => [
+ 'orders' => [
+ 'title' => 'Bestellungen',
+ 'view-title' => 'Bestellung #:order_id',
+ 'cancel-btn-title' => 'Abbrechen',
+ 'shipment-btn-title' => 'Sendung',
+ 'invoice-btn-title' => 'Rechnung',
+ 'info' => 'Informationen',
+ 'invoices' => 'Rechnungen',
+ 'invoices-change-title' => 'Rechnungsstatus ändern',
+ 'invoices-change-state-desc' => 'Bitte wählen Sie den neuen Rechnungsstatus',
+ 'invoice-status-paid' => 'Bezahlt',
+ 'invoice-status-pending' => 'Offen',
+ 'invoice-status-overdue' => 'Überfällig',
+ 'invoice-status-update' => 'Änderungen speichern',
+ 'invoice-status-confirmed' => 'Der Bestellstatus wurde verändert.',
+ 'invoice-status-error' => 'Fehler beim Ändern des Bestellstatus.',
+ 'shipments' => 'Sendungen',
+ 'order-and-account' => 'Bestellung und Rechnung',
+ 'order-info' => 'Bestellinformationen',
+ 'order-date' => 'Bestelldatum',
+ 'order-status' => 'Bestellstatus',
+ 'order-status-canceled' => 'Abgebrochen',
+ 'order-status-closed' => 'Geschlossen',
+ 'order-status-fraud' => 'Betrug',
+ 'order-status-pending' => 'Ausstehend',
+ 'order-status-pending-payment' => 'Ausstehende Zahlung',
+ 'order-status-processing' => 'Verarbeitung',
+ 'order-status-success' => 'Abgeschlossen',
+ 'channel' => 'Kanal',
+ 'customer-name' => 'Name des Kunden',
+ 'email' => 'E-Mail',
+ 'contact-number' => 'Kontakt-Nummer',
+ 'account-info' => 'Account-Informationen',
+ 'address' => 'Adresse',
+ 'shipping-address' => 'Versandadresse',
+ 'billing-address' => 'Rechnungsadresse',
+ 'payment-and-shipping' => 'Zahlung und Versand',
+ 'payment-info' => 'Zahlungsinformationen',
+ 'payment-method' => 'Zahlungsmethode',
+ 'currency' => 'Währung',
+ 'shipping-info' => 'Versand-Informationen',
+ 'shipping-method' => 'Versandart',
+ 'shipping-price' => 'Versandkosten',
+ 'products-ordered' => 'Bestellte Produkte',
+ 'SKU' => 'SKU',
+ 'product-name' => 'Produktname',
+ 'qty' => 'Menge',
+ 'item-status' => 'Produktstatus',
+ 'item-ordered' => 'Bestellt (:qty_ordered)',
+ 'item-invoice' => 'In Rechnung gestellt (:qty_invoiced)',
+ 'item-shipped' => 'Versand (:qty_shipped)',
+ 'item-canceled' => 'Abgebrochen (:qty_canceled)',
+ 'item-refunded' => 'Erstattet (:qty_refunded)',
+ 'price' => 'Preis',
+ 'total' => 'Insgesamt',
+ 'subtotal' => 'Zwischensumme',
+ 'shipping-handling' => 'Versand & Verpackungskosten',
+ 'discount' => 'Rabatt',
+ 'tax' => 'Umsatzsteuer',
+ 'tax-percent' => 'Umsatzsteuer Prozent',
+ 'tax-amount' => 'Umsatzsteuer Betrag',
+ 'discount-amount' => 'Rabatt Betrag',
+ 'grand-total' => 'Gesamtsumme',
+ 'total-paid' => 'Insgesamt Bezahlt',
+ 'total-refunded' => 'Insgesamt Erstattet',
+ 'total-due' => 'Insgesamt fällig',
+ 'cancel-confirm-msg' => 'Sind Sie sicher, dass Sie diese Bestellung stornieren möchten?',
+ 'refund-btn-title' => 'Rückerstattung',
+ 'refunds' => 'Erstattungen',
+ ],
+ 'invoices' =>
+ [
+ 'title' => 'Rechnungen',
+ 'id' => 'Id',
+ 'invoice-id' => 'Rechnungsnummer',
+ 'date' => 'Rechnungsdatum',
+ 'order-id' => 'Auftragsnummer',
+ 'customer-name' => 'Name des Kunden',
+ 'status' => 'Status',
+ 'amount' => 'Betrag',
+ 'action' => 'Aktion',
+ 'add-title' => 'Rechnung erstellen',
+ 'save-btn-title' => 'Rechnung speichern',
+ 'qty' => 'Menge',
+ 'qty-ordered' => 'Bestellte Menge',
+ 'qty-to-invoice' => 'Menge in Rechnung zu stellen',
+ 'view-title' => 'Rechnung #:invoice_id',
+ 'bill-to' => 'Rechnung an',
+ 'ship-to' => 'Versenden an',
+ 'print' => 'Drucken',
+ 'order-date' => 'Bestell-Datum',
+ 'creation-error' => 'Die Erstellung einer Bestellrechnung ist nicht zulässig.',
+ 'product-error' => 'Eine Rechnung kann nicht ohne Produkte erstellt werden.',
+ ],
+ 'shipments' =>
+ [
+ 'title' => 'Sendungen',
+ 'id' => 'Id',
+ 'date' => 'Versanddatum',
+ 'order-id' => 'Auftragsnummer',
+ 'order-date' => 'Bestelldatum',
+ 'customer-name' => 'Name des Kunden',
+ 'total-qty' => 'Menge insgesamt',
+ 'action' => 'Aktion',
+ 'add-title' => 'Sendung anlegen',
+ 'save-btn-title' => 'Versandkosten sparen',
+ 'qty-ordered' => 'Bestellte Menge',
+ 'qty-to-ship' => 'Menge zu versenden',
+ 'available-sources' => 'Verfügbaren Quellen',
+ 'source' => 'Quelle',
+ 'select-source' => 'Bitte wählen sie die Quelle',
+ 'qty-available' => 'Menge verfügbar',
+ 'inventory-source' => 'Inventarquelle',
+ 'carrier-title' => 'Zulieferer',
+ 'tracking-number' => 'Tracking-Nummer',
+ 'view-title' => 'Versand #:shipment_id',
+ 'creation-error' => 'Für diese Bestellung kann kein Versand erstellt werden.',
+ 'order-error' => 'Die Erstellung von Auftragssendungen ist nicht zulässig.',
+ 'quantity-invalid' => 'Die angeforderte Menge ist ungültig oder nicht verfügbar.',
+ ],
+ 'refunds' =>
+ [
+ 'title' => 'Erstattungen',
+ 'id' => 'Id',
+ 'add-title' => 'Erstattung erstellen',
+ 'save-btn-title' => 'Rückerstattung',
+ 'order-id' => 'Auftragsnummer',
+ 'qty-ordered' => 'Bestellte Menge',
+ 'qty-to-refund' => 'Menge zu erstatten',
+ 'refund-shipping' => 'Erstattung Versand',
+ 'adjustment-refund' => 'Rückerstattung anpassen',
+ 'adjustment-fee' => 'Gebühr anpassen',
+ 'update-qty' => 'Mengen anpassen',
+ 'invalid-qty' => 'Wir haben eine ungültige Menge gefunden, um Artikel zu erstatten.',
+ 'refund-limit-error' => 'Das meiste Geld, das zur Rückerstattung zur Verfügung steht, ist :Höhe.',
+ 'refunded' => 'Erstattet',
+ 'date' => 'Rückerstattungsdatum',
+ 'customer-name' => 'Name des Kunden',
+ 'status' => 'Status',
+ 'action' => 'Aktion',
+ 'view-title' => 'Rückerstattung #:refund_id',
+ 'invalid-refund-amount-error' => 'Der Rückerstattungsbetrag sollte nicht Null sein.',
+ ],
+ ],
+ 'catalog' =>
+ [
+ 'products' =>
+ [
+ 'title' => 'Produkte',
+ 'add-product-btn-title' => 'Produkt hinzufügen',
+ 'add-title' => 'Produkt hinzufügen',
+ 'edit-title' => 'Produkt bearbeiten',
+ 'save-btn-title' => 'Produkt speichern',
+ 'general' => 'Allgemein',
+ 'product-type' => 'Produkttyp',
+ 'simple' => 'Einfach',
+ 'configurable' => 'Konfigurierbar',
+ 'familiy' => 'Attributgruppe',
+ 'sku' => 'SKU',
+ 'configurable-attributes' => 'Konfigurierbare Attribute',
+ 'attribute-header' => 'Attribut(s)',
+ 'attribute-option-header' => 'Attribut Option(s)',
+ 'no' => 'Nein',
+ 'yes' => 'Ja',
+ 'disabled' => 'Deaktiviert',
+ 'enabled' => 'Aktiviert',
+ 'add-variant-btn-title' => 'Variante hinzufügen',
+ 'name' => 'Name',
+ 'qty' => 'Menge',
+ 'price' => 'Preis',
+ 'weight' => 'Gewicht',
+ 'status' => 'Status',
+ 'add-variant-title' => 'Variante hinzufügen',
'variant-already-exist-message' => 'Eine Variante mit denselben Attributoptionen ist bereits vorhanden.',
- 'add-image-btn-title' => 'Bild hinzufügen',
- 'mass-delete-success' => 'Alle ausgewählten Produkte wurden erfolgreich gelöscht',
- 'mass-update-success' => 'Alle ausgewählten Produkte wurden erfolgreich aktualisiert',
- 'configurable-error' => 'Bitte wählen Sie mindestens eine konfigurierbares Attribut.',
- 'categories' => 'Kategorien',
- 'images' => 'Bilder',
- 'inventories' => 'Vorräte',
- 'variations' => 'Variationen',
- 'downloadable' => 'Herunterladbare Informationen',
- 'links' => 'Links',
- 'add-link-btn-title' => 'Link hinzufügen',
- 'samples' => 'Beispiele',
- 'add-sample-btn-title' => 'Beispiel hinzufügen',
- 'downloads' => 'Download erlaubt',
- 'file' => 'Datei',
- 'sample' => 'Beispiel',
- 'upload-file' => 'Datei hochladen',
- 'url' => 'Url',
- 'sort-order' => 'Sortierreihenfolge',
- 'browse-file' => 'Datei durchsuchen',
- 'product-link' => 'Verlinkte Produkte',
- 'cross-selling' => 'Cross-Selling',
- 'up-selling' => 'Up Selling',
- 'related-products' => 'Verwandte Produkte',
- 'product-search-hint' => 'Geben Sie den Produktnamen ein',
- 'no-result-found' => 'Produkte nicht mit demselben Namen gefunden.',
- 'searching' => 'Suche ...',
- 'grouped-products' => 'Gruppierte Produkte',
- 'search-products' => 'Produkte suchen',
- 'channel' => 'Kanäle',
- 'bundle-items' => 'Artikel bündeln',
- 'add-option-btn-title' => 'Option hinzufügen',
- 'option-title' => 'Option Titel',
- 'input-type' => 'Input Type',
- 'is-required' => 'Ist erforderlich',
- 'select' => 'Select',
- 'radio' => 'Radio',
- 'checkbox' => 'Checkbox',
- 'multiselect' => 'Multiselect',
- 'new-option' => 'Neue Option',
- 'is-default' => 'Ist Standard',
- ),
+ 'add-image-btn-title' => 'Bild hinzufügen',
+ 'mass-delete-success' => 'Alle ausgewählten Produkte wurden erfolgreich gelöscht',
+ 'mass-update-success' => 'Alle ausgewählten Produkte wurden erfolgreich aktualisiert',
+ 'configurable-error' => 'Bitte wählen Sie mindestens eine konfigurierbares Attribut.',
+ 'categories' => 'Kategorien',
+ 'images' => 'Bilder',
+ 'inventories' => 'Vorräte',
+ 'variations' => 'Variationen',
+ 'downloadable' => 'Herunterladbare Informationen',
+ 'links' => 'Links',
+ 'add-link-btn-title' => 'Link hinzufügen',
+ 'samples' => 'Beispiele',
+ 'add-sample-btn-title' => 'Beispiel hinzufügen',
+ 'downloads' => 'Download erlaubt',
+ 'file' => 'Datei',
+ 'sample' => 'Beispiel',
+ 'upload-file' => 'Datei hochladen',
+ 'url' => 'Url',
+ 'sort-order' => 'Sortierreihenfolge',
+ 'browse-file' => 'Datei durchsuchen',
+ 'product-link' => 'Verlinkte Produkte',
+ 'cross-selling' => 'Cross-Selling',
+ 'up-selling' => 'Up Selling',
+ 'related-products' => 'Verwandte Produkte',
+ 'product-search-hint' => 'Geben Sie den Produktnamen ein',
+ 'no-result-found' => 'Produkte nicht mit demselben Namen gefunden.',
+ 'searching' => 'Suche ...',
+ 'grouped-products' => 'Gruppierte Produkte',
+ 'search-products' => 'Produkte suchen',
+ 'channel' => 'Kanäle',
+ 'bundle-items' => 'Artikel bündeln',
+ 'add-option-btn-title' => 'Option hinzufügen',
+ 'option-title' => 'Option Titel',
+ 'input-type' => 'Input Type',
+ 'is-required' => 'Ist erforderlich',
+ 'select' => 'Select',
+ 'radio' => 'Radio',
+ 'checkbox' => 'Checkbox',
+ 'multiselect' => 'Multiselect',
+ 'new-option' => 'Neue Option',
+ 'is-default' => 'Ist Standard',
+ ],
'attributes' =>
- array (
- 'title' => 'Attribute',
- 'add-title' => 'Attribut hinzufügen',
- 'edit-title' => 'Attribut bearbeiten',
- 'save-btn-title' => 'Attribut speichern',
- 'general' => 'Allgemein',
- 'code' => 'Attribut-Code',
- 'type' => 'Attribut-Typ',
- 'text' => 'Text',
- 'textarea' => 'Textarea',
- 'price' => 'Preis',
- 'boolean' => 'Boolean',
- 'select' => 'Select',
- 'multiselect' => 'Multiselect',
- 'datetime' => 'Datetime',
- 'date' => 'Datum',
- 'label' => 'Label',
- 'admin' => 'Admin',
- 'options' => 'Optionen',
- 'position' => 'Position',
+ [
+ 'title' => 'Attribute',
+ 'add-title' => 'Attribut hinzufügen',
+ 'edit-title' => 'Attribut bearbeiten',
+ 'save-btn-title' => 'Attribut speichern',
+ 'general' => 'Allgemein',
+ 'code' => 'Attribut-Code',
+ 'type' => 'Attribut-Typ',
+ 'text' => 'Text',
+ 'textarea' => 'Textarea',
+ 'price' => 'Preis',
+ 'boolean' => 'Boolean',
+ 'select' => 'Select',
+ 'multiselect' => 'Multiselect',
+ 'datetime' => 'Datetime',
+ 'date' => 'Datum',
+ 'label' => 'Label',
+ 'admin' => 'Admin',
+ 'options' => 'Optionen',
+ 'position' => 'Position',
'add-option-btn-title' => 'Option hinzufügen',
- 'validations' => 'Validierungen',
- 'input_validation' => 'Eingabe-Validierung',
- 'is_required' => 'Ist erforderlich',
- 'is_unique' => 'Ist einzigartig',
- 'number' => 'Anzahl',
- 'decimal' => 'Dezimal',
- 'email' => 'E-Mail',
- 'url' => 'URL',
- 'configuration' => 'Konfiguration',
- 'status' => 'Status',
- 'yes' => 'Ja',
- 'no' => 'Nein',
- 'value_per_locale' => 'Wert pro Sprache',
- 'value_per_channel' => 'Wert pro Kanal',
- 'is_filterable' => 'Verwendung in der geschichteten Navigation',
- 'is_configurable' => 'Verwenden Sie diese Option, um ein konfigurierbares Produkt zu erstellen',
- 'admin_name' => 'Admin-Name',
- 'is_visible_on_front' => 'Sichtbar auf der Produktansichtseite im Frontend',
- 'swatch_type' => 'Farbfeld-Typ',
- 'dropdown' => 'Dropdown',
- 'color-swatch' => 'Farbfeld',
- 'image-swatch' => 'Bild Farbfeld',
- 'text-swatch' => 'Text Farbfeld',
- 'swatch' => 'Farbfeld',
- 'image' => 'Bild',
- 'file' => 'Datei',
- 'checkbox' => 'Checkbox',
- 'use_in_flat' => 'In Produkt Flat Tabelle erstellen',
- 'is_comparable' => 'Attribut ist vergleichbar',
- 'default_null_option' => 'Erstellen Sie eine leere Standardoption',
- ),
- 'families' =>
- array (
- 'title' => 'Familien',
+ 'validations' => 'Validierungen',
+ 'input_validation' => 'Eingabe-Validierung',
+ 'is_required' => 'Ist erforderlich',
+ 'is_unique' => 'Ist einzigartig',
+ 'number' => 'Anzahl',
+ 'decimal' => 'Dezimal',
+ 'email' => 'E-Mail',
+ 'url' => 'URL',
+ 'configuration' => 'Konfiguration',
+ 'status' => 'Status',
+ 'yes' => 'Ja',
+ 'no' => 'Nein',
+ 'value_per_locale' => 'Wert pro Sprache',
+ 'value_per_channel' => 'Wert pro Kanal',
+ 'is_filterable' => 'Verwendung in der geschichteten Navigation',
+ 'is_configurable' => 'Verwenden Sie diese Option, um ein konfigurierbares Produkt zu erstellen',
+ 'admin_name' => 'Admin-Name',
+ 'is_visible_on_front' => 'Sichtbar auf der Produktansichtseite im Frontend',
+ 'swatch_type' => 'Farbfeld-Typ',
+ 'dropdown' => 'Dropdown',
+ 'color-swatch' => 'Farbfeld',
+ 'image-swatch' => 'Bild Farbfeld',
+ 'text-swatch' => 'Text Farbfeld',
+ 'swatch' => 'Farbfeld',
+ 'image' => 'Bild',
+ 'file' => 'Datei',
+ 'checkbox' => 'Checkbox',
+ 'use_in_flat' => 'In Produkt Flat Tabelle erstellen',
+ 'is_comparable' => 'Attribut ist vergleichbar',
+ 'default_null_option' => 'Erstellen Sie eine leere Standardoption',
+ ],
+ 'families' =>
+ [
+ 'title' => 'Familien',
'add-family-btn-title' => 'Familie hinzufügen',
- 'add-title' => 'Familie hinzufügen',
- 'edit-title' => 'Familie bearbeiten',
- 'save-btn-title' => 'Familie speichern',
- 'general' => 'Allgemein',
- 'code' => 'Familien Code',
- 'name' => 'Name',
- 'groups' => 'Gruppen',
- 'add-group-title' => 'Gruppe hinzufügen',
- 'position' => 'Position',
- 'attribute-code' => 'Code',
- 'type' => 'Typ',
- 'add-attribute-title' => 'Attribut hinzufügen',
- 'search' => 'Suche',
- 'group-exist-error' => 'Eine gleichnamige Gruppe existiert bereits.',
- ),
+ 'add-title' => 'Familie hinzufügen',
+ 'edit-title' => 'Familie bearbeiten',
+ 'save-btn-title' => 'Familie speichern',
+ 'general' => 'Allgemein',
+ 'code' => 'Familien Code',
+ 'name' => 'Name',
+ 'groups' => 'Gruppen',
+ 'add-group-title' => 'Gruppe hinzufügen',
+ 'position' => 'Position',
+ 'attribute-code' => 'Code',
+ 'type' => 'Typ',
+ 'add-attribute-title' => 'Attribut hinzufügen',
+ 'search' => 'Suche',
+ 'group-exist-error' => 'Eine gleichnamige Gruppe existiert bereits.',
+ ],
'categories' =>
- array (
- 'title' => 'Kategorien',
- 'add-title' => 'Kategorie hinzufügen',
- 'edit-title' => 'Kategorie bearbeiten',
- 'save-btn-title' => 'Kategorie speichern',
- 'general' => 'Allgemein',
- 'name' => 'Name',
- 'visible-in-menu' => 'Sichtbar im Menü',
- 'yes' => 'Ja',
- 'no' => 'Nein',
- 'position' => 'Position',
- 'display-mode' => 'Display-Modus',
+ [
+ 'title' => 'Kategorien',
+ 'add-title' => 'Kategorie hinzufügen',
+ 'edit-title' => 'Kategorie bearbeiten',
+ 'save-btn-title' => 'Kategorie speichern',
+ 'general' => 'Allgemein',
+ 'name' => 'Name',
+ 'visible-in-menu' => 'Sichtbar im Menü',
+ 'yes' => 'Ja',
+ 'no' => 'Nein',
+ 'position' => 'Position',
+ 'display-mode' => 'Display-Modus',
'products-and-description' => 'Produkte und Beschreibung',
- 'products-only' => 'Nur Produkte',
- 'description-only' => 'Nur Beschreibungen',
- 'description-and-images' => 'Beschreibung und Bilder',
- 'description' => 'Beschreibung',
- 'parent-category' => 'Übergeordnete Kategorie',
- 'seo' => 'Suchmaschinen-Optimierung',
- 'slug' => 'Slug',
- 'meta_title' => 'Meta Titel',
- 'meta_description' => 'Meta-Beschreibung',
- 'meta_keywords' => 'Meta-Schlüsselworte',
- 'image' => 'Bild',
- 'filterable-attributes' => 'Filterbare Attribute',
- 'attributes' => 'Attribute',
- ),
- ),
+ 'products-only' => 'Nur Produkte',
+ 'description-only' => 'Nur Beschreibungen',
+ 'description-and-images' => 'Beschreibung und Bilder',
+ 'description' => 'Beschreibung',
+ 'parent-category' => 'Übergeordnete Kategorie',
+ 'seo' => 'Suchmaschinen-Optimierung',
+ 'slug' => 'Slug',
+ 'meta_title' => 'Meta Titel',
+ 'meta_description' => 'Meta-Beschreibung',
+ 'meta_keywords' => 'Meta-Schlüsselworte',
+ 'image' => 'Bild',
+ 'filterable-attributes' => 'Filterbare Attribute',
+ 'attributes' => 'Attribute',
+ ],
+ ],
'configuration' =>
- array (
- 'title' => 'Konfiguration',
+ [
+ 'title' => 'Konfiguration',
'save-btn-title' => 'Speichern',
- 'save-message' => 'Konfiguration erfolgreich gespeichert',
- 'yes' => 'Ja',
- 'no' => 'Nein',
- 'delete' => 'Löschen',
+ 'save-message' => 'Konfiguration erfolgreich gespeichert',
+ 'yes' => 'Ja',
+ 'no' => 'Nein',
+ 'delete' => 'Löschen',
'tax-categories' =>
- array (
- 'title' => 'Steuerkategorien',
- 'add-title' => 'Steuerkategorie hinzufügen',
- 'edit-title' => 'Steuerkategorie bearbeiten',
- 'save-btn-title' => 'Steuerkategorie speichern',
- 'general' => 'Steuerkategorie',
- 'select-channel' => 'Wählen Sie einen Kanal',
- 'name' => 'Name',
- 'code' => 'Code',
- 'description' => 'Beschreibung',
+ [
+ 'title' => 'Steuerkategorien',
+ 'add-title' => 'Steuerkategorie hinzufügen',
+ 'edit-title' => 'Steuerkategorie bearbeiten',
+ 'save-btn-title' => 'Steuerkategorie speichern',
+ 'general' => 'Steuerkategorie',
+ 'select-channel' => 'Wählen Sie einen Kanal',
+ 'name' => 'Name',
+ 'code' => 'Code',
+ 'description' => 'Beschreibung',
'select-taxrates' => 'Wählen Sie die Steuersätze',
- 'edit' =>
- array (
- 'title' => 'Steuerkategorie bearbeiten',
+ 'edit' =>
+ [
+ 'title' => 'Steuerkategorie bearbeiten',
'edit-button-title' => 'Steuerkategorie bearbeiten',
- ),
- ),
- 'tax-rates' =>
- array (
- 'title' => 'Steuersätze',
- 'add-title' => 'Steuersatz hinzufügen',
- 'edit-title' => 'Steuersatz bearbeiten',
+ ],
+ ],
+ 'tax-rates' =>
+ [
+ 'title' => 'Steuersätze',
+ 'add-title' => 'Steuersatz hinzufügen',
+ 'edit-title' => 'Steuersatz bearbeiten',
'save-btn-title' => 'Steuersatz speichern',
- 'general' => 'Steuersatz',
- 'identifier' => 'Bezeichnung',
- 'is_zip' => 'Postleitzahlen Reichweite aktivieren',
- 'zip_from' => 'Postleitzahl von',
- 'zip_to' => 'Postleitzahl bis',
- 'state' => 'Staat',
- 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.',
- 'country' => 'Land',
- 'tax_rate' => 'Rate',
- 'edit' =>
- array (
- 'title' => 'Steuersatz bearbeiten',
+ 'general' => 'Steuersatz',
+ 'identifier' => 'Bezeichnung',
+ 'is_zip' => 'Postleitzahlen Reichweite aktivieren',
+ 'zip_from' => 'Postleitzahl von',
+ 'zip_to' => 'Postleitzahl bis',
+ 'state' => 'Staat',
+ 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.',
+ 'country' => 'Land',
+ 'tax_rate' => 'Rate',
+ 'edit' =>
+ [
+ 'title' => 'Steuersatz bearbeiten',
'edit-button-title' => 'Steuersatz bearbeiten',
- ),
- 'zip_code' => 'Postleitzahl',
- ),
- 'sales' =>
- array (
+ ],
+ 'zip_code' => 'Postleitzahl',
+ ],
+ 'sales' =>
+ [
'shipping-method' =>
- array (
- 'title' => 'Versand-Methoden',
+ [
+ 'title' => 'Versand-Methoden',
'save-btn-title' => 'Speichern',
- 'description' => 'Bearbeiten',
- 'active' => 'Aktiv',
- 'status' => 'Status',
- ),
- ),
- ),
- 'settings' =>
- array (
- 'locales' =>
- array (
- 'title' => 'Sprachen',
- 'add-title' => 'Sprache hinzufügen',
- 'edit-title' => 'Sprache bearbeiten',
- 'save-btn-title' => 'Sprache speichern',
- 'general' => 'Allgemein',
- 'code' => 'Code',
- 'name' => 'Name',
- 'direction' => 'Richtung',
- 'create-success' => 'Sprache erfolgreich erstellt.',
- 'update-success' => 'Sprache erfolgreich aktualisiert.',
- 'delete-success' => 'Sprache erfolgreich gelöscht.',
+ 'description' => 'Bearbeiten',
+ 'active' => 'Aktiv',
+ 'status' => 'Status',
+ ],
+ ],
+ ],
+ 'settings' =>
+ [
+ 'locales' =>
+ [
+ 'title' => 'Sprachen',
+ 'add-title' => 'Sprache hinzufügen',
+ 'edit-title' => 'Sprache bearbeiten',
+ 'save-btn-title' => 'Sprache speichern',
+ 'general' => 'Allgemein',
+ 'code' => 'Code',
+ 'name' => 'Name',
+ 'direction' => 'Richtung',
+ 'create-success' => 'Sprache erfolgreich erstellt.',
+ 'update-success' => 'Sprache erfolgreich aktualisiert.',
+ 'delete-success' => 'Sprache erfolgreich gelöscht.',
'last-delete-error' => 'Mindestens eine Sprache ist erforderlich.',
- ),
- 'countries' =>
- array (
- 'title' => 'Länder',
- 'add-title' => 'Land hinzufügen',
+ ],
+ 'countries' =>
+ [
+ 'title' => 'Länder',
+ 'add-title' => 'Land hinzufügen',
'save-btn-title' => 'Land speichern',
- 'general' => 'Allgemein',
- 'code' => 'Code',
- 'name' => 'Name',
- ),
- 'currencies' =>
- array (
- 'title' => 'Währungen',
- 'add-title' => 'Währung hinzufügen',
- 'edit-title' => 'Währung bearbeiten',
- 'save-btn-title' => 'Währung speichern',
- 'general' => 'Allgemein',
- 'code' => 'Code',
- 'name' => 'Name',
- 'symbol' => 'Symbol',
- 'create-success' => 'Währung erfolgreich erstellt.',
- 'update-success' => 'Währung erfolgreich aktualisiert.',
- 'delete-success' => 'Währung erfolgreich gelöscht.',
+ 'general' => 'Allgemein',
+ 'code' => 'Code',
+ 'name' => 'Name',
+ ],
+ 'currencies' =>
+ [
+ 'title' => 'Währungen',
+ 'add-title' => 'Währung hinzufügen',
+ 'edit-title' => 'Währung bearbeiten',
+ 'save-btn-title' => 'Währung speichern',
+ 'general' => 'Allgemein',
+ 'code' => 'Code',
+ 'name' => 'Name',
+ 'symbol' => 'Symbol',
+ 'create-success' => 'Währung erfolgreich erstellt.',
+ 'update-success' => 'Währung erfolgreich aktualisiert.',
+ 'delete-success' => 'Währung erfolgreich gelöscht.',
'last-delete-error' => 'Mindestens eine Währung ist erforderlich.',
- ),
- 'exchange_rates' =>
- array (
- 'title' => 'Wechselkurse',
- 'add-title' => 'Wechselkurs hinzufügen',
- 'edit-title' => 'Wechselkurs bearbeiten',
- 'save-btn-title' => 'Wechselkurs speichern',
- 'general' => 'Allgemein',
- 'source_currency' => 'Quell-Währung',
- 'target_currency' => 'Ziel-Währung',
- 'rate' => 'Rate',
+ ],
+ 'exchange_rates' =>
+ [
+ 'title' => 'Wechselkurse',
+ 'add-title' => 'Wechselkurs hinzufügen',
+ 'edit-title' => 'Wechselkurs bearbeiten',
+ 'save-btn-title' => 'Wechselkurs speichern',
+ 'general' => 'Allgemein',
+ 'source_currency' => 'Quell-Währung',
+ 'target_currency' => 'Ziel-Währung',
+ 'rate' => 'Rate',
'exchange-class-not-found' => ':service Wechselkursklasse nicht gefunden',
- 'update-rates' => 'Rate aktualisieren mit :service',
- 'create-success' => 'Wechselkurs erfolgreich erstellt.',
- 'update-success' => 'Wechselkurse erfolgreichaktualisiert.',
- 'delete-success' => 'Wechselkurs erfolgreich gelöscht.',
- 'last-delete-error' => 'Mindestens ein Wechselkurs ist erforderlich.',
- ),
+ 'update-rates' => 'Rate aktualisieren mit :service',
+ 'create-success' => 'Wechselkurs erfolgreich erstellt.',
+ 'update-success' => 'Wechselkurse erfolgreichaktualisiert.',
+ 'delete-success' => 'Wechselkurs erfolgreich gelöscht.',
+ 'last-delete-error' => 'Mindestens ein Wechselkurs ist erforderlich.',
+ ],
'inventory_sources' =>
- array (
- 'title' => 'Inventar-Quellen',
- 'add-title' => 'Inventar Quelle hinzufügen',
- 'edit-title' => 'Inventar Quelle bearbeiten',
- 'save-btn-title' => 'Inventar Quelle speichern',
- 'general' => 'Allgemein',
- 'code' => 'Code',
- 'name' => 'Name',
- 'description' => 'Beschreibung',
- 'source-is-active' => 'Quelle ist aktiv',
- 'contact-info' => 'Kontakt-Informationen',
- 'contact_name' => 'Name',
- 'contact_email' => 'E-Mail',
- 'contact_number' => 'Kontakt-Nummer',
- 'contact_fax' => 'Fax',
- 'address' => 'Quell-Adresse',
- 'country' => 'Land',
- 'state' => 'Staat',
- 'city' => 'Stadt',
- 'street' => 'Straße',
- 'postcode' => 'Postleitzahl',
- 'priority' => 'Priorität',
- 'latitude' => 'Breite',
- 'longitude' => 'Länge',
- 'status' => 'Status',
- 'create-success' => 'Inventar Quelle erfolgreich erstellt.',
- 'update-success' => 'Inventar Quelle erfolgreich aktualisiert.',
- 'delete-success' => 'Inventar Quelle erfolgreich gelöscht.',
+ [
+ 'title' => 'Inventar-Quellen',
+ 'add-title' => 'Inventar Quelle hinzufügen',
+ 'edit-title' => 'Inventar Quelle bearbeiten',
+ 'save-btn-title' => 'Inventar Quelle speichern',
+ 'general' => 'Allgemein',
+ 'code' => 'Code',
+ 'name' => 'Name',
+ 'description' => 'Beschreibung',
+ 'source-is-active' => 'Quelle ist aktiv',
+ 'contact-info' => 'Kontakt-Informationen',
+ 'contact_name' => 'Name',
+ 'contact_email' => 'E-Mail',
+ 'contact_number' => 'Kontakt-Nummer',
+ 'contact_fax' => 'Fax',
+ 'address' => 'Quell-Adresse',
+ 'country' => 'Land',
+ 'state' => 'Staat',
+ 'city' => 'Stadt',
+ 'street' => 'Straße',
+ 'postcode' => 'Postleitzahl',
+ 'priority' => 'Priorität',
+ 'latitude' => 'Breite',
+ 'longitude' => 'Länge',
+ 'status' => 'Status',
+ 'create-success' => 'Inventar Quelle erfolgreich erstellt.',
+ 'update-success' => 'Inventar Quelle erfolgreich aktualisiert.',
+ 'delete-success' => 'Inventar Quelle erfolgreich gelöscht.',
'last-delete-error' => 'Mindestens eine Inventar-Quelle erforderlich ist.',
- ),
- 'channels' =>
- array (
- 'title' => 'Kanäle',
- 'add-title' => 'Kanal hinzufügen',
- 'edit-title' => 'Kanal bearbeiten',
- 'save-btn-title' => 'Kanal speichern',
- 'general' => 'Allgemein',
- 'code' => 'Code',
- 'name' => 'Name',
- 'description' => 'Beschreibung',
- 'hostname' => 'Hostname',
+ ],
+ 'channels' =>
+ [
+ 'title' => 'Kanäle',
+ 'add-title' => 'Kanal hinzufügen',
+ 'edit-title' => 'Kanal bearbeiten',
+ 'save-btn-title' => 'Kanal speichern',
+ 'general' => 'Allgemein',
+ 'code' => 'Code',
+ 'name' => 'Name',
+ 'description' => 'Beschreibung',
+ 'hostname' => 'Hostname',
'currencies-and-locales' => 'Währungen und Spachen',
- 'locales' => 'Sprachen',
- 'default-locale' => 'Standard-Sprache',
- 'currencies' => 'Währungen',
- 'base-currency' => 'Standard-Währung',
- 'root-category' => 'Root-Kategorie',
- 'inventory_sources' => 'Inventar-Quellen',
- 'design' => 'Design',
- 'theme' => 'Theme',
- 'home_page_content' => 'Startseite Inhalt',
- 'footer_content' => 'Fußzeile Inhalt',
- 'logo' => 'Logo',
- 'favicon' => 'Favicon',
- 'create-success' => 'Kanal erfolgreich erstellt.',
- 'update-success' => 'Kanal erfolgreich aktualisiert.',
- 'delete-success' => 'Kanal erfolgreich gelöscht.',
- 'last-delete-error' => 'Mindestens ein Kanal ist erforderlich.',
- 'seo' => 'Home-Page-SEO',
- 'seo-title' => 'Meta Titel',
- 'seo-description' => 'Meta-Beschreibung',
- 'seo-keywords' => 'Meta-keywords',
- ),
- 'sliders' =>
- array (
- 'title' => 'Sliders',
- 'name' => 'Name',
- 'add-title' => 'Slider erstellen',
- 'edit-title' => 'Slider editieren',
- 'save-btn-title' => 'Slider speichern',
- 'general' => 'Allgemein',
- 'image' => 'Bild',
- 'content' => 'Inhalt',
- 'channels' => 'Kanal',
+ 'locales' => 'Sprachen',
+ 'default-locale' => 'Standard-Sprache',
+ 'currencies' => 'Währungen',
+ 'base-currency' => 'Standard-Währung',
+ 'root-category' => 'Root-Kategorie',
+ 'inventory_sources' => 'Inventar-Quellen',
+ 'design' => 'Design',
+ 'theme' => 'Theme',
+ 'home_page_content' => 'Startseite Inhalt',
+ 'footer_content' => 'Fußzeile Inhalt',
+ 'logo' => 'Logo',
+ 'favicon' => 'Favicon',
+ 'create-success' => 'Kanal erfolgreich erstellt.',
+ 'update-success' => 'Kanal erfolgreich aktualisiert.',
+ 'delete-success' => 'Kanal erfolgreich gelöscht.',
+ 'last-delete-error' => 'Mindestens ein Kanal ist erforderlich.',
+ 'seo' => 'Home-Page-SEO',
+ 'seo-title' => 'Meta Titel',
+ 'seo-description' => 'Meta-Beschreibung',
+ 'seo-keywords' => 'Meta-keywords',
+ ],
+ 'sliders' =>
+ [
+ 'title' => 'Sliders',
+ 'name' => 'Name',
+ 'add-title' => 'Slider erstellen',
+ 'edit-title' => 'Slider editieren',
+ 'save-btn-title' => 'Slider speichern',
+ 'general' => 'Allgemein',
+ 'image' => 'Bild',
+ 'content' => 'Inhalt',
+ 'channels' => 'Kanal',
'created-success' => 'Slider erfolgreich erstellt',
- 'created-fault' => 'Fehler beim Erstellen des Slider-Elements',
- 'update-success' => 'Slider-Eintrag wurde erfolgreich aktualisiert',
- 'update-fail' => 'Slider kann nicht aktualisiert werden',
- 'delete-success' => 'Der letzte Slider kann nicht gelöscht werden',
- 'delete-fail' => 'Slider erfolgreich gelöscht',
- ),
- 'tax-categories' =>
- array (
- 'title' => 'Steuerkategorien',
- 'add-title' => 'Steuerkategorie erstellen',
- 'edit-title' => 'Steuerkategorie bearbeiten',
- 'save-btn-title' => 'Steuern-Kategorie speichern',
- 'general' => 'Steuerkategorie',
- 'select-channel' => 'Wählen Sie einen Kanal',
- 'name' => 'Name',
- 'code' => 'Code',
- 'description' => 'Beschreibung',
+ 'created-fault' => 'Fehler beim Erstellen des Slider-Elements',
+ 'update-success' => 'Slider-Eintrag wurde erfolgreich aktualisiert',
+ 'update-fail' => 'Slider kann nicht aktualisiert werden',
+ 'delete-success' => 'Der letzte Slider kann nicht gelöscht werden',
+ 'delete-fail' => 'Slider erfolgreich gelöscht',
+ ],
+ 'tax-categories' =>
+ [
+ 'title' => 'Steuerkategorien',
+ 'add-title' => 'Steuerkategorie erstellen',
+ 'edit-title' => 'Steuerkategorie bearbeiten',
+ 'save-btn-title' => 'Steuern-Kategorie speichern',
+ 'general' => 'Steuerkategorie',
+ 'select-channel' => 'Wählen Sie einen Kanal',
+ 'name' => 'Name',
+ 'code' => 'Code',
+ 'description' => 'Beschreibung',
'select-taxrates' => 'Wählen Sie die Steuersätze',
- 'edit' =>
- array (
- 'title' => 'Steuerkategorie bearbeiten',
+ 'edit' =>
+ [
+ 'title' => 'Steuerkategorie bearbeiten',
'edit-button-title' => 'Steuerkategorie bearbeiten',
- ),
- 'create-success' => 'Neue Steuerkategorie Angelegt',
- 'create-error' => 'Fehler Bei Der Erstellung Der Steuerkategorie',
- 'update-success' => 'Erfolgreich Aktualisiert, Steuerkategorie',
- 'update-error' => 'Fehler Beim Update Der Steuerkategorie',
- 'atleast-one' => 'Nicht Löschen Sie Die Letzte Steuerart',
- 'delete' => 'Steuer Kategorie Wurde Erfolgreich Gelöscht',
- ),
- 'tax-rates' =>
- array (
- 'title' => 'Steuersätze',
- 'add-title' => 'Steuersatz erstellen',
- 'edit-title' => 'Steuersatz bearbeiten',
+ ],
+ 'create-success' => 'Neue Steuerkategorie Angelegt',
+ 'create-error' => 'Fehler Bei Der Erstellung Der Steuerkategorie',
+ 'update-success' => 'Erfolgreich Aktualisiert, Steuerkategorie',
+ 'update-error' => 'Fehler Beim Update Der Steuerkategorie',
+ 'atleast-one' => 'Nicht Löschen Sie Die Letzte Steuerart',
+ 'delete' => 'Steuer Kategorie Wurde Erfolgreich Gelöscht',
+ ],
+ 'tax-rates' =>
+ [
+ 'title' => 'Steuersätze',
+ 'add-title' => 'Steuersatz erstellen',
+ 'edit-title' => 'Steuersatz bearbeiten',
'save-btn-title' => 'Steuersatz speichern',
- 'general' => 'Steuersatz',
- 'identifier' => 'Bezeichner',
- 'is_zip' => 'Postleitzahlen Reichweite aktivieren',
- 'zip_from' => 'Postleitzahl von',
- 'zip_to' => 'Postleitzahl bis',
- 'state' => 'Staat',
- 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.',
- 'country' => 'Land',
- 'tax_rate' => 'Rate',
- 'edit' =>
- array (
- 'title' => 'Steuersatz bearbeiten',
+ 'general' => 'Steuersatz',
+ 'identifier' => 'Bezeichner',
+ 'is_zip' => 'Postleitzahlen Reichweite aktivieren',
+ 'zip_from' => 'Postleitzahl von',
+ 'zip_to' => 'Postleitzahl bis',
+ 'state' => 'Staat',
+ 'select-state' => 'Wählen Sie eine Region, ein Bundesland oder eine Provinz aus.',
+ 'country' => 'Land',
+ 'tax_rate' => 'Rate',
+ 'edit' =>
+ [
+ 'title' => 'Steuersatz bearbeiten',
'edit-button-title' => 'Steuersatz bearbeiten',
- ),
- 'zip_code' => 'Postleitzahl',
+ ],
+ 'zip_code' => 'Postleitzahl',
'create-success' => 'Steuersatz erfolgreich erstellt',
- 'create-error' => 'Steuersatz kann nicht erstellt werden',
+ 'create-error' => 'Steuersatz kann nicht erstellt werden',
'update-success' => 'Steuersatz erfolgreich aktualisiert',
- 'update-error' => 'Fehler! Steuersatz Kann nicht aktualisiert werden',
- 'delete' => 'Steuersatz erfolgreich gelöscht',
- 'atleast-one' => 'Letzter Steuersatz kann nicht gelöscht werden',
- ),
- 'development' =>
- array (
+ 'update-error' => 'Fehler! Steuersatz Kann nicht aktualisiert werden',
+ 'delete' => 'Steuersatz erfolgreich gelöscht',
+ 'atleast-one' => 'Letzter Steuersatz kann nicht gelöscht werden',
+ ],
+ 'development' =>
+ [
'title' => 'Entwicklung',
- ),
- ),
- 'customers' =>
- array (
- 'groups' =>
- array (
- 'add-title' => 'Gruppe hinzufügen',
- 'edit-title' => 'Gruppe bearbeiten',
- 'save-btn-title' => 'Gruppe speichern',
- 'title' => 'Gruppen',
- 'code' => 'Code',
- 'name' => 'Name',
+ ],
+ ],
+ 'customers' =>
+ [
+ 'groups' =>
+ [
+ 'add-title' => 'Gruppe hinzufügen',
+ 'edit-title' => 'Gruppe bearbeiten',
+ 'save-btn-title' => 'Gruppe speichern',
+ 'title' => 'Gruppen',
+ 'code' => 'Code',
+ 'name' => 'Name',
'is_user_defined' => 'Benutzer definiert',
- 'yes' => 'Ja',
- ),
- 'addresses' =>
- array (
- 'title' => ':customer_name\'s Adressen-Liste',
- 'vat_id' => 'Umsatzsteuer-ID',
- 'create-title' => 'Kunden-Adresse erstellen',
- 'edit-title' => 'Kunden-Adresse bearbeiten',
- 'title-orders' => ':customer_name Auftragsliste',
- 'address-list' => 'Adressliste',
- 'order-list' => 'Bestellliste',
- 'address-id' => 'Adresse-ID',
- 'address-1' => 'Adresse 1',
- 'city' => 'Stadt',
- 'state-name' => 'Staat',
- 'country-name' => 'Land',
- 'postcode' => 'Postleitzahl',
- 'default-address' => 'Standard-Adresse',
- 'yes' => 'Ja',
- 'not-approved' => 'Nicht zugelassen',
- 'no' => 'Nein',
- 'dash' => '-',
- 'delete' => 'Löschen',
- 'create-btn-title' => 'Adresse hinzufügen',
- 'save-btn-title' => 'Adresse speichern',
- 'general' => 'Allgemein',
- 'success-create' => 'Erfolg: Kunden-Adresse erstellt wurde.',
- 'success-update' => 'Erfolg: Kunden-Adresse erfolgreich aktualisiert.',
- 'success-delete' => 'Erfolg: Kunden-Adresse erfolgreich gelöscht.',
+ 'yes' => 'Ja',
+ ],
+ 'addresses' =>
+ [
+ 'title' => ':customer_name\'s Adressen-Liste',
+ 'vat_id' => 'Umsatzsteuer-ID',
+ 'create-title' => 'Kunden-Adresse erstellen',
+ 'edit-title' => 'Kunden-Adresse bearbeiten',
+ 'title-orders' => ':customer_name Auftragsliste',
+ 'address-list' => 'Adressliste',
+ 'order-list' => 'Bestellliste',
+ 'address-id' => 'Adresse-ID',
+ 'address-1' => 'Adresse 1',
+ 'city' => 'Stadt',
+ 'state-name' => 'Staat',
+ 'country-name' => 'Land',
+ 'postcode' => 'Postleitzahl',
+ 'default-address' => 'Standard-Adresse',
+ 'yes' => 'Ja',
+ 'not-approved' => 'Nicht zugelassen',
+ 'no' => 'Nein',
+ 'dash' => '-',
+ 'delete' => 'Löschen',
+ 'create-btn-title' => 'Adresse hinzufügen',
+ 'save-btn-title' => 'Adresse speichern',
+ 'general' => 'Allgemein',
+ 'success-create' => 'Erfolg: Kunden-Adresse erstellt wurde.',
+ 'success-update' => 'Erfolg: Kunden-Adresse erfolgreich aktualisiert.',
+ 'success-delete' => 'Erfolg: Kunden-Adresse erfolgreich gelöscht.',
'success-mass-delete' => 'Erfolg: Die ausgewählten Adressen wurden erfolgreich gelöscht.',
- 'error-create' => 'Fehler: Kunde-Adresse nicht erstellt.',
- ),
- 'note' =>
- array (
- 'title' => 'Notiz hinzufügen',
- 'save-note' => 'Notiz speichern',
+ 'error-create' => 'Fehler: Kunde-Adresse nicht erstellt.',
+ ],
+ 'note' =>
+ [
+ 'title' => 'Notiz hinzufügen',
+ 'save-note' => 'Notiz speichern',
'enter-note' => 'Hinweis eingeben',
'help-title' => 'Notiz zu diesem Kunden hinzufügen',
- ),
- 'customers' =>
- array (
- 'add-title' => 'Kunden hinzufügen',
- 'edit-title' => 'Kunde bearbeiten',
- 'title' => 'Kunden',
- 'first_name' => 'Vorname',
- 'last_name' => 'Nachname',
- 'gender' => 'Geschlecht',
- 'email' => 'E-Mail',
- 'date_of_birth' => 'Geburtsdatum',
- 'phone' => 'Telefon',
- 'customer_group' => 'Kundengruppe',
- 'save-btn-title' => 'Kunde speichern',
- 'channel_name' => 'Kanalname',
- 'state' => 'Staat',
- 'select-state' => 'Wählen Sie eine Region, ein Bundesland, oder eine Provinz aus.',
- 'country' => 'Land',
- 'other' => 'Andere',
- 'male' => 'Männlich',
- 'female' => 'Weiblich',
- 'group-default' => 'Die Standardgruppe kann nicht gelöscht werden.',
- 'edit-help-title' => 'Kunde bearbeiten',
- 'delete-help-title' => 'Kunde löschen',
- 'addresses' => 'Adressen',
+ ],
+ 'customers' =>
+ [
+ 'add-title' => 'Kunden hinzufügen',
+ 'edit-title' => 'Kunde bearbeiten',
+ 'title' => 'Kunden',
+ 'first_name' => 'Vorname',
+ 'last_name' => 'Nachname',
+ 'gender' => 'Geschlecht',
+ 'email' => 'E-Mail',
+ 'date_of_birth' => 'Geburtsdatum',
+ 'phone' => 'Telefon',
+ 'customer_group' => 'Kundengruppe',
+ 'save-btn-title' => 'Kunde speichern',
+ 'channel_name' => 'Kanalname',
+ 'state' => 'Staat',
+ 'select-state' => 'Wählen Sie eine Region, ein Bundesland, oder eine Provinz aus.',
+ 'country' => 'Land',
+ 'other' => 'Andere',
+ 'male' => 'Männlich',
+ 'female' => 'Weiblich',
+ 'group-default' => 'Die Standardgruppe kann nicht gelöscht werden.',
+ 'edit-help-title' => 'Kunde bearbeiten',
+ 'delete-help-title' => 'Kunde löschen',
+ 'addresses' => 'Adressen',
'mass-destroy-success' => 'Kunden erfolgreich gelöscht',
- 'mass-update-success' => 'Kunden erfolgreich aktualisiert',
- 'status' => 'Status',
- 'active' => 'Aktiv',
- 'inactive' => 'Inaktiv',
- ),
- 'reviews' =>
- array (
- 'title' => 'Bewertungen',
- 'edit-title' => 'Bewertung bearbeiten',
- 'rating' => 'Bewertung',
- 'status' => 'Status',
- 'comment' => 'Kommentar',
- 'pending' => 'Ausstehend',
- 'approved' => 'Genehmigen',
+ 'mass-update-success' => 'Kunden erfolgreich aktualisiert',
+ 'status' => 'Status',
+ 'active' => 'Aktiv',
+ 'inactive' => 'Inaktiv',
+ ],
+ 'reviews' =>
+ [
+ 'title' => 'Bewertungen',
+ 'edit-title' => 'Bewertung bearbeiten',
+ 'rating' => 'Bewertung',
+ 'status' => 'Status',
+ 'comment' => 'Kommentar',
+ 'pending' => 'Ausstehend',
+ 'approved' => 'Genehmigen',
'disapproved' => 'Missbilligen',
- ),
+ ],
'subscribers' =>
- array (
- 'title' => 'Newsletter-Abonnenten',
- 'title-edit' => 'Newsletter-Abonnenten bearbeiten',
- 'email' => 'E-Mail',
- 'is_subscribed' => 'Abonniert',
+ [
+ 'title' => 'Newsletter-Abonnenten',
+ 'title-edit' => 'Newsletter-Abonnenten bearbeiten',
+ 'email' => 'E-Mail',
+ 'is_subscribed' => 'Abonniert',
'edit-btn-title' => 'Abonnenten bearbeiten',
'update-success' => 'Der Abonnent wurde erfolgreich aktualisiert',
- 'update-failed' => 'Fehler! Sie können den Abonnenten nicht kündigen',
- 'delete' => 'Der Abonnent wurde erfolgreich gelöscht',
- 'delete-failed' => 'Fehler! Abonnenten können nicht gelöscht werden',
- ),
- ),
- 'promotions' =>
- array (
- 'cart-rules' =>
- array (
- 'title' => 'Warenkorbregeln',
- 'add-title' => 'Warenkorbregel hinzufügen',
- 'edit-title' => 'Warenkorbregel bearbeiten',
- 'save-btn-title' => 'Warenkorbregel speichern',
- 'rule-information' => 'Regelinformationen',
- 'name' => 'Name',
- 'description' => 'Beschreibung',
- 'status' => 'Status',
- 'is-active' => 'Warenkorbregel ist aktiv',
- 'channels' => 'Kanäle',
- 'customer-groups' => 'Kundengruppen',
- 'coupon-type' => 'Gutscheintyp',
- 'no-coupon' => 'Ohne Gutschein',
- 'specific-coupon' => 'Gutscheintyp',
- 'auto-generate-coupon' => 'Gutschein automatisch generieren',
- 'no' => 'Nein',
- 'yes' => 'Ja',
- 'coupon-code' => 'Gutscheincode',
- 'uses-per-coupon' => 'Verwendungen pro Gutschein',
- 'uses-per-customer' => 'Verwendungen pro Kunde',
+ 'update-failed' => 'Fehler! Sie können den Abonnenten nicht kündigen',
+ 'delete' => 'Der Abonnent wurde erfolgreich gelöscht',
+ 'delete-failed' => 'Fehler! Abonnenten können nicht gelöscht werden',
+ ],
+ ],
+ 'promotions' =>
+ [
+ 'cart-rules' =>
+ [
+ 'title' => 'Warenkorbregeln',
+ 'add-title' => 'Warenkorbregel hinzufügen',
+ 'edit-title' => 'Warenkorbregel bearbeiten',
+ 'save-btn-title' => 'Warenkorbregel speichern',
+ 'rule-information' => 'Regelinformationen',
+ 'name' => 'Name',
+ 'description' => 'Beschreibung',
+ 'status' => 'Status',
+ 'is-active' => 'Warenkorbregel ist aktiv',
+ 'channels' => 'Kanäle',
+ 'customer-groups' => 'Kundengruppen',
+ 'coupon-type' => 'Gutscheintyp',
+ 'no-coupon' => 'Ohne Gutschein',
+ 'specific-coupon' => 'Gutscheintyp',
+ 'auto-generate-coupon' => 'Gutschein automatisch generieren',
+ 'no' => 'Nein',
+ 'yes' => 'Ja',
+ 'coupon-code' => 'Gutscheincode',
+ 'uses-per-coupon' => 'Verwendungen pro Gutschein',
+ 'uses-per-customer' => 'Verwendungen pro Kunde',
'uses-per-customer-control-info' => 'Wird nur für angemeldete Kunden verwendet.',
- 'from' => 'Von',
- 'to' => 'An',
- 'priority' => 'Priorität',
- 'conditions' => 'Bedingungen',
- 'condition-type' => 'Bedingungen Typ',
- 'all-conditions-true' => 'Alle Bedingungen sind erfüllt',
- 'any-condition-true' => 'Mindestens eine Bedingung ist erfüllt',
- 'add-condition' => 'Bedingung hinzufügen',
- 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus',
- 'cart-attribute' => 'Warenkorbattribut',
- 'subtotal' => 'Zwischensumme',
- 'additional' => 'Zusatzinformationen',
- 'total-items-qty' => 'Gesamtmenge der Artikel',
- 'total-weight' => 'Gesamtgewicht',
- 'payment-method' => 'Zahlungsmethode',
- 'shipping-method' => 'Versandart',
- 'shipping-postcode' => 'Postleitzahl',
- 'shipping-state' => 'Versand Staat',
- 'shipping-country' => 'Versand Land',
- 'cart-item-attribute' => 'Warenkorb-Item-Attribut',
- 'price-in-cart' => 'Betrag im Warenkorb',
- 'qty-in-cart' => 'Menge im Warenkorb',
- 'product-attribute' => 'Produkt-Attribut',
- 'attribute-name-children-only' => ':attribute_name (Nur Kinder)',
- 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)',
- 'is-equal-to' => 'Gleich',
- 'is-not-equal-to' => 'Ist nicht gleich',
- 'equals-or-greater-than' => 'Gleich oder größer als',
- 'equals-or-less-than' => 'Gleich oder weniger als',
- 'greater-than' => 'Größer als',
- 'less-than' => 'Weniger als',
- 'contain' => 'Enthalten',
- 'contains' => 'Enthält',
- 'does-not-contain' => 'Nicht enthalten',
- 'actions' => 'Aktionen',
- 'action-type' => 'Aktion Typ',
- 'percentage-product-price' => 'Prozentsatz des Produktpreises',
- 'fixed-amount' => 'Fester Betrag',
- 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkorb',
- 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei',
- 'discount-amount' => 'Rabattbetrag',
- 'discount-quantity' => 'Maximale Anzahl reduzierter Artikel',
- 'discount-step' => 'Kaufe Sie Menge X',
- 'free-shipping' => 'Kostenloser Versand',
- 'apply-to-shipping' => 'Auf den Versand anwenden',
- 'coupon-codes' => 'Gutschein-Codes',
- 'coupon-qty' => 'Gutschein Menge',
- 'code-length' => 'Code-Länge',
- 'code-format' => 'Code-Format',
- 'alphanumeric' => 'Alphanumerisch',
- 'alphabetical' => 'Alphabetisch',
- 'numeric' => 'Numerisch',
- 'code-prefix' => 'Code-Präfix',
- 'code-suffix' => 'Code Suffix',
- 'generate' => 'Generieren',
- 'cart-rule-not-defind-error' => 'Warenkorb-Regel ist nicht definiert',
- 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.',
- 'end-other-rules' => 'Ende Andere Regeln',
- 'children-categories' => 'Kategorien (Nur Kinder)',
- 'parent-categories' => 'Kategorien (Nur Eltern)',
- 'categories' => 'Kategorien',
- 'attribute_family' => 'Attributgruppe',
- ),
+ 'from' => 'Von',
+ 'to' => 'An',
+ 'priority' => 'Priorität',
+ 'conditions' => 'Bedingungen',
+ 'condition-type' => 'Bedingungen Typ',
+ 'all-conditions-true' => 'Alle Bedingungen sind erfüllt',
+ 'any-condition-true' => 'Mindestens eine Bedingung ist erfüllt',
+ 'add-condition' => 'Bedingung hinzufügen',
+ 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus',
+ 'cart-attribute' => 'Warenkorbattribut',
+ 'subtotal' => 'Zwischensumme',
+ 'additional' => 'Zusatzinformationen',
+ 'total-items-qty' => 'Gesamtmenge der Artikel',
+ 'total-weight' => 'Gesamtgewicht',
+ 'payment-method' => 'Zahlungsmethode',
+ 'shipping-method' => 'Versandart',
+ 'shipping-postcode' => 'Postleitzahl',
+ 'shipping-state' => 'Versand Staat',
+ 'shipping-country' => 'Versand Land',
+ 'cart-item-attribute' => 'Warenkorb-Item-Attribut',
+ 'price-in-cart' => 'Betrag im Warenkorb',
+ 'qty-in-cart' => 'Menge im Warenkorb',
+ 'product-attribute' => 'Produkt-Attribut',
+ 'attribute-name-children-only' => ':attribute_name (Nur Kinder)',
+ 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)',
+ 'is-equal-to' => 'Gleich',
+ 'is-not-equal-to' => 'Ist nicht gleich',
+ 'equals-or-greater-than' => 'Gleich oder größer als',
+ 'equals-or-less-than' => 'Gleich oder weniger als',
+ 'greater-than' => 'Größer als',
+ 'less-than' => 'Weniger als',
+ 'contain' => 'Enthalten',
+ 'contains' => 'Enthält',
+ 'does-not-contain' => 'Nicht enthalten',
+ 'actions' => 'Aktionen',
+ 'action-type' => 'Aktion Typ',
+ 'percentage-product-price' => 'Prozentsatz des Produktpreises',
+ 'fixed-amount' => 'Fester Betrag',
+ 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkorb',
+ 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei',
+ 'discount-amount' => 'Rabattbetrag',
+ 'discount-quantity' => 'Maximale Anzahl reduzierter Artikel',
+ 'discount-step' => 'Kaufe Sie Menge X',
+ 'free-shipping' => 'Kostenloser Versand',
+ 'apply-to-shipping' => 'Auf den Versand anwenden',
+ 'coupon-codes' => 'Gutschein-Codes',
+ 'coupon-qty' => 'Gutschein Menge',
+ 'code-length' => 'Code-Länge',
+ 'code-format' => 'Code-Format',
+ 'alphanumeric' => 'Alphanumerisch',
+ 'alphabetical' => 'Alphabetisch',
+ 'numeric' => 'Numerisch',
+ 'code-prefix' => 'Code-Präfix',
+ 'code-suffix' => 'Code Suffix',
+ 'generate' => 'Generieren',
+ 'cart-rule-not-defind-error' => 'Warenkorb-Regel ist nicht definiert',
+ 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.',
+ 'end-other-rules' => 'Ende Andere Regeln',
+ 'children-categories' => 'Kategorien (Nur Kinder)',
+ 'parent-categories' => 'Kategorien (Nur Eltern)',
+ 'categories' => 'Kategorien',
+ 'attribute_family' => 'Attributgruppe',
+ ],
'catalog-rules' =>
- array (
- 'title' => 'Katalogregeln',
- 'add-title' => 'Katalogregel hinzufügen',
- 'edit-title' => 'Katalogregel bearbeiten',
- 'save-btn-title' => 'Katalogregel speichern',
- 'rule-information' => 'Regeliformationen',
- 'name' => 'Name',
- 'description' => 'Beschreibung',
- 'status' => 'Status',
- 'is-active' => 'Katalogregel ist aktiv',
- 'channels' => 'Kanäle',
- 'customer-groups' => 'Kundengruppen',
- 'no' => 'Nein',
- 'yes' => 'Ja',
- 'from' => 'Von',
- 'to' => 'An',
- 'priority' => 'Priorität',
- 'conditions' => 'Bedingungen',
- 'condition-type' => 'Bedingungen Typ',
- 'all-conditions-true' => 'Alle Bedingungen sind erfüllt',
- 'any-condition-true' => 'Jede Bedingung ist wahr',
- 'add-condition' => 'Bedingung hinzufügen',
- 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus',
- 'product-attribute' => 'Produkt-Attribut',
+ [
+ 'title' => 'Katalogregeln',
+ 'add-title' => 'Katalogregel hinzufügen',
+ 'edit-title' => 'Katalogregel bearbeiten',
+ 'save-btn-title' => 'Katalogregel speichern',
+ 'rule-information' => 'Regeliformationen',
+ 'name' => 'Name',
+ 'description' => 'Beschreibung',
+ 'status' => 'Status',
+ 'is-active' => 'Katalogregel ist aktiv',
+ 'channels' => 'Kanäle',
+ 'customer-groups' => 'Kundengruppen',
+ 'no' => 'Nein',
+ 'yes' => 'Ja',
+ 'from' => 'Von',
+ 'to' => 'An',
+ 'priority' => 'Priorität',
+ 'conditions' => 'Bedingungen',
+ 'condition-type' => 'Bedingungen Typ',
+ 'all-conditions-true' => 'Alle Bedingungen sind erfüllt',
+ 'any-condition-true' => 'Jede Bedingung ist wahr',
+ 'add-condition' => 'Bedingung hinzufügen',
+ 'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus',
+ 'product-attribute' => 'Produkt-Attribut',
'attribute-name-children-only' => ':attribute_name (Nur Kinder)',
- 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)',
- 'is-equal-to' => 'Gleich',
- 'is-not-equal-to' => 'Ist nicht gleich',
- 'equals-or-greater-than' => 'Gleich oder größer als',
- 'equals-or-less-than' => 'Gleich oder weniger als',
- 'greater-than' => 'Größer als',
- 'less-than' => 'Weniger als',
- 'contain' => 'Enthalten',
- 'contains' => 'Enthält',
- 'does-not-contain' => 'Nicht enthalten',
- 'actions' => 'Aktionen',
- 'action-type' => 'Aktion Typ',
- 'percentage-product-price' => 'Prozentsatz des Produktpreises',
- 'fixed-amount' => 'Fester Betrag',
- 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkob',
- 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei',
- 'discount-amount' => 'Rabatt-Betrag',
- 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.',
- 'end-other-rules' => 'Ende Andere Regeln',
- 'categories' => 'Kategorien',
- 'attribute_family' => 'Attributgruppe',
- ),
- ),
- 'error' =>
- array (
- 'go-to-home' => 'HOME ÖFFNEN',
+ 'attribute-name-parent-only' => ':attribute_name (Nur Eltern)',
+ 'is-equal-to' => 'Gleich',
+ 'is-not-equal-to' => 'Ist nicht gleich',
+ 'equals-or-greater-than' => 'Gleich oder größer als',
+ 'equals-or-less-than' => 'Gleich oder weniger als',
+ 'greater-than' => 'Größer als',
+ 'less-than' => 'Weniger als',
+ 'contain' => 'Enthalten',
+ 'contains' => 'Enthält',
+ 'does-not-contain' => 'Nicht enthalten',
+ 'actions' => 'Aktionen',
+ 'action-type' => 'Aktion Typ',
+ 'percentage-product-price' => 'Prozentsatz des Produktpreises',
+ 'fixed-amount' => 'Fester Betrag',
+ 'fixed-amount-whole-cart' => 'Fester Betrag für gesamten Warenkob',
+ 'buy-x-get-y-free' => 'Kaufen Sie X, erhalten Sie Y kostenfrei',
+ 'discount-amount' => 'Rabatt-Betrag',
+ 'mass-delete-success' => 'Alle ausgewählten Gutscheine wurden erfolgreich gelöscht.',
+ 'end-other-rules' => 'Ende Andere Regeln',
+ 'categories' => 'Kategorien',
+ 'attribute_family' => 'Attributgruppe',
+ ],
+ ],
+ 'error' =>
+ [
+ 'go-to-home' => 'HOME ÖFFNEN',
'in-maitainace' => 'In Bearbeitung',
- 'right-back' => 'Gleich wieder zurück',
- 404 =>
- array (
+ 'right-back' => 'Gleich wieder zurück',
+ 404 =>
+ [
'page-title' => '404-Seite nicht gefunden',
- 'name' => '404',
- 'title' => 'Seite nicht gefunden',
- 'message' => 'Die gesuchte Seite existiert nicht oder wurde verschoben. Navigieren Sie mit dem Seitenmenü.',
- ),
- 403 =>
- array (
+ 'name' => '404',
+ 'title' => 'Seite nicht gefunden',
+ 'message' => 'Die gesuchte Seite existiert nicht oder wurde verschoben. Navigieren Sie mit dem Seitenmenü.',
+ ],
+ 403 =>
+ [
'page-title' => '403 Verboten-Fehler',
- 'name' => '403',
- 'title' => 'Verboten-Fehler',
- 'message' => 'Sie haben keine Berechtigung um auf diese Seite zuzugreifen.',
- ),
- 500 =>
- array (
+ 'name' => '403',
+ 'title' => 'Verboten-Fehler',
+ 'message' => 'Sie haben keine Berechtigung um auf diese Seite zuzugreifen.',
+ ],
+ 500 =>
+ [
'page-title' => '500 Interner Serverfehler',
- 'name' => '500',
- 'title' => 'Interner Serverfehler',
- 'message' => 'Der Server hat einen internen Fehler.',
- ),
- 401 =>
- array (
+ 'name' => '500',
+ 'title' => 'Interner Serverfehler',
+ 'message' => 'Der Server hat einen internen Fehler.',
+ ],
+ 401 =>
+ [
'page-title' => '401 Unauthorisiert',
- 'name' => '401',
- 'title' => 'Unauthorisiert',
- 'message' => 'Die Anforderung wurde nicht angewendet, da keine gültigen Authentifizierungsdaten für die Zielressource vorhanden sind.',
- ),
- ),
- 'export' =>
- array (
- 'export' => 'Export',
- 'import' => 'Import',
- 'format' => 'Wählen Sie ein Format',
- 'download' => 'Download',
- 'upload' => 'Hochladen',
- 'csv' => 'CSV',
- 'xls' => 'XLS',
- 'file' => 'Datei',
- 'upload-error' => 'Die Datei muss von folgendem Typ sein: xls, xlsx, csv.',
- 'duplicate-error' => 'Bezeichner müssen eindeutig sein, doppelte Bezeichner :identifier in Zeile :position.',
+ 'name' => '401',
+ 'title' => 'Unauthorisiert',
+ 'message' => 'Die Anforderung wurde nicht angewendet, da keine gültigen Authentifizierungsdaten für die Zielressource vorhanden sind.',
+ ],
+ ],
+ 'export' =>
+ [
+ 'export' => 'Export',
+ 'import' => 'Import',
+ 'format' => 'Wählen Sie ein Format',
+ 'download' => 'Download',
+ 'upload' => 'Hochladen',
+ 'csv' => 'CSV',
+ 'xls' => 'XLS',
+ 'file' => 'Datei',
+ 'upload-error' => 'Die Datei muss von folgendem Typ sein: xls, xlsx, csv.',
+ 'duplicate-error' => 'Bezeichner müssen eindeutig sein, doppelte Bezeichner :identifier in Zeile :position.',
'enough-row-error' => 'die Datei hat nicht genug Zeilen',
- 'allowed-type' => 'Erlaubter Typ :',
- 'file-type' => 'csv, xls, xlsx.',
- 'no-records' => 'Nichts zu exportieren',
- 'illegal-format' => 'Fehler! Diese Art von Format wird entweder nicht unterstützt oder ist unzulässig',
- ),
- 'cms' =>
- array (
+ 'allowed-type' => 'Erlaubter Typ :',
+ 'file-type' => 'csv, xls, xlsx.',
+ 'no-records' => 'Nichts zu exportieren',
+ 'illegal-format' => 'Fehler! Diese Art von Format wird entweder nicht unterstützt oder ist unzulässig',
+ ],
+ 'cms' =>
+ [
'pages' =>
- array (
- 'general' => 'Allgemein',
- 'seo' => 'SEO',
- 'pages' => 'Seiten',
- 'title' => 'Seiten',
- 'add-title' => 'Seite hinzufügen',
- 'content' => 'Inhalt',
- 'url-key' => 'URL-Schlüssel',
- 'channel' => 'Kanäle',
- 'locale' => 'Sprachen',
+ [
+ 'general' => 'Allgemein',
+ 'seo' => 'SEO',
+ 'pages' => 'Seiten',
+ 'title' => 'Seiten',
+ 'add-title' => 'Seite hinzufügen',
+ 'content' => 'Inhalt',
+ 'url-key' => 'URL-Schlüssel',
+ 'channel' => 'Kanäle',
+ 'locale' => 'Sprachen',
'create-btn-title' => 'Seite speichern',
- 'edit-title' => 'Seite bearbeiten',
- 'edit-btn-title' => 'Seite speichern',
- 'create-success' => 'Seite erfolgreich erstellt',
- 'create-partial' => 'Einige der angeforderten Seiten sind bereits vorhanden',
- 'create-failure' => 'Alle angeforderten Seiten sind bereits vorhanden',
- 'update-success' => 'Seite erfolgreich aktualisiert',
- 'update-failure' => 'Die Seite kann nicht aktualisiert werden',
- 'page-title' => 'Titel der Seite',
- 'layout' => 'Layout',
- 'meta_keywords' => 'Meta-Schlüsselworte',
+ 'edit-title' => 'Seite bearbeiten',
+ 'edit-btn-title' => 'Seite speichern',
+ 'create-success' => 'Seite erfolgreich erstellt',
+ 'create-partial' => 'Einige der angeforderten Seiten sind bereits vorhanden',
+ 'create-failure' => 'Alle angeforderten Seiten sind bereits vorhanden',
+ 'update-success' => 'Seite erfolgreich aktualisiert',
+ 'update-failure' => 'Die Seite kann nicht aktualisiert werden',
+ 'page-title' => 'Titel der Seite',
+ 'layout' => 'Layout',
+ 'meta_keywords' => 'Meta-Schlüsselworte',
'meta_description' => 'Meta-Beschreibung',
- 'meta_title' => 'Meta Titel',
- 'delete-success' => 'CMS-Seite erfolgreich gelöscht',
- 'delete-failure' => 'CMS-Seite kann nicht gelöscht werden',
- 'preview' => 'Vorschau',
- 'one-col' => '
Use class: "static-container one-column" for one column layout.
',
- 'two-col' => '
Use class: "static-container two-column" for two column layout.
',
- 'three-col' => '
Use class: "static-container three-column" for three column layout.
',
- 'helper-classes' => 'Helfer-Klassen',
- ),
- ),
- 'response' =>
- array (
- 'being-used' => 'Diese Ressource :name wird verwendet in :source',
- 'cannot-delete-default' => 'Der Standardkanal kann nicht gelöscht werden',
- 'create-success' => ':name erfolgreich erstellt.',
- 'update-success' => ':name erfolgreich aktualisiert.',
- 'delete-success' => ':name erfolgreich gelöscht.',
- 'delete-failed' => 'Fehler beim löschen von :name.',
- 'last-delete-error' => 'Zumindest ein :name ist erforderlich.',
- 'user-define-error' => 'System :name kann nicht gelöscht werden',
- 'attribute-error' => ':name wird in konfigurierbaren Produkten verwendet.',
- 'attribute-product-error' => ':name wird in Produkten verwendet.',
- 'customer-associate' => ':name können nicht gelöscht werden, weil Kunden dieser Gruppe zugeordnet sind.',
- 'currency-delete-error' => 'Diese Währung ist als Kanalbasiswährung festgelegt und kann daher nicht gelöscht werden.',
- 'upload-success' => ':name erfolgreich hochgeladen.',
- 'delete-category-root' => 'Die Root-Kategorie kann nicht gelöscht werden',
- 'create-root-failure' => 'Kategorie mit dem Namen Root ist bereits vorhanden',
- 'cancel-success' => ':name erfolgreich abgebrochen.',
- 'cancel-error' => ':name können nicht storniert werden.',
- 'already-taken' => 'Der :name wird bereits verwendet.',
- 'order-pending' => 'Konto kann nicht gelöscht werden, da einige Bestellungen ausstehen oder verarbeitet werden.',
- ),
- 'footer' =>
- array (
+ 'meta_title' => 'Meta Titel',
+ 'delete-success' => 'CMS-Seite erfolgreich gelöscht',
+ 'delete-failure' => 'CMS-Seite kann nicht gelöscht werden',
+ 'preview' => 'Vorschau',
+ 'one-col' => '
Use class: "static-container one-column" for one column layout.
',
+ 'two-col' => '
Use class: "static-container two-column" for two column layout.
',
+ 'three-col' => '
Use class: "static-container three-column" for three column layout.