diff --git a/CHANGELOG for v0.1.x.md b/CHANGELOG for v0.1.x.md
index 1359bdd27..be4c3b3c1 100755
--- a/CHANGELOG for v0.1.x.md
+++ b/CHANGELOG for v0.1.x.md
@@ -2,6 +2,70 @@
#### This changelog consists the bug & security fixes and new features being included in the releases listed below.
+## **v0.1.9 (20th of December, 2019)** - *Release*
+
+* #1875 [fixed] - Discount gets applied on cart if condition is "Visible Individually" is set to yes and product added in cart is not visible individually.
+
+* #1868 [fixed] - Getting exception on checkout if action Buy X Get Y free is selected in cart rule.
+
+* #1838 [fixed] - Cart rule not working for condition sku(children only) and sku(parent only).
+
+* #1835 [fixed] - Getting exception if condition value remains blank.
+
+* #1831 [fixed] - Negative sign is not required in discount amount.
+
+* #1830 [fixed] - If Coupon type is selected as "No Coupon" then coupon code should not generate for that particular cart rule.
+
+* #1904 [fixed] - Existing tax should display as list on creating catalog rule if in condition "Tax Category" is selected.
+
+* #1903 [fixed] - UI issue in condition field
+
+* #1895 [fixed] - Translation issue Action Type field while creating catalog rule.
+
+* #1883 [fixed] - Free shipping not applied on cart, if from action "Free Shipping" is selected and discount amount is given as zero.
+
+* #1882 [fixed] - If from Action "Apply on shipping " is selected as yes then the discounted amount is applying on both product and shipping charge.
+
+* #1861 [fixed] - Getting exception on checkout if applying invalid coupon code and proceed for checkout.
+
+* #1857 [fixed] - Getting exception when creating cart rule with condition URL KEY(children only).
+
+* #1856 [fixed] - Getting exception on creating cart rule with condition Name(children only).
+
+* #1847 [fixed] - If cart rule condition does not match the cart then on applying coupon it should display message "Coupon cannot be applied".
+
+* #1839 [fixed] - Getting exception on filtering cart rule through id.
+
+* #1836 [fixed] - Back button on Edit cart rule page doesn't work.
+
+* #1834 [fixed] - On editing any cart rule, its priority updates to 1.
+
+* #1833 [fixed] - Discount not applied if "Payment Method", "Shipping Method", "Shipping State" or "Shipping Country" is selected in condition.
+
+* #1832 [fixed] - Able to use coupon irrespective of the number given in "Uses per coupon" field.
+
+* #1828 [fixed] - Updated changes are not saved on editing cart rule.
+
+* #1825 [fixed] - Not able to generate coupon code while creating cart rule.
+
+* #1823 [fixed] - Getting exception after clicking on developement.
+
+* #1929 [fixed] - Actual product amount and discounted amount both should display on product page for configurable product
+
+* #1928 [fixed] - Catalog rule should not apply if any of the condition doesn't match, if condition type"All Condition are true"
+
+* #1931 [fixed] - Catalog rule not applying if in condition type"Any Condition is true" is selected, and some of the condition doesn't match the product.
+
+* #1935 [fixed] - Categories are not displaying if in condition Categories(children only) or Categories(Parent Only) is selected.
+
+* #1938 [fixed] - multiple cart rules are getting applied by using only single coupon.
+
+* #1939 [fixed] - Invalid coupon gets applied, if clicking on apply coupon multiple time, although there is no discount amount but its displaying message that coupon code applied successfully.
+
+* #1942 [fixed] - When editing the cart rule, selected category is not checked.
+
+
+
## **v0.1.8 (4th of October, 2019)** - *Release*
* [feature] - Refund is added for orders.
diff --git a/CHANGELOG for v0.2.x.md b/CHANGELOG for v0.2.x.md
new file mode 100644
index 000000000..bf693debb
--- /dev/null
+++ b/CHANGELOG for v0.2.x.md
@@ -0,0 +1,17 @@
+# CHANGELOG for v0.2.x
+
+#### This changelog consists the bug & security fixes and new features being included in the releases listed below.
+
+## **v0.2.0 (23th of December, 2019)** - *Release*
+
+* #1955 [fixed] - Message need to be changed on mouse hover on cross symbol next to applied coupon.
+
+* #1959 [fixed] - if admin has set the same condition twice, then catalog rule is not getting apply
+
+* #1958 [fixed] - getting exception on front end, if action type is Buy x get y free in non couponable cart rule.
+
+* #1957 [fixed] - if action type is Fixed Amount to Whole Cart, then apply to shipping option should get hide.
+
+* #1954 [fixed] - If any different tax category has been assigned to variants in configurable product, then while using tax category condition in cart rule, rule is not working properly.
+
+* #1950 [fixed] - multiple catalog rule should not get get applied, if 1st one has been created as End Other Rules = yes
\ No newline at end of file
diff --git a/composer.json b/composer.json
index 48d7ac945..78fb15c50 100755
--- a/composer.json
+++ b/composer.json
@@ -93,7 +93,9 @@
"Webkul\\Sales\\": "packages/Webkul/Sales/src",
"Webkul\\Tax\\": "packages/Webkul/Tax/src",
"Webkul\\API\\": "packages/Webkul/API",
- "Webkul\\Discount\\": "packages/Webkul/Discount/src",
+ "Webkul\\CatalogRule\\": "packages/Webkul/CatalogRule/src",
+ "Webkul\\CartRule\\": "packages/Webkul/CartRule/src",
+ "Webkul\\Rule\\": "packages/Webkul/Rule/src",
"Webkul\\CMS\\": "packages/Webkul/CMS/src",
"Webkul\\Velocity\\": "packages/Webkul/Velocity/src"
}
@@ -132,7 +134,8 @@
"set -e",
"@php artisan migrate:fresh --env=testing",
"vendor/bin/codecept run unit",
- "vendor/bin/codecept run functional"
+ "vendor/bin/codecept run functional",
+ "vendor/bin/codecept run trigger"
]
},
"config": {
diff --git a/config/app.php b/config/app.php
index 3763cd6d3..d3384a7f9 100755
--- a/config/app.php
+++ b/config/app.php
@@ -246,7 +246,9 @@ return [
Webkul\Sales\Providers\SalesServiceProvider::class,
Webkul\Tax\Providers\TaxServiceProvider::class,
Webkul\API\Providers\APIServiceProvider::class,
- Webkul\Discount\Providers\DiscountServiceProvider::class,
+ Webkul\CatalogRule\Providers\CatalogRuleServiceProvider::class,
+ Webkul\CartRule\Providers\CartRuleServiceProvider::class,
+ Webkul\Rule\Providers\RuleServiceProvider::class,
Webkul\CMS\Providers\CMSServiceProvider::class
],
diff --git a/config/concord.php b/config/concord.php
index 311ede347..24c40b47a 100755
--- a/config/concord.php
+++ b/config/concord.php
@@ -19,7 +19,8 @@ return [
\Webkul\Sales\Providers\ModuleServiceProvider::class,
\Webkul\Tax\Providers\ModuleServiceProvider::class,
\Webkul\User\Providers\ModuleServiceProvider::class,
- \Webkul\Discount\Providers\ModuleServiceProvider::class,
+ \Webkul\CatalogRule\Providers\ModuleServiceProvider::class,
+ \Webkul\CartRule\Providers\ModuleServiceProvider::class,
\Webkul\CMS\Providers\ModuleServiceProvider::class
]
];
\ No newline at end of file
diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php
index 76e33f47d..4b94fd2d1 100755
--- a/database/seeds/DatabaseSeeder.php
+++ b/database/seeds/DatabaseSeeder.php
@@ -1,6 +1,7 @@
call(BagistoDatabaseSeeder::class);
+ $this->call(VelocityMetaDataSeeder::class);
}
}
diff --git a/packages/Webkul/Admin/src/Config/acl.php b/packages/Webkul/Admin/src/Config/acl.php
index db7edbff7..8b28872db 100755
--- a/packages/Webkul/Admin/src/Config/acl.php
+++ b/packages/Webkul/Admin/src/Config/acl.php
@@ -394,27 +394,27 @@ return [
], [
'key' => 'promotions',
'name' => 'admin::app.acl.promotions',
- 'route' => 'admin.cart-rule.index',
+ 'route' => 'admin.cart-rules.index',
'sort' => 7
], [
- 'key' => 'promotions.cart-rule',
+ 'key' => 'promotions.cart-rules',
'name' => 'admin::app.acl.cart-rules',
- 'route' => 'admin.cart-rule.index',
+ 'route' => 'admin.cart-rules.index',
'sort' => 1
], [
- 'key' => 'promotions.cart-rule.create',
+ 'key' => 'promotions.cart-rules.create',
'name' => 'admin::app.acl.create',
- 'route' => 'admin.cart-rule.create',
+ 'route' => 'admin.cart-rules.create',
'sort' => 1
], [
- 'key' => 'promotions.cart-rule.edit',
+ 'key' => 'promotions.cart-rules.edit',
'name' => 'admin::app.acl.edit',
- 'route' => 'admin.cart-rule.edit',
+ 'route' => 'admin.cart-rules.edit',
'sort' => 2
], [
- 'key' => 'promotions.cart-rule.delete',
+ 'key' => 'promotions.cart-rules.delete',
'name' => 'admin::app.acl.delete',
- 'route' => 'admin.cart-rule.delete',
+ 'route' => 'admin.cart-rules.delete',
'sort' => 3
],
];
diff --git a/packages/Webkul/Admin/src/Config/menu.php b/packages/Webkul/Admin/src/Config/menu.php
index cfa9d6877..a1420eb85 100755
--- a/packages/Webkul/Admin/src/Config/menu.php
+++ b/packages/Webkul/Admin/src/Config/menu.php
@@ -189,22 +189,22 @@ return [
'icon-class' => ''
],[
'key' => 'promotions',
- 'name' => 'admin::app.layouts.promotion',
- 'route' => 'admin.cart-rule.index',
+ 'name' => 'admin::app.layouts.promotions',
+ 'route' => 'admin.catalog-rules.index',
'sort' => 5,
'icon-class' => 'promotion-icon'
], [
- 'key' => 'promotions.cart-rule',
- 'name' => 'admin::app.promotion.cart-rule',
- 'route' => 'admin.cart-rule.index',
+ 'key' => 'promotions.catalog-rules',
+ 'name' => 'admin::app.promotions.catalog-rules.title',
+ 'route' => 'admin.catalog-rules.index',
'sort' => 1,
'icon-class' => ''
], [
- 'key' => 'promotions.catalog-rule',
- 'name' => 'admin::app.promotion.catalog-rule',
- 'route' => 'admin.catalog-rule.index',
- 'sort' => 1,
- 'icon-class' => '',
+ 'key' => 'promotions.cart-rules',
+ 'name' => 'admin::app.promotions.cart-rules.title',
+ 'route' => 'admin.cart-rules.index',
+ 'sort' => 2,
+ 'icon-class' => ''
], [
'key' => 'cms',
'name' => 'admin::app.layouts.cms',
diff --git a/packages/Webkul/Admin/src/DataGrids/CartRuleCouponDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CartRuleCouponDataGrid.php
new file mode 100644
index 000000000..ccf8c6375
--- /dev/null
+++ b/packages/Webkul/Admin/src/DataGrids/CartRuleCouponDataGrid.php
@@ -0,0 +1,86 @@
+
+ * @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com)
+ */
+class CartRuleCouponDataGrid extends DataGrid
+{
+ protected $index = 'id';
+
+ protected $sortOrder = 'desc';
+
+ public function prepareQueryBuilder()
+ {
+ $queryBuilder = DB::table('cart_rule_coupons')
+ ->addSelect('id', 'code', 'created_at', 'expired_at', 'times_used')
+ ->where('cart_rule_coupons.cart_rule_id', request('id'));
+
+ $this->setQueryBuilder($queryBuilder);
+ }
+
+ public function addColumns()
+ {
+ $this->addColumn([
+ 'index' => 'id',
+ 'label' => trans('admin::app.datagrid.id'),
+ 'type' => 'number',
+ 'searchable' => false,
+ 'sortable' => true,
+ 'filterable' => true
+ ]);
+
+ $this->addColumn([
+ 'index' => 'code',
+ 'label' => trans('admin::app.datagrid.coupon-code'),
+ 'type' => 'string',
+ 'searchable' => true,
+ 'sortable' => true,
+ 'filterable' => true
+ ]);
+
+ $this->addColumn([
+ 'index' => 'created_at',
+ 'label' => trans('admin::app.datagrid.created-date'),
+ 'type' => 'datetime',
+ 'sortable' => true,
+ 'searchable' => false,
+ 'filterable' => true
+ ]);
+
+ $this->addColumn([
+ 'index' => 'expired_at',
+ 'label' => trans('admin::app.datagrid.expiration-date'),
+ 'type' => 'datetime',
+ 'sortable' => true,
+ 'searchable' => false,
+ 'filterable' => true
+ ]);
+
+ $this->addColumn([
+ 'index' => 'times_used',
+ 'label' => trans('admin::app.datagrid.times-used'),
+ 'type' => 'number',
+ 'searchable' => true,
+ 'sortable' => true,
+ 'filterable' => true
+ ]);
+ }
+
+ public function prepareMassActions()
+ {
+ $this->addMassAction([
+ 'type' => 'delete',
+ 'action' => route('admin.cart-rule-coupons.mass-delete'),
+ 'label' => trans('admin::app.datagrid.delete'),
+ 'method' => 'DELETE'
+ ]);
+ }
+}
diff --git a/packages/Webkul/Admin/src/DataGrids/CartRuleDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CartRuleDataGrid.php
index 7eb57ffd7..c6efb9517 100644
--- a/packages/Webkul/Admin/src/DataGrids/CartRuleDataGrid.php
+++ b/packages/Webkul/Admin/src/DataGrids/CartRuleDataGrid.php
@@ -8,20 +8,27 @@ use DB;
/**
* Cart Rule DataGrid class
*
- * @author Prashant Singh @prashant-webkul
+ * @author Jitendra Singh
* @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com)
*/
class CartRuleDataGrid extends DataGrid
{
- protected $index = 'id'; //the column that needs to be treated as index column
+ protected $index = 'id';
- protected $sortOrder = 'desc'; //asc or desc
+ protected $sortOrder = 'desc';
public function prepareQueryBuilder()
{
$queryBuilder = DB::table('cart_rules')
- ->select('id')
- ->addSelect('id', 'name', 'status', 'end_other_rules', 'action_type', 'disc_amount', 'use_coupon');
+ ->leftJoin('cart_rule_coupons', function($leftJoin) {
+ $leftJoin->on('cart_rule_coupons.cart_rule_id', '=', 'cart_rules.id')
+ ->where('cart_rule_coupons.is_primary', 1);
+ })
+ ->addSelect('cart_rules.id', 'name', 'cart_rule_coupons.code as coupon_code', 'status', 'starts_from', 'ends_till', 'sort_order');
+
+ $this->addFilter('id', 'cart_rules.id');
+
+ $this->addFilter('coupon_code', 'cart_rule_coupons.code');
$this->setQueryBuilder($queryBuilder);
}
@@ -30,7 +37,7 @@ class CartRuleDataGrid extends DataGrid
{
$this->addColumn([
'index' => 'id',
- 'label' => trans('admin::app.id'),
+ 'label' => trans('admin::app.datagrid.id'),
'type' => 'number',
'searchable' => false,
'sortable' => true,
@@ -39,13 +46,40 @@ class CartRuleDataGrid extends DataGrid
$this->addColumn([
'index' => 'name',
- 'label' => trans('admin::app.name'),
+ 'label' => trans('admin::app.datagrid.name'),
'type' => 'string',
'searchable' => true,
'sortable' => true,
'filterable' => true
]);
+ $this->addColumn([
+ 'index' => 'coupon_code',
+ 'label' => trans('admin::app.datagrid.coupon-code'),
+ 'type' => 'string',
+ 'searchable' => true,
+ 'sortable' => true,
+ 'filterable' => true
+ ]);
+
+ $this->addColumn([
+ 'index' => 'starts_from',
+ 'label' => trans('admin::app.datagrid.start'),
+ 'type' => 'datetime',
+ 'sortable' => true,
+ 'searchable' => false,
+ 'filterable' => true
+ ]);
+
+ $this->addColumn([
+ 'index' => 'ends_till',
+ 'label' => trans('admin::app.datagrid.end'),
+ 'type' => 'datetime',
+ 'sortable' => true,
+ 'searchable' => false,
+ 'filterable' => true
+ ]);
+
$this->addColumn([
'index' => 'status',
'label' => trans('admin::app.status'),
@@ -55,89 +89,36 @@ class CartRuleDataGrid extends DataGrid
'filterable' => true,
'wrapper' => function($value) {
if ($value->status == 1)
- return 'Active';
+ return trans('admin::app.datagrid.active');
else
- return 'In Active';
+ return trans('admin::app.datagrid.inactive');
}
]);
$this->addColumn([
- 'index' => 'end_other_rules',
- 'label' => 'End Other Rules',
- 'type' => 'boolean',
- 'searchable' => false,
- 'sortable' => true,
- 'filterable' => true,
- 'wrapper' => function($value) {
- if ($value->end_other_rules == 1)
- return 'True';
- else
- return 'False';
- }
- ]);
-
- $this->addColumn([
- 'index' => 'action_type',
- 'label' => 'Action Type',
- 'type' => 'string',
- 'searchable' => true,
- 'sortable' => true,
- 'filterable' => true,
- 'wrapper' => function($value) {
- return config('pricerules.cart.actions')[$value->action_type];
- }
- ]);
-
- $this->addColumn([
- 'index' => 'disc_amount',
- 'label' => 'Discount Amount',
+ 'index' => 'sort_order',
+ 'label' => trans('admin::app.datagrid.priority'),
'type' => 'number',
- 'searchable' => false,
+ 'searchable' => true,
'sortable' => true,
'filterable' => true
]);
-
- $this->addColumn([
- 'index' => 'use_coupon',
- 'label' => 'Use Coupon',
- 'type' => 'boolean',
- 'searchable' => true,
- 'sortable' => true,
- 'filterable' => true,
- 'wrapper' => function($value) {
- if ($value->use_coupon == 1) {
- return 'True';
- } else {
- return 'False';
- }
- }
- ]);
}
public function prepareActions()
{
$this->addAction([
- 'title' => 'Edit CartRule',
- 'method' => 'GET', //use post only for redirects only
- 'route' => 'admin.cart-rule.edit',
+ 'title' => 'Edit Cart Rule',
+ 'method' => 'GET',
+ 'route' => 'admin.cart-rules.edit',
'icon' => 'icon pencil-lg-icon'
]);
$this->addAction([
- 'title' => 'Delete CartRule',
- 'method' => 'POST', //use post only for requests other than redirects
- 'route' => 'admin.cart-rule.delete',
+ 'title' => 'Delete Cart Rule',
+ 'method' => 'POST',
+ 'route' => 'admin.cart-rules.delete',
'icon' => 'icon trash-icon'
]);
}
-
- public function prepareMassActions()
- {
- // $this->addMassAction([
- // 'type' => 'delete',
- // 'action' => route('admin.catalog.attributes.massdelete'),
- // 'label' => 'Delete',
- // 'method' => 'DELETE'
- // ]);
- }
}
diff --git a/packages/Webkul/Admin/src/DataGrids/CatalogRuleDataGrid.php b/packages/Webkul/Admin/src/DataGrids/CatalogRuleDataGrid.php
index 506af12eb..e57e977a1 100644
--- a/packages/Webkul/Admin/src/DataGrids/CatalogRuleDataGrid.php
+++ b/packages/Webkul/Admin/src/DataGrids/CatalogRuleDataGrid.php
@@ -8,20 +8,19 @@ use DB;
/**
* Catalog Rule DataGrid class
*
- * @author Prashant Singh @prashant-webkul
+ * @author Jitendra Singh
* @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com)
*/
class CatalogRuleDataGrid extends DataGrid
{
- protected $index = 'id'; //the column that needs to be treated as index column
+ protected $index = 'id';
- protected $sortOrder = 'desc'; //asc or desc
+ protected $sortOrder = 'desc';
public function prepareQueryBuilder()
{
$queryBuilder = DB::table('catalog_rules')
- ->select('id')
- ->addSelect('id', 'name', 'starts_from', 'ends_till', 'status', 'end_other_rules', 'action_code');
+ ->addSelect('catalog_rules.id', 'name', 'status', 'starts_from', 'ends_till', 'sort_order');
$this->setQueryBuilder($queryBuilder);
}
@@ -48,56 +47,41 @@ class CatalogRuleDataGrid extends DataGrid
$this->addColumn([
'index' => 'starts_from',
- 'label' => trans('admin::app.datagrid.starts-from'),
+ 'label' => trans('admin::app.datagrid.start'),
'type' => 'datetime',
- 'searchable' => false,
'sortable' => true,
+ 'searchable' => false,
'filterable' => true
]);
$this->addColumn([
'index' => 'ends_till',
- 'label' => trans('admin::app.datagrid.ends-till'),
+ 'label' => trans('admin::app.datagrid.end'),
'type' => 'datetime',
- 'searchable' => false,
'sortable' => true,
+ 'searchable' => false,
'filterable' => true
]);
$this->addColumn([
'index' => 'status',
- 'label' => trans('admin::app.datagrid.status'),
+ 'label' => trans('admin::app.status'),
'type' => 'boolean',
- 'searchable' => false,
+ 'searchable' => true,
'sortable' => true,
'filterable' => true,
- 'wrapper' => function ($value) {
+ 'wrapper' => function($value) {
if ($value->status == 1)
- return 'True';
+ return trans('admin::app.datagrid.active');
else
- return 'False';
+ return trans('admin::app.datagrid.inactive');
}
]);
$this->addColumn([
- 'index' => 'end_other_rules',
- 'label' => 'End Other Rules',
- 'type' => 'boolean',
- 'searchable' => false,
- 'sortable' => true,
- 'filterable' => true,
- 'wrapper' => function ($value) {
- if ($value->end_other_rules == 1)
- return 'True';
- else
- return 'False';
- }
- ]);
-
- $this->addColumn([
- 'index' => 'action_code',
- 'label' => 'Action Type',
- 'type' => 'string',
+ 'index' => 'sort_order',
+ 'label' => trans('admin::app.datagrid.priority'),
+ 'type' => 'number',
'searchable' => true,
'sortable' => true,
'filterable' => true
@@ -107,27 +91,17 @@ class CatalogRuleDataGrid extends DataGrid
public function prepareActions()
{
$this->addAction([
- 'title' => 'Edit CatalogRule',
- 'method' => 'GET', //use post only for redirects only
- 'route' => 'admin.catalog-rule.edit',
+ 'title' => 'Edit Catalog Rule',
+ 'method' => 'GET',
+ 'route' => 'admin.catalog-rules.edit',
'icon' => 'icon pencil-lg-icon'
]);
$this->addAction([
- 'title' => 'Delete CatalogRule',
- 'method' => 'POST', //use post only for requests other than redirects
- 'route' => 'admin.catalog-rule.delete',
+ 'title' => 'Delete Catalog Rule',
+ 'method' => 'POST',
+ 'route' => 'admin.catalog-rules.delete',
'icon' => 'icon trash-icon'
]);
}
-
- public function prepareMassActions()
- {
- // $this->addMassAction([
- // 'type' => 'delete',
- // 'action' => route('admin.catalog.attributes.massdelete'),
- // 'label' => 'Delete',
- // 'method' => 'DELETE'
- // ]);
- }
}
diff --git a/packages/Webkul/Admin/src/Http/routes.php b/packages/Webkul/Admin/src/Http/routes.php
index 50c6557bd..6da6f2068 100755
--- a/packages/Webkul/Admin/src/Http/routes.php
+++ b/packages/Webkul/Admin/src/Http/routes.php
@@ -669,60 +669,56 @@ Route::group(['middleware' => ['web']], function () {
//DataGrid Export
Route::post('admin/export', 'Webkul\Admin\Http\Controllers\ExportController@export')->name('admin.datagrid.export');
- Route::prefix('promotion')->group(function () {
- Route::get('/catalog-rules', 'Webkul\Discount\Http\Controllers\CatalogRuleController@index')->defaults('_config', [
- 'view' => 'admin::promotions.catalog-rule.index'
- ])->name('admin.catalog-rule.index');
+ Route::prefix('promotions')->group(function () {
+ Route::get('cart-rules', 'Webkul\CartRule\Http\Controllers\CartRuleController@index')->defaults('_config', [
+ 'view' => 'admin::promotions.cart-rules.index'
+ ])->name('admin.cart-rules.index');
- Route::get('/catalog-rules/create', 'Webkul\Discount\Http\Controllers\CatalogRuleController@create')->defaults('_config', [
- 'view' => 'admin::promotions.catalog-rule.create'
- ])->name('admin.catalog-rule.create');
+ Route::get('cart-rules/create', 'Webkul\CartRule\Http\Controllers\CartRuleController@create')->defaults('_config', [
+ 'view' => 'admin::promotions.cart-rules.create'
+ ])->name('admin.cart-rules.create');
- Route::post('/catalog-rules/create', 'Webkul\Discount\Http\Controllers\CatalogRuleController@store')->defaults('_config', [
- 'redirect' => 'admin.catalog-rule.index'
- ])->name('admin.catalog-rule.store');
+ Route::post('cart-rules/create', 'Webkul\CartRule\Http\Controllers\CartRuleController@store')->defaults('_config', [
+ 'redirect' => 'admin.cart-rules.index'
+ ])->name('admin.cart-rules.store');
- Route::get('/catalog-rules/edit/{id}', 'Webkul\Discount\Http\Controllers\CatalogRuleController@edit')->defaults('_config', [
- 'view' => 'admin::promotions.catalog-rule.edit'
- ])->name('admin.catalog-rule.edit');
+ Route::get('cart-rules/edit/{id}', 'Webkul\CartRule\Http\Controllers\CartRuleController@edit')->defaults('_config', [
+ 'view' => 'admin::promotions.cart-rules.edit'
+ ])->name('admin.cart-rules.edit');
- Route::post('/catalog-rules/edit/{id}', 'Webkul\Discount\Http\Controllers\CatalogRuleController@update')->defaults('_config', [
- 'redirect' => 'admin.catalog-rule.index'
- ])->name('admin.catalog-rule.update');
+ Route::post('cart-rules/edit/{id}', 'Webkul\CartRule\Http\Controllers\CartRuleController@update')->defaults('_config', [
+ 'redirect' => 'admin.cart-rules.index'
+ ])->name('admin.cart-rules.update');
- Route::get('/catalog-rules/apply', 'Webkul\Discount\Http\Controllers\CatalogRuleController@applyRules')->defaults('_config', [
- 'view' => 'admin::promotions.catalog-rule.index'
- ])->name('admin.catalog-rule.apply');
+ Route::post('cart-rules/delete/{id}', 'Webkul\CartRule\Http\Controllers\CartRuleController@destroy')->name('admin.cart-rules.delete');
- Route::post('/catalog-rules/delete/{id}', 'Webkul\Discount\Http\Controllers\CatalogRuleController@destroy')->name('admin.catalog-rule.delete');
+ Route::post('cart-rules/generate-coupons/{id?}', 'Webkul\CartRule\Http\Controllers\CartRuleController@generateCoupons')->name('admin.cart-rules.generate-coupons');
- Route::get('/catalog-rules/declutter', 'Webkul\Discount\Http\Controllers\CatalogRuleController@deClutter')->defaults('_config', [
- 'redirect' => 'admin.catalog-rule.index'
- ])->name('admin.catalog-rule.declut');
+ Route::post('/massdelete', 'Webkul\CartRule\Http\Controllers\CartRuleCouponController@massDelete')->name('admin.cart-rule-coupons.mass-delete');
- Route::post('fetch/options', 'Webkul\Discount\Http\Controllers\CatalogRuleController@fetchAttributeOptions')->name('admin.catalog-rule.options');
- Route::get('cart-rules', 'Webkul\Discount\Http\Controllers\CartRuleController@index')->defaults('_config', [
- 'view' => 'admin::promotions.cart-rule.index'
- ])->name('admin.cart-rule.index');
+ //Catalog rules
+ Route::get('catalog-rules', 'Webkul\CatalogRule\Http\Controllers\CatalogRuleController@index')->defaults('_config', [
+ 'view' => 'admin::promotions.catalog-rules.index'
+ ])->name('admin.catalog-rules.index');
- Route::get('cart-rules/create', 'Webkul\Discount\Http\Controllers\CartRuleController@create')->defaults('_config', [
- 'view' => 'admin::promotions.cart-rule.create'
- ])->name('admin.cart-rule.create');
+ Route::get('catalog-rules/create', 'Webkul\CatalogRule\Http\Controllers\CatalogRuleController@create')->defaults('_config', [
+ 'view' => 'admin::promotions.catalog-rules.create'
+ ])->name('admin.catalog-rules.create');
- Route::post('cart-rules/store', 'Webkul\Discount\Http\Controllers\CartRuleController@store')->defaults('_config', [
- 'redirect' => 'admin.cart-rule.index'
- ])->name('admin.cart-rule.store');
+ Route::post('catalog-rules/create', 'Webkul\CatalogRule\Http\Controllers\CatalogRuleController@store')->defaults('_config', [
+ 'redirect' => 'admin.catalog-rules.index'
+ ])->name('admin.catalog-rules.store');
- Route::get('cart-rules/edit/{id}', 'Webkul\Discount\Http\Controllers\CartRuleController@edit')->defaults('_config', [
- 'view' => 'admin::promotions.cart-rule.edit'
- ])->name('admin.cart-rule.edit');
+ Route::get('catalog-rules/edit/{id}', 'Webkul\CatalogRule\Http\Controllers\CatalogRuleController@edit')->defaults('_config', [
+ 'view' => 'admin::promotions.catalog-rules.edit'
+ ])->name('admin.catalog-rules.edit');
- Route::post('cart-rules/update/{id}', 'Webkul\Discount\Http\Controllers\CartRuleController@update')->defaults('_config', [
- 'redirect' => 'admin.cart-rule.index'
- ])->name('admin.cart-rule.update');
+ Route::post('catalog-rules/edit/{id}', 'Webkul\CatalogRule\Http\Controllers\CatalogRuleController@update')->defaults('_config', [
+ 'redirect' => 'admin.catalog-rules.index'
+ ])->name('admin.catalog-rules.update');
- Route::post('cart-rules/delete/{id}', 'Webkul\Discount\Http\Controllers\CartRuleController@destroy')->name('admin.cart-rule.delete');
+ Route::post('catalog-rules/delete/{id}', 'Webkul\CatalogRule\Http\Controllers\CatalogRuleController@destroy')->name('admin.catalog-rules.delete');
});
Route::prefix('cms')->group(function () {
diff --git a/packages/Webkul/Admin/src/Resources/assets/sass/partials/_configuration.scss b/packages/Webkul/Admin/src/Resources/assets/sass/partials/_configuration.scss
index 2e2b3258d..c66e1bda9 100644
--- a/packages/Webkul/Admin/src/Resources/assets/sass/partials/_configuration.scss
+++ b/packages/Webkul/Admin/src/Resources/assets/sass/partials/_configuration.scss
@@ -48,4 +48,29 @@
border-bottom: 1px solid #e8e8e8;
cursor: pointer;
}
+}
+
+.cart-rule-conditions,
+.catalog-rule-conditions {
+ table {
+ td {
+ &.attribute {
+ width: 250px;
+ padding-left: 0;
+ }
+
+ &.operator,
+ &.value {
+ width: 260px;
+ }
+
+ &.actions {
+ width: 44px;
+
+ .icon {
+ margin-top: 6px;
+ }
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/lang/ar/app.php b/packages/Webkul/Admin/src/Resources/lang/ar/app.php
index 12f184e84..2f7acfa1d 100644
--- a/packages/Webkul/Admin/src/Resources/lang/ar/app.php
+++ b/packages/Webkul/Admin/src/Resources/lang/ar/app.php
@@ -852,7 +852,7 @@ return [
],
'footer' => [
- 'copy-right' => '© Copyright 2018 Webkul Software, All rights reserved.'
+ 'copy-right' => ' مدعوم من Bagisto ، مشروع مجتمع بواسطة Webkul'
],
'admin' => [
diff --git a/packages/Webkul/Admin/src/Resources/lang/en/app.php b/packages/Webkul/Admin/src/Resources/lang/en/app.php
index 6ddbe5966..5d0b7d911 100755
--- a/packages/Webkul/Admin/src/Resources/lang/en/app.php
+++ b/packages/Webkul/Admin/src/Resources/lang/en/app.php
@@ -73,7 +73,7 @@ return [
'taxes' => 'Taxes',
'tax-categories' => 'Tax Categories',
'tax-rates' => 'Tax Rates',
- 'promotion' => 'Promotions',
+ 'promotions' => 'Promotions',
'discount' => 'Discount',
'cms' => 'CMS'
],
@@ -110,7 +110,8 @@ return [
'create' => 'Add',
'delete' => 'Delete',
'promotions' => 'Promotions',
- 'cart-rules' => 'Cart Rules'
+ 'cart-rules' => 'Cart Rules',
+ 'catalog-rules' => 'Catalog Rules',
],
'dashboard' => [
@@ -203,7 +204,16 @@ return [
'for-guest' => 'For Guest',
'order_number' => 'Order Number',
'refund-date' => 'Refund Date',
- 'refunded' => 'Refunded'
+ 'refunded' => 'Refunded',
+ 'start' => 'Start',
+ 'end' => 'End',
+ 'active' => 'Active',
+ 'inactive' => 'Inactive',
+ 'coupon-code' => 'Coupon Code',
+ 'times-used' => 'Times Used',
+ 'created-date' => 'Created Date',
+ 'expiration-date' => 'Expiration Date',
+ 'delete' => 'Delete'
],
'account' => [
@@ -944,125 +954,138 @@ return [
]
],
- 'promotion' => [
- 'information' => 'Information',
- 'conditions' => 'Conditions',
- 'actions' => 'Actions',
- 'coupons' => 'Coupons',
- 'zero-unlimited' => 'Zero denotes unlimited usage here',
- 'catalog-rule' => 'Catalog Rules',
- 'cart-rule' => 'Cart Rules',
- 'add-catalog-rule' => 'Add Rule',
- 'add-cart-rule' => 'Add Cart Rule',
- 'edit-cart-rule' => 'Edit Cart Rule',
- 'edit-catalog-rule' => 'Edit Catalog Rule',
- 'create-catalog-rule' => 'Create Catalog Rule',
- 'create-cart-rule' => 'Create Cart Rule',
- 'save-btn-title' => 'Create',
- 'edit-btn-title' => 'Save',
- 'save' => 'Save',
- 'select-cart-attr' => 'Select Cart Attribute',
- 'select-products' => 'How to choose products ?',
- 'select-category' => 'Select by Categories',
- 'select-attribute' => 'Select by Attributes',
- 'cannot-activate-catalog-rule' => 'Cannot activate catalog rule',
- 'catalog-rule-already-activated' => 'Catalog rule is already activated',
- 'catalog-rule-activated' => 'Catalog rule is activated',
- 'select-attribute' => 'Select :attribute',
- 'enter-attribute' => 'Enter :attribute',
- 'add-condition' => 'Add Condition',
- 'cart-properties' => 'Cart Properties',
- 'yes' => 'Yes',
- 'no' => 'No',
- 'note' => 'Note',
- 'apply' => 'Apply',
- 'rule-name' => 'Enter Rule Name',
- 'rule-desc' => 'Enter Rule Description',
- 'convert-x-note' => 'If this section is left empty, then rule will get applied to all the products in the cart.',
- 'declut' => 'Declutter',
- 'processing-done' => 'Rules processing done',
- 'declut-success' => 'Catalog rules decluttering successful',
- 'declut-failure' => 'Catalog rules decluttering failed',
- 'add-attr-condition' => 'Add Attribute Condition',
- 'general-info' => [
- 'sku-like' => 'SKU Like',
- 'on-shipping' => 'If applied on shipping',
- 'discount' => 'Discount',
- 'shipping-apply-info' => 'It signifies how rule behaves when it is used for shipping',
- 'general-info' => 'General Info',
- 'options' => 'Options',
- 'name' => 'Rule Name',
- 'description' => 'Description',
- 'starts-from' => 'Start',
- 'ends-till' => 'End',
- 'channels' => 'Channels',
- 'channels-req' => 'Channels',
- 'cust-groups' => 'Customer Groups',
- 'priority' => 'Priority',
- 'add-condition' => 'Add Conditions',
- 'disc_amt' => 'Discount Amount',
- 'disc_percent' => 'Discount Percentage',
- 'is-coupon' => 'Use Coupon',
- 'is-coupon-yes' => 'Yes',
- 'is-coupon-no' => 'No',
- 'uses-per-cust' => 'Uses per customer',
- 'all' => 'All',
- 'any' => 'Any',
- 'end-other-rules' => 'End other rules',
- 'status' => 'Is Active',
- 'all-conditions-true' => 'Assuming all conditions are true',
- 'assuming' => 'Assuming',
- 'any' => 'Any',
- 'all' => 'All',
- 'conditions' => 'Conditions',
- 'apply' => 'Apply',
- 'are' => 'are',
- 'true' => 'true',
- 'false' => 'false',
- 'limit' => 'Usage Limit',
- 'specific-coupon' => 'Specific Coupon(Check) / Auto Generated(Unheck)',
- 'free-shipping' => 'Free Shipping',
- 'is-guest' => 'For Guests',
- 'disc_qty' => 'Max. Quantity Allowed To Be Discounted',
- 'test-mode' => 'Choose how to test conditions',
- 'labels' => 'Labels',
- 'prefix' => 'Prefix',
- 'suffix' => 'Suffix',
- 'code' => 'Code',
- 'global-label' => 'Global Label',
- 'label' => 'Label'
- ],
-
- 'status' => [
- 'success' => 'Success! rule created',
- 'success-coupon' => 'Success! rule created along with coupon',
- 'failed' => 'Error! failed to create rule',
- 'update-success' => 'Success! rule updated',
- 'update-coupon-success' => 'Success! rule updated along with coupon',
- 'update-failed' => 'Error! cannot update',
- 'delete-success' => 'Success! rule deleted',
- 'delete-failed' => 'Error! cannot delete',
- 'coupon-applied' => 'Coupon used',
- 'coupon-failed' => 'Coupon failed to apply',
- 'no-coupon' => '* Coupon not applicable',
- 'coupon-removed' => 'Coupon removed successfully',
- 'coupon-remove-failed' => 'Coupon removal failed',
- 'duplicate-coupon' => 'Coupon already exists, please try again with a different coupon'
- ],
-
- 'catalog' => [
+ 'promotions' => [
+ 'cart-rules' => [
+ 'title' => 'Cart Rules',
+ 'add-title' => 'Add Cart Rule',
+ 'edit-title' => 'Edit Cart Rule',
+ 'save-btn-title' => 'Save Cart Rule',
+ 'rule-information' => 'Rule Information',
'name' => 'Name',
'description' => 'Description',
- 'apply-percent' => 'Apply as percentage',
- 'apply-fixed' => 'Apply as fixed amount',
- 'adjust-to-percent' => 'Adjust to percentage',
- 'adjust-to-value' => 'Adjust to discount value',
- 'condition-missing' => 'Please check conditons, some values might be missing'
+ 'status' => 'Status',
+ 'is-active' => 'Cart Rule is Active',
+ 'channels' => 'Channels',
+ 'customer-groups' => 'Customer Groups',
+ 'coupon-type' => 'Coupon Type',
+ 'no-coupon' => 'No Coupon',
+ 'specific-coupon' => 'Specific Coupon',
+ 'auto-generate-coupon' => 'Auto Generate Coupon',
+ 'no' => 'No',
+ 'yes' => 'Yes',
+ 'coupon-code' => 'Coupon Code',
+ 'uses-per-coupon' => 'Uses Per Coupon',
+ 'uses-per-customer' => 'Uses Per Customer',
+ 'uses-per-customer-control-info' => 'Will be used for logged in customers only.',
+ 'from' => 'From',
+ 'to' => 'To',
+ 'priority' => 'Priority',
+ 'conditions' => 'Conditions',
+ 'condition-type' => 'Condition Type',
+ 'all-conditions-true' => 'All Conditions are True',
+ 'any-condition-true' => 'Any Condition is True',
+ 'add-condition' => 'Add Condition',
+ 'choose-condition-to-add' => 'Choose a condition to add',
+ 'cart-attribute' => 'Cart Attribute',
+ 'subtotal' => 'Subtotal',
+ 'total-items-qty' => 'Total Items Qty',
+ 'total-weight' => 'Total Weight',
+ 'payment-method' => 'Payment Method',
+ 'shipping-method' => 'Shipping Method',
+ 'shipping-postcode' => 'Shipping Zip/Postcode',
+ 'shipping-state' => 'Shipping State',
+ 'shipping-country' => 'Shipping Country',
+ 'cart-item-attribute' => 'Cart Item Attribute',
+ 'price-in-cart' => 'Price in Cart',
+ 'qty-in-cart' => 'Qty in Cart',
+ 'product-attribute' => 'Product Attribute',
+ 'attribute-name-children-only' => ':attribute_name (Children Only)',
+ 'attribute-name-parent-only' => ':attribute_name (Parent Only)',
+ 'is-equal-to' => 'Is equal to',
+ 'is-not-equal-to' => 'Is not equal to',
+ 'equals-or-greater-than' => 'Equals or greater than',
+ 'equals-or-less-than' => 'Equals or less than',
+ 'greater-than' => 'Greater than',
+ 'less-than' => 'Less than',
+ 'contain' => 'Contain',
+ 'contains' => 'Contains',
+ 'does-not-contain' => 'Does not contain',
+ 'actions' => 'Actions',
+ 'action-type' => 'Action Type',
+ 'percentage-product-price' => 'Percentage of Product Price',
+ 'fixed-amount' => 'Fixed Amount',
+ 'fixed-amount-whole-cart' => 'Fixed Amount to Whole Cart',
+ 'buy-x-get-y-free' => 'Buy X Get Y Free',
+ 'discount-amount' => 'Discount Amount',
+ 'discount-quantity' => 'Maximum Quantity Allowed to be Discounted',
+ 'discount-step' => 'Buy X Quantity',
+ 'free-shipping' => 'Free Shipping',
+ 'apply-to-shipping' => 'Apply to Shipping',
+ 'coupon-codes' => 'Coupon Codes',
+ 'coupon-qty' => 'Coupon Qty',
+ 'code-length' => 'Code Length',
+ 'code-format' => 'Code Format',
+ 'alphanumeric' => 'Alphanumeric',
+ 'alphabetical' => 'Alphabetical',
+ 'numeric' => 'Numeric',
+ 'code-prefix' => 'Code Prefix',
+ 'code-suffix' => 'Code Suffix',
+ 'generate' => 'Generate',
+ 'cart-rule-not-defind-error' => 'Cart rule is not defined',
+ 'mass-delete-success' => 'All the selected index of coupons have been deleted successfully.',
+ 'end-other-rules' => 'End Other Rules',
+ 'children-categories' => 'Categories (Children Only)',
+ 'parent-categories' => 'Categories (Parent Only)',
+ 'categories' => 'Categories',
+ 'attribute_family' => 'Attribute Family'
],
- 'cart' => [
- 'buy-atleast' => 'Buy Atleast',
- 'apply-to-shipping' => 'Apply to shipping'
+ 'catalog-rules' => [
+ 'title' => 'Catalog Rules',
+ 'add-title' => 'Add Catalog Rule',
+ 'edit-title' => 'Edit Catalog Rule',
+ 'save-btn-title' => 'Save Catalog Rule',
+ 'rule-information' => 'Rule Information',
+ 'name' => 'Name',
+ 'description' => 'Description',
+ 'status' => 'Status',
+ 'is-active' => 'Catalog Rule is Active',
+ 'channels' => 'Channels',
+ 'customer-groups' => 'Customer Groups',
+ 'no' => 'No',
+ 'yes' => 'Yes',
+ 'from' => 'From',
+ 'to' => 'To',
+ 'priority' => 'Priority',
+ 'conditions' => 'Conditions',
+ 'condition-type' => 'Condition Type',
+ 'all-conditions-true' => 'All Conditions are True',
+ 'any-condition-true' => 'Any Condition is True',
+ 'add-condition' => 'Add Condition',
+ 'choose-condition-to-add' => 'Choose a condition to add',
+ 'product-attribute' => 'Product Attribute',
+ 'attribute-name-children-only' => ':attribute_name (Children Only)',
+ 'attribute-name-parent-only' => ':attribute_name (Parent Only)',
+ 'is-equal-to' => 'Is equal to',
+ 'is-not-equal-to' => 'Is not equal to',
+ 'equals-or-greater-than' => 'Equals or greater than',
+ 'equals-or-less-than' => 'Equals or less than',
+ 'greater-than' => 'Greater than',
+ 'less-than' => 'Less than',
+ 'contain' => 'Contain',
+ 'contains' => 'Contains',
+ 'does-not-contain' => 'Does not contain',
+ 'actions' => 'Actions',
+ 'action-type' => 'Action Type',
+ 'percentage-product-price' => 'Percentage of Product Price',
+ 'fixed-amount' => 'Fixed Amount',
+ 'fixed-amount-whole-cart' => 'Fixed Amount to Whole Catalog',
+ 'buy-x-get-y-free' => 'Buy X Get Y Free',
+ 'discount-amount' => 'Discount Amount',
+ 'mass-delete-success' => 'All the selected index of coupons have been deleted successfully.',
+ 'end-other-rules' => 'End Other Rules',
+ 'categories' => 'Categories',
+ 'attribute_family' => 'Attribute Family'
]
],
@@ -1172,7 +1195,7 @@ return [
],
'footer' => [
- 'copy-right' => '© Copyright 2018 Webkul Software, All rights reserved.'
+ 'copy-right' => 'Powered by Bagisto, A Community Project by Webkul',
],
'admin' => [
diff --git a/packages/Webkul/Admin/src/Resources/lang/fa/app.php b/packages/Webkul/Admin/src/Resources/lang/fa/app.php
index ad5d4ca54..7c8d247f6 100644
--- a/packages/Webkul/Admin/src/Resources/lang/fa/app.php
+++ b/packages/Webkul/Admin/src/Resources/lang/fa/app.php
@@ -998,7 +998,7 @@ return [
],
'footer' => [
- 'copy-right' => '© کپی رایت 2019 کلیه حقوق محفوظ است.'
+ 'copy-right' => 'طراحی شده توسط Bagisto ، یک پروژه عمومی توسط Webkul'
],
'admin' => [
diff --git a/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php b/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php
index 3aeb94034..1c8a5d7d2 100755
--- a/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php
+++ b/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php
@@ -976,7 +976,7 @@ return [
],
'footer' => [
- 'copy-right' => '© Copyright '.date('Y').' Webkul Software, Todos os direitos reservados.'
+ 'copy-right' => 'Desenvolvido por Bagisto, um projeto comunitário da Webkul'
],
'admin' => [
diff --git a/packages/Webkul/Admin/src/Resources/views/layouts/anonymous-master.blade.php b/packages/Webkul/Admin/src/Resources/views/layouts/anonymous-master.blade.php
index 1dcca7d44..0357d8f43 100755
--- a/packages/Webkul/Admin/src/Resources/views/layouts/anonymous-master.blade.php
+++ b/packages/Webkul/Admin/src/Resources/views/layouts/anonymous-master.blade.php
@@ -96,7 +96,7 @@
@if (core()->getConfigData('general.content.footer.footer_content'))
{{ core()->getConfigData('general.content.footer.footer_content') }}
@else
- {{ trans('admin::app.footer.copy-right') }}
+ {!! trans('admin::app.footer.copy-right') !!}
@endif
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/create.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/create.blade.php
deleted file mode 100644
index 857b36306..000000000
--- a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/create.blade.php
+++ /dev/null
@@ -1,630 +0,0 @@
-@extends('admin::layouts.content')
-
-@section('page_title')
- {{ __('admin::app.promotion.add-cart-rule') }}
-@stop
-
-@section('content')
-
-
-
-
-
- @push('scripts')
-
-
-
- @endpush
-@stop
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/edit.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/edit.blade.php
deleted file mode 100644
index 27312c327..000000000
--- a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/edit.blade.php
+++ /dev/null
@@ -1,740 +0,0 @@
-@extends('admin::layouts.content')
-
-@section('page_title')
- {{ __('admin::app.promotion.edit-cart-rule') }}
-@stop
-
-@section('content')
-
-
-
-
-
- @push('scripts')
-
-
-
- @endpush
-@stop
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/create.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/create.blade.php
new file mode 100644
index 000000000..6ced9889a
--- /dev/null
+++ b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/create.blade.php
@@ -0,0 +1,614 @@
+@extends('admin::layouts.content')
+
+@section('page_title')
+ {{ __('admin::app.promotions.cart-rules.add-title') }}
+@stop
+
+@section('content')
+
+
+
+
+
+@stop
+
+@push('scripts')
+ @parent
+
+
+
+
+
+
+@endpush
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/edit.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/edit.blade.php
new file mode 100644
index 000000000..cdc051a59
--- /dev/null
+++ b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/edit.blade.php
@@ -0,0 +1,753 @@
+@extends('admin::layouts.content')
+
+@section('page_title')
+ {{ __('admin::app.promotions.cart-rules.edit-title') }}
+@stop
+
+@section('content')
+
+
+
+
+
+@stop
+
+@push('scripts')
+ @parent
+
+
+
+
+
+
+
+
+@endpush
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/index.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/index.blade.php
similarity index 60%
rename from packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/index.blade.php
rename to packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/index.blade.php
index cf172412a..d07bbfaef 100644
--- a/packages/Webkul/Admin/src/Resources/views/promotions/cart-rule/index.blade.php
+++ b/packages/Webkul/Admin/src/Resources/views/promotions/cart-rules/index.blade.php
@@ -1,7 +1,7 @@
@extends('admin::layouts.content')
@section('page_title')
- {{ __('admin::app.promotion.cart-rule') }}
+ {{ __('admin::app.promotions.cart-rules.title') }}
@stop
@section('content')
@@ -9,12 +9,12 @@
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/create.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/create.blade.php
deleted file mode 100644
index ca386c453..000000000
--- a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/create.blade.php
+++ /dev/null
@@ -1,415 +0,0 @@
-@extends('admin::layouts.content')
-
-@section('page_title')
- {{ __('admin::app.promotion.add-catalog-rule') }}
-@stop
-
-@section('content')
-
-
-
-
- @push('scripts')
-
-
-
- @endpush
-@stop
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/edit.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/edit.blade.php
deleted file mode 100644
index f7b68da7b..000000000
--- a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/edit.blade.php
+++ /dev/null
@@ -1,414 +0,0 @@
-@extends('admin::layouts.content')
-
-@section('page_title')
- {{ __('admin::app.promotion.edit-catalog-rule') }}
-@stop
-
-@section('content')
-
-
-
-
- @push('scripts')
-
-
-
- @endpush
-@stop
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/index.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/index.blade.php
deleted file mode 100644
index 6790810ea..000000000
--- a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rule/index.blade.php
+++ /dev/null
@@ -1,35 +0,0 @@
-@extends('admin::layouts.content')
-
-@section('page_title')
- {{ __('admin::app.promotion.catalog-rule') }}
-@stop
-
-@section('content')
-
-
-
-
-
- @inject('catalogRuleGrid','Webkul\Admin\DataGrids\CatalogRuleDataGrid')
- {!! $catalogRuleGrid->render() !!}
-
-
-@endsection
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/create.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/create.blade.php
new file mode 100644
index 000000000..30745564b
--- /dev/null
+++ b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/create.blade.php
@@ -0,0 +1,528 @@
+@extends('admin::layouts.content')
+
+@section('page_title')
+ {{ __('admin::app.promotions.catalog-rules.add-title') }}
+@stop
+
+@section('content')
+
+
+
+
+
+@stop
+
+@push('scripts')
+ @parent
+
+
+
+
+
+
+@endpush
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/edit.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/edit.blade.php
new file mode 100644
index 000000000..d1a6aed4a
--- /dev/null
+++ b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/edit.blade.php
@@ -0,0 +1,533 @@
+@extends('admin::layouts.content')
+
+@section('page_title')
+ {{ __('admin::app.promotions.catalog-rules.edit-title') }}
+@stop
+
+@section('content')
+
+
+
+
+
+@stop
+
+@push('scripts')
+ @parent
+
+
+
+
+
+
+@endpush
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/index.blade.php b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/index.blade.php
new file mode 100644
index 000000000..0139be19f
--- /dev/null
+++ b/packages/Webkul/Admin/src/Resources/views/promotions/catalog-rules/index.blade.php
@@ -0,0 +1,27 @@
+@extends('admin::layouts.content')
+
+@section('page_title')
+ {{ __('admin::app.promotions.catalog-rules.title') }}
+@stop
+
+@section('content')
+
+
+
+
+
+ @inject('catalogRuleGrid','Webkul\Admin\DataGrids\CatalogRuleDataGrid')
+ {!! $catalogRuleGrid->render() !!}
+
+
+@endsection
\ No newline at end of file
diff --git a/packages/Webkul/Admin/src/Resources/views/sales/orders/view.blade.php b/packages/Webkul/Admin/src/Resources/views/sales/orders/view.blade.php
index c635af49e..a1b28cbd0 100755
--- a/packages/Webkul/Admin/src/Resources/views/sales/orders/view.blade.php
+++ b/packages/Webkul/Admin/src/Resources/views/sales/orders/view.blade.php
@@ -332,7 +332,13 @@
@if ($order->base_discount_amount > 0)
- | {{ __('admin::app.sales.orders.discount') }} |
+
+ {{ __('admin::app.sales.orders.discount') }}
+
+ @if ($order->coupon_code)
+ ({{ $order->coupon_code }})
+ @endif
+ |
- |
{{ core()->formatBasePrice($order->base_discount_amount) }} |
diff --git a/packages/Webkul/Admin/src/Resources/views/settings/locales/create.blade.php b/packages/Webkul/Admin/src/Resources/views/settings/locales/create.blade.php
index 4906a56cb..55baebe44 100755
--- a/packages/Webkul/Admin/src/Resources/views/settings/locales/create.blade.php
+++ b/packages/Webkul/Admin/src/Resources/views/settings/locales/create.blade.php
@@ -7,7 +7,7 @@
@section('content')
-