mirror of
https://github.com/openclassify/openclassify.git
synced 2026-01-11 18:01:10 -06:00
Form validation
This commit is contained in:
parent
9ddb6c7510
commit
8e53e7bccc
@ -109,12 +109,10 @@ return [
|
||||
|
||||
|
||||
/*Menu Button*/
|
||||
'menu_profile' => [
|
||||
'profile' => [
|
||||
'name' => 'Profile'
|
||||
],
|
||||
'menu_balance' => [
|
||||
'name' => 'Balance'
|
||||
],
|
||||
|
||||
'create' => [
|
||||
'name' => 'Create'
|
||||
],
|
||||
@ -365,8 +363,8 @@ return [
|
||||
'corporate_settings' => [
|
||||
'name' => 'Corporate Settings',
|
||||
],
|
||||
'change_password' => [
|
||||
'name' => 'Change password',
|
||||
'password' => [
|
||||
'name' => 'Password',
|
||||
],
|
||||
'new_password' => [
|
||||
'name' => 'New password',
|
||||
@ -424,6 +422,8 @@ return [
|
||||
'name' => 'corporate',
|
||||
],
|
||||
|
||||
|
||||
'details' => [
|
||||
'name' => 'Details'
|
||||
],
|
||||
|
||||
];
|
||||
|
||||
@ -19,4 +19,7 @@ return [
|
||||
"required_add"=> "Please fill in all required lines.",
|
||||
"no_extend_package" => "No Extend Ad Packages",
|
||||
"saved" => "Saved!",
|
||||
'please_confirm_transaction' => 'Please Confirm Transaction',
|
||||
'password_do_not_match' => 'Passwords do not match',
|
||||
'your_password_changed' => 'Your password was successfully updated',
|
||||
];
|
||||
|
||||
@ -65,42 +65,10 @@ class MyProfileController extends PublicController
|
||||
$advRepository->delete_empty_advs();
|
||||
|
||||
$menu_fields = array();
|
||||
|
||||
$isActive = new AdvModel();
|
||||
$isActiveMessages = $isActive->is_enabled('messages');
|
||||
$isActivePackages = $isActive->is_enabled('packages');
|
||||
|
||||
|
||||
if ($isActiveMessages) {
|
||||
|
||||
$myMessages = new MessageModel();
|
||||
$myMessages = $myMessages->listMessages();
|
||||
$message_count = count($myMessages);
|
||||
|
||||
$menu_messages = array();
|
||||
$menu_messages['href'] = "msg";
|
||||
$menu_messages['aria-controls'] = "msg";
|
||||
$menu_messages['title'] = trans('visiosoft.module.profile::field.menu_messages.name');
|
||||
$menu_fields[] = $menu_messages;
|
||||
}
|
||||
|
||||
|
||||
$advs_count = new AdvModel();
|
||||
$advs_count = count($advs_count->myAdvsByUser()->get());
|
||||
|
||||
|
||||
if ($isActivePackages) {
|
||||
$packageModel = new PackageModel();
|
||||
$my_packages = $packageModel->getPackageByLoggedInUser();
|
||||
$menu_packages = array();
|
||||
$menu_packages['href'] = "packages";
|
||||
$menu_packages['aria-controls'] = "packages";
|
||||
$menu_packages['title'] = trans('visiosoft.module.profile::field.menu_packages.name');
|
||||
$menu_fields[] = $menu_packages;
|
||||
}
|
||||
|
||||
$profileModel = new ProfileModel();
|
||||
$adressModel = new AdressModel();
|
||||
|
||||
$users = UsersUsersEntryModel::find(Auth::id());
|
||||
$profiles = $profileModel->getProfile(Auth::id())->orderBy("id")->first();
|
||||
|
||||
@ -0,0 +1,34 @@
|
||||
<?php namespace Visiosoft\ProfileModule\Profile\Password;
|
||||
|
||||
use Anomaly\Streams\Platform\Ui\Form\FormBuilder;
|
||||
use Anomaly\UsersModule\User\UserModel;
|
||||
|
||||
|
||||
class PasswordFormBuilder extends FormBuilder
|
||||
{
|
||||
protected $fields = [
|
||||
'new_password' => [
|
||||
'type' => 'anomaly.field_type.text',
|
||||
'required' => true,
|
||||
'config' => [
|
||||
'type' => 'password'
|
||||
],
|
||||
],
|
||||
're_new_password' => [
|
||||
'type' => 'anomaly.field_type.text',
|
||||
'required' => true,
|
||||
'config' => [
|
||||
'type' => 'password'
|
||||
],
|
||||
],
|
||||
'confirm_password' => [
|
||||
'type' => 'anomaly.field_type.boolean',
|
||||
],
|
||||
];
|
||||
|
||||
protected $actions = [
|
||||
'update' => [
|
||||
'text' => 'visiosoft.module.profile::button.update_password'
|
||||
],
|
||||
];
|
||||
}
|
||||
@ -0,0 +1,50 @@
|
||||
<?php namespace Visiosoft\ProfileModule\Profile\Password;
|
||||
|
||||
use Anomaly\Streams\Platform\Message\MessageBag;
|
||||
use Anomaly\UsersModule\User\UserModel;
|
||||
use Anomaly\UsersModule\User\UserPassword;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class PasswordFormHandler
|
||||
{
|
||||
public function handle(
|
||||
PasswordFormBuilder $builder,
|
||||
MessageBag $messages,
|
||||
UserModel $userModel,
|
||||
UserPassword $userPassword
|
||||
|
||||
)
|
||||
{
|
||||
$errorList = array();
|
||||
|
||||
if (!$builder->canSave()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!$builder->getPostValue('confirm_password')) {
|
||||
$messages->error(trans('visiosoft.module.profile::message.please_confirm_transaction'));
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
if ($builder->getPostValue('new_password') != $builder->getPostValue('re_new_password')) {
|
||||
$messages->error(trans('visiosoft.module.profile::message.password_do_not_match'));
|
||||
return redirect()->back();
|
||||
}
|
||||
$validator = $userPassword->validate($builder->getPostValue('new_password'));
|
||||
foreach ($validator->errors()->all() as $error) {
|
||||
$errorList[] = $error;
|
||||
}
|
||||
|
||||
if (count($errorList) != 0) {
|
||||
$messages->error($errorList);
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
$userModel->find(Auth::id())
|
||||
->update([
|
||||
'password' => Hash::make($builder->getPostValue('new_password'))
|
||||
]);
|
||||
$messages->success(trans('visiosoft.module.profile::message.your_password_changed'));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,27 @@
|
||||
<?php namespace Visiosoft\ProfileModule\Profile\Profile;
|
||||
|
||||
use Anomaly\Streams\Platform\Ui\Form\FormBuilder;
|
||||
use Visiosoft\ProfileModule\Profile\ProfileModel;
|
||||
|
||||
|
||||
class ProfileFormBuilder extends FormBuilder
|
||||
{
|
||||
|
||||
protected $model = ProfileModel::class;
|
||||
|
||||
protected $fields = [
|
||||
'file',
|
||||
'gsm_phone',
|
||||
'office_phone',
|
||||
'land_phone',
|
||||
'adv_listing_banner',
|
||||
'identification_number',
|
||||
'register_type'
|
||||
];
|
||||
|
||||
protected $actions = [
|
||||
'update' => [
|
||||
'text' => 'visiosoft.module.profile::button.update_profile'
|
||||
],
|
||||
];
|
||||
}
|
||||
@ -0,0 +1,37 @@
|
||||
<?php namespace Visiosoft\ProfileModule\Profile\Profile;
|
||||
|
||||
use Anomaly\Streams\Platform\Message\MessageBag;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Visiosoft\ProfileModule\Profile\ProfileModel;
|
||||
|
||||
class ProfileFormHandler
|
||||
{
|
||||
public function handle(
|
||||
ProfileFormBuilder $builder,
|
||||
MessageBag $messages,
|
||||
ProfileModel $profileModel
|
||||
)
|
||||
{
|
||||
if (!$builder->canSave()) {
|
||||
return;
|
||||
}
|
||||
|
||||
$parameters = [
|
||||
'gsm_phone' => $builder->getPostValue('gsm_phone'),
|
||||
'office_phone' => $builder->getPostValue('office_phone'),
|
||||
'land_phone' => $builder->getPostValue('land_phone'),
|
||||
'identification_number' => $builder->getPostValue('identification_number'),
|
||||
'register_type' => $builder->getPostValue('register_type'),
|
||||
'adv_listing_banner_id' => $builder->getPostValue('adv_listing_banner'),
|
||||
];
|
||||
|
||||
if ($builder->getPostValue('file') != null)
|
||||
$parameters['file_id'] = $builder->getPostValue('file');
|
||||
|
||||
|
||||
$profileModel->where('user_no_id', Auth::id())
|
||||
->update($parameters);
|
||||
|
||||
$messages->success(trans('visiosoft.module.profile::message.success_update'));
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user