diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..a83887f --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,4 @@ +# These are supported funding model platforms + +github: [jeremykenedy] +patreon: jeremykenedy diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..5990d9c --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "weekly" diff --git a/.travis.yml b/.travis.yml index 95114a2..e378666 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,9 +4,8 @@ dist: trusty group: edge php: - - 7.1 - - 7.2 - 7.3 + - 7.4 sudo: false @@ -29,3 +28,5 @@ before_script: - php artisan ui vue --auth - composer dump-autoload - php artisan clear-compiled + +script: vendor/bin/phpunit diff --git a/LICENSE b/LICENSE index d818c73..a97280d 100755 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2017-2018 +Copyright (c) 2017-2020 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/composer.json b/composer.json index bd94c21..8e2cdd4 100755 --- a/composer.json +++ b/composer.json @@ -1,7 +1,12 @@ { "name": "jeremykenedy/laravel-users", "description": "Laravel Users Management CRUD Package", - "keywords": ["laravel", "users", "management", "CRUD"], + "keywords": [ + "laravel", + "users", + "management", + "CRUD" + ], "license": "MIT", "type": "package", "authors": [ @@ -11,8 +16,8 @@ } ], "require": { - "php": ">=7.1.3", - "laravelcollective/html": "^5.4|^5.5|^5.6|^5.7|^5.8|^6.0" + "php": "^7.2|^8.0|^8.1|^8.2|^8.3", + "laravellux/html": "^7.1" }, "autoload": { "psr-4": { @@ -24,12 +29,6 @@ "jeremykenedy\\laravelusers\\Test\\": "tests/" } }, - "require-dev": { - "illuminate/support": "^5.7", - "orchestra/testbench": "~3.0", - "phpunit/phpunit": "^7.0", - "laravel/laravel": "5.7.*" - }, "extra": { "laravel": { "providers": [ diff --git a/readme.md b/readme.md index 5c69bbd..0d3af5b 100755 --- a/readme.md +++ b/readme.md @@ -1,4 +1,8 @@ -# Laravel-Users | A Laravel Users CRUD Management [Package](https://packagist.org/packages/jeremykenedy/laravel-users) +![Laravel Users](https://github-project-images.s3-us-west-2.amazonaws.com/laravel-blocker/laravel-users-logo.png) + +# Laravel Users | A Laravel Users CRUD Management [Package](https://packagist.org/packages/jeremykenedy/laravel-users) +A Users Management CRUD [Package](https://packagist.org/packages/jeremykenedy/laravel-users) that includes all necessary routes, views, models, and controllers for a user management dashboard and associated pages for managing Laravels built in user scaffolding. +Easily start creating, updating, editing, and deleting users in minutes with minimal setup required; Easily search all users, helpful for large user bases. [![Latest Stable Version](https://poser.pugx.org/jeremykenedy/laravel-users/v/stable.svg)](https://packagist.org/packages/jeremykenedy/laravel-users) [![Total Downloads](https://poser.pugx.org/jeremykenedy/laravel-users/d/total.svg)](https://packagist.org/packages/jeremykenedy/laravel-users) @@ -14,6 +18,7 @@ - [About](#about) - [Features](#features) - [Requirements](#requirements) +- [Integrations](#integrations) - [Installation Instructions](#installation-instructions) - [Configuration](#configuration) - [Routes](#routes) @@ -22,17 +27,6 @@ - [Opening an Issue](#opening-an-issue) - [License](#license) -### About -A Users Management CRUD [Package](https://packagist.org/packages/jeremykenedy/laravel-users) that includes all necessary routes, views, models, and controllers for a user management dashboard and associated pages for managing Laravels built in user scaffolding. -Easily start creating, updating, editing, and deleting users in minutes with minimal setup required; Easily search all users, helpful for large user bases. -Built for Laravel 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, and 6.0. This package is easily configurable and customizable. - -Laravel users can work out the box with or without the following roles packages: -* [jeremykenedy/laravel-roles](https://github.com/jeremykenedy/laravel-roles) -* [Zizaco/entrust](https://github.com/Zizaco/entrust) -* [romanbican/roles](https://github.com/romanbican/roles) -* [ultraware/roles](https://github.com/ultraware/roles) - ### Features | Laravel Users Features | | :------------ | @@ -47,12 +41,19 @@ Laravel users can work out the box with or without the following roles packages: ### Requirements -* [Laravel 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, and 6.0](https://laravel.com/docs/installation) +* [Laravel 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, 6, 7, or 8+](https://laravel.com/docs/installation) + +### Integrations +Laravel users can work out the box with or without the following roles packages: +* [jeremykenedy/laravel-roles](https://github.com/jeremykenedy/laravel-roles) +* [Zizaco/entrust](https://github.com/Zizaco/entrust) +* [romanbican/roles](https://github.com/romanbican/roles) +* [ultraware/roles](https://github.com/ultraware/roles) ### Installation Instructions 1. From your projects root folder in terminal run: - Laravel 5.6, 5.7, and 5.8+ use: + Laravel 5.6, 5.7, 5.8, 6, 7, and 8+ use: ``` composer require jeremykenedy/laravel-users @@ -82,7 +83,7 @@ Laravel users can work out the box with or without the following roles packages: ``` 2. Register Package -* Laravel 5.5, 5.6, and 5.7+ +* Laravel 5.5, 5.6, 5.7, 5.8, 6, 7, 8+ Uses package auto discovery feature, no need to edit the `config/app.php` file. * Laravel 5.4 and below @@ -297,7 +298,7 @@ laravel-users/ ### Opening an Issue Before opening an issue there are a couple of considerations: -* A **star** on this project shows support and is way to say thank you to all the contributors. If you open an issue without a star, *your issue may be closed without consideration.* Thank you for understanding and the support. You are all awesome! +* You are all awesome! * **Read the instructions** and make sure all steps were *followed correctly*. * **Check** that the issue is not *specific to your development environment* setup. * **Provide** *duplication steps*. @@ -310,4 +311,4 @@ Before opening an issue there are a couple of considerations: * Please be considerate that this is an open source project that I provide to the community for FREE when opening an issue. ### License -Laravel-Users | A Laravel Users Management Package is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT). Enjoy! +Laravel Users | A Laravel Users Management Package is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT). Enjoy! diff --git a/src/App/Http/Controllers/UsersManagementController.php b/src/App/Http/Controllers/UsersManagementController.php index b63b399..645da34 100755 --- a/src/App/Http/Controllers/UsersManagementController.php +++ b/src/App/Http/Controllers/UsersManagementController.php @@ -6,6 +6,7 @@ use Illuminate\Http\Request; use Illuminate\Http\Response; use Illuminate\Routing\Controller; +use Illuminate\Support\Facades\Hash; use Validator; class UsersManagementController extends Controller @@ -90,7 +91,7 @@ public function create() public function store(Request $request) { $rules = [ - 'name' => 'required|string|max:255|unique:users', + 'name' => 'required|string|max:255|unique:users|alpha_dash', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|string|confirmed|min:6', 'password_confirmation' => 'required|string|same:password', @@ -103,6 +104,7 @@ public function store(Request $request) $messages = [ 'name.unique' => trans('laravelusers::laravelusers.messages.userNameTaken'), 'name.required' => trans('laravelusers::laravelusers.messages.userNameRequired'), + 'name' => trans('laravelusers::laravelusers.messages.userNameInvalid'), 'email.required' => trans('laravelusers::laravelusers.messages.emailRequired'), 'email.email' => trans('laravelusers::laravelusers.messages.emailInvalid'), 'password.required' => trans('laravelusers::laravelusers.messages.passwordRequired'), @@ -118,9 +120,9 @@ public function store(Request $request) } $user = config('laravelusers.defaultUserModel')::create([ - 'name' => $request->input('name'), + 'name' => strip_tags($request->input('name')), 'email' => $request->input('email'), - 'password' => bcrypt($request->input('password')), + 'password' => Hash::make($request->input('password')), ]); if ($this->_rolesEnabled) { @@ -156,13 +158,13 @@ public function edit($id) { $user = config('laravelusers.defaultUserModel')::findOrFail($id); $roles = []; - $currentRole = ''; + $currentRole = []; if ($this->_rolesEnabled) { $roles = config('laravelusers.roleModel')::all(); foreach ($user->roles as $user_role) { - $currentRole = $user_role; + $currentRole[] = $user_role->id; } } @@ -216,14 +218,14 @@ public function update(Request $request, $id) return back()->withErrors($validator)->withInput(); } - $user->name = $request->input('name'); + $user->name = strip_tags($request->input('name')); if ($emailCheck) { $user->email = $request->input('email'); } if ($passwordCheck) { - $user->password = bcrypt($request->input('password')); + $user->password = Hash::make($request->input('password')); } if ($this->_rolesEnabled) { diff --git a/src/resources/lang/ar/app.php b/src/resources/lang/ar/app.php new file mode 100644 index 0000000..d04b08a --- /dev/null +++ b/src/resources/lang/ar/app.php @@ -0,0 +1,19 @@ + [ + 'toggle-nav-alt' => 'تبديل العرض', + 'login' => 'تسجيل الدخول', + 'register' => 'تسجيل حساب جديد', + 'users' => 'المستخدمين', + 'logout' => 'تسجيل الخروج', + ], + +]; diff --git a/src/resources/lang/ar/forms.php b/src/resources/lang/ar/forms.php new file mode 100644 index 0000000..0467524 --- /dev/null +++ b/src/resources/lang/ar/forms.php @@ -0,0 +1,96 @@ + 'البريد الإليكتروني', + 'create_user_ph_email' => 'البريد الإليكتروني', + 'create_user_icon_email' => 'fa-envelope', + + 'create_user_label_username' => 'اسم المستخدم', + 'create_user_ph_username' => 'اسم المستخدم', + 'create_user_icon_username' => 'fa-user', + + 'create_user_label_firstname' => 'الاسم الأول', + 'create_user_ph_firstname' => 'الاسم الأول', + 'create_user_icon_firstname' => 'fa-user', + + 'create_user_label_lastname' => 'الاسم الأخير', + 'create_user_ph_lastname' => 'الاسم الأخير', + 'create_user_icon_lastname' => 'fa-user', + + 'create_user_label_password' => 'كلمة المرور', + 'create_user_ph_password' => 'كلمة المرور', + 'create_user_icon_password' => 'fa-lock', + + 'create_user_label_pw_confirmation' => 'تأكيد كلمة المرور', + 'create_user_ph_pw_confirmation' => 'تأكيد كلمة المرور', + 'create_user_icon_pw_confirmation' => 'fa-lock', + + 'create_user_label_location' => 'مكان المستخدم', + 'create_user_ph_location' => 'مكان المستخدم', + 'create_user_icon_location' => 'fa-map-marker', + + 'create_user_label_bio' => 'نبذة عن المستخدم', + 'create_user_ph_bio' => 'نبذة عن المستخدم', + 'create_user_icon_bio' => 'fa-pencil', + + 'create_user_label_twitter_username' => 'حساب Twitter', + 'create_user_ph_twitter_username' => 'حساب Twitter', + 'create_user_icon_twitter_username' => 'fa-twitter', + + 'create_user_label_github_username' => 'حساب GitHub', + 'create_user_ph_github_username' => 'حساب GitHub', + 'create_user_icon_github_username' => 'fa-github', + + 'create_user_label_career_title' => 'يعمل لدي', + 'create_user_ph_career_title' => 'يعمل لدي', + 'create_user_icon_career_title' => 'fa-briefcase', + + 'create_user_label_education' => 'المؤهل الدراسي', + 'create_user_ph_education' => 'المؤهل الدراسي', + 'create_user_icon_education' => 'fa-graduation-cap', + + 'create_user_label_role' => 'دور المستخدم', + 'create_user_ph_role' => 'اختر دور المستخدم', + 'create_user_icon_role' => 'fas fa-fw fas fa-shield-alt', + + 'create_user_button_text' => ' اضافة مستخدم جديد', + + // EDIT USER AS ADMINISTRATOR FORM + 'edit-user-admin-title' => 'تعديل بيانات المستخدم', + + 'label-username' => 'اسم المستخدم', + 'ph-username' => 'اسم المستخدم', + + 'label-useremail' => 'البريد الإليكتروني', + 'ph-useremail' => 'البريد الإليكتروني', + + 'label-userrole_id' => 'مستوي صلاحيات المستخدم', + 'option-label' => 'اختر مستوي', + 'option-user' => 'مستخدم', + 'option-editor' => 'محرر', + 'option-admin' => 'مدير', + 'submit-btn-text' => 'تعديل المستخدم', + + 'submit-btn-icon' => 'fa-save', + 'username-icon' => 'fa-user', + 'useremail-icon' => 'fa-envelope-o', + + 'change-pw' => 'تغيير كلمة المرور', + 'cancel' => 'الغاء', + 'save-changes' => ' حفظ التغييرات', + + // Search Users Form + 'search-users-ph' => 'البحث عن المستخدمين', + +]; diff --git a/src/resources/lang/ar/laravelusers.php b/src/resources/lang/ar/laravelusers.php new file mode 100644 index 0000000..7a1c4c2 --- /dev/null +++ b/src/resources/lang/ar/laravelusers.php @@ -0,0 +1,89 @@ + 'عرض جميع المستخدمين', + 'users-menu-alt' => 'عرض قائمة ادارة المستخدمين', + 'create-new-user' => 'اضافة مستخدم جديد', + 'show-deleted-users' => 'عرض المستخدمين المحذوفين', + 'editing-user' => 'تعديل المستخدم :name', + 'showing-user' => 'عرض المستخدم :name', + 'showing-user-title' => 'بيانات المستخدم :name', + + 'users-table' => [ + 'caption' => '{1} :userscount مستخدم وجد|[2,*] :userscount اجمالي المستخدمين', + 'id' => 'الكود', + 'name' => 'الاسم', + 'email' => 'البريد الإليكتروني', + 'role' => 'الدور', + 'created' => 'تاريخ الاضافة', + 'updated' => 'تاريخ التعديل', + 'actions' => 'اجراءات', + 'updated' => 'تاريخ التعديل', + ], + + 'buttons' => [ + 'create-new' => '', + 'delete' => ' ', + 'show' => ' ', + 'edit' => ' ', + 'back-to-users' => '', + 'back-to-user' => 'المستخدم', + 'delete-user' => ' ', + 'edit-user' => ' ', + ], + + 'tooltips' => [ + 'delete' => 'حذف', + 'show' => 'عرض', + 'edit' => 'تعديل', + 'create-new' => 'اضافة مستخدم جديد', + 'back-user' => 'عرض المستخدم', + 'back-users' => 'عرض المستخدمين', + 'email-user' => 'مراسلة :user', + 'submit-search' => 'القيام بالبحث', + 'clear-search' => 'حذف نتائج البحث', + ], + + 'messages' => [ + 'userNameTaken' => 'اسم المستخدم غير متاح', + 'userNameRequired' => 'اسم المستخدم مطلوب', + 'fNameRequired' => 'الاسم الأول مطلوب', + 'lNameRequired' => 'الاسم الأخير مطلوب', + 'emailRequired' => 'البريد الإليكتروني مطلوب', + 'emailInvalid' => 'البريد الإليكتروني غير صحيح', + 'passwordRequired' => 'كلمة المرور مطلوبة', + 'PasswordMin' => 'كلمة المرور لابد ان تكون 6 حروف علي الأقل', + 'PasswordMax' => 'أقصي طول لكلمة المرور هو 20 حرف', + 'captchaRequire' => 'كلمة التحقق مطلوبة', + 'CaptchaWrong' => 'كلمة التحقق غير صحيحة، يرجي اعادة المحاولة.', + 'roleRequired' => 'برجاء اختيار دور المستخدم', + 'user-creation-success' => 'تمت اضافة المستخدم بنجاح!', + 'update-user-success' => 'تم تعديل المستخدم بنجاح!', + 'delete-success' => 'تم حذف المستخدم بنجاح!', + 'cannot-delete-yourself' => 'لا يمكن حذف حسابك الشخصي بنفسك!', + ], + + 'show-user' => [ + 'id' => 'كود المستخدم', + 'name' => 'اسم المستخدم', + 'email' => 'البريد', + 'role' => 'الدور', + 'created' => 'اضيف ', + 'updated' => 'عُدل ', + 'labelRole' => 'الدور', + 'labelAccessLevel' => 'صلاحيات|صلاحيات', + ], + + 'search' => [ + 'title' => 'عرض نتائج البحث', + 'found-footer' => ' سجل وُجد', + 'no-results' => 'لا يوجد سجلات مطابقة', + ], +]; diff --git a/src/resources/lang/ar/modals.php b/src/resources/lang/ar/modals.php new file mode 100644 index 0000000..3dc31bd --- /dev/null +++ b/src/resources/lang/ar/modals.php @@ -0,0 +1,31 @@ + 'تأكيد الحفظ', + 'confirm_modal_title_std_msg' => 'يرجي تأكيد طلبك.', + + // Confirm Save Modal; + 'confirm_modal_button_save_text' => 'حفظ التغييرات', + 'confirm_modal_button_save_icon' => 'fa-save', + 'confirm_modal_button_cancel_text' => 'الغاء', + 'confirm_modal_button_cancel_icon' => 'fa-times', + 'edit_user__modal_text_confirm_title' => 'تأكيد الحفظ', + 'edit_user__modal_text_confirm_message' => 'يرجي تأكيد التغييرات المطلوبة', + + // Delete Modal + 'delete_user_title' => 'حذف المستخدم', + 'delete_user_message' => 'هل ترغب فعلا في حذف المستخدم :user?', + 'delete_user_btn_cancel' => ' الغاء', + 'delete_user_btn_confirm' => ' حذف المستخدم', +]; diff --git a/src/resources/lang/de/app.php b/src/resources/lang/de/app.php new file mode 100644 index 0000000..1d5524d --- /dev/null +++ b/src/resources/lang/de/app.php @@ -0,0 +1,19 @@ + [ + 'toggle-nav-alt' => 'Navigation anzeigen/ausblenden', + 'login' => 'Login', + 'register' => 'Registrieren', + 'users' => 'Benutzer', + 'logout' => 'Logout', + ], + +]; diff --git a/src/resources/lang/de/forms.php b/src/resources/lang/de/forms.php new file mode 100644 index 0000000..aeb8df5 --- /dev/null +++ b/src/resources/lang/de/forms.php @@ -0,0 +1,96 @@ + 'E-Mail', + 'create_user_ph_email' => 'E-Mail', + 'create_user_icon_email' => 'fa-envelope', + + 'create_user_label_username' => 'Benutzername', + 'create_user_ph_username' => 'Benutzername', + 'create_user_icon_username' => 'fa-user', + + 'create_user_label_firstname' => 'Vorname', + 'create_user_ph_firstname' => 'Vorname', + 'create_user_icon_firstname' => 'fa-user', + + 'create_user_label_lastname' => 'Last Name', + 'create_user_ph_lastname' => 'Last Name', + 'create_user_icon_lastname' => 'fa-user', + + 'create_user_label_password' => 'Passwort', + 'create_user_ph_password' => 'Passwort', + 'create_user_icon_password' => 'fa-lock', + + 'create_user_label_pw_confirmation' => 'Passwort bestätigen', + 'create_user_ph_pw_confirmation' => 'Passwort bestätigen', + 'create_user_icon_pw_confirmation' => 'fa-lock', + + 'create_user_label_location' => 'Ort', + 'create_user_ph_location' => 'Ort', + 'create_user_icon_location' => 'fa-map-marker', + + 'create_user_label_bio' => 'Biographie', + 'create_user_ph_bio' => 'Biographie', + 'create_user_icon_bio' => 'fa-pencil', + + 'create_user_label_twitter_username' => 'Twitter Benutzername', + 'create_user_ph_twitter_username' => 'Twitter Benutzername', + 'create_user_icon_twitter_username' => 'fa-twitter', + + 'create_user_label_github_username' => 'GitHub Benutzername', + 'create_user_ph_github_username' => 'GitHub Benutzername', + 'create_user_icon_github_username' => 'fa-github', + + 'create_user_label_career_title' => 'Beruf', + 'create_user_ph_career_title' => 'Beruf', + 'create_user_icon_career_title' => 'fa-briefcase', + + 'create_user_label_education' => 'Schulabschluß', + 'create_user_ph_education' => 'Schulabschluß', + 'create_user_icon_education' => 'fa-graduation-cap', + + 'create_user_label_role' => 'Benutzerrolle', + 'create_user_ph_role' => 'Benutzerrolle auswählen', + 'create_user_icon_role' => 'fas fa-fw fas fa-shield-alt', + + 'create_user_button_text' => ' Neuen Benutzer anlegen', + + // EDIT USER AS ADMINISTRATOR FORM + 'edit-user-admin-title' => 'Benutzer bearbeiten', + + 'label-username' => 'Benutzername', + 'ph-username' => 'Benutzername', + + 'label-useremail' => 'E-Mail', + 'ph-useremail' => 'E-Mail', + + 'label-userrole_id' => 'Zugriffstufe', + 'option-label' => 'Stufe auswählen', + 'option-user' => 'User', + 'option-editor' => 'Editor', + 'option-admin' => 'Administrator', + 'submit-btn-text' => 'Benutzer bearbeiten!', + + 'submit-btn-icon' => 'fa-save', + 'username-icon' => 'fa-user', + 'useremail-icon' => 'fa-envelope-o', + + 'change-pw' => 'Passwort ändern', + 'cancel' => 'Abbruch', + 'save-changes' => ' Änderungen speichern', + + // Search Users Form + 'search-users-ph' => 'Benutzer durchsuchen', + +]; diff --git a/src/resources/lang/de/laravelusers.php b/src/resources/lang/de/laravelusers.php new file mode 100644 index 0000000..da72e0e --- /dev/null +++ b/src/resources/lang/de/laravelusers.php @@ -0,0 +1,88 @@ + 'Alle Benutzer', + 'users-menu-alt' => 'Benutzerverwaltung anzeigen', + 'create-new-user' => 'Neuen Benutzer anlegen', + 'show-deleted-users' => 'Gelöschte Benutzer anzeigen', + 'editing-user' => 'Bearbeite Benutzer :name', + 'showing-user' => 'Zeige Nutzer :name', + 'showing-user-title' => ':name\'s Information', + + 'users-table' => [ + 'caption' => '{1} :userscount Benutzer insgesamt|[2,*] :userscount Benutzer insgesamt', + 'id' => 'ID', + 'name' => 'Name', + 'email' => 'E-Mail', + 'role' => 'Rolle', + 'created' => 'Erstellt', + 'updated' => 'Aktualisiert', + 'actions' => 'Aktionen', + ], + + 'buttons' => [ + 'create-new' => '', + 'delete' => ' ', + 'show' => ' ', + 'edit' => ' ', + 'back-to-users' => '', + 'back-to-user' => 'Zurück zum ', + 'delete-user' => ' ', + 'edit-user' => ' ', + ], + + 'tooltips' => [ + 'delete' => 'Löschen', + 'show' => 'Anzeigen', + 'edit' => 'Bearbeiten', + 'create-new' => 'Neuen Benutzer anlegen', + 'back-user' => 'Zurück zum Benutzer', + 'back-users' => 'Zurück zur Benutzerliste', + 'email-user' => 'E-Mail :user', + 'submit-search' => 'Suchen', + 'clear-search' => 'Suche zurücksetzen', + ], + + 'messages' => [ + 'userNameTaken' => 'Benutzername ist bereits vergeben', + 'userNameRequired' => 'Benutzername ist ein Pflichtfeld', + 'fNameRequired' => 'Vorname ist ein Pflichtfeld', + 'lNameRequired' => 'Nachname ist ein Pflichtfeld', + 'emailRequired' => 'E-Mail ist ein Pflichtfeld', + 'emailInvalid' => 'E-Mail is invalid', + 'passwordRequired' => 'Passwort ist ein Pflichtfeld', + 'PasswordMin' => 'Das Passwort muss mindestens 6 Zeichen lang sein', + 'PasswordMax' => 'Das Passwort darf maximal 20 Zeichen lang sein', + 'captchaRequire' => 'Captcha ist ein Pflichtfeld', + 'CaptchaWrong' => 'Captcha falsch, bitte noch einmal versuchen', + 'roleRequired' => 'Benutzerrolle ist ein Pflichtfeld', + 'user-creation-success' => 'Benutzer erfolgreich angelegt!', + 'update-user-success' => 'Benutzer erfolgreich aktualisiert!', + 'delete-success' => 'Benutzer erfolgreich gelöscht!', + 'cannot-delete-yourself' => 'Du kannst dich nicht selbst löschen.', + ], + + 'show-user' => [ + 'id' => 'Benutzer ID', + 'name' => 'Benutzername', + 'email' => 'Email', + 'role' => 'Benutzerrolle', + 'created' => 'Angelegt ', + 'updated' => 'Aktualisiert ', + 'labelRole' => 'Benutzerrolle', + 'labelAccessLevel' => ' Stufe| Stufe', + ], + + 'search' => [ + 'title' => 'Zeige Suchergebnisse', + 'found-footer' => ' Treffer gefunden', + 'no-results' => 'Keine Treffer', + ], +]; diff --git a/src/resources/lang/de/modals.php b/src/resources/lang/de/modals.php new file mode 100644 index 0000000..03583d4 --- /dev/null +++ b/src/resources/lang/de/modals.php @@ -0,0 +1,31 @@ + 'Speichern bestätigen', + 'confirm_modal_title_std_msg' => 'Please confirm your request.', + + // Confirm Save Modal; + 'confirm_modal_button_save_text' => 'Änderungen speichern', + 'confirm_modal_button_save_icon' => 'fa-save', + 'confirm_modal_button_cancel_text' => 'Abbruch', + 'confirm_modal_button_cancel_icon' => 'fa-times', + 'edit_user__modal_text_confirm_title' => 'Änderungen speichern', + 'edit_user__modal_text_confirm_message' => 'Bitte bestätigen Sie die Änderungen.', + + // Delete Modal + 'delete_user_title' => 'Benutzer löschen', + 'delete_user_message' => 'Möchten Sie den Benutzer wirklich löschen?', + 'delete_user_btn_cancel' => ' Abbruch', + 'delete_user_btn_confirm' => ' Diesen Benutzer löschen', +]; diff --git a/src/resources/lang/en/laravelusers.php b/src/resources/lang/en/laravelusers.php index da7b480..f4ae4e6 100644 --- a/src/resources/lang/en/laravelusers.php +++ b/src/resources/lang/en/laravelusers.php @@ -44,6 +44,7 @@ 'show' => 'Show', 'edit' => 'Edit', 'create-new' => 'Create New User', + 'back-user' => 'Back to user', 'back-users' => 'Back to users', 'email-user' => 'Email :user', 'submit-search' => 'Submit Users Search', @@ -53,6 +54,7 @@ 'messages' => [ 'userNameTaken' => 'Username is taken', 'userNameRequired' => 'Username is required', + 'userNameInvalid' => 'Username is invalid', 'fNameRequired' => 'First Name is required', 'lNameRequired' => 'Last Name is required', 'emailRequired' => 'Email is required', diff --git a/src/resources/lang/nl/app.php b/src/resources/lang/nl/app.php new file mode 100644 index 0000000..d96d181 --- /dev/null +++ b/src/resources/lang/nl/app.php @@ -0,0 +1,19 @@ + [ + 'toggle-nav-alt' => 'Navigatie Aan/Uit', + 'login' => 'Inloggen', + 'register' => 'Registreren', + 'users' => 'Gebruikers', + 'logout' => 'Uitloggen', + ], + +]; diff --git a/src/resources/lang/nl/forms.php b/src/resources/lang/nl/forms.php new file mode 100644 index 0000000..e1111ec --- /dev/null +++ b/src/resources/lang/nl/forms.php @@ -0,0 +1,96 @@ + 'Email', + 'create_user_ph_email' => 'Email', + 'create_user_icon_email' => 'fa-envelope', + + 'create_user_label_username' => 'Gebruikersnaam', + 'create_user_ph_username' => 'Gebruikersnaam', + 'create_user_icon_username' => 'fa-user', + + 'create_user_label_firstname' => 'Voornaam', + 'create_user_ph_firstname' => 'Voornaam', + 'create_user_icon_firstname' => 'fa-user', + + 'create_user_label_lastname' => 'Achternaam', + 'create_user_ph_lastname' => 'Achternaam', + 'create_user_icon_lastname' => 'fa-user', + + 'create_user_label_password' => 'Wachtwoord', + 'create_user_ph_password' => 'Wachtwoord', + 'create_user_icon_password' => 'fa-lock', + + 'create_user_label_pw_confirmation' => 'Wachtwoord Bevestigen', + 'create_user_ph_pw_confirmation' => 'Wachtwoord Bevestigen', + 'create_user_icon_pw_confirmation' => 'fa-lock', + + 'create_user_label_location' => 'Gebruiker Locatie', + 'create_user_ph_location' => 'Gebruiker Locatie', + 'create_user_icon_location' => 'fa-map-marker', + + 'create_user_label_bio' => 'Gebruikersprofiel', + 'create_user_ph_bio' => 'Gebruikersprofiel', + 'create_user_icon_bio' => 'fa-pencil', + + 'create_user_label_twitter_username' => 'Twitter Gebruikersnaam', + 'create_user_ph_twitter_username' => 'Twitter Gebruikersnaam', + 'create_user_icon_twitter_username' => 'fa-twitter', + + 'create_user_label_github_username' => 'GitHub Gebruikersnaam', + 'create_user_ph_github_username' => 'GitHub Gebruikersnaam', + 'create_user_icon_github_username' => 'fa-github', + + 'create_user_label_career_title' => 'Gebruiker Beroep', + 'create_user_ph_career_title' => 'Gebruiker Beroep', + 'create_user_icon_career_title' => 'fa-briefcase', + + 'create_user_label_education' => 'Gebruiker Opleiding', + 'create_user_ph_education' => 'Gebruiker Opleiding', + 'create_user_icon_education' => 'fa-graduation-cap', + + 'create_user_label_role' => 'Gebruikersrol', + 'create_user_ph_role' => 'Selecteer Gebruikersrol', + 'create_user_icon_role' => 'fas fa-fw fas fa-shield-alt', + + 'create_user_button_text' => ' Nieuwe Gebruiker Aanmaken', + + // EDIT USER AS ADMINISTRATOR FORM + 'edit-user-admin-title' => 'Gebruikersinfo Wijzigen', + + 'label-username' => 'Gebruikersnaam', + 'ph-username' => 'Gebruikersnaam', + + 'label-useremail' => 'Email', + 'ph-useremail' => 'Email', + + 'label-userrole_id' => 'Gebruiker Toegangsniveau', + 'option-label' => 'Selecteer een Niveau', + 'option-user' => 'Gebruiker', + 'option-editor' => 'Schrijver', + 'option-admin' => 'Beheerder', + 'submit-btn-text' => 'Wijzig de Gebruiker!', + + 'submit-btn-icon' => 'fa-save', + 'username-icon' => 'fa-user', + 'useremail-icon' => 'fa-envelope-o', + + 'change-pw' => 'Wachtwoord Wijzigen', + 'cancel' => 'Annuleren', + 'save-changes' => ' Wijzigingen Opslaan', + + // Search Users Form + 'search-users-ph' => 'Gebruikers Zoeken', + +]; diff --git a/src/resources/lang/nl/laravelusers.php b/src/resources/lang/nl/laravelusers.php new file mode 100644 index 0000000..0f2965d --- /dev/null +++ b/src/resources/lang/nl/laravelusers.php @@ -0,0 +1,89 @@ + 'Toon Alle Gebruikers', + 'users-menu-alt' => 'Toon Gebruikersbeheer Menu', + 'create-new-user' => 'Nieuwe Gebruiker Aanmaken', + 'show-deleted-users' => 'Toon Verwijderde Gebuikers', + 'editing-user' => 'Wijzigen Gebruiker :name', + 'showing-user' => 'Tonen Gebruiker :name', + 'showing-user-title' => ':name\'s Informatie', + + 'users-table' => [ + 'caption' => '{1} :userscount gebruiker in totaal|[2,*] :userscount gebruikers in totaal', + 'id' => 'ID', + 'name' => 'Naam', + 'email' => 'Email', + 'role' => 'Rol', + 'created' => 'Aangemaakt', + 'updated' => 'Gewijzigd', + 'actions' => 'Acties', + 'updated' => 'Gewijzigd', + ], + + 'buttons' => [ + 'create-new' => '', + 'delete' => ' ', + 'show' => ' ', + 'edit' => ' ', + 'back-to-users' => '', + 'back-to-user' => 'Terug ', + 'delete-user' => ' ', + 'edit-user' => ' ', + ], + + 'tooltips' => [ + 'delete' => 'Verwijderen', + 'show' => 'Tonen', + 'edit' => 'Wijzigen', + 'create-new' => 'Nieuwe Gebruiker Aanmaken', + 'back-user' => 'Terug naar Gebruiker', + 'back-users' => 'Terug naar Gebruikers', + 'email-user' => 'Email :user', + 'submit-search' => 'Zoekterm Toepassen', + 'clear-search' => 'Zoekresultaten Wissen', + ], + + 'messages' => [ + 'userNameTaken' => 'Gebruikersnaam is in gebruik', + 'userNameRequired' => 'Gebruikersnaam is verplicht', + 'fNameRequired' => 'Voornaam is verplicht', + 'lNameRequired' => 'Achternaam is verplicht', + 'emailRequired' => 'Email is verplicht', + 'emailInvalid' => 'Email is onjuist', + 'passwordRequired' => 'Wachtwoord is verplicht', + 'PasswordMin' => 'Wachtwoord moet uit ten minste 6 tekens bestaan', + 'PasswordMax' => 'Wachtwoord mag niet langer dan 20 tekens zijn', + 'captchaRequire' => 'Captcha is verplicht', + 'CaptchaWrong' => 'Foute captcha, probeer het opnieuw.', + 'roleRequired' => 'Gebruikersrol is verplicht.', + 'user-creation-success' => 'Gebruiker succesvol aangemaakt!', + 'update-user-success' => 'Gebruiker succesvol gewijzigd!', + 'delete-success' => 'Gebruiker succesvol verwijderd!', + 'cannot-delete-yourself' => 'U kunt uw eigen gebruiker niet verwijderen!', + ], + + 'show-user' => [ + 'id' => 'Gebruiker ID', + 'name' => 'Gebruikersnaam', + 'email' => 'Email', + 'role' => 'Gebruikersrol', + 'created' => 'Aangemaakt ', + 'updated' => 'Gewijzigd ', + 'labelRole' => 'Gebruikersrol', + 'labelAccessLevel' => 'Toegangsniveau|Toegangsniveaus', + ], + + 'search' => [ + 'title' => 'Tonen Zoekresultaten', + 'found-footer' => ' Item(s) gevonden', + 'no-results' => 'Geen Resultaten', + ], +]; diff --git a/src/resources/lang/nl/modals.php b/src/resources/lang/nl/modals.php new file mode 100644 index 0000000..f0e145f --- /dev/null +++ b/src/resources/lang/nl/modals.php @@ -0,0 +1,31 @@ + 'Opslaan Bevestigen', + 'confirm_modal_title_std_msg' => 'Bevestig uw aanvraag.', + + // Confirm Save Modal; + 'confirm_modal_button_save_text' => 'Wijzigingen Opslaan', + 'confirm_modal_button_save_icon' => 'fa-save', + 'confirm_modal_button_cancel_text' => 'Annuleren', + 'confirm_modal_button_cancel_icon' => 'fa-times', + 'edit_user__modal_text_confirm_title' => 'Opslaan Bevestigen', + 'edit_user__modal_text_confirm_message' => 'Bevestig uw wijzigingen.', + + // Delete Modal + 'delete_user_title' => 'Gebruiker verwijderen', + 'delete_user_message' => 'Weet u zeker dat u gebruiker :user wilt verwijderen?', + 'delete_user_btn_cancel' => ' Annuleren', + 'delete_user_btn_confirm' => ' Verwijder Gebruiker', +]; diff --git a/src/resources/lang/pt-br/laravelusers.php b/src/resources/lang/pt-br/laravelusers.php index 3be111a..1abd579 100755 --- a/src/resources/lang/pt-br/laravelusers.php +++ b/src/resources/lang/pt-br/laravelusers.php @@ -44,6 +44,7 @@ 'show' => 'Mostrar', 'edit' => 'Editar', 'create-new' => 'Criar Novo Usuário', + 'back-user' => 'Voltar para Usuário', 'back-users' => 'Voltar para Usuários', 'email-user' => 'Email :user', 'submit-search' => 'Buscar Usuários', diff --git a/src/resources/views/usersmanagement/edit-user.blade.php b/src/resources/views/usersmanagement/edit-user.blade.php index 9afc8fd..3b1fcf1 100755 --- a/src/resources/views/usersmanagement/edit-user.blade.php +++ b/src/resources/views/usersmanagement/edit-user.blade.php @@ -37,7 +37,7 @@ @endif {!! trans('laravelusers::laravelusers.buttons.back-to-users') !!} - + @if(config('laravelusers.fontAwesomeEnabled')) @endif @@ -104,12 +104,12 @@ @endif
- @if ($roles) @foreach($roles as $role) @if ($currentRole) - + @else @endif diff --git a/tests/TestCase.php b/tests/TestCase.php index 97fe8d5..ae313e5 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -15,7 +15,7 @@ class TestCase extends OrchestraTestCase * * @return jeremykenedy\laravelusers\LaravelUsersServiceProvider */ - protected function getPackageProviders($app) + protected function getPackageProviders($app): void { return [LaravelUsersServiceProvider::class]; } @@ -27,7 +27,7 @@ protected function getPackageProviders($app) * * @return array */ - protected function getPackageAliases($app) + protected function getPackageAliases($app): void { return [ 'UsersManagementController' => LaravelUsersFacade::class,