diff --git a/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php b/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php index 74cd3a83b..c32816dbb 100644 --- a/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php +++ b/packages/Webkul/API/Http/Controllers/Shop/CustomerController.php @@ -4,11 +4,13 @@ namespace Webkul\API\Http\Controllers\Shop; use Illuminate\Support\Facades\Event; use Webkul\Customer\Repositories\CustomerRepository; +use Webkul\Customer\Repositories\CustomerGroupRepository; /** * Customer controller * * @author Jitendra Singh + * @author Vivek Sharma @vivek-webkul * @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com) */ class CustomerController extends Controller @@ -28,13 +30,28 @@ class CustomerController extends Controller protected $customerRepository; /** - * @param CustomerRepository object $customer + * Repository object + * + * @var array */ - public function __construct(CustomerRepository $customerRepository) - { + protected $customerGroupRepository; + + /** + * Create a new controller instance. + * + * @param \Webkul\Customer\Repositories\CustomerRepository $customerRepository + * @param \Webkul\Customer\Repositories\CustomerGroupRepository $customerGroupRepository + * @return void + */ + public function __construct( + CustomerRepository $customerRepository, + CustomerGroupRepository $customerGroupRepository + ) { $this->_config = request('_config'); $this->customerRepository = $customerRepository; + + $this->customerGroupRepository = $customerGroupRepository; } /** @@ -56,10 +73,11 @@ class CustomerController extends Controller $data = array_merge($data, [ 'password' => bcrypt($data['password']), 'channel_id' => core()->getCurrentChannel()->id, - 'is_verified' => 1, - 'customer_group_id' => 1 + 'is_verified' => 1 ]); + $data['customer_group_id'] = $this->customerGroupRepository->findOneWhere(['code' => 'general'])->id; + Event::dispatch('customer.registration.before'); $customer = $this->customerRepository->create($data); diff --git a/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php b/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php index 3a779b910..59f13d130 100755 --- a/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/LocalesDataGrid.php @@ -59,7 +59,14 @@ class LocalesDataGrid extends DataGrid 'type' => 'string', 'searchable' => true, 'sortable' => true, - 'filterable' => true + 'filterable' => true, + 'closure' => true, + 'wrapper' => function ($value) { + if ($value->direction == 'ltr') + return trans('admin::app.datagrid.ltr'); + else + return trans('admin::app.datagrid.rtl'); + } ]); } diff --git a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php index a4b9add01..04d81be0f 100644 --- a/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/ProductDataGrid.php @@ -3,7 +3,7 @@ namespace Webkul\Admin\DataGrids; use Webkul\Ui\DataGrid\DataGrid; -use DB; +use Illuminate\Support\Facades\DB; /** * ProductDataGrid Class @@ -19,16 +19,44 @@ class ProductDataGrid extends DataGrid protected $itemsPerPage = 10; + protected $locale = 'all'; + + protected $channel = 'all'; + + public function __construct() + { + parent::__construct(); + + $this->locale = request()->get('locale') ?? 'all'; + $this->channel = request()->get('channel') ?? 'all'; + } + public function prepareQueryBuilder() { $queryBuilder = DB::table('product_flat') ->leftJoin('products', 'product_flat.product_id', '=', 'products.id') ->leftJoin('attribute_families', 'products.attribute_family_id', '=', 'attribute_families.id') ->leftJoin('product_inventories', 'product_flat.product_id', '=', 'product_inventories.product_id') - ->select('product_flat.product_id as product_id', 'products.sku as product_sku', 'product_flat.name as product_name', 'products.type as product_type', 'product_flat.status', 'product_flat.price', 'attribute_families.name as attribute_family', DB::raw('SUM(' . DB::getTablePrefix() . 'product_inventories.qty) as quantity')) - ->where('channel', core()->getCurrentChannelCode()) - ->where('locale', app()->getLocale()) - ->groupBy('product_flat.product_id'); + ->select( + 'product_flat.product_id as product_id', + 'products.sku as product_sku', + 'product_flat.name as product_name', + 'products.type as product_type', + 'product_flat.status', + 'product_flat.price', + 'attribute_families.name as attribute_family', + DB::raw('SUM(' . DB::getTablePrefix() . 'product_inventories.qty) as quantity') + ); + + if ($this->locale !== 'all') { + $queryBuilder->where('locale', $this->locale); + } + + if ($this->channel !== 'all') { + $queryBuilder->where('channel', $this->channel); + } + + $queryBuilder->groupBy('product_flat.product_id'); $this->addFilter('product_id', 'product_flat.product_id'); $this->addFilter('product_name', 'product_flat.name'); diff --git a/packages/Webkul/Admin/src/Resources/lang/ar/app.php b/packages/Webkul/Admin/src/Resources/lang/ar/app.php index 0287d9194..f08c39d6e 100644 --- a/packages/Webkul/Admin/src/Resources/lang/ar/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/ar/app.php @@ -150,7 +150,9 @@ return [ 'role' => 'الدور', 'sub-total' => 'المجموع الفرعي', 'no-of-products' => 'عدد المنتجات', - 'refunded' => 'Refunded' + 'refunded' => 'Refunded', + 'rtl' => 'RTL', + 'ltr' => 'LTR', ], 'account' => [ diff --git a/packages/Webkul/Admin/src/Resources/lang/en/app.php b/packages/Webkul/Admin/src/Resources/lang/en/app.php index 25a79fa1a..e745bfc5c 100755 --- a/packages/Webkul/Admin/src/Resources/lang/en/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/en/app.php @@ -213,7 +213,9 @@ return [ 'times-used' => 'Times Used', 'created-date' => 'Created Date', 'expiration-date' => 'Expiration Date', - 'delete' => 'Delete' + 'delete' => 'Delete', + 'rtl' => 'RTL', + 'ltr' => 'LTR', ], 'account' => [ @@ -776,7 +778,8 @@ return [ 'seo' => 'Home page SEO', 'seo-title' => 'Meta title', 'seo-description' => 'Meta description', - 'seo-keywords' => 'Meta keywords' + 'seo-keywords' => 'Meta keywords', + ], 'sliders' => [ @@ -1263,7 +1266,9 @@ return [ 'order-number-length' => 'Order Number Length', 'order-number-suffix' => 'Order Number Suffix', 'default' => 'Default', - 'sandbox' => 'Sandbox' + 'sandbox' => 'Sandbox', + 'all-channels' => 'All', + 'all-locales' => 'All' ] ] ]; diff --git a/packages/Webkul/Admin/src/Resources/lang/fa/app.php b/packages/Webkul/Admin/src/Resources/lang/fa/app.php index 8a0eb3992..db6b8c70a 100644 --- a/packages/Webkul/Admin/src/Resources/lang/fa/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/fa/app.php @@ -167,7 +167,9 @@ return [ 'disc_quantity' => 'مقدار استفاده نشده', 'disc_threshold' => 'آستانه استفاده نشده', 'use_coupon' => 'استافده از کوپن', - 'refunded' => 'Refunded' + 'refunded' => 'Refunded', + 'rtl' => 'RTL', + 'ltr' => 'LTR', ], 'account' => [ 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 5c11fd620..d1d98d358 100755 --- a/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php +++ b/packages/Webkul/Admin/src/Resources/lang/pt_BR/app.php @@ -155,7 +155,9 @@ return [ 'per-cust' => 'Por cliente', 'usage-throttle' => 'Tempos de uso', 'for-guest' => 'Para convidados', - 'refunded' => 'Refunded' + 'refunded' => 'Refunded', + 'rtl' => 'RTL', + 'ltr' => 'LTR', ], 'account' => [ 'title' => 'Minha Conta', diff --git a/packages/Webkul/Admin/src/Resources/views/catalog/products/accordians/categories.blade.php b/packages/Webkul/Admin/src/Resources/views/catalog/products/accordians/categories.blade.php index 4565d27b8..62303d041 100755 --- a/packages/Webkul/Admin/src/Resources/views/catalog/products/accordians/categories.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/catalog/products/accordians/categories.blade.php @@ -4,7 +4,7 @@
- + {!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.categories.controls.before', ['product' => $product]) !!} diff --git a/packages/Webkul/Admin/src/Resources/views/catalog/products/index.blade.php b/packages/Webkul/Admin/src/Resources/views/catalog/products/index.blade.php index 60c77b361..f01b54c2b 100755 --- a/packages/Webkul/Admin/src/Resources/views/catalog/products/index.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/catalog/products/index.blade.php @@ -6,9 +6,45 @@ @section('content')
+ get('locale') ?: null; ?> + get('channel') ?: null; ?>