From be05a8aae9ec4b3027c47b37a3628abdfeda6d84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gro=C3=9Fe?= Date: Thu, 2 Jan 2020 15:45:25 +0100 Subject: [PATCH 01/10] add missing api_token columns to database (table users and admins) --- ...020_01_02_201029_add_api_token_columns.php | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php diff --git a/packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php b/packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php new file mode 100644 index 000000000..0373c050d --- /dev/null +++ b/packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php @@ -0,0 +1,52 @@ +string('api_token', 80) + ->after('password') + ->unique() + ->nullable() + ->default(null); + }); + + Schema::table('admins', function ($table) { + $table + ->string('api_token', 80) + ->after('password') + ->unique() + ->nullable() + ->default(null); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('users', function (Blueprint $table) { + $table->dropColumn('api_token'); + }); + + Schema::table('admins', function (Blueprint $table) { + $table->dropColumn('api_token'); + }); + } +} From 37a4f6adb62aff2c3a419ca8dfa96f746aa77a36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Gro=C3=9Fe?= Date: Fri, 3 Jan 2020 09:14:12 +0100 Subject: [PATCH 02/10] ensure the api_token is being generated on customer/admin creation --- ...2020_01_02_201029_add_api_token_columns.php | 4 ++-- .../Controllers/RegistrationController.php | 3 +++ .../Webkul/Customer/src/Models/Customer.php | 4 ++-- .../src/Database/Seeders/AdminsTableSeeder.php | 4 ++++ .../src/Http/Controllers/UserController.php | 18 +++++++++++------- packages/Webkul/User/src/Models/Admin.php | 4 ++-- 6 files changed, 24 insertions(+), 13 deletions(-) diff --git a/packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php b/packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php index 0373c050d..b38f3983a 100644 --- a/packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php +++ b/packages/Webkul/Core/src/Database/Migrations/2020_01_02_201029_add_api_token_columns.php @@ -15,7 +15,7 @@ class AddApiTokenColumns extends Migration { // @see https://laravel.com/docs/6.x/api-authentication#database-preparation - Schema::table('users', function ($table) { + Schema::table('customers', function ($table) { $table ->string('api_token', 80) ->after('password') @@ -41,7 +41,7 @@ class AddApiTokenColumns extends Migration */ public function down() { - Schema::table('users', function (Blueprint $table) { + Schema::table('customers', function (Blueprint $table) { $table->dropColumn('api_token'); }); diff --git a/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php b/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php index 620fb733a..4920fb056 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php @@ -2,6 +2,8 @@ namespace Webkul\Customer\Http\Controllers; +use Illuminate\Support\Str; +use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Event; use Illuminate\Support\Facades\Mail; use Webkul\Customer\Mail\RegistrationEmail; @@ -85,6 +87,7 @@ class RegistrationController extends Controller $data = request()->input(); $data['password'] = bcrypt($data['password']); + $data['api_token'] = Str::random(80); if (core()->getConfigData('customer.settings.email.verification')) { $data['is_verified'] = 0; diff --git a/packages/Webkul/Customer/src/Models/Customer.php b/packages/Webkul/Customer/src/Models/Customer.php index 6e653ca53..c9f4d194c 100755 --- a/packages/Webkul/Customer/src/Models/Customer.php +++ b/packages/Webkul/Customer/src/Models/Customer.php @@ -17,9 +17,9 @@ class Customer extends Authenticatable implements CustomerContract, JWTSubject protected $table = 'customers'; - protected $fillable = ['first_name', 'last_name', 'gender', 'date_of_birth', 'email', 'phone', 'password', 'customer_group_id', 'subscribed_to_news_letter', 'is_verified', 'token', 'notes', 'status']; + protected $fillable = ['first_name', 'last_name', 'gender', 'date_of_birth', 'email', 'phone', 'password', 'api_token', 'customer_group_id', 'subscribed_to_news_letter', 'is_verified', 'token', 'notes', 'status']; - protected $hidden = ['password', 'remember_token']; + protected $hidden = ['password', 'api_token', 'remember_token']; /** * Get the customer full name. diff --git a/packages/Webkul/User/src/Database/Seeders/AdminsTableSeeder.php b/packages/Webkul/User/src/Database/Seeders/AdminsTableSeeder.php index 517d9b4cc..e8a872767 100755 --- a/packages/Webkul/User/src/Database/Seeders/AdminsTableSeeder.php +++ b/packages/Webkul/User/src/Database/Seeders/AdminsTableSeeder.php @@ -2,6 +2,7 @@ namespace Webkul\User\Database\Seeders; +use Illuminate\Support\Str; use Illuminate\Database\Seeder; use DB; @@ -16,6 +17,9 @@ class AdminsTableSeeder extends Seeder 'name' => 'Example', 'email' => 'admin@example.com', 'password' => bcrypt('admin123'), + 'api_token' => Str::random(80), + 'created_at' => date('Y-m-d H:i:s'), + 'updated_at' => date('Y-m-d H:i:s'), 'status' => 1, 'role_id' => 1, ]); diff --git a/packages/Webkul/User/src/Http/Controllers/UserController.php b/packages/Webkul/User/src/Http/Controllers/UserController.php index 25e7a44fb..d3ecfa389 100755 --- a/packages/Webkul/User/src/Http/Controllers/UserController.php +++ b/packages/Webkul/User/src/Http/Controllers/UserController.php @@ -2,6 +2,7 @@ namespace Webkul\User\Http\Controllers; +use Illuminate\Support\Str; use Illuminate\Support\Facades\Event; use Webkul\User\Repositories\AdminRepository; use Webkul\User\Repositories\RoleRepository; @@ -61,7 +62,7 @@ class UserController extends Controller /** * Display a listing of the resource. * - * @return \Illuminate\View\View + * @return \Illuminate\View\View */ public function index() { @@ -71,7 +72,7 @@ class UserController extends Controller /** * Show the form for creating a new resource. * - * @return \Illuminate\View\View + * @return \Illuminate\View\View */ public function create() { @@ -90,8 +91,10 @@ class UserController extends Controller { $data = $request->all(); - if (isset($data['password']) && $data['password']) + if (isset($data['password']) && $data['password']) { $data['password'] = bcrypt($data['password']); + $data['api_token'] = Str::random(80); + } Event::fire('user.admin.create.before'); @@ -108,7 +111,7 @@ class UserController extends Controller * Show the form for editing the specified resource. * * @param integer $id - * @return \Illuminate\View\View + * @return \Illuminate\View\View */ public function edit($id) { @@ -130,10 +133,11 @@ class UserController extends Controller { $data = $request->all(); - if (! $data['password']) + if (! $data['password']) { unset($data['password']); - else + } else { $data['password'] = bcrypt($data['password']); + } if (isset($data['status'])) { $data['status'] = 1; @@ -156,7 +160,7 @@ class UserController extends Controller * Remove the specified resource from storage. * * @param int $id - * @return \Illuminate\Http\JsonResponse|\Illuminate\View\View + * @return \Illuminate\Http\JsonResponse|\Illuminate\View\View */ public function destroy($id) { diff --git a/packages/Webkul/User/src/Models/Admin.php b/packages/Webkul/User/src/Models/Admin.php index 5757e1ff6..a35fce6e1 100755 --- a/packages/Webkul/User/src/Models/Admin.php +++ b/packages/Webkul/User/src/Models/Admin.php @@ -19,7 +19,7 @@ class Admin extends Authenticatable implements AdminContract * @var array */ protected $fillable = [ - 'name', 'email', 'password', 'role_id', 'status', + 'name', 'email', 'password', 'api_token', 'role_id', 'status', ]; /** @@ -28,7 +28,7 @@ class Admin extends Authenticatable implements AdminContract * @var array */ protected $hidden = [ - 'password', 'remember_token', + 'password', 'api_token', 'remember_token', ]; /** From d2a8911aaa5a44f9d188652c52262331ce8dc5a1 Mon Sep 17 00:00:00 2001 From: Florian Bosdorff Date: Sun, 26 Jan 2020 21:10:57 +0100 Subject: [PATCH 03/10] fix trigger according to optional db-prefix --- .env.testing | 1 + ...d_function_to_get_url_path_of_category.php | 16 +++--- ...7_add_trigger_to_category_translations.php | 31 +++++++----- ...11_21_194703_add_trigger_to_categories.php | 41 +++++++++------- ...05_alter_trigger_category_translations.php | 36 ++++++++------ ...lter_stored_function_url_path_category.php | 22 +++++---- ..._06_195305_alter_trigger_on_categories.php | 49 ++++++++++--------- 7 files changed, 108 insertions(+), 88 deletions(-) diff --git a/.env.testing b/.env.testing index b5b8726aa..299f945da 100644 --- a/.env.testing +++ b/.env.testing @@ -13,6 +13,7 @@ DB_PORT=3306 DB_DATABASE=bagisto_testing DB_USERNAME=bagisto DB_PASSWORD=secret +DB_PREFIX= BROADCAST_DRIVER=log CACHE_DRIVER=file diff --git a/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194608_add_stored_function_to_get_url_path_of_category.php b/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194608_add_stored_function_to_get_url_path_of_category.php index 72d995819..b84ecfadf 100644 --- a/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194608_add_stored_function_to_get_url_path_of_category.php +++ b/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194608_add_stored_function_to_get_url_path_of_category.php @@ -12,6 +12,8 @@ class AddStoredFunctionToGetUrlPathOfCategory extends Migration */ public function up() { + $dbPrefix = DB::getTablePrefix(); + $functionSQL = <<< SQL DROP FUNCTION IF EXISTS `get_url_path_of_category`; CREATE FUNCTION get_url_path_of_category( @@ -21,7 +23,7 @@ class AddStoredFunctionToGetUrlPathOfCategory extends Migration RETURNS VARCHAR(255) DETERMINISTIC BEGIN - + DECLARE urlPath VARCHAR(255); -- Category with id 1 is root by default IF categoryId <> 1 @@ -29,9 +31,9 @@ class AddStoredFunctionToGetUrlPathOfCategory extends Migration SELECT GROUP_CONCAT(parent_translations.slug SEPARATOR '/') INTO urlPath FROM - categories AS node, - categories AS parent - JOIN category_translations AS parent_translations ON parent.id = parent_translations.category_id + ${dbPrefix}categories AS node, + ${dbPrefix}categories AS parent + JOIN ${dbPrefix}category_translations AS parent_translations ON parent.id = parent_translations.category_id WHERE node._lft >= parent._lft AND node._rgt <= parent._rgt @@ -40,15 +42,15 @@ class AddStoredFunctionToGetUrlPathOfCategory extends Migration AND parent_translations.locale = localeCode GROUP BY node.id; - + IF urlPath IS NULL THEN - SET urlPath = (SELECT slug FROM category_translations WHERE category_translations.category_id = categoryId); + SET urlPath = (SELECT slug FROM ${dbPrefix}category_translations WHERE ${dbPrefix}category_translations.category_id = categoryId); END IF; ELSE SET urlPath = ''; END IF; - + RETURN urlPath; END; SQL; diff --git a/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194627_add_trigger_to_category_translations.php b/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194627_add_trigger_to_category_translations.php index b62a6133f..b85455a8f 100644 --- a/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194627_add_trigger_to_category_translations.php +++ b/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194627_add_trigger_to_category_translations.php @@ -2,6 +2,7 @@ use Illuminate\Support\Facades\DB; use Illuminate\Database\Migrations\Migration; +use Webkul\Category\Models\CategoryTranslation; class AddTriggerToCategoryTranslations extends Migration { @@ -15,11 +16,13 @@ class AddTriggerToCategoryTranslations extends Migration */ public function up() { + $dbPrefix = DB::getTablePrefix(); + $triggerBody = $this->getTriggerBody(); $insertTrigger = <<< SQL CREATE TRIGGER %s - BEFORE INSERT ON category_translations - FOR EACH ROW + BEFORE INSERT ON ${dbPrefix}category_translations + FOR EACH ROW BEGIN $triggerBody END; @@ -27,8 +30,8 @@ SQL; $updateTrigger = <<< SQL CREATE TRIGGER %s - BEFORE UPDATE ON category_translations - FOR EACH ROW + BEFORE UPDATE ON ${dbPrefix}category_translations + FOR EACH ROW BEGIN $triggerBody END; @@ -59,20 +62,22 @@ SQL; */ private function getTriggerBody() { + $dbPrefix = DB::getTablePrefix(); + return << 1 THEN - + SELECT GROUP_CONCAT(parent_translations.slug SEPARATOR '/') INTO parentUrlPath FROM - categories AS node, - categories AS parent - JOIN category_translations AS parent_translations ON parent.id = parent_translations.category_id + ${dbPrefix}categories AS node, + ${dbPrefix}categories AS parent + JOIN ${dbPrefix}category_translations AS parent_translations ON parent.id = parent_translations.category_id WHERE node._lft >= parent._lft AND node._rgt <= parent._rgt @@ -81,16 +86,16 @@ SQL; AND parent_translations.locale = NEW.locale GROUP BY node.id; - - IF parentUrlPath IS NULL + + IF parentUrlPath IS NULL THEN SET urlPath = NEW.slug; ELSE SET urlPath = concat(parentUrlPath, '/', NEW.slug); END IF; - + SET NEW.url_path = urlPath; - + END IF; SQL; diff --git a/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194703_add_trigger_to_categories.php b/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194703_add_trigger_to_categories.php index f58739d75..206f4c02b 100644 --- a/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194703_add_trigger_to_categories.php +++ b/packages/Webkul/Shop/src/Database/Migrations/2019_11_21_194703_add_trigger_to_categories.php @@ -16,10 +16,11 @@ class AddTriggerToCategories extends Migration public function up() { $triggerBody = $this->getTriggerBody(); + $dbPrefix = DB::getTablePrefix(); $insertTrigger = <<< SQL - CREATE TRIGGER %s - AFTER INSERT ON categories + CREATE TRIGGER %s + AFTER INSERT ON ${dbPrefix}categories FOR EACH ROW BEGIN $triggerBody @@ -27,8 +28,8 @@ class AddTriggerToCategories extends Migration SQL; $updateTrigger = <<< SQL - CREATE TRIGGER %s - AFTER UPDATE ON categories + CREATE TRIGGER %s + AFTER UPDATE ON ${dbPrefix}categories FOR EACH ROW BEGIN $triggerBody @@ -60,39 +61,41 @@ SQL; */ private function getTriggerBody(): string { + $dbPrefix = DB::getTablePrefix(); + return <<< SQL DECLARE urlPath VARCHAR(255); DECLARE localeCode VARCHAR(255); DECLARE done INT; - DECLARE curs CURSOR FOR (SELECT category_translations.locale - FROM category_translations + DECLARE curs CURSOR FOR (SELECT ${dbPrefix}category_translations.locale + FROM ${dbPrefix}category_translations WHERE category_id = NEW.id); DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; - + IF EXISTS ( SELECT * - FROM category_translations + FROM ${dbPrefix}category_translations WHERE category_id = NEW.id ) THEN - + OPEN curs; - + SET done = 0; - REPEAT + REPEAT FETCH curs INTO localeCode; - + SELECT get_url_path_of_category(NEW.id, localeCode) INTO urlPath; - - UPDATE category_translations - SET url_path = urlPath - WHERE category_translations.category_id = NEW.id; - + + UPDATE ${dbPrefix}category_translations + SET url_path = urlPath + WHERE ${dbPrefix}category_translations.category_id = NEW.id; + UNTIL done END REPEAT; - + CLOSE curs; - + END IF; SQL; } diff --git a/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173505_alter_trigger_category_translations.php b/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173505_alter_trigger_category_translations.php index 1bb0ca0bb..52f043433 100644 --- a/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173505_alter_trigger_category_translations.php +++ b/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173505_alter_trigger_category_translations.php @@ -16,10 +16,12 @@ class AlterTriggerCategoryTranslations extends Migration public function up() { $triggerBody = $this->getTriggerBody(); + $dbPrefix = DB::getTablePrefix(); + $insertTrigger = <<< SQL CREATE TRIGGER %s - BEFORE INSERT ON category_translations - FOR EACH ROW + BEFORE INSERT ON ${dbPrefix}category_translations + FOR EACH ROW BEGIN $triggerBody END; @@ -27,8 +29,8 @@ SQL; $updateTrigger = <<< SQL CREATE TRIGGER %s - BEFORE UPDATE ON category_translations - FOR EACH ROW + BEFORE UPDATE ON ${dbPrefix}category_translations + FOR EACH ROW BEGIN $triggerBody END; @@ -66,44 +68,46 @@ SQL; */ private function getTriggerBody() { + $dbPrefix = DB::getTablePrefix(); + return <<= parent._lft AND node._rgt <= parent._rgt - AND node.id = (SELECT parent_id FROM categories WHERE id = NEW.category_id) - AND node.parent_id IS NOT NULL + AND node.id = (SELECT parent_id FROM ${dbPrefix}categories WHERE id = NEW.category_id) + AND node.parent_id IS NOT NULL AND parent.parent_id IS NOT NULL AND parent_translations.locale = NEW.locale GROUP BY node.id; - - IF parentUrlPath IS NULL + + IF parentUrlPath IS NULL THEN SET urlPath = NEW.slug; ELSE SET urlPath = concat(parentUrlPath, '/', NEW.slug); END IF; - + SET NEW.url_path = urlPath; - + END IF; SQL; diff --git a/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173524_alter_stored_function_url_path_category.php b/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173524_alter_stored_function_url_path_category.php index fc4714e62..84c7d1135 100644 --- a/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173524_alter_stored_function_url_path_category.php +++ b/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_173524_alter_stored_function_url_path_category.php @@ -12,6 +12,8 @@ class AlterStoredFunctionUrlPathCategory extends Migration */ public function up() { + $dbPrefix = DB::getTablePrefix(); + $functionSQL = <<< SQL DROP FUNCTION IF EXISTS `get_url_path_of_category`; CREATE FUNCTION get_url_path_of_category( @@ -21,12 +23,12 @@ class AlterStoredFunctionUrlPathCategory extends Migration RETURNS VARCHAR(255) DETERMINISTIC BEGIN - + DECLARE urlPath VARCHAR(255); - + IF NOT EXISTS ( - SELECT id - FROM categories + SELECT id + FROM ${dbPrefix}categories WHERE id = categoryId AND parent_id IS NULL @@ -35,9 +37,9 @@ class AlterStoredFunctionUrlPathCategory extends Migration SELECT GROUP_CONCAT(parent_translations.slug SEPARATOR '/') INTO urlPath FROM - categories AS node, - categories AS parent - JOIN category_translations AS parent_translations ON parent.id = parent_translations.category_id + ${dbPrefix}categories AS node, + ${dbPrefix}categories AS parent + JOIN ${dbPrefix}category_translations AS parent_translations ON parent.id = parent_translations.category_id WHERE node._lft >= parent._lft AND node._rgt <= parent._rgt @@ -47,15 +49,15 @@ class AlterStoredFunctionUrlPathCategory extends Migration AND parent_translations.locale = localeCode GROUP BY node.id; - + IF urlPath IS NULL THEN - SET urlPath = (SELECT slug FROM category_translations WHERE category_translations.category_id = categoryId); + SET urlPath = (SELECT slug FROM ${dbPrefix}category_translations WHERE ${dbPrefix}category_translations.category_id = categoryId); END IF; ELSE SET urlPath = ''; END IF; - + RETURN urlPath; END; SQL; diff --git a/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_195305_alter_trigger_on_categories.php b/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_195305_alter_trigger_on_categories.php index 0131109a7..61722e334 100644 --- a/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_195305_alter_trigger_on_categories.php +++ b/packages/Webkul/Shop/src/Database/Migrations/2020_01_06_195305_alter_trigger_on_categories.php @@ -18,10 +18,11 @@ class AlterTriggerOnCategories extends Migration public function up() { $triggerBody = $this->getTriggerBody(); + $dbPrefix = DB::getTablePrefix(); $insertTrigger = <<< SQL - CREATE TRIGGER %s - AFTER INSERT ON categories + CREATE TRIGGER %s + AFTER INSERT ON ${dbPrefix}categories FOR EACH ROW BEGIN $triggerBody @@ -29,8 +30,8 @@ class AlterTriggerOnCategories extends Migration SQL; $updateTrigger = <<< SQL - CREATE TRIGGER %s - AFTER UPDATE ON categories + CREATE TRIGGER %s + AFTER UPDATE ON ${dbPrefix}categories FOR EACH ROW BEGIN $triggerBody @@ -68,46 +69,48 @@ SQL; */ private function getTriggerBody(): string { + $dbPrefix = DB::getTablePrefix(); + return <<< SQL DECLARE urlPath VARCHAR(255); DECLARE localeCode VARCHAR(255); DECLARE done INT; - DECLARE curs CURSOR FOR (SELECT category_translations.locale - FROM category_translations + DECLARE curs CURSOR FOR (SELECT ${dbPrefix}category_translations.locale + FROM ${dbPrefix}category_translations WHERE category_id = NEW.id); DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; - + IF EXISTS ( SELECT * - FROM category_translations + FROM ${dbPrefix}category_translations WHERE category_id = NEW.id ) THEN - + OPEN curs; - + SET done = 0; - REPEAT + REPEAT FETCH curs INTO localeCode; - + SELECT get_url_path_of_category(NEW.id, localeCode) INTO urlPath; - - IF NEW.parent_id IS NULL + + IF NEW.parent_id IS NULL THEN SET urlPath = ''; END IF; - - UPDATE category_translations - SET url_path = urlPath - WHERE - category_translations.category_id = NEW.id - AND category_translations.locale = localeCode; - + + UPDATE ${dbPrefix}category_translations + SET url_path = urlPath + WHERE + ${dbPrefix}category_translations.category_id = NEW.id + AND ${dbPrefix}category_translations.locale = localeCode; + UNTIL done END REPEAT; - + CLOSE curs; - + END IF; SQL; } From 25d94ea944ed9f330fd6b2e028eaa3c31b4aa114 Mon Sep 17 00:00:00 2001 From: Jitendra Singh Date: Mon, 27 Jan 2020 16:41:25 +0530 Subject: [PATCH 04/10] Issue #2087 fixed --- packages/Webkul/Product/src/Type/Bundle.php | 2 +- .../Shop/src/Http/Controllers/CartController.php | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/Webkul/Product/src/Type/Bundle.php b/packages/Webkul/Product/src/Type/Bundle.php index 42bd1f2bb..cda374cd8 100644 --- a/packages/Webkul/Product/src/Type/Bundle.php +++ b/packages/Webkul/Product/src/Type/Bundle.php @@ -523,7 +523,7 @@ class Bundle extends AbstractType */ public function getAdditionalOptions($data) { - $bundleOptionQuantities = $data['bundle_option_qty']; + $bundleOptionQuantities = $data['bundle_option_qty'] ?? []; foreach ($data['bundle_options'] as $optionId => $optionProductIds) { $option = $this->productBundleOptionRepository->find($optionId); diff --git a/packages/Webkul/Shop/src/Http/Controllers/CartController.php b/packages/Webkul/Shop/src/Http/Controllers/CartController.php index 1ca8d90f1..ccb5f7cdc 100755 --- a/packages/Webkul/Shop/src/Http/Controllers/CartController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/CartController.php @@ -77,7 +77,7 @@ class CartController extends Controller */ public function add($id) { - try { + // try { $result = Cart::addProduct($id, request()->all()); if ($result) { @@ -91,13 +91,13 @@ class CartController extends Controller } else { session()->flash('warning', trans('shop::app.checkout.cart.item.error-add')); } - } catch(\Exception $e) { - session()->flash('error', trans($e->getMessage())); + // } catch(\Exception $e) { + // session()->flash('error', trans($e->getMessage())); - $product = $this->productRepository->find($id); + // $product = $this->productRepository->find($id); - return redirect()->route('shop.productOrCategory.index', $product->url_key); - } + // return redirect()->route('shop.productOrCategory.index', $product->url_key); + // } return redirect()->back(); } From 8176317a59c0250474bb1269f5042dde217617d0 Mon Sep 17 00:00:00 2001 From: Jitendra Singh Date: Mon, 27 Jan 2020 16:46:58 +0530 Subject: [PATCH 05/10] Removed commented code --- .../Shop/src/Http/Controllers/CartController.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/Webkul/Shop/src/Http/Controllers/CartController.php b/packages/Webkul/Shop/src/Http/Controllers/CartController.php index ccb5f7cdc..1ca8d90f1 100755 --- a/packages/Webkul/Shop/src/Http/Controllers/CartController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/CartController.php @@ -77,7 +77,7 @@ class CartController extends Controller */ public function add($id) { - // try { + try { $result = Cart::addProduct($id, request()->all()); if ($result) { @@ -91,13 +91,13 @@ class CartController extends Controller } else { session()->flash('warning', trans('shop::app.checkout.cart.item.error-add')); } - // } catch(\Exception $e) { - // session()->flash('error', trans($e->getMessage())); + } catch(\Exception $e) { + session()->flash('error', trans($e->getMessage())); - // $product = $this->productRepository->find($id); + $product = $this->productRepository->find($id); - // return redirect()->route('shop.productOrCategory.index', $product->url_key); - // } + return redirect()->route('shop.productOrCategory.index', $product->url_key); + } return redirect()->back(); } From d125f9eba034c7c359f27fee21927c6a34776e80 Mon Sep 17 00:00:00 2001 From: Florian Bosdorff Date: Mon, 27 Jan 2020 17:06:03 +0100 Subject: [PATCH 06/10] add reporting for try-catch-sections --- app/Console/Commands/GenerateProducts.php | 1 + .../Customer/CustomerController.php | 2 +- packages/Webkul/Admin/src/Listeners/Order.php | 33 +++++++++++-------- .../Http/Controllers/AttributeController.php | 1 + .../Controllers/AttributeFamilyController.php | 9 +++-- .../src/Helpers/CatalogRuleIndex.php | 6 ++-- .../Http/Controllers/CurrencyController.php | 1 + .../Controllers/ExchangeRateController.php | 1 + .../Controllers/SubscriptionController.php | 1 + .../Controllers/ForgotPasswordController.php | 1 + .../Controllers/RegistrationController.php | 6 ++-- .../Http/Controllers/WishlistController.php | 1 + .../Controllers/InventorySourceController.php | 1 + .../Http/Controllers/ProductController.php | 1 + .../src/Http/Controllers/ReviewController.php | 1 + .../src/Http/Controllers/CartController.php | 2 ++ .../Controllers/SubscriptionController.php | 1 + .../Http/Controllers/TaxRateController.php | 1 + 18 files changed, 48 insertions(+), 22 deletions(-) diff --git a/app/Console/Commands/GenerateProducts.php b/app/Console/Commands/GenerateProducts.php index f72681fb1..b1899c0b5 100644 --- a/app/Console/Commands/GenerateProducts.php +++ b/app/Console/Commands/GenerateProducts.php @@ -61,6 +61,7 @@ class GenerateProducts extends Command try { $result = $this->generateProduct->create(); } catch (\Exception $e) { + report($e); continue; } diff --git a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php index 5c9930e84..db2817904 100755 --- a/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php +++ b/packages/Webkul/Admin/src/Http/Controllers/Customer/CustomerController.php @@ -122,7 +122,7 @@ class CustomerController extends Controller try { Mail::queue(new NewCustomerNotification($customer, $password)); } catch (\Exception $e) { - + report($e); } session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Customer'])); diff --git a/packages/Webkul/Admin/src/Listeners/Order.php b/packages/Webkul/Admin/src/Listeners/Order.php index 895c05539..40392fbb7 100755 --- a/packages/Webkul/Admin/src/Listeners/Order.php +++ b/packages/Webkul/Admin/src/Listeners/Order.php @@ -2,6 +2,7 @@ namespace Webkul\Admin\Listeners; +use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Mail; use Webkul\Admin\Mail\NewOrderNotification; use Webkul\Admin\Mail\NewAdminNotification; @@ -10,13 +11,15 @@ use Webkul\Admin\Mail\NewShipmentNotification; use Webkul\Admin\Mail\NewInventorySourceNotification; use Webkul\Admin\Mail\CancelOrderNotification; use Webkul\Admin\Mail\NewRefundNotification; + /** * Order event handler * * @author Jitendra Singh * @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com) */ -class Order { +class Order +{ /** * @param mixed $order @@ -30,7 +33,7 @@ class Order { Mail::queue(new NewAdminNotification($order)); } catch (\Exception $e) { - + report($e); } } @@ -42,12 +45,13 @@ class Order { public function sendNewInvoiceMail($invoice) { try { - if ($invoice->email_sent) + if ($invoice->email_sent) { return; + } Mail::queue(new NewInvoiceNotification($invoice)); } catch (\Exception $e) { - + report($e); } } @@ -61,7 +65,7 @@ class Order { try { Mail::queue(new NewRefundNotification($refund)); } catch (\Exception $e) { - + report($e); } } @@ -73,25 +77,28 @@ class Order { public function sendNewShipmentMail($shipment) { try { - if ($shipment->email_sent) + if ($shipment->email_sent) { return; + } Mail::queue(new NewShipmentNotification($shipment)); Mail::queue(new NewInventorySourceNotification($shipment)); } catch (\Exception $e) { - + report($e); } } - /* + /** * @param mixed $order - * */ - public function sendCancelOrderMail($order){ - try{ + * + */ + public function sendCancelOrderMail($order) + { + try { Mail::queue(new CancelOrderNotification($order)); - }catch (\Exception $e){ - \Log::error('Error occured when sending email '.$e->getMessage()); + } catch (\Exception $e) { + report($e); } } } \ No newline at end of file diff --git a/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php b/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php index d9958c78c..d5230fca4 100755 --- a/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php +++ b/packages/Webkul/Attribute/src/Http/Controllers/AttributeController.php @@ -167,6 +167,7 @@ class AttributeController extends Controller $this->attributeRepository->delete($value); } } catch (\Exception $e) { + report($e); $suppressFlash = true; continue; diff --git a/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php b/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php index 272f0848c..377231045 100755 --- a/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php +++ b/packages/Webkul/Attribute/src/Http/Controllers/AttributeFamilyController.php @@ -154,7 +154,8 @@ class AttributeFamilyController extends Controller return response()->json(['message' => true], 200); } catch (\Exception $e) { - session()->flash('error', trans( 'admin::app.response.delete-failed', ['name' => 'Family'])); + report($e); + session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Family'])); } } @@ -177,16 +178,18 @@ class AttributeFamilyController extends Controller try { $this->attributeFamilyRepository->delete($value); } catch (\Exception $e) { + report($e); $suppressFlash = true; continue; } } - if (! $suppressFlash) + if (!$suppressFlash) { session()->flash('success', ('admin::app.datagrid.mass-ops.delete-success')); - else + } else { session()->flash('info', trans('admin::app.datagrid.mass-ops.partial-action', ['resource' => 'Attribute Family'])); + } return redirect()->back(); } else { diff --git a/packages/Webkul/CatalogRule/src/Helpers/CatalogRuleIndex.php b/packages/Webkul/CatalogRule/src/Helpers/CatalogRuleIndex.php index fd9b6cc5f..f9887b4d9 100644 --- a/packages/Webkul/CatalogRule/src/Helpers/CatalogRuleIndex.php +++ b/packages/Webkul/CatalogRule/src/Helpers/CatalogRuleIndex.php @@ -65,7 +65,7 @@ class CatalogRuleIndex $this->catalogRuleProductPriceHelper->indexRuleProductPrice(1000); } catch (\Exception $e) { - + report($e); } } @@ -80,7 +80,7 @@ class CatalogRuleIndex try { if (! $product->getTypeInstance()->priceRuleCanBeApplied()) return; - + $productIds = $product->getTypeInstance()->isComposite() ? $product->getTypeInstance()->getChildrenIds() : [$product->id]; @@ -93,7 +93,7 @@ class CatalogRuleIndex $this->catalogRuleProductPriceHelper->indexRuleProductPrice(1000, $product); } catch (\Exception $e) { - + report($e); } } diff --git a/packages/Webkul/Core/src/Http/Controllers/CurrencyController.php b/packages/Webkul/Core/src/Http/Controllers/CurrencyController.php index 9f553068f..2d34ece98 100755 --- a/packages/Webkul/Core/src/Http/Controllers/CurrencyController.php +++ b/packages/Webkul/Core/src/Http/Controllers/CurrencyController.php @@ -144,6 +144,7 @@ class CurrencyController extends Controller return response()->json(['message' => true], 200); } catch (\Exception $e) { + report($e); session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Currency'])); } } diff --git a/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php b/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php index cf05243c2..fbf39969a 100755 --- a/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php +++ b/packages/Webkul/Core/src/Http/Controllers/ExchangeRateController.php @@ -200,6 +200,7 @@ class ExchangeRateController extends Controller return response()->json(['message' => true], 200); } catch (\Exception $e) { + report($e); session()->flash('error', trans('admin::app.response.delete-error', ['name' => 'Exchange rate'])); } } diff --git a/packages/Webkul/Core/src/Http/Controllers/SubscriptionController.php b/packages/Webkul/Core/src/Http/Controllers/SubscriptionController.php index c5bff4153..cf94dfeba 100755 --- a/packages/Webkul/Core/src/Http/Controllers/SubscriptionController.php +++ b/packages/Webkul/Core/src/Http/Controllers/SubscriptionController.php @@ -104,6 +104,7 @@ class SubscriptionController extends Controller return response()->json(['message' => true], 200); } catch (\Exception $e) { + report($e); session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Subscriber'])); } diff --git a/packages/Webkul/Customer/src/Http/Controllers/ForgotPasswordController.php b/packages/Webkul/Customer/src/Http/Controllers/ForgotPasswordController.php index 9c7c9333b..1519b71d7 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/ForgotPasswordController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/ForgotPasswordController.php @@ -71,6 +71,7 @@ class ForgotPasswordController extends Controller ['email' => trans($response)] ); } catch (\Exception $e) { + report($e); session()->flash('error', trans($e->getMessage())); return redirect()->back(); diff --git a/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php b/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php index fa9a5b250..4acecaee3 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/RegistrationController.php @@ -114,18 +114,19 @@ class RegistrationController extends Controller session()->flash('success', trans('shop::app.customer.signup-form.success-verify')); } catch (\Exception $e) { + report($e); session()->flash('info', trans('shop::app.customer.signup-form.success-verify-email-unsent')); } } else { - try { + try { Mail::queue(new RegistrationEmail(request()->all())); session()->flash('success', trans('shop::app.customer.signup-form.success-verify')); //customer registered successfully } catch (\Exception $e) { + report($e); session()->flash('info', trans('shop::app.customer.signup-form.success-verify-email-unsent')); } - session()->flash('success', trans('shop::app.customer.signup-form.success')); } @@ -177,6 +178,7 @@ class RegistrationController extends Controller \Cookie::queue(\Cookie::forget('email-for-resend')); } } catch (\Exception $e) { + report($e); session()->flash('error', trans('shop::app.customer.signup-form.verification-not-sent')); return redirect()->back(); diff --git a/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php b/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php index cfdf37c34..48f0e543f 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/WishlistController.php @@ -172,6 +172,7 @@ class WishlistController extends Controller return redirect()->back(); } catch (\Exception $e) { + report($e); session()->flash('warning', $e->getMessage()); return redirect()->route('shop.productOrCategory.index', $wishlistItem->product->url_key); diff --git a/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php b/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php index a01730c56..7279cfbe1 100755 --- a/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php +++ b/packages/Webkul/Inventory/src/Http/Controllers/InventorySourceController.php @@ -168,6 +168,7 @@ class InventorySourceController extends Controller return response()->json(['message' => true], 200); } catch (\Exception $e) { + report($e); session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Inventory source'])); } } diff --git a/packages/Webkul/Product/src/Http/Controllers/ProductController.php b/packages/Webkul/Product/src/Http/Controllers/ProductController.php index 67174f16f..e910a2ae0 100755 --- a/packages/Webkul/Product/src/Http/Controllers/ProductController.php +++ b/packages/Webkul/Product/src/Http/Controllers/ProductController.php @@ -245,6 +245,7 @@ class ProductController extends Controller return response()->json(['message' => true], 200); } catch (\Exception $e) { + report($e); session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Product'])); } diff --git a/packages/Webkul/Product/src/Http/Controllers/ReviewController.php b/packages/Webkul/Product/src/Http/Controllers/ReviewController.php index 10f51d987..c0dae2e10 100755 --- a/packages/Webkul/Product/src/Http/Controllers/ReviewController.php +++ b/packages/Webkul/Product/src/Http/Controllers/ReviewController.php @@ -105,6 +105,7 @@ class ReviewController extends Controller return response()->json(['message' => true], 200); } catch (\Exception $e) { + report($e); session()->flash('success', trans('admin::app.response.delete-failed', ['name' => 'Review'])); } diff --git a/packages/Webkul/Shop/src/Http/Controllers/CartController.php b/packages/Webkul/Shop/src/Http/Controllers/CartController.php index 1ca8d90f1..0c6de7e32 100755 --- a/packages/Webkul/Shop/src/Http/Controllers/CartController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/CartController.php @@ -182,6 +182,8 @@ class CartController extends Controller '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') diff --git a/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php b/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php index b05a93674..1c75a192a 100755 --- a/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/SubscriptionController.php @@ -75,6 +75,7 @@ class SubscriptionController extends Controller session()->flash('success', trans('shop::app.subscription.subscribed')); } catch (\Exception $e) { + report($e); session()->flash('error', trans('shop::app.subscription.not-subscribed')); $mailSent = false; diff --git a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php index 0e321a40e..e54c7f56b 100755 --- a/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php +++ b/packages/Webkul/Tax/src/Http/Controllers/TaxRateController.php @@ -282,6 +282,7 @@ class TaxRateController extends Controller } } } catch (\Exception $e) { + report($e); $failure = new Failure(1, 'rows', [0 => trans('admin::app.export.enough-row-error')]); session()->flash('error', $failure->errors()[0]); From bf53dd49f30f75c980e4e4f482601b49649df55e Mon Sep 17 00:00:00 2001 From: Florian Bosdorff Date: Mon, 27 Jan 2020 17:25:37 +0100 Subject: [PATCH 07/10] remove unused use statement --- packages/Webkul/Admin/src/Listeners/Order.php | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/Webkul/Admin/src/Listeners/Order.php b/packages/Webkul/Admin/src/Listeners/Order.php index 40392fbb7..5b8495589 100755 --- a/packages/Webkul/Admin/src/Listeners/Order.php +++ b/packages/Webkul/Admin/src/Listeners/Order.php @@ -2,7 +2,6 @@ namespace Webkul\Admin\Listeners; -use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Mail; use Webkul\Admin\Mail\NewOrderNotification; use Webkul\Admin\Mail\NewAdminNotification; From 469ed35ede6daeabf8091d2393e67b9add717a1f Mon Sep 17 00:00:00 2001 From: rahul shukla Date: Tue, 28 Jan 2020 10:55:00 +0530 Subject: [PATCH 08/10] Issue #2155 --- ...ame_column_in_customer_addresses_table.php | 36 +++++++++++++++++++ .../Http/Controllers/AddressController.php | 2 ++ .../Customer/src/Models/CustomerAddress.php | 10 +++++- 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 packages/Webkul/Customer/src/Database/Migrations/2020_01_28_102422_add_new_column_and_rename_name_column_in_customer_addresses_table.php diff --git a/packages/Webkul/Customer/src/Database/Migrations/2020_01_28_102422_add_new_column_and_rename_name_column_in_customer_addresses_table.php b/packages/Webkul/Customer/src/Database/Migrations/2020_01_28_102422_add_new_column_and_rename_name_column_in_customer_addresses_table.php new file mode 100644 index 000000000..21931d6f8 --- /dev/null +++ b/packages/Webkul/Customer/src/Database/Migrations/2020_01_28_102422_add_new_column_and_rename_name_column_in_customer_addresses_table.php @@ -0,0 +1,36 @@ +renameColumn('name', 'first_name')->nullable(); + }); + + Schema::table('customer_addresses', function (Blueprint $table) { + $table->string('last_name')->after('first_name')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('customer_addresses', function (Blueprint $table) { + // + }); + } +} diff --git a/packages/Webkul/Customer/src/Http/Controllers/AddressController.php b/packages/Webkul/Customer/src/Http/Controllers/AddressController.php index 63580b940..cde9cf9cf 100755 --- a/packages/Webkul/Customer/src/Http/Controllers/AddressController.php +++ b/packages/Webkul/Customer/src/Http/Controllers/AddressController.php @@ -86,6 +86,8 @@ class AddressController extends Controller ]); $cust_id['customer_id'] = $this->customer->id; + $cust_id['first_name'] = $this->customer->first_name; + $cust_id['last_name'] = $this->customer->last_name; $data = array_merge($cust_id, $data); if ($this->customer->addresses->count() == 0) { diff --git a/packages/Webkul/Customer/src/Models/CustomerAddress.php b/packages/Webkul/Customer/src/Models/CustomerAddress.php index f40fe6caa..88150c66f 100755 --- a/packages/Webkul/Customer/src/Models/CustomerAddress.php +++ b/packages/Webkul/Customer/src/Models/CustomerAddress.php @@ -8,5 +8,13 @@ class CustomerAddress extends Model implements CustomerAddressContract { protected $table = 'customer_addresses'; - protected $fillable = ['customer_id' ,'address1', 'country', 'state', 'city', 'postcode', 'phone', 'default_address']; + protected $fillable = ['customer_id' ,'address1', 'country', 'state', 'city', 'postcode', 'phone', 'default_address', 'first_name', 'last_name']; + + /** + * Get the customer full name. + */ + public function getNameAttribute() + { + return $this->first_name . ' ' . $this->last_name; + } } From e3e7c47b15247b2adccce580202b5bccf2c31d9d Mon Sep 17 00:00:00 2001 From: rahul shukla Date: Tue, 28 Jan 2020 10:57:17 +0530 Subject: [PATCH 09/10] updated comment --- packages/Webkul/Customer/src/Models/CustomerAddress.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/Webkul/Customer/src/Models/CustomerAddress.php b/packages/Webkul/Customer/src/Models/CustomerAddress.php index 88150c66f..5e0935ea5 100755 --- a/packages/Webkul/Customer/src/Models/CustomerAddress.php +++ b/packages/Webkul/Customer/src/Models/CustomerAddress.php @@ -11,7 +11,7 @@ class CustomerAddress extends Model implements CustomerAddressContract protected $fillable = ['customer_id' ,'address1', 'country', 'state', 'city', 'postcode', 'phone', 'default_address', 'first_name', 'last_name']; /** - * Get the customer full name. + * Get the customer address full name. */ public function getNameAttribute() { From 905bbeb4a81044ceac9c5865e087d39714951771 Mon Sep 17 00:00:00 2001 From: rahul shukla Date: Tue, 28 Jan 2020 11:32:26 +0530 Subject: [PATCH 10/10] test case changes --- .../Customer/src/Database/Factories/CustomerAddressFactory.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/Webkul/Customer/src/Database/Factories/CustomerAddressFactory.php b/packages/Webkul/Customer/src/Database/Factories/CustomerAddressFactory.php index 37a59c419..92d80bd15 100644 --- a/packages/Webkul/Customer/src/Database/Factories/CustomerAddressFactory.php +++ b/packages/Webkul/Customer/src/Database/Factories/CustomerAddressFactory.php @@ -11,7 +11,8 @@ $factory->define(CustomerAddress::class, function (Faker $faker) { 'customer_id' => function () { return factory(Customer::class)->create()->id; }, - 'name' => $faker->name, + 'first_name' => $faker->firstName, + 'last_name' => $faker->lastName, 'address1' => $faker->streetAddress, 'country' => $faker->countryCode, 'state' => $faker->state,