#786 register email is optional && phone mask

This commit is contained in:
vedatakd 2020-01-31 18:58:21 +03:00
parent d6607ab901
commit c848f974df
5 changed files with 27 additions and 13 deletions

View File

@ -19,6 +19,10 @@
width: 100%; width: 100%;
} }
.register-phone .iti--allow-dropdown {
width: 100%;
}
@media only screen and (min-width: 960px) { @media only screen and (min-width: 960px) {
.login-section, .login-section,
.register-section { .register-section {

View File

@ -18,7 +18,7 @@
</label> </label>
<div class="input-wrapper"> <div class="input-wrapper">
{{ form.fields.first_name.input|raw }} {{ form.fields.first_name.setPlaceholder(trans('visiosoft.theme.base::field.first_name')).input|raw }}
{{ form.fields.username.setValue(random()).setAttributes({ {{ form.fields.username.setValue(random()).setAttributes({
'class' :'hidden', 'class' :'hidden',
}).input|raw }} }).input|raw }}
@ -33,19 +33,19 @@
</label> </label>
<div class="input-wrapper"> <div class="input-wrapper">
{{ form.fields.last_name.input|raw }} {{ form.fields.last_name.setPlaceholder(trans('visiosoft.theme.base::field.last_name')).input|raw }}
</div> </div>
</div> </div>
</div> </div>
<div class="col-12"> <div class="col-12">
<div class="form-group email-field email-field_type"> <div class="form-group email-field phone-field_type register-phone">
<label class="control-label"> <label class="control-label">
{{ trans('visiosoft.theme.base::field.phone_number') }} {{ trans('visiosoft.theme.base::field.phone_number') }}
<span class="required">*</span> <span class="required">*</span>
</label> </label>
<div class="input-wrapper"> <div class="input-wrapper">
{{ form.fields.phone.input|raw }} {{ form.fields.phone.setValue(form.fields.full_phone.value).input|raw }}
</div> </div>
</div> </div>
</div> </div>
@ -58,12 +58,16 @@
</label> </label>
<div class="input-wrapper"> <div class="input-wrapper">
{{ form.fields.email.input|raw }} {{ form.fields.email.setPlaceholder(trans('visiosoft.theme.base::field.email')).input|raw }}
</div> </div>
</div> </div>
</div> </div>
{% else %} {% else %}
{{ form.fields.email.setValue(random()~"@example.com").setAttributes({ {% set domain = config('app.url')|replace({ ('https://'): '',('http://'): '',('/'): '/' }) %}
{% if domain == "localhost" %}
{% set domain = "example.com" %}
{% endif %}
{{ form.fields.email.setValue(random()~"@"~domain).setAttributes({
'class' :'hidden', 'class' :'hidden',
}).input|raw }} }).input|raw }}
{% endif %} {% endif %}
@ -75,7 +79,7 @@
</label> </label>
<div class="input-wrapper"> <div class="input-wrapper">
{{ form.fields.password.input|raw }} {{ form.fields.password.setPlaceholder(trans('visiosoft.theme.base::field.password')).input|raw }}
</div> </div>
</div> </div>
</div> </div>

View File

@ -41,6 +41,9 @@ class Register2FormBuilder extends FormBuilder
'username' => [ 'username' => [
'required' => true, 'required' => true,
], ],
'full_phone' => [
'type' => 'anomaly.field_type.text',
],
'first_name' => [ 'first_name' => [
'instructions' => false, 'instructions' => false,
'required' => true, 'required' => true,

View File

@ -41,6 +41,7 @@ class Register2FormHandler
return; return;
} }
$profile_parameters = array(); $profile_parameters = array();
/* Create Profile in Register */ /* Create Profile in Register */
@ -50,13 +51,15 @@ class Register2FormHandler
$domain = str_replace('/', '', $domain); $domain = str_replace('/', '', $domain);
$domain = str_replace('www', '', $domain); $domain = str_replace('www', '', $domain);
$profile_parameters['gsm_phone'] = $builder->getPostValue('phone'); $profile_parameters['gsm_phone'] = $builder->getPostValue('full_phone');
if (!setting_value('visiosoft.module.advs::register_email_field')) { if (!setting_value('visiosoft.module.advs::register_email_field')) {
$builder->setFormValue('email', $builder->getPostValue('username') . "@" . $domain); $builder->setFormValue('email', $builder->getPostValue('username') . "@" . $domain);
} }
$fields = $builder->getPostData(); $fields = $builder->getPostData();
$fields['display_name'] = $fields['first_name'] . " " . $fields['last_name'];
unset($fields['phone']); unset($fields['phone']);
unset($fields['full_phone']);
$register = $users->create($fields); $register = $users->create($fields);

View File

@ -7,11 +7,11 @@ class ValidateRegister
{ {
public function handle(FormBuilder $builder, ProfileRepositoryInterface $profileRepository, $attribute, $value) public function handle(FormBuilder $builder, ProfileRepositoryInterface $profileRepository, $attribute, $value)
{ {
if (!is_numeric($builder->getPostValue('phone'))) { if (!is_numeric($builder->getPostValue('full_phone'))) {
$builder->addFormError('phone', trans('visiosoft.module.profile::message.error_valid_phone')); $builder->addFormError('full_phone', trans('visiosoft.module.profile::message.error_valid_phone'));
return false; return false;
} elseif (!is_null($profileRepository->findPhoneNumber($builder->getPostValue('phone')))) { } elseif (!is_null($profileRepository->findPhoneNumber($builder->getPostValue('full_phone')))) {
$builder->addFormError('phone', trans('visiosoft.module.profile::message.registered_phone')); $builder->addFormError('full_phone', trans('visiosoft.module.profile::message.registered_phone'));
return false; return false;
} }
return true; return true;