From ac145fe565c1153eeec66ed963c4aebca014f987 Mon Sep 17 00:00:00 2001 From: Manish Verma Date: Tue, 7 Aug 2018 14:16:14 +0530 Subject: [PATCH] Updates Fixed CLI installer Fixed First user detail seeder --- app/Console/Commands/Install.php | 26 ++---- .../Auth/ForgotPasswordController.php | 89 +++++++++++++++++++ app/Http/Controllers/Auth/LoginController.php | 38 ++++++++ .../Controllers/Auth/PasswordController.php | 2 +- .../Controllers/Auth/RegisterController.php | 72 +++++++++++++++ .../Auth/ResetPasswordController.php | 45 ++++++++++ database/seeds/DatabaseSeeder.php | 1 + database/seeds/UserSeeder.php | 31 +++++++ vendor/composer/autoload_classmap.php | 5 +- vendor/composer/autoload_static.php | 5 +- 10 files changed, 291 insertions(+), 23 deletions(-) create mode 100644 app/Http/Controllers/Auth/ForgotPasswordController.php create mode 100644 app/Http/Controllers/Auth/LoginController.php create mode 100644 app/Http/Controllers/Auth/RegisterController.php create mode 100644 app/Http/Controllers/Auth/ResetPasswordController.php create mode 100644 database/seeds/UserSeeder.php diff --git a/app/Console/Commands/Install.php b/app/Console/Commands/Install.php index 579a4f57d..422def496 100644 --- a/app/Console/Commands/Install.php +++ b/app/Console/Commands/Install.php @@ -44,8 +44,8 @@ class Install extends Command $this->appEnv(); if ($this->confirm('Do you want to intall faveo?')) { $default = $this->choice( - 'Which sql engine would you like to use?', ['mysql'] - ); + 'Which sql engine would you like to use?', ['mysql'] + ); $host = $this->ask('Enter your sql host'); $database = $this->ask('Enter your database name'); $dbusername = $this->ask('Enter your database username'); @@ -66,20 +66,10 @@ class Install extends Command public function appEnv() { $extensions = [ - 'curl', - 'ctype', - 'imap', - 'mbstring', - 'mcrypt', - 'mysql', - 'openssl', - 'tokenizer', - 'zip', - 'pdo', - 'mysqli', - 'bcmath', - 'iconv', - //'ioncube_loader_dar_5.6', + 'curl', 'ctype', 'imap', 'mbstring', + 'openssl', 'tokenizer', 'zip', + 'pdo', 'mysqli', 'bcmath', 'iconv', + 'XML', 'json', 'fileinfo', ]; $result = []; foreach ($extensions as $key => $extension) { @@ -91,10 +81,10 @@ class Install extends Command } } $result['php']['extension'] = 'PHP'; - if (phpversion() === 7.0) { + if (phpversion() >= 7.1) { $result['php']['status'] = 'PHP version supports'; } else { - $result['php']['status'] = "PHP version doesn't supports please upgrade to 7.0"; + $result['php']['status'] = "PHP version doesn't supports please upgrade to 7.1+"; } $headers = ['Extension', 'Status']; diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php new file mode 100644 index 000000000..abfca9070 --- /dev/null +++ b/app/Http/Controllers/Auth/ForgotPasswordController.php @@ -0,0 +1,89 @@ +middleware('guest'); + $this->PhpMailController = $PhpMailController; + } + + /** + * Send a reset link to the given user. + * + * @param \Illuminate\Http\Request $request + * + * @return \Illuminate\Http\RedirectResponse + */ + public function sendResetLinkEmail(Request $request) + { + try { + $date = date('Y-m-d H:i:s'); + $this->validate($request, ['email' => 'required']); + \Event::fire('reset.password', []); + $user = User::where('email', '=', $request->all('email'))->orWhere('mobile', '=', $request->all('email'))->first(); + if (isset($user)) { + $user1 = $user->email; + //gen new code and pass + $code = str_random(60); + $password_reset_table = \DB::table('password_resets')->where('email', '=', $user->email)->first(); + if (isset($password_reset_table)) { + $password_reset_table = \DB::table('password_resets')->where('email', '=', $user->email)->update(['token' => $code, 'created_at' => $date]); + // $password_reset_table->token = $code; + // $password_reset_table->update(['token' => $code]); + } else { + $create_password_reset = \DB::table('password_resets')->insert(['email' => $user->email, 'token' => $code, 'created_at' => $date]); + } + $this->PhpMailController->sendmail($from = $this->PhpMailController->mailfrom('1', '0'), $to = ['name' => $user->user_name, 'email' => $user->email], $message = ['subject' => 'Your Password Reset Link', 'scenario' => 'reset-password'], $template_variables = ['user' => $user->first_name, 'email_address' => $user->email, 'password_reset_link' => url('password/reset/'.$code)], true); + if ($user->mobile != '' && $user->mobile != null) { + if ($user->first_name) { + $name = $user->first_name; + } else { + $name = $user->user_name; + } + $value = [ + 'url' => url('password/reset/'.$code), + 'name' => $name, + 'mobile' => $user->mobile, + 'code' => $user->country_code, ]; + \Event::fire('reset.password2', [$value]); + } + + return redirect()->back()->with('status', Lang::get('lang.we_have_e-mailed_your_password_reset_link')); + } else { + return redirect()->back()->with('fails', Lang::get("lang.we_can't_find_a_user_with_that_e-mail_address")); + } + } catch (\Exception $e) { + dd($e); + + return redirect()->back()->with('fails', $e->getMessage()); + } + } +} diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php new file mode 100644 index 000000000..b4330f2d5 --- /dev/null +++ b/app/Http/Controllers/Auth/LoginController.php @@ -0,0 +1,38 @@ +middleware('guest', ['except' => 'logout']); + } +} diff --git a/app/Http/Controllers/Auth/PasswordController.php b/app/Http/Controllers/Auth/PasswordController.php index 02a211bf7..07d224371 100644 --- a/app/Http/Controllers/Auth/PasswordController.php +++ b/app/Http/Controllers/Auth/PasswordController.php @@ -54,7 +54,7 @@ class PasswordController extends Controller $date = date('Y-m-d H:i:s'); $this->validate($request, ['email' => 'required']); \Event::fire('reset.password', []); - $user = User::where('email', '=', $request->only('email'))->orWhere('mobile', '=', $request->only('email'))->first(); + $user = User::where('email', '=', $request->all('email'))->orWhere('mobile', '=', $request->all('email'))->first(); if (isset($user)) { $user1 = $user->email; //gen new code and pass diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php new file mode 100644 index 000000000..2a0639fae --- /dev/null +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -0,0 +1,72 @@ +middleware('guest'); + } + + /** + * Get a validator for an incoming registration request. + * + * @param array $data + * + * @return \Illuminate\Contracts\Validation\Validator + */ + protected function validator(array $data) + { + return Validator::make($data, [ + 'name' => 'required|max:255', + 'email' => 'required|email|max:255|unique:users', + 'password' => 'required|min:6|confirmed', + ]); + } + + /** + * Create a new user instance after a valid registration. + * + * @param array $data + * + * @return User + */ + protected function create(array $data) + { + return User::create([ + 'name' => $data['name'], + 'email' => $data['email'], + 'password' => bcrypt($data['password']), + ]); + } +} diff --git a/app/Http/Controllers/Auth/ResetPasswordController.php b/app/Http/Controllers/Auth/ResetPasswordController.php new file mode 100644 index 000000000..e327496b2 --- /dev/null +++ b/app/Http/Controllers/Auth/ResetPasswordController.php @@ -0,0 +1,45 @@ +middleware('guest'); + } + + public function showResetForm(Request $request, $token = null) + { + return view('auth.reset')->with( + ['token' => $token, 'email' => $request->email] + ); + } +} diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index 0fcb58623..bbd9ba365 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -2028,5 +2028,6 @@ class DatabaseSeeder extends Seeder Rating::create(['id' => '2', 'name' => 'Reply Rating', 'display_order' => '1', 'allow_modification' => '1', 'rating_scale' => '5', 'rating_area' => 'Comment Area']); Limit_Login::create(['id' => '1']); + $this->call(UserSeeder::class); } } diff --git a/database/seeds/UserSeeder.php b/database/seeds/UserSeeder.php new file mode 100644 index 000000000..5d63f508e --- /dev/null +++ b/database/seeds/UserSeeder.php @@ -0,0 +1,31 @@ + 'Demo', + 'last_name' => 'Admin', + 'email' => null, + 'user_name' => 'demo_admin', + 'password' => $password, + 'assign_group' => 1, + 'primary_dpt' => 1, + 'active' => 1, + 'role' => 'admin', + ]); + // checking if the user have been created + } +} diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php index 935125eba..5d2892cd9 100644 --- a/vendor/composer/autoload_classmap.php +++ b/vendor/composer/autoload_classmap.php @@ -377,7 +377,7 @@ return array( 'PHPUnit\\Util\\Configuration' => $vendorDir . '/phpunit/phpunit/src/Util/Configuration.php', 'PHPUnit\\Util\\ConfigurationGenerator' => $vendorDir . '/phpunit/phpunit/src/Util/ConfigurationGenerator.php', 'PHPUnit\\Util\\ErrorHandler' => $vendorDir . '/phpunit/phpunit/src/Util/ErrorHandler.php', - 'PHPUnit\\Util\\FileLoader' => $vendorDir . '/phpunit/phpunit/src/Util/FileLoader.php', + 'PHPUnit\\Util\\FileLoader' => $vendorDir . '/phpunit/phpunit/src/Util/Fileloader.php', 'PHPUnit\\Util\\Filesystem' => $vendorDir . '/phpunit/phpunit/src/Util/Filesystem.php', 'PHPUnit\\Util\\Filter' => $vendorDir . '/phpunit/phpunit/src/Util/Filter.php', 'PHPUnit\\Util\\Getopt' => $vendorDir . '/phpunit/phpunit/src/Util/Getopt.php', @@ -401,7 +401,7 @@ return array( 'PHPUnit\\Util\\TestDox\\XmlResultPrinter' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/XmlResultPrinter.php', 'PHPUnit\\Util\\TextTestListRenderer' => $vendorDir . '/phpunit/phpunit/src/Util/TextTestListRenderer.php', 'PHPUnit\\Util\\Type' => $vendorDir . '/phpunit/phpunit/src/Util/Type.php', - 'PHPUnit\\Util\\Xml' => $vendorDir . '/phpunit/phpunit/src/Util/Xml.php', + 'PHPUnit\\Util\\Xml' => $vendorDir . '/phpunit/phpunit/src/Util/XML.php', 'PHPUnit\\Util\\XmlTestListRenderer' => $vendorDir . '/phpunit/phpunit/src/Util/XmlTestListRenderer.php', 'PHPUnit_Framework_MockObject_MockObject' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/MockObject.php', 'PHP_Evaluator' => $vendorDir . '/dompdf/dompdf/include/php_evaluator.cls.php', @@ -776,5 +776,6 @@ return array( 'TheSeer\\Tokenizer\\TokenCollectionException' => $vendorDir . '/theseer/tokenizer/src/TokenCollectionException.php', 'TheSeer\\Tokenizer\\Tokenizer' => $vendorDir . '/theseer/tokenizer/src/Tokenizer.php', 'TheSeer\\Tokenizer\\XMLSerializer' => $vendorDir . '/theseer/tokenizer/src/XMLSerializer.php', + 'UserSeeder' => $baseDir . '/database/seeds/UserSeeder.php', 'Version1079table' => $baseDir . '/database/migrations/2016_06_28_141613_version1079table.php', ); diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index 6c59c3e5f..0598e94f5 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -1036,7 +1036,7 @@ class ComposerStaticInit598add4b9b35c76d3599603201ccdd6d 'PHPUnit\\Util\\Configuration' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/Configuration.php', 'PHPUnit\\Util\\ConfigurationGenerator' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/ConfigurationGenerator.php', 'PHPUnit\\Util\\ErrorHandler' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/ErrorHandler.php', - 'PHPUnit\\Util\\FileLoader' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/FileLoader.php', + 'PHPUnit\\Util\\FileLoader' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/Fileloader.php', 'PHPUnit\\Util\\Filesystem' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/Filesystem.php', 'PHPUnit\\Util\\Filter' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/Filter.php', 'PHPUnit\\Util\\Getopt' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/Getopt.php', @@ -1060,7 +1060,7 @@ class ComposerStaticInit598add4b9b35c76d3599603201ccdd6d 'PHPUnit\\Util\\TestDox\\XmlResultPrinter' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/TestDox/XmlResultPrinter.php', 'PHPUnit\\Util\\TextTestListRenderer' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/TextTestListRenderer.php', 'PHPUnit\\Util\\Type' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/Type.php', - 'PHPUnit\\Util\\Xml' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/Xml.php', + 'PHPUnit\\Util\\Xml' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/XML.php', 'PHPUnit\\Util\\XmlTestListRenderer' => __DIR__ . '/..' . '/phpunit/phpunit/src/Util/XmlTestListRenderer.php', 'PHPUnit_Framework_MockObject_MockObject' => __DIR__ . '/..' . '/phpunit/phpunit/src/Framework/MockObject/MockObject.php', 'PHP_Evaluator' => __DIR__ . '/..' . '/dompdf/dompdf/include/php_evaluator.cls.php', @@ -1435,6 +1435,7 @@ class ComposerStaticInit598add4b9b35c76d3599603201ccdd6d 'TheSeer\\Tokenizer\\TokenCollectionException' => __DIR__ . '/..' . '/theseer/tokenizer/src/TokenCollectionException.php', 'TheSeer\\Tokenizer\\Tokenizer' => __DIR__ . '/..' . '/theseer/tokenizer/src/Tokenizer.php', 'TheSeer\\Tokenizer\\XMLSerializer' => __DIR__ . '/..' . '/theseer/tokenizer/src/XMLSerializer.php', + 'UserSeeder' => __DIR__ . '/../..' . '/database/seeds/UserSeeder.php', 'Version1079table' => __DIR__ . '/../..' . '/database/migrations/2016_06_28_141613_version1079table.php', );