From 4e8f1ea9a4cfb17746fe6806ddddb0630b372c2d Mon Sep 17 00:00:00 2001 From: Diatrex Date: Tue, 17 Mar 2020 16:34:46 +0300 Subject: [PATCH] #931 Forget Password Design and SMS --- .../base-theme/resources/css/forgot.css | 25 ++++++++ .../resources/images/forgot-password.png | Bin 0 -> 8856 bytes .../base-theme/resources/lang/en/field.php | 3 + .../anomaly/users-module/password/forgot.twig | 31 ++++++---- .../anomaly/users-module/password/reset.twig | 58 ++++++------------ .../resources/lang/en/message.php | 3 + .../Password/ForgotPassFormBuilder.php | 47 ++++++++++++++ .../Profile/Password/ForgotPassFormFields.php | 32 ++++++++++ .../Password/ForgotPassFormHandler.php | 44 +++++++++++++ .../src/Profile/Validation/ValidateEmail.php | 30 +++++++++ .../src/ProfileModuleServiceProvider.php | 2 + 11 files changed, 223 insertions(+), 52 deletions(-) create mode 100644 addons/default/visiosoft/base-theme/resources/css/forgot.css create mode 100644 addons/default/visiosoft/base-theme/resources/images/forgot-password.png create mode 100644 addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormBuilder.php create mode 100644 addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormFields.php create mode 100644 addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormHandler.php create mode 100644 addons/default/visiosoft/profile-module/src/Profile/Validation/ValidateEmail.php diff --git a/addons/default/visiosoft/base-theme/resources/css/forgot.css b/addons/default/visiosoft/base-theme/resources/css/forgot.css new file mode 100644 index 000000000..0e8bf74df --- /dev/null +++ b/addons/default/visiosoft/base-theme/resources/css/forgot.css @@ -0,0 +1,25 @@ +@media only screen and (min-width: 768px) { + .forgot-wrapper { + padding-top: 4em; + padding-bottom: 4em; + padding-left: 4.25em; + border: 1px solid #dee2e6!important; + } +} +@media only screen and (min-width: 768px) { + .forgot-form-wrapper { + width: 20em !important; + } +} +.forgot-img { + height: 11em; + width: 10em; +} +.forgot-wrapper label { + font-size: 14px; +} +@media only screen and (min-width: 768px) { + .forgot-form-wrapper button { + width: initial !important; + } +} \ No newline at end of file diff --git a/addons/default/visiosoft/base-theme/resources/images/forgot-password.png b/addons/default/visiosoft/base-theme/resources/images/forgot-password.png new file mode 100644 index 0000000000000000000000000000000000000000..a68d244ee6eb1ae3d7cb820653d31b1f3dcbc4e2 GIT binary patch literal 8856 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 literal 0 HcmV?d00001 diff --git a/addons/default/visiosoft/base-theme/resources/lang/en/field.php b/addons/default/visiosoft/base-theme/resources/lang/en/field.php index 4e1fb6920..4ff406659 100644 --- a/addons/default/visiosoft/base-theme/resources/lang/en/field.php +++ b/addons/default/visiosoft/base-theme/resources/lang/en/field.php @@ -30,4 +30,7 @@ return [ 'personal_registration_list_2' => 'Add the ads you are interested in, follow the price changes after adding them to your favorites, create favorite searches that meet your criteria,', 'personal_registration_list_3' => 'Send messages to the ad owners on the site.', 'register_information_note' => 'The information on this page is taken for ' . env('APPLICATION_DOMAIN') . ' membership. You can find detailed information about the protection of personal data here.', + + // Forgot Password + 'create_new_password' => 'Create New Password', ]; \ No newline at end of file diff --git a/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/forgot.twig b/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/forgot.twig index 32d4d28eb..b6735ed2e 100644 --- a/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/forgot.twig +++ b/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/forgot.twig @@ -1,21 +1,27 @@ {% extends "theme::layouts/default" %} {% block content %} -
-
- {% set form = form('forgot_password').redirect(request_get('redirect', '/')) +
+
+ forgot password icon +
+ +
+ {% set form = form('forgot_pass').redirect(request_get('redirect', '/')) .get() %} {{ form_open({ - 'class': 'row form ' ~ form.options.class , + 'class': 'form ' ~ form.options.class , 'url':form.options.url })|raw }} - -
-

{{ trans('visiosoft.theme.base::field.forgot_password') }}

-
+ {{ asset_add('styles.css', 'visiosoft.theme.base::css/forgot.css') }} {% endblock %} \ No newline at end of file diff --git a/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/reset.twig b/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/reset.twig index 0e7a28d3a..8e18a54fe 100644 --- a/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/reset.twig +++ b/addons/default/visiosoft/base-theme/resources/views/addons/anomaly/users-module/password/reset.twig @@ -1,44 +1,24 @@ {% extends "theme::layouts/default" %} {% block content %} -
-
+
+
+ forgot password icon +
+ +
{% set form = form('reset_password').redirect(request_get('redirect', '/')) .get() %} {{ form_open({ - 'class': 'row form ' ~ form.options.class , + 'class': 'form ' ~ form.options.class , 'url':form.options.url })|raw }} - -
-

{{ trans('visiosoft.theme.base::button.reset_password') }}

- -
-
- -
-
-
+ {{ asset_add('styles.css', 'visiosoft.theme.base::css/forgot.css') }} {% endblock %} \ No newline at end of file diff --git a/addons/default/visiosoft/profile-module/resources/lang/en/message.php b/addons/default/visiosoft/profile-module/resources/lang/en/message.php index 807baad52..e1d77c19c 100644 --- a/addons/default/visiosoft/profile-module/resources/lang/en/message.php +++ b/addons/default/visiosoft/profile-module/resources/lang/en/message.php @@ -27,4 +27,7 @@ return [ 'registered_phone' => 'This phone number has already been registered.', 'ajax_address_error' => 'No address or not authorized to view.', 'empty_password_sms_message' => 'Due to security issues, we changed your password! Your new password is:', + + // Forgot Password + 'email_phone_not_found' => 'The E-mail, Phone Number is not correct!' ]; diff --git a/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormBuilder.php b/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormBuilder.php new file mode 100644 index 000000000..1b8acb68e --- /dev/null +++ b/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormBuilder.php @@ -0,0 +1,47 @@ + '/', + 'success_message' => 'anomaly.module.users::message.confirm_reset_password', + ]; + + public function getUser() + { + return $this->user; + } + + public function setUser(UserInterface $user) + { + $this->user = $user; + + return $this; + } +} \ No newline at end of file diff --git a/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormFields.php b/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormFields.php new file mode 100644 index 000000000..cd58be779 --- /dev/null +++ b/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormFields.php @@ -0,0 +1,32 @@ +setFields( + [ + 'email' => [ + 'type' => 'anomaly.field_type.text', + 'label' => 'anomaly.module.users::field.email.name', + 'required' => true, + 'rules' => [ + 'valid_email', + ], + 'validators' => [ + 'valid_email' => [ + 'handler' => 'Visiosoft\ProfileModule\Profile\Validation\ValidateEmail@handle', + 'message' => 'visiosoft.module.profile::message.email_phone_not_found', + ], + ], + ], + ] + ); + } +} diff --git a/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormHandler.php b/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormHandler.php new file mode 100644 index 000000000..ec8eb11ed --- /dev/null +++ b/addons/default/visiosoft/profile-module/src/Profile/Password/ForgotPassFormHandler.php @@ -0,0 +1,44 @@ +hasFormErrors()) { + return; + } + + if (!$user = $builder->getUser()) { + return; + } + + if ($path = $builder->getFormOption('reset_path')) { + $config->set('anomaly.module.users::paths.reset', $path); + } + + $password->forgot($user); + $password->send($user, $builder->getFormOption('reset_redirect')); + + $messages->success($builder->getFormOption('success_message')); + } +} diff --git a/addons/default/visiosoft/profile-module/src/Profile/Validation/ValidateEmail.php b/addons/default/visiosoft/profile-module/src/Profile/Validation/ValidateEmail.php new file mode 100644 index 000000000..09ab91bd4 --- /dev/null +++ b/addons/default/visiosoft/profile-module/src/Profile/Validation/ValidateEmail.php @@ -0,0 +1,30 @@ +newQuery() + ->where('gsm_phone', 'LIKE', "%$possiblePhone")->first()) { + $value = $user->email; + } + } + + if (!$response = $users->findByEmail($value)) { + return false; + } + + $builder->setUser($response); + + return true; + } +} \ No newline at end of file diff --git a/addons/default/visiosoft/profile-module/src/ProfileModuleServiceProvider.php b/addons/default/visiosoft/profile-module/src/ProfileModuleServiceProvider.php index 0430f036e..c36245a0c 100644 --- a/addons/default/visiosoft/profile-module/src/ProfileModuleServiceProvider.php +++ b/addons/default/visiosoft/profile-module/src/ProfileModuleServiceProvider.php @@ -6,6 +6,7 @@ use Visiosoft\ProfileModule\Adress\Contract\AdressRepositoryInterface; use Visiosoft\ProfileModule\Adress\AdressRepository; use Anomaly\Streams\Platform\Model\Profile\ProfileAdressEntryModel; use Visiosoft\ProfileModule\Adress\AdressModel; +use Visiosoft\ProfileModule\Profile\Password\ForgotPassFormBuilder; use Visiosoft\ProfileModule\Profile\Password\PasswordFormBuilder; use Visiosoft\ProfileModule\Profile\Profile\ProfileFormBuilder; use Illuminate\Routing\Router; @@ -194,6 +195,7 @@ class ProfileModuleServiceProvider extends AddonServiceProvider AdressRepositoryInterface::class => AdressRepository::class, 'register2' => Register2FormBuilder::class, 'sites' => SitesFormBuilder::class, + 'forgot_pass' => ForgotPassFormBuilder::class, ]; /**