├── .editorconfig ├── .env.example ├── .env.travis ├── .eslintrc.js ├── .gitattributes ├── .gitignore ├── .scripts └── deploy.sh ├── .travis.yml ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md ├── _config.yml ├── app ├── Console │ ├── Commands │ │ └── DeleteExpiredActivations.php │ └── Kernel.php ├── Exceptions │ ├── Handler.php │ └── SocialProviderDeniedException.php ├── Http │ ├── Controllers │ │ ├── AdminDetailsController.php │ │ ├── Auth │ │ │ ├── ActivateController.php │ │ │ ├── AuthenticatedSessionController.php │ │ │ ├── ConfirmablePasswordController.php │ │ │ ├── ForgotPasswordController.php │ │ │ ├── LoginController.php │ │ │ ├── NewPasswordController.php │ │ │ ├── PasswordController.php │ │ │ ├── PasswordResetLinkController.php │ │ │ ├── RegisterController.php │ │ │ ├── RegisteredUserController.php │ │ │ ├── ResetPasswordController.php │ │ │ └── SocialController.php │ │ ├── Controller.php │ │ ├── ProfilesController.php │ │ ├── RestoreUserController.php │ │ ├── SoftDeletesController.php │ │ ├── TermsController.php │ │ ├── ThemesManagementController.php │ │ ├── UserController.php │ │ ├── UsersManagementController.php │ │ └── WelcomeController.php │ ├── Kernel.php │ ├── Middleware │ │ ├── Authenticate.php │ │ ├── CheckCurrentUser.php │ │ ├── CheckIsUserActivated.php │ │ ├── EncryptCookies.php │ │ ├── PreventRequestsDuringMaintenance.php │ │ ├── RedirectIfAuthenticated.php │ │ ├── TrimStrings.php │ │ ├── TrustHosts.php │ │ ├── TrustProxies.php │ │ ├── ValidateSignature.php │ │ └── VerifyCsrfToken.php │ ├── Requests │ │ ├── Auth │ │ │ └── LoginRequest.php │ │ ├── DeleteUserAccount.php │ │ ├── UpdateUserPasswordRequest.php │ │ └── UpdateUserProfile.php │ └── ViewComposers │ │ └── ThemeComposer.php ├── Logic │ ├── Activation │ │ └── ActivationRepository.php │ └── Macros │ │ └── HtmlMacros.php ├── Mail │ └── ExceptionOccured.php ├── Models │ ├── Activation.php │ ├── Permission.php │ ├── Profile.php │ ├── Role.php │ ├── Social.php │ ├── Theme.php │ └── User.php ├── Notifications │ ├── ResetPasswordNotification.php │ ├── SendActivationEmail.php │ └── SendGoodbyeEmail.php ├── Providers │ ├── AppServiceProvider.php │ ├── AuthServiceProvider.php │ ├── BroadcastServiceProvider.php │ ├── ComposerServiceProvider.php │ ├── EventServiceProvider.php │ ├── LocalEnvironmentServiceProvider.php │ ├── MacroServiceProvider.php │ └── RouteServiceProvider.php ├── Traits │ ├── ActivationTrait.php │ ├── CaptchaTrait.php │ └── CaptureIpTrait.php └── View │ └── Components │ ├── AppLayout.php │ └── GuestLayout.php ├── artisan ├── bootstrap ├── app.php └── cache │ └── .gitignore ├── composer.json ├── config ├── app.php ├── auth.php ├── broadcasting.php ├── cache.php ├── cors.php ├── database.php ├── debugbar.php ├── exceptions.php ├── filesystems.php ├── gravatar.php ├── hashing.php ├── laravel2step.php ├── laravelPhpInfo.php ├── laravelblocker.php ├── logging.php ├── mail.php ├── queue.php ├── roles.php ├── sanctum.php ├── services.php ├── session.php ├── settings.php ├── usersmanagement.php └── view.php ├── database ├── .gitignore ├── factories │ └── UserFactory.php ├── migrations │ ├── 2014_10_12_000000_create_users_table.php │ ├── 2014_10_12_100000_create_password_resets_table.php │ ├── 2016_01_15_105324_create_roles_table.php │ ├── 2016_01_15_114412_create_role_user_table.php │ ├── 2016_01_26_115212_create_permissions_table.php │ ├── 2016_01_26_115523_create_permission_role_table.php │ ├── 2016_02_09_132439_create_permission_user_table.php │ ├── 2017_03_09_082449_create_social_logins_table.php │ ├── 2017_03_09_082526_create_activations_table.php │ ├── 2017_03_20_213554_create_themes_table.php │ ├── 2017_03_21_042918_create_profiles_table.php │ ├── 2017_12_09_070937_create_two_step_auth_table.php │ ├── 2019_02_19_032636_create_laravel_blocker_types_table.php │ ├── 2019_02_19_045158_create_laravel_blocker_table.php │ ├── 2019_08_19_000000_create_failed_jobs_table.php │ ├── 2019_12_14_000001_create_personal_access_tokens_table.php │ └── 2023_02_26_001638_create_email_log.php └── seeders │ ├── BlockedItemsTableSeeder.php │ ├── BlockedTypeTableSeeder.php │ ├── ConnectRelationshipsSeeder.php │ ├── DatabaseSeeder.php │ ├── PermissionsTableSeeder.php │ ├── RolesTableSeeder.php │ ├── ThemesTableSeeder.php │ └── UsersTableSeeder.php ├── license.svg ├── package.json ├── phpunit.xml ├── postcss.config.js ├── public ├── .htaccess ├── build │ ├── assets │ │ ├── app-13c11150.css │ │ ├── app-8fea017b.css │ │ ├── app-e94a5d71.js │ │ ├── app-e94a5d71.js.map │ │ ├── app-ff50b1ad.js.map │ │ ├── app-legacy-2761d20e.js │ │ ├── app-legacy-2761d20e.js.map │ │ ├── app-legacy-b4f7101a.js │ │ ├── app-legacy-b4f7101a.js.map │ │ ├── fa-brands-400-2ef6fdde.ttf │ │ ├── fa-brands-400-f4617423.woff2 │ │ ├── fa-regular-400-12dea17b.ttf │ │ ├── fa-regular-400-7ba24c41.woff2 │ │ ├── fa-solid-900-67a880b4.ttf │ │ ├── fa-solid-900-e2c5cf54.woff2 │ │ ├── fa-v4compatibility-7c377405.woff2 │ │ ├── fa-v4compatibility-8d9500e8.ttf │ │ ├── fontawesome-webfont-2adefcbc.woff2 │ │ ├── fontawesome-webfont-7bfcab6d.eot │ │ ├── fontawesome-webfont-aa58f33f.ttf │ │ ├── fontawesome-webfont-ad615792.svg │ │ ├── fontawesome-webfont-ba0c59de.woff │ │ ├── polyfills-legacy-999f298a.js │ │ ├── wink.png │ │ └── wink.svg │ ├── manifest.json │ └── pluginWebUpdateNotice │ │ ├── webUpdateNoticeInjectScript.global.js │ │ ├── webUpdateNoticeInjectStyle.css │ │ └── web_version_by_plugin.json ├── css │ ├── app.css │ └── laravel2step │ │ ├── app.css │ │ └── app.min.css ├── favicon.ico ├── fonts │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.svg │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ ├── fontawesome-webfont.woff2 │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ ├── glyphicons-halflings-regular.woff │ ├── glyphicons-halflings-regular.woff2 │ └── vendor │ │ ├── bootstrap-sass │ │ └── bootstrap │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ └── font-awesome │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 ├── images │ ├── wink.png │ └── wink.svg ├── index.php ├── robots.txt └── web.config ├── resources ├── assets │ ├── js │ │ ├── app.js │ │ ├── bootstrap.js │ │ └── components │ │ │ ├── ExampleComponent.vue │ │ │ └── UsersCount.vue │ ├── sass │ │ ├── _avatar.scss │ │ ├── _badges.scss │ │ ├── _bootstrap-social.scss │ │ ├── _buttons.scss │ │ ├── _forms.scss │ │ ├── _helpers.scss │ │ ├── _hideShowPassword.scss │ │ ├── _lists.scss │ │ ├── _logs.scss │ │ ├── _margins.scss │ │ ├── _mixins.scss │ │ ├── _modals.scss │ │ ├── _panels.scss │ │ ├── _password.scss │ │ ├── _socials.scss │ │ ├── _typography.scss │ │ ├── _user-profile.scss │ │ ├── _variables.scss │ │ ├── _visibility.scss │ │ ├── _wells.scss │ │ └── app.scss │ └── scss │ │ └── laravel2step │ │ ├── _animations.scss │ │ ├── _mixins.scss │ │ ├── _modals.scss │ │ ├── _variables.scss │ │ ├── _verification.scss │ │ └── app.scss ├── lang │ ├── en │ │ ├── auth.php │ │ ├── emails.php │ │ ├── forms.php │ │ ├── modals.php │ │ ├── pagination.php │ │ ├── passwords.php │ │ ├── permsandroles.php │ │ ├── profile.php │ │ ├── socials.php │ │ ├── terms.php │ │ ├── themes.php │ │ ├── titles.php │ │ ├── usersmanagement.php │ │ └── validation.php │ ├── fr │ │ ├── auth.php │ │ ├── emails.php │ │ ├── forms.php │ │ ├── modals.php │ │ ├── pagination.php │ │ ├── passwords.php │ │ ├── permsandroles.php │ │ ├── profile.php │ │ ├── socials.php │ │ ├── titles.php │ │ ├── usersmanagement.php │ │ └── validation.php │ ├── pt-br │ │ ├── auth.php │ │ ├── emails.php │ │ ├── forms.php │ │ ├── modals.php │ │ ├── pagination.php │ │ ├── passwords.php │ │ ├── permsandroles.php │ │ ├── profile.php │ │ ├── socials.php │ │ ├── themes.php │ │ ├── titles.php │ │ ├── usersmanagement.php │ │ └── validation.php │ └── vendor │ │ ├── laravel2step │ │ └── en │ │ │ └── laravel-verification.php │ │ ├── laravelPhpInfo │ │ └── en │ │ │ └── laravel-phpinfo.php │ │ └── laravelblocker │ │ └── en │ │ └── laravelblocker.php └── views │ ├── auth │ ├── activation.blade.php │ ├── exceeded.blade.php │ ├── login.blade.php │ ├── passwords │ │ ├── email.blade.php │ │ └── reset.blade.php │ └── register.blade.php │ ├── emails │ └── exception.blade.php │ ├── errors │ ├── 401.blade.php │ ├── 403.blade.php │ ├── 404.blade.php │ ├── 500.blade.php │ └── 503.blade.php │ ├── home.blade.php │ ├── layouts │ ├── app.blade.php │ ├── guest.blade.php │ └── navigation.blade.php │ ├── modals │ ├── modal-delete.blade.php │ ├── modal-form.blade.php │ └── modal-save.blade.php │ ├── pages │ ├── admin │ │ ├── active-users.blade.php │ │ ├── home.blade.php │ │ └── route-details.blade.php │ ├── public │ │ └── terms.blade.php │ ├── status.blade.php │ └── user │ │ └── home.blade.php │ ├── panels │ └── welcome-panel.blade.php │ ├── partials │ ├── errors.blade.php │ ├── form-status.blade.php │ ├── nav.blade.php │ ├── search-users-form.blade.php │ ├── socials-icons.blade.php │ ├── socials.blade.php │ ├── status-panel.blade.php │ └── status.blade.php │ ├── profiles │ ├── edit.blade.php │ └── show.blade.php │ ├── scripts │ ├── check-changed.blade.php │ ├── datatables.blade.php │ ├── delete-modal-script.blade.php │ ├── form-modal-script.blade.php │ ├── ga-analytics.blade.php │ ├── gmaps-address-lookup-api3.blade.php │ ├── google-maps-geocode-and-map.blade.php │ ├── save-modal-script.blade.php │ ├── search-users.blade.php │ ├── toggleStatus.blade.php │ ├── tooltips.blade.php │ └── user-avatar-dz.blade.php │ ├── themesmanagement │ ├── add-theme.blade.php │ ├── edit-theme.blade.php │ ├── show-theme.blade.php │ └── show-themes.blade.php │ ├── usersmanagement │ ├── create-user.blade.php │ ├── edit-user.blade.php │ ├── show-deleted-user.blade.php │ ├── show-deleted-users.blade.php │ ├── show-user.blade.php │ └── show-users.blade.php │ ├── vendor │ ├── forms │ │ ├── create-new.blade.php │ │ ├── delete-full.blade.php │ │ ├── delete-item.blade.php │ │ ├── delete-sm.blade.php │ │ ├── destroy-all.blade.php │ │ ├── destroy-full.blade.php │ │ ├── destroy-sm.blade.php │ │ ├── edit-form.blade.php │ │ ├── partials │ │ │ ├── item-blocked-user-select.blade.php │ │ │ ├── item-note-input.blade.php │ │ │ ├── item-type-select.blade.php │ │ │ └── item-value-input.blade.php │ │ ├── restore-all.blade.php │ │ ├── restore-item.blade.php │ │ └── search-blocked.blade.php │ ├── laravel-log-viewer │ │ ├── .gitkeep │ │ └── log.blade.php │ ├── laravel2step │ │ ├── layouts │ │ │ └── app.blade.php │ │ ├── scripts │ │ │ └── input-parsing-auto-stepper.blade.php │ │ └── twostep │ │ │ ├── exceeded.blade.php │ │ │ └── verification.blade.php │ ├── laravelPhpInfo │ │ └── phpinfo │ │ │ └── php-info.blade.php │ ├── laravelblocker │ │ ├── create.blade.php │ │ ├── deleted │ │ │ └── index.blade.php │ │ ├── edit.blade.php │ │ ├── index.blade.php │ │ └── show.blade.php │ ├── mail │ │ ├── html │ │ │ ├── button.blade.php │ │ │ ├── footer.blade.php │ │ │ ├── header.blade.php │ │ │ ├── layout.blade.php │ │ │ ├── message.blade.php │ │ │ ├── panel.blade.php │ │ │ ├── subcopy.blade.php │ │ │ ├── table.blade.php │ │ │ └── themes │ │ │ │ └── default.css │ │ └── text │ │ │ ├── button.blade.php │ │ │ ├── footer.blade.php │ │ │ ├── header.blade.php │ │ │ ├── layout.blade.php │ │ │ ├── message.blade.php │ │ │ ├── panel.blade.php │ │ │ ├── subcopy.blade.php │ │ │ └── table.blade.php │ ├── modals │ │ └── confirm-modal.blade.php │ ├── notifications │ │ └── email.blade.php │ ├── pagination │ │ ├── bootstrap-4.blade.php │ │ ├── default.blade.php │ │ ├── simple-bootstrap-4.blade.php │ │ └── simple-default.blade.php │ ├── partials │ │ ├── blocked-items-table.blade.php │ │ ├── bs-visibility-css.blade.php │ │ ├── flash-messages.blade.php │ │ ├── form-status.blade.php │ │ └── styles.blade.php │ └── scripts │ │ ├── blocked-form.blade.php │ │ ├── confirm-modal.blade.php │ │ ├── datatables.blade.php │ │ ├── search-blocked.blade.php │ │ └── tooltips.blade.php │ └── welcome.blade.php ├── routes ├── api.php ├── channels.php ├── console.php └── web.php ├── storage ├── debugbar │ └── .gitignore ├── framework │ ├── cache │ │ ├── .gitignore │ │ └── .gitkeep │ ├── sessions │ │ ├── .gitignore │ │ └── .gitkeep │ └── views │ │ ├── .gitignore │ │ └── .gitkeep ├── logs │ └── .gitignore └── users │ └── .gitignore ├── tailwind.config.js ├── tailwindcss-perspective.js ├── tests ├── CreatesApplication.php ├── Feature │ ├── Auth │ │ └── AuthenticationTest.php │ ├── ExampleTest.php │ ├── PublicPagesTest.php │ └── ThemesTest.php ├── TestCase.php └── Unit │ └── ExampleTest.php └── vite.config.js /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | insert_final_newline = true 7 | indent_style = space 8 | indent_size = 4 9 | trim_trailing_whitespace = true 10 | 11 | [*.php] 12 | charset = utf-8 13 | end_of_line = lf 14 | insert_final_newline = true 15 | indent_style = space 16 | indent_size = 4 17 | trim_trailing_whitespace = true 18 | 19 | [*.md] 20 | trim_trailing_whitespace = false 21 | 22 | [*.{yml,yaml}] 23 | indent_size = 2 24 | 25 | [docker-compose.yml] 26 | indent_size = 4 27 | 28 | [*.js] 29 | indent_style = space 30 | indent_size = 2 31 | 32 | [*.ts] 33 | indent_style = space 34 | indent_size = 2 35 | 36 | [*.json] 37 | indent_style = space 38 | indent_size = 2 39 | 40 | [*.vue] 41 | indent_style = space 42 | indent_size = 2 43 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | env: { 3 | browser: true, 4 | es2021: true, 5 | }, 6 | extends: ["plugin:vue/vue3-essential", "airbnb-base"], 7 | overrides: [], 8 | parserOptions: { 9 | ecmaVersion: "latest", 10 | sourceType: "module", 11 | }, 12 | plugins: ["vue"], 13 | rules: {}, 14 | }; 15 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | 3 | *.blade.php diff=html 4 | *.css diff=css 5 | *.html diff=html 6 | *.md diff=markdown 7 | *.php diff=php 8 | 9 | /.github export-ignore 10 | CHANGELOG.md export-ignore 11 | .styleci.yml export-ignore 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ### OSX Vendor Configs ### 2 | .DS_Store 3 | *._DS_Store 4 | ._.DS_Store 5 | *._ 6 | ._* 7 | ._.* 8 | 9 | ### Windows Vendor Configs ### 10 | Thumbs.db 11 | 12 | ### Sass ### 13 | #bower_components/* 14 | /.sass-cache/* 15 | .sass-cache 16 | 17 | ### Editor Configs ### 18 | *.sublime-workspace 19 | .idea/* 20 | /.idea/* 21 | .phpintel/* 22 | /.phpintel/* 23 | /.vscode 24 | /.fleet 25 | /.idea 26 | /.vscode 27 | 28 | ### Vagrant/Homestead Vendor Configs ### 29 | /.vagrant 30 | Homestead.yaml 31 | Homestead.json 32 | 33 | ### Master Configs ### 34 | .env 35 | composer.lock 36 | package-lock.json 37 | yarn.lock 38 | 39 | ### Assets ### 40 | /node_modules 41 | /public/hot 42 | /public/storage 43 | /storage/*.key 44 | /vendor 45 | /storage/debugbar 46 | /storage/framework 47 | /storage/logs 48 | /storage/users 49 | packages/ 50 | .phpunit.result.cache 51 | .env.backup 52 | 53 | # Debug Files 54 | npm-debug.log 55 | yarn-error.log 56 | 57 | -------------------------------------------------------------------------------- /.scripts/deploy.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | BRANCH=${1:-$(git branch --show-current)} 4 | 5 | deployStart() { 6 | set -e 7 | echo "Deployment started ... ..." 8 | (php artisan down) || true 9 | export NODE_OPTIONS=--max-old-space-size=16384 10 | if [ -f "composer.lock" ] ; then 11 | rm "composer.lock" 12 | fi 13 | if [ -f "package-lock.json" ] ; then 14 | rm "package-lock.json" 15 | fi 16 | } 17 | 18 | deployGit() { 19 | git fetch --all 20 | git fetch --tags 21 | git checkout $BRANCH 22 | git reset --hard 23 | git pull origin $BRANCH 24 | } 25 | 26 | deployComposer() { 27 | composer install --no-dev --no-interaction --prefer-dist --optimize-autoloader 28 | composer update --no-dev --no-interaction --prefer-dist --optimize-autoloader 29 | } 30 | 31 | deployArtisanCommands() { 32 | php artisan clear-compiled 33 | php artisan config:cache 34 | php artisan optimize 35 | } 36 | 37 | deployMigrationsAndSeeds() { 38 | php artisan migrate --force 39 | php artisan db:seed 40 | } 41 | 42 | deployFrontEnd() { 43 | npm install 44 | npm update 45 | npm run clean 46 | npm run lint 47 | npm run optimize 48 | npm run build 49 | } 50 | 51 | deployFinish() { 52 | php artisan up 53 | echo "Deployment finished Successfully!" 54 | } 55 | 56 | deploy() { 57 | deployStart 58 | deployGit 59 | deployComposer 60 | deployArtisanCommands 61 | deployMigrationsAndSeeds 62 | deployFrontEnd 63 | deployFinish 64 | } 65 | 66 | # deploy 67 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | - 7.3 5 | - 7.4 6 | 7 | services: 8 | - mysql 9 | 10 | before_script: 11 | - cp .env.travis .env 12 | - mysql -u root -e 'create database laravelAuth;' 13 | - composer self-update 14 | - composer install --no-interaction 15 | - php artisan vendor:publish --tag=laravelroles 16 | - php artisan vendor:publish --tag=laravel2step 17 | - php artisan key:generate 18 | - php artisan migrate:install --env=testing --no-interaction 19 | - composer dump-autoload 20 | - sudo chgrp -R www-data storage bootstrap/cache 21 | - sudo chmod -R ug+rwx storage bootstrap/cache 22 | - php artisan migrate 23 | - php artisan db:seed 24 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2017-2023 jeremykenedy 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-cayman 2 | -------------------------------------------------------------------------------- /app/Console/Commands/DeleteExpiredActivations.php: -------------------------------------------------------------------------------- 1 | activationRepository = $activationRepository; 37 | } 38 | 39 | /** 40 | * Execute the console command. 41 | * 42 | * @return mixed 43 | */ 44 | public function handle() 45 | { 46 | $this->activationRepository->deleteExpiredActivations(); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /app/Console/Kernel.php: -------------------------------------------------------------------------------- 1 | command('inspire')->hourly(); 24 | 25 | $schedule->command('activations:clean')->daily(); 26 | } 27 | 28 | /** 29 | * Register the commands for the application. 30 | */ 31 | protected function commands(): void 32 | { 33 | $this->load(__DIR__.'/Commands'); 34 | 35 | require base_path('routes/console.php'); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /app/Exceptions/SocialProviderDeniedException.php: -------------------------------------------------------------------------------- 1 | view('socialite.denied', [], 401); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /app/Http/Controllers/AdminDetailsController.php: -------------------------------------------------------------------------------- 1 | middleware('auth'); 18 | } 19 | 20 | /** 21 | * Display a listing of the resource. 22 | * 23 | * @return \Illuminate\Http\Response 24 | */ 25 | public function listRoutes() 26 | { 27 | $routes = Route::getRoutes(); 28 | $data = [ 29 | 'routes' => $routes, 30 | ]; 31 | 32 | return view('pages.admin.route-details', $data); 33 | } 34 | 35 | /** 36 | * Display active users page. 37 | * 38 | * @return \Illuminate\Http\Response 39 | */ 40 | public function activeUsers() 41 | { 42 | $users = User::count(); 43 | 44 | return view('pages.admin.active-users', ['users' => $users]); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/AuthenticatedSessionController.php: -------------------------------------------------------------------------------- 1 | authenticate(); 29 | 30 | $request->session()->regenerate(); 31 | 32 | return redirect()->intended(RouteServiceProvider::HOME); 33 | } 34 | 35 | /** 36 | * Destroy an authenticated session. 37 | */ 38 | public function destroy(Request $request): RedirectResponse 39 | { 40 | Auth::guard('web')->logout(); 41 | 42 | $request->session()->invalidate(); 43 | 44 | $request->session()->regenerateToken(); 45 | 46 | return redirect('/'); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/ConfirmablePasswordController.php: -------------------------------------------------------------------------------- 1 | validate([ 29 | 'email' => $request->user()->email, 30 | 'password' => $request->password, 31 | ])) { 32 | throw ValidationException::withMessages([ 33 | 'password' => __('auth.password'), 34 | ]); 35 | } 36 | 37 | $request->session()->put('auth.password_confirmed_at', time()); 38 | 39 | return redirect()->intended(RouteServiceProvider::HOME); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/ForgotPasswordController.php: -------------------------------------------------------------------------------- 1 | middleware('guest'); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/LoginController.php: -------------------------------------------------------------------------------- 1 | middleware('guest', ['except' => 'logout']); 41 | } 42 | 43 | /** 44 | * Logout, Clear Session, and Return. 45 | * 46 | * @return void 47 | */ 48 | public function logout() 49 | { 50 | // $user = Auth::user(); 51 | // Log::info('User Logged Out. ', [$user]); 52 | Auth::logout(); 53 | Session::flush(); 54 | 55 | return redirect(property_exists($this, 'redirectAfterLogout') ? $this->redirectAfterLogout : '/'); 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/PasswordController.php: -------------------------------------------------------------------------------- 1 | validateWithBag('updatePassword', [ 19 | 'current_password' => ['required', 'current_password'], 20 | 'password' => ['required', Password::defaults(), 'confirmed'], 21 | ]); 22 | 23 | $request->user()->update([ 24 | 'password' => Hash::make($validated['password']), 25 | ]); 26 | 27 | return back()->with('status', 'password-updated'); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/PasswordResetLinkController.php: -------------------------------------------------------------------------------- 1 | validate([ 29 | 'email' => ['required', 'email'], 30 | ]); 31 | 32 | // We will send the password reset link to this user. Once we have attempted 33 | // to send the link, we will examine the response then see the message we 34 | // need to show to the user. Finally, we'll send out a proper response. 35 | $status = Password::sendResetLink( 36 | $request->only('email') 37 | ); 38 | 39 | return $status == Password::RESET_LINK_SENT 40 | ? back()->with('status', __($status)) 41 | : back()->withInput($request->only('email')) 42 | ->withErrors(['email' => __($status)]); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/RegisteredUserController.php: -------------------------------------------------------------------------------- 1 | validate([ 34 | 'name' => ['required', 'string', 'max:255'], 35 | 'email' => ['required', 'string', 'email', 'max:255', 'unique:'.User::class], 36 | 'password' => ['required', 'confirmed', Rules\Password::defaults()], 37 | ]); 38 | 39 | $user = User::create([ 40 | 'name' => $request->name, 41 | 'email' => $request->email, 42 | 'password' => Hash::make($request->password), 43 | ]); 44 | 45 | event(new Registered($user)); 46 | 47 | Auth::login($user); 48 | 49 | return redirect(RouteServiceProvider::HOME); 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /app/Http/Controllers/Auth/ResetPasswordController.php: -------------------------------------------------------------------------------- 1 | middleware('guest'); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /app/Http/Controllers/Controller.php: -------------------------------------------------------------------------------- 1 | middleware('auth'); 17 | } 18 | 19 | /** 20 | * Show the application dashboard. 21 | * 22 | * @return \Illuminate\Http\Response 23 | */ 24 | public function index() 25 | { 26 | $user = Auth::user(); 27 | 28 | if ($user->isAdmin()) { 29 | return view('pages.admin.home'); 30 | } 31 | 32 | return view('pages.user.home'); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/Http/Controllers/WelcomeController.php: -------------------------------------------------------------------------------- 1 | expectsJson() ? null : route('login'); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /app/Http/Middleware/CheckCurrentUser.php: -------------------------------------------------------------------------------- 1 | user()) { 21 | abort(403, 'Unauthorized action.'); 22 | } 23 | 24 | return $next($request); 25 | } 26 | 27 | public function terminate($request, $response) 28 | { 29 | $user = Auth::user(); 30 | $currentRoute = Route::currentRouteName(); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /app/Http/Middleware/EncryptCookies.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | protected $except = [ 15 | // 16 | ]; 17 | } 18 | -------------------------------------------------------------------------------- /app/Http/Middleware/PreventRequestsDuringMaintenance.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | protected $except = [ 15 | // 16 | ]; 17 | } 18 | -------------------------------------------------------------------------------- /app/Http/Middleware/RedirectIfAuthenticated.php: -------------------------------------------------------------------------------- 1 | check()) { 24 | return redirect(RouteServiceProvider::HOME); 25 | } 26 | } 27 | 28 | return $next($request); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /app/Http/Middleware/TrimStrings.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | protected $except = [ 15 | 'current_password', 16 | 'password', 17 | 'password_confirmation', 18 | ]; 19 | } 20 | -------------------------------------------------------------------------------- /app/Http/Middleware/TrustHosts.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | public function hosts(): array 15 | { 16 | return [ 17 | $this->allSubdomainsOfApplicationUrl(), 18 | ]; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /app/Http/Middleware/TrustProxies.php: -------------------------------------------------------------------------------- 1 | |string|null 14 | */ 15 | protected $proxies; 16 | 17 | /** 18 | * The headers that should be used to detect proxies. 19 | * 20 | * @var int 21 | */ 22 | protected $headers = 23 | Request::HEADER_X_FORWARDED_FOR | 24 | Request::HEADER_X_FORWARDED_HOST | 25 | Request::HEADER_X_FORWARDED_PORT | 26 | Request::HEADER_X_FORWARDED_PROTO | 27 | Request::HEADER_X_FORWARDED_AWS_ELB; 28 | } 29 | -------------------------------------------------------------------------------- /app/Http/Middleware/ValidateSignature.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | protected $except = [ 15 | // 'fbclid', 16 | // 'utm_campaign', 17 | // 'utm_content', 18 | // 'utm_medium', 19 | // 'utm_source', 20 | // 'utm_term', 21 | ]; 22 | } 23 | -------------------------------------------------------------------------------- /app/Http/Middleware/VerifyCsrfToken.php: -------------------------------------------------------------------------------- 1 | 13 | */ 14 | protected $except = [ 15 | // 16 | ]; 17 | } 18 | -------------------------------------------------------------------------------- /app/Http/Requests/DeleteUserAccount.php: -------------------------------------------------------------------------------- 1 | 'required', 28 | ]; 29 | } 30 | 31 | /** 32 | * Get the error messages for the defined validation rules. 33 | * 34 | * @return array 35 | */ 36 | public function messages() 37 | { 38 | return [ 39 | 'checkConfirmDelete.required' => trans('profile.confirmDeleteRequired'), 40 | ]; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /app/Http/Requests/UpdateUserPasswordRequest.php: -------------------------------------------------------------------------------- 1 | 'required|min:6|max:20|confirmed', 28 | 'password_confirmation' => 'required|same:password', 29 | ]; 30 | } 31 | 32 | /** 33 | * Get the error messages for the defined validation rules. 34 | * 35 | * @return array 36 | */ 37 | public function messages() 38 | { 39 | return [ 40 | 'password.required' => trans('auth.passwordRequired'), 41 | 'password.min' => trans('auth.PasswordMin'), 42 | 'password.max' => trans('auth.PasswordMax'), 43 | ]; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /app/Http/Requests/UpdateUserProfile.php: -------------------------------------------------------------------------------- 1 | '', 28 | 'location' => '', 29 | 'bio' => 'max:500', 30 | 'twitter_username' => 'max:50', 31 | 'github_username' => 'max:50', 32 | 'avatar' => '', 33 | 'avatar_status' => '', 34 | ]; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /app/Http/ViewComposers/ThemeComposer.php: -------------------------------------------------------------------------------- 1 | user = Auth::user(); 22 | } 23 | 24 | /** 25 | * Bind data to the view. 26 | * 27 | * @param View $view 28 | * @return void 29 | */ 30 | public function compose(View $view) 31 | { 32 | $theme = null; 33 | 34 | if (Auth::check()) { 35 | $user = $this->user; 36 | 37 | if ($user->profile) { 38 | $theme = Theme::find($user->profile->theme_id); 39 | 40 | if ($theme->status === 0) { 41 | $theme = Theme::find(Theme::default); 42 | } 43 | } 44 | } 45 | 46 | $view->with('theme', $theme); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /app/Models/Activation.php: -------------------------------------------------------------------------------- 1 | 'integer', 61 | 'user_id' => 'integer', 62 | 'token' => 'string', 63 | 'ip_address' => 'string', 64 | 'created_at' => 'datetime', 65 | 'updated_at' => 'datetime', 66 | ]; 67 | 68 | /** 69 | * Get the user that owns the activation. 70 | */ 71 | public function user() 72 | { 73 | return $this->belongsTo(\App\Models\User::class); 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /app/Models/Permission.php: -------------------------------------------------------------------------------- 1 | 'integer', 43 | ]; 44 | 45 | /** 46 | * A profile belongs to a user. 47 | * 48 | * @return mixed 49 | */ 50 | public function user() 51 | { 52 | return $this->belongsTo(\App\Models\User::class); 53 | } 54 | 55 | /** 56 | * Profile Theme Relationships. 57 | * 58 | * @var array 59 | */ 60 | public function theme() 61 | { 62 | return $this->hasOne(\App\Models\Theme::class); 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /app/Models/Role.php: -------------------------------------------------------------------------------- 1 | 'integer', 57 | 'user_id' => 'integer', 58 | 'provider' => 'string', 59 | 'social_id' => 'string', 60 | 'created_at' => 'datetime', 61 | 'updated_at' => 'datetime', 62 | ]; 63 | 64 | /** 65 | * Get the user that owns the social. 66 | */ 67 | public function user() 68 | { 69 | return $this->belongsTo(\App\Models\User::class); 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /app/Notifications/ResetPasswordNotification.php: -------------------------------------------------------------------------------- 1 | subject(Lang::get('Reset Password Notification')) 21 | ->line(Lang::get('You are receiving this email because we received a password reset request for your account.')) 22 | ->action(Lang::get('Reset Password'), url(config('app.url').'/reset-password/'.$this->token).'?email='.urlencode($notifiable->email)) 23 | ->line(Lang::get('This password reset link will expire in :count minutes.', ['count' => config('auth.passwords.'.config('auth.defaults.passwords').'.expire')])) 24 | ->line(Lang::get('If you did not request a password reset, no further action is required.')); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/Providers/AppServiceProvider.php: -------------------------------------------------------------------------------- 1 | app->environment('production')) { 26 | URL::forceScheme('https'); 27 | } 28 | //Paginator::useBootstrapThree(); 29 | Paginator::useBootstrap(); 30 | Schema::defaultStringLength(191); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /app/Providers/AuthServiceProvider.php: -------------------------------------------------------------------------------- 1 | 14 | */ 15 | protected $policies = [ 16 | // 'App\Models\Model' => 'App\Policies\ModelPolicy', 17 | ]; 18 | 19 | /** 20 | * Register any authentication / authorization services. 21 | */ 22 | public function boot(): void 23 | { 24 | // 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/Providers/BroadcastServiceProvider.php: -------------------------------------------------------------------------------- 1 | > 16 | */ 17 | protected $listen = [ 18 | Registered::class => [ 19 | SendEmailVerificationNotification::class, 20 | ], 21 | \SocialiteProviders\Manager\SocialiteWasCalled::class => [ 22 | 'SocialiteProviders\\YouTube\\YouTubeExtendSocialite@handle', 23 | 'SocialiteProviders\\Twitch\\TwitchExtendSocialite@handle', 24 | 'SocialiteProviders\\Instagram\\InstagramExtendSocialite@handle', 25 | 'SocialiteProviders\\ThirtySevenSignals\\ThirtySevenSignalsExtendSocialite@handle', 26 | 'SocialiteProviders\\LinkedIn\\LinkedInExtendSocialite@handle', 27 | ], 28 | ]; 29 | 30 | /** 31 | * Register any events for your application. 32 | */ 33 | public function boot(): void 34 | { 35 | parent::boot(); 36 | 37 | // 38 | } 39 | 40 | /** 41 | * Determine if events and listeners should be automatically discovered. 42 | */ 43 | public function shouldDiscoverEvents(): bool 44 | { 45 | return false; 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /app/Providers/MacroServiceProvider.php: -------------------------------------------------------------------------------- 1 | validateEmail($user)) { 21 | return true; 22 | } 23 | 24 | $activationRepostory = new ActivationRepository(); 25 | $activationRepostory->createTokenAndSendEmail($user); 26 | } 27 | 28 | /** 29 | * Validate the Users Email. 30 | * 31 | * @param User $user 32 | * @return bool 33 | */ 34 | protected function validateEmail(User $user) 35 | { 36 | $validator = Validator::make(['email' => $user->email], ['email' => 'required|email']); 37 | 38 | if ($validator->fails()) { 39 | return false; 40 | } 41 | 42 | return true; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /app/Traits/CaptchaTrait.php: -------------------------------------------------------------------------------- 1 | verify($response, $remoteip); 23 | 24 | if ($resp->isSuccess()) { 25 | return true; 26 | } 27 | 28 | return false; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /app/Traits/CaptureIpTrait.php: -------------------------------------------------------------------------------- 1 | ['api/*', 'sanctum/csrf-cookie'], 19 | 20 | 'allowed_methods' => ['*'], 21 | 22 | 'allowed_origins' => ['*'], 23 | 24 | 'allowed_origins_patterns' => [], 25 | 26 | 'allowed_headers' => ['*'], 27 | 28 | 'exposed_headers' => [], 29 | 30 | 'max_age' => 0, 31 | 32 | 'supports_credentials' => false, 33 | 34 | ]; 35 | -------------------------------------------------------------------------------- /config/debugbar.php: -------------------------------------------------------------------------------- 1 | env('DEBUG_BAR_ENVIRONMENT'), 9 | 10 | ]; 11 | -------------------------------------------------------------------------------- /config/laravelPhpInfo.php: -------------------------------------------------------------------------------- 1 | 'layouts.app', 13 | 14 | // Enable `auth` middleware 15 | 'authEnabled' => true, 16 | 17 | // Enable Optional Roles Middleware 18 | 'rolesEnabled' => true, 19 | 20 | // Optional Roles Middleware 21 | 'rolesMiddlware' => ['activated', 'role:admin', 'activity', 'twostep'], 22 | 23 | // Switch Between bootstrap 3 `panel` and bootstrap 4 `card` classes 24 | 'bootstapVersion' => '4', 25 | 26 | // Additional Card classes for styling - 27 | // See: https://getbootstrap.com/docs/4.0/components/card/#background-and-color 28 | // Example classes: 'text-white bg-primary mb-3' 29 | 'bootstrapCardClasses' => '', 30 | 31 | // Inline CSS 32 | 'usePHPinfoCSS' => true, 33 | 34 | ]; 35 | -------------------------------------------------------------------------------- /config/usersmanagement.php: -------------------------------------------------------------------------------- 1 | true, 13 | 'paginateListSize' => env('USER_LIST_PAGINATION_SIZE', 25), 14 | 15 | // Enable Search Users- Uses jQuery Ajax 16 | 'enableSearchUsers' => true, 17 | 18 | // Users List JS DataTables - not recommended use with pagination 19 | 'enabledDatatablesJs' => false, 20 | 'datatablesJsStartCount' => 25, 21 | 'datatablesCssCDN' => 'https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css', 22 | 'datatablesJsCDN' => 'https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js', 23 | 'datatablesJsPresetCDN' => 'https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js', 24 | 25 | // Bootstrap Tooltips 26 | 'tooltipsEnabled' => false, 27 | 'enableBootstrapPopperJsCdn' => true, 28 | 'bootstrapPopperJsCdn' => 'https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js', 29 | 30 | ]; 31 | -------------------------------------------------------------------------------- /config/view.php: -------------------------------------------------------------------------------- 1 | [ 17 | resource_path('views'), 18 | ], 19 | 20 | /* 21 | |-------------------------------------------------------------------------- 22 | | Compiled View Path 23 | |-------------------------------------------------------------------------- 24 | | 25 | | This option determines where all the compiled Blade templates will be 26 | | stored for your application. Typically, this is within the storage 27 | | directory. However, as usual, you are free to change this value. 28 | | 29 | */ 30 | 31 | 'compiled' => env( 32 | 'VIEW_COMPILED_PATH', 33 | realpath(storage_path('framework/views')) 34 | ), 35 | 36 | ]; 37 | -------------------------------------------------------------------------------- /database/.gitignore: -------------------------------------------------------------------------------- 1 | *.sqlite 2 | *.sqlite-journal 3 | *.sqlite* 4 | -------------------------------------------------------------------------------- /database/factories/UserFactory.php: -------------------------------------------------------------------------------- 1 | 11 | */ 12 | class UserFactory extends Factory 13 | { 14 | /** 15 | * Define the model's default state. 16 | * 17 | * @return array 18 | */ 19 | public function definition(): array 20 | { 21 | $userRole = Role::whereName('User')->first(); 22 | 23 | return [ 24 | 'name' => fake()->name(), 25 | 'first_name' => fake()->firstName, 26 | 'last_name' => fake()->lastName, 27 | 'email' => fake()->unique()->safeEmail(), 28 | 'email_verified_at' => now(), 29 | 'password' => bcrypt('secret'), 30 | 'token' => str_random(64), 31 | 'activated' => true, 32 | 'remember_token' => Str::random(10), 33 | 'signup_ip_address' => fake()->ipv4, 34 | 'signup_confirmation_ip_address' => fake()->ipv4, 35 | ]; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /database/migrations/2014_10_12_000000_create_users_table.php: -------------------------------------------------------------------------------- 1 | bigIncrements('id'); 18 | $table->string('name')->unique(); 19 | $table->string('first_name')->nullable(); 20 | $table->string('last_name')->nullable(); 21 | $table->string('email')->unique()->nullable(); 22 | $table->timestamp('email_verified_at')->nullable(); 23 | $table->string('password'); 24 | $table->rememberToken(); 25 | $table->boolean('activated')->default(false); 26 | $table->string('token'); 27 | $table->ipAddress('signup_ip_address')->nullable(); 28 | $table->ipAddress('signup_confirmation_ip_address')->nullable(); 29 | $table->ipAddress('signup_sm_ip_address')->nullable(); 30 | $table->ipAddress('admin_ip_address')->nullable(); 31 | $table->ipAddress('updated_ip_address')->nullable(); 32 | $table->ipAddress('deleted_ip_address')->nullable(); 33 | $table->timestamps(); 34 | $table->softDeletes(); 35 | }); 36 | } 37 | 38 | /** 39 | * Reverse the migrations. 40 | * 41 | * @return void 42 | */ 43 | public function down(): void 44 | { 45 | Schema::dropIfExists('users'); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /database/migrations/2014_10_12_100000_create_password_resets_table.php: -------------------------------------------------------------------------------- 1 | increments('id'); 18 | $table->string('email')->index(); 19 | $table->string('token')->index(); 20 | $table->timestamp('created_at')->nullable(); 21 | }); 22 | } 23 | 24 | /** 25 | * Reverse the migrations. 26 | * 27 | * @return void 28 | */ 29 | public function down(): void 30 | { 31 | Schema::dropIfExists('password_resets'); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /database/migrations/2016_01_15_105324_create_roles_table.php: -------------------------------------------------------------------------------- 1 | hasTable($table); 19 | 20 | if (! $tableCheck) { 21 | Schema::connection($connection)->create($table, function (Blueprint $table) { 22 | $table->increments('id')->unsigned(); 23 | $table->string('name'); 24 | $table->string('slug')->unique(); 25 | $table->string('description')->nullable(); 26 | $table->integer('level')->default(1); 27 | $table->timestamps(); 28 | $table->softDeletes(); 29 | }); 30 | } 31 | } 32 | 33 | /** 34 | * Reverse the migrations. 35 | * 36 | * @return void 37 | */ 38 | public function down(): void 39 | { 40 | $connection = config('roles.connection'); 41 | $table = config('roles.rolesTable'); 42 | Schema::connection($connection)->dropIfExists($table); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /database/migrations/2016_01_15_114412_create_role_user_table.php: -------------------------------------------------------------------------------- 1 | hasTable($table); 20 | 21 | if (! $tableCheck) { 22 | Schema::connection($connection)->create($table, function (Blueprint $table) use ($rolesTable) { 23 | $table->increments('id')->unsigned(); 24 | $table->integer('role_id')->unsigned()->index(); 25 | $table->foreign('role_id')->references('id')->on($rolesTable)->onDelete('cascade'); 26 | $table->unsignedBigInteger('user_id')->unsigned()->index(); 27 | $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); 28 | $table->timestamps(); 29 | $table->softDeletes(); 30 | }); 31 | } 32 | } 33 | 34 | /** 35 | * Reverse the migrations. 36 | * 37 | * @return void 38 | */ 39 | public function down(): void 40 | { 41 | $connection = config('roles.connection'); 42 | $table = config('roles.roleUserTable'); 43 | Schema::connection($connection)->dropIfExists($table); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /database/migrations/2016_01_26_115212_create_permissions_table.php: -------------------------------------------------------------------------------- 1 | hasTable($table); 19 | 20 | if (! $tableCheck) { 21 | Schema::connection($connection)->create($table, function (Blueprint $table) { 22 | $table->increments('id')->unsigned(); 23 | $table->string('name'); 24 | $table->string('slug')->unique(); 25 | $table->string('description')->nullable(); 26 | $table->string('model')->nullable(); 27 | $table->timestamps(); 28 | $table->softDeletes(); 29 | }); 30 | } 31 | } 32 | 33 | /** 34 | * Reverse the migrations. 35 | * 36 | * @return void 37 | */ 38 | public function down(): void 39 | { 40 | $connection = config('roles.connection'); 41 | $table = config('roles.permissionsTable'); 42 | Schema::connection($connection)->dropIfExists($table); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /database/migrations/2016_02_09_132439_create_permission_user_table.php: -------------------------------------------------------------------------------- 1 | hasTable($table); 20 | 21 | if (! $tableCheck) { 22 | Schema::connection($connection)->create($table, function (Blueprint $table) use ($permissionsTable) { 23 | $table->increments('id')->unsigned(); 24 | $table->integer('permission_id')->unsigned()->index(); 25 | $table->foreign('permission_id')->references('id')->on($permissionsTable)->onDelete('cascade'); 26 | $table->unsignedBigInteger('user_id')->unsigned()->index(); 27 | $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); 28 | $table->timestamps(); 29 | $table->softDeletes(); 30 | }); 31 | } 32 | } 33 | 34 | /** 35 | * Reverse the migrations. 36 | * 37 | * @return void 38 | */ 39 | public function down(): void 40 | { 41 | $connection = config('roles.connection'); 42 | $table = config('roles.permissionsUserTable'); 43 | Schema::connection($connection)->dropIfExists($table); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /database/migrations/2017_03_09_082449_create_social_logins_table.php: -------------------------------------------------------------------------------- 1 | bigIncrements('id'); 19 | $table->unsignedBigInteger('user_id')->unsigned()->index(); 20 | $table->string('provider', 100); 21 | $table->text('social_id'); 22 | $table->timestamps(); 23 | 24 | // Relationships 25 | $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); 26 | }); 27 | } 28 | 29 | /** 30 | * Reverse the migrations. 31 | * 32 | * @return void 33 | */ 34 | public function down(): void 35 | { 36 | Schema::dropIfExists('social_logins'); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /database/migrations/2017_03_09_082526_create_activations_table.php: -------------------------------------------------------------------------------- 1 | bigIncrements('id'); 19 | $table->unsignedBigInteger('user_id')->unsigned()->index(); 20 | $table->string('token'); 21 | $table->ipAddress('ip_address'); 22 | $table->timestamps(); 23 | 24 | //Relationships 25 | $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); 26 | }); 27 | } 28 | 29 | /** 30 | * Reverse the migrations. 31 | * 32 | * @return void 33 | */ 34 | public function down(): void 35 | { 36 | Schema::dropIfExists('activations'); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /database/migrations/2017_03_20_213554_create_themes_table.php: -------------------------------------------------------------------------------- 1 | bigIncrements('id')->index(); 18 | $table->string('name')->index()->unique(); 19 | $table->string('link')->unique(); 20 | $table->string('notes')->nullable(); 21 | $table->boolean('status')->default(1); 22 | $table->morphs('taggable'); 23 | $table->timestamps(); 24 | $table->softDeletes(); 25 | }); 26 | } 27 | 28 | /** 29 | * Reverse the migrations. 30 | * 31 | * @return void 32 | */ 33 | public function down(): void 34 | { 35 | Schema::dropIfExists('themes'); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /database/migrations/2017_03_21_042918_create_profiles_table.php: -------------------------------------------------------------------------------- 1 | increments('id'); 19 | $table->unsignedBigInteger('user_id')->unsigned()->index(); 20 | $table->unsignedBigInteger('theme_id')->unsigned()->default(1); 21 | $table->string('location')->nullable(); 22 | $table->text('bio')->nullable(); 23 | $table->string('twitter_username')->nullable(); 24 | $table->string('github_username')->nullable(); 25 | $table->string('avatar')->nullable(); 26 | $table->boolean('avatar_status')->default(0); 27 | $table->timestamps(); 28 | 29 | //Relationships 30 | $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); 31 | $table->foreign('theme_id')->references('id')->on('themes'); 32 | }); 33 | } 34 | 35 | /** 36 | * Reverse the migrations. 37 | * 38 | * @return void 39 | */ 40 | public function down(): void 41 | { 42 | Schema::dropIfExists('profiles'); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /database/migrations/2019_02_19_032636_create_laravel_blocker_types_table.php: -------------------------------------------------------------------------------- 1 | getConnectionName(); 19 | $table = $blocked->getTableName(); 20 | $tableCheck = Schema::connection($connection)->hasTable($table); 21 | 22 | if (! $tableCheck) { 23 | Schema::connection($connection)->create($table, function (Blueprint $table) { 24 | $table->increments('id'); 25 | $table->string('slug')->unique(); 26 | $table->string('name'); 27 | $table->timestamps(); 28 | $table->softDeletes(); 29 | }); 30 | } 31 | } 32 | 33 | /** 34 | * Reverse the migrations. 35 | * 36 | * @return void 37 | */ 38 | public function down(): void 39 | { 40 | $blockedType = new BlockedType(); 41 | $connection = $blockedType->getConnectionName(); 42 | $table = $blockedType->getTableName(); 43 | 44 | Schema::connection($connection)->dropIfExists($table); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /database/migrations/2019_08_19_000000_create_failed_jobs_table.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->string('uuid')->unique(); 19 | $table->text('connection'); 20 | $table->text('queue'); 21 | $table->longText('payload'); 22 | $table->longText('exception'); 23 | $table->timestamp('failed_at')->useCurrent(); 24 | }); 25 | } 26 | 27 | /** 28 | * Reverse the migrations. 29 | * 30 | * @return void 31 | */ 32 | public function down(): void 33 | { 34 | Schema::dropIfExists('failed_jobs'); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php: -------------------------------------------------------------------------------- 1 | id(); 16 | $table->morphs('tokenable'); 17 | $table->string('name'); 18 | $table->string('token', 64)->unique(); 19 | $table->text('abilities')->nullable(); 20 | $table->timestamp('last_used_at')->nullable(); 21 | $table->timestamp('expires_at')->nullable(); 22 | $table->timestamps(); 23 | }); 24 | } 25 | 26 | /** 27 | * Reverse the migrations. 28 | */ 29 | public function down(): void 30 | { 31 | Schema::dropIfExists('personal_access_tokens'); 32 | } 33 | }; 34 | -------------------------------------------------------------------------------- /database/migrations/2023_02_26_001638_create_email_log.php: -------------------------------------------------------------------------------- 1 | id(); 18 | $table->dateTime('date'); 19 | $table->string('from')->nullable(); 20 | $table->string('to')->nullable(); 21 | $table->string('cc')->nullable(); 22 | $table->string('bcc')->nullable(); 23 | $table->string('subject'); 24 | $table->text('body'); 25 | $table->text('headers')->nullable(); 26 | $table->longText('attachments')->nullable(); 27 | }); 28 | } 29 | 30 | /** 31 | * Reverse the migrations. 32 | * 33 | * @return void 34 | */ 35 | public function down(): void 36 | { 37 | Schema::dropIfExists('email_log'); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /database/seeders/ConnectRelationshipsSeeder.php: -------------------------------------------------------------------------------- 1 | first(); 27 | foreach ($permissions as $permission) { 28 | $roleAdmin->attachPermission($permission); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /database/seeders/DatabaseSeeder.php: -------------------------------------------------------------------------------- 1 | call(PermissionsTableSeeder::class); 21 | $this->call(RolesTableSeeder::class); 22 | $this->call(ConnectRelationshipsSeeder::class); 23 | $this->call(ThemesTableSeeder::class); 24 | $this->call(UsersTableSeeder::class); 25 | 26 | Model::reguard(); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /database/seeders/RolesTableSeeder.php: -------------------------------------------------------------------------------- 1 | 'Admin', 24 | 'slug' => 'admin', 25 | 'description' => 'Admin Role', 26 | 'level' => 5, 27 | ], 28 | [ 29 | 'name' => 'User', 30 | 'slug' => 'user', 31 | 'description' => 'User Role', 32 | 'level' => 1, 33 | ], 34 | [ 35 | 'name' => 'Unverified', 36 | 'slug' => 'unverified', 37 | 'description' => 'Unverified Role', 38 | 'level' => 0, 39 | ], 40 | ]; 41 | 42 | /* 43 | * Add Role Items 44 | * 45 | */ 46 | foreach ($RoleItems as $RoleItem) { 47 | $newRoleItem = Role::where('slug', '=', $RoleItem['slug'])->first(); 48 | if (null === $newRoleItem) { 49 | $newRoleItem = Role::create([ 50 | 'name' => $RoleItem['name'], 51 | 'slug' => $RoleItem['slug'], 52 | 'description' => $RoleItem['description'], 53 | 'level' => $RoleItem['level'], 54 | ]); 55 | } 56 | } 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /database/seeders/UsersTableSeeder.php: -------------------------------------------------------------------------------- 1 | slug.'@user.com'; 25 | $this->createUser($faker, $email, $role); 26 | } 27 | } 28 | 29 | private function createUser($faker, $email, $role) 30 | { 31 | $user = User::where('email', '=', $email)->first(); 32 | if (null === $user) { 33 | $user = User::create([ 34 | 'name' => $faker->userName, 35 | 'first_name' => $faker->firstName, 36 | 'last_name' => $faker->lastName, 37 | 'email' => $email, 38 | 'password' => Hash::make('password'), 39 | 'token' => str_random(64), 40 | 'activated' => true, 41 | 'signup_ip_address' => $faker->ipv4, 42 | 'signup_confirmation_ip_address' => $faker->ipv4, 43 | ]); 44 | 45 | $user->profile()->save(new Profile()); 46 | $user->attachRole($role); 47 | $user->save(); 48 | } 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /license.svg: -------------------------------------------------------------------------------- 1 | licenselicenseMITMIT -------------------------------------------------------------------------------- /phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | ./tests/Unit 10 | 11 | 12 | ./tests/Feature 13 | 14 | 15 | 16 | 17 | ./app 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: [ 3 | require("tailwindcss"), 4 | require("tailwindcss/nesting")(require("postcss-nesting")), 5 | require("autoprefixer"), 6 | require("postcss-import"), 7 | ], 8 | }; 9 | -------------------------------------------------------------------------------- /public/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | 3 | Options -MultiViews -Indexes 4 | 5 | 6 | RewriteEngine On 7 | 8 | # Handle Authorization Header 9 | RewriteCond %{HTTP:Authorization} . 10 | RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 11 | 12 | # Redirect Trailing Slashes If Not A Folder... 13 | RewriteCond %{REQUEST_FILENAME} !-d 14 | RewriteCond %{REQUEST_URI} (.+)/$ 15 | RewriteRule ^ %1 [L,R=301] 16 | 17 | # Send Requests To Front Controller... 18 | RewriteCond %{REQUEST_FILENAME} !-d 19 | RewriteCond %{REQUEST_FILENAME} !-f 20 | RewriteRule ^ index.php [L] 21 | 22 | -------------------------------------------------------------------------------- /public/build/assets/app-ff50b1ad.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"app-ff50b1ad.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"} -------------------------------------------------------------------------------- /public/build/assets/app-legacy-b4f7101a.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"app-legacy-b4f7101a.js","sources":[],"sourcesContent":[],"names":[],"mappings":""} -------------------------------------------------------------------------------- /public/build/assets/fa-brands-400-2ef6fdde.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-brands-400-2ef6fdde.ttf -------------------------------------------------------------------------------- /public/build/assets/fa-brands-400-f4617423.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-brands-400-f4617423.woff2 -------------------------------------------------------------------------------- /public/build/assets/fa-regular-400-12dea17b.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-regular-400-12dea17b.ttf -------------------------------------------------------------------------------- /public/build/assets/fa-regular-400-7ba24c41.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-regular-400-7ba24c41.woff2 -------------------------------------------------------------------------------- /public/build/assets/fa-solid-900-67a880b4.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-solid-900-67a880b4.ttf -------------------------------------------------------------------------------- /public/build/assets/fa-solid-900-e2c5cf54.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-solid-900-e2c5cf54.woff2 -------------------------------------------------------------------------------- /public/build/assets/fa-v4compatibility-7c377405.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-v4compatibility-7c377405.woff2 -------------------------------------------------------------------------------- /public/build/assets/fa-v4compatibility-8d9500e8.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fa-v4compatibility-8d9500e8.ttf -------------------------------------------------------------------------------- /public/build/assets/fontawesome-webfont-2adefcbc.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fontawesome-webfont-2adefcbc.woff2 -------------------------------------------------------------------------------- /public/build/assets/fontawesome-webfont-7bfcab6d.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fontawesome-webfont-7bfcab6d.eot -------------------------------------------------------------------------------- /public/build/assets/fontawesome-webfont-aa58f33f.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fontawesome-webfont-aa58f33f.ttf -------------------------------------------------------------------------------- /public/build/assets/fontawesome-webfont-ba0c59de.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/fontawesome-webfont-ba0c59de.woff -------------------------------------------------------------------------------- /public/build/assets/wink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/build/assets/wink.png -------------------------------------------------------------------------------- /public/build/pluginWebUpdateNotice/webUpdateNoticeInjectStyle.css: -------------------------------------------------------------------------------- 1 | .plugin-web-update-notice { 2 | position: fixed; 3 | user-select: none; 4 | z-index: 99999; 5 | } 6 | 7 | .plugin-web-update-notice-content { 8 | background-color: #fff; 9 | border-radius: 4px; 10 | color: #000000d9; 11 | box-shadow: 0 3px 6px -4px #0000001f, 0 6px 16px #00000014, 0 9px 28px 8px #0000000d; 12 | padding: 8px 16px; 13 | line-height: 1.5715; 14 | width: 280px; 15 | } 16 | 17 | .plugin-web-update-notice-content-title { 18 | font-weight: 500; 19 | margin-bottom: 4px; 20 | font-size: 14px; 21 | line-height: 24px; 22 | } 23 | 24 | .plugin-web-update-notice-content-desc { 25 | font-size: 13px; 26 | line-height: 20px; 27 | } 28 | .plugin-web-update-notice-tools { 29 | margin-top: 4px; 30 | text-align: right; 31 | } 32 | .plugin-web-update-notice-btn { 33 | padding: 3px 8px; 34 | line-height: 1; 35 | border-radius: 4px; 36 | transition: background-color .2s linear; 37 | cursor: pointer; 38 | font-size: 14px; 39 | } 40 | .plugin-web-update-notice-btn:hover { 41 | background-color: rgba(64, 87, 109, .1); 42 | } 43 | .plugin-web-update-notice-refresh-btn { 44 | color: #1677ff; 45 | } 46 | .plugin-web-update-notice-dismiss-btn { 47 | color: rgba(0,0,0,.25); 48 | } 49 | -------------------------------------------------------------------------------- /public/build/pluginWebUpdateNotice/web_version_by_plugin.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "1679400513508" 3 | } -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/favicon.ico -------------------------------------------------------------------------------- /public/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /public/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /public/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /public/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /public/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /public/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /public/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /public/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /public/fonts/vendor/font-awesome/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/font-awesome/fontawesome-webfont.eot -------------------------------------------------------------------------------- /public/fonts/vendor/font-awesome/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/font-awesome/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /public/fonts/vendor/font-awesome/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/font-awesome/fontawesome-webfont.woff -------------------------------------------------------------------------------- /public/fonts/vendor/font-awesome/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/fonts/vendor/font-awesome/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /public/images/wink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/public/images/wink.png -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | -------------------------------------------------------------------------------- /public/web.config: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /resources/assets/js/app.js: -------------------------------------------------------------------------------- 1 | import { createApp } from "vue"; 2 | import "./bootstrap"; 3 | import Alpine from "alpinejs"; 4 | import * as bootstrap from "bootstrap"; // eslint-disable-line no-unused-vars 5 | import jQuery from "jquery"; 6 | import axios from "axios"; 7 | import "@fortawesome/fontawesome-free/css/all.min.css"; 8 | // import VueSecureHTML from 'vue-html-secure'; 9 | 10 | Object.assign(window, { $: jQuery, jQuery }); 11 | window.jQuery = window.$ = $; 12 | window.Alpine = Alpine; 13 | // window.Vue = require('vue'); 14 | 15 | Alpine.start(); 16 | 17 | axios.defaults.withCredentials = true; 18 | 19 | const app = createApp({}); 20 | 21 | $.fn.extend({ 22 | toggleText: function (a, b) { 23 | return this.text(this.text() == b ? a : b); 24 | }, 25 | 26 | /** 27 | * Remove element classes with wildcard matching. Optionally add classes: 28 | * $( '#foo' ).alterClass( 'foo-* bar-*', 'foobar' ) 29 | * 30 | */ 31 | alterClass: function (removals, additions) { 32 | var self = this; 33 | 34 | if (removals.indexOf("*") === -1) { 35 | // Use native jQuery methods if there is no wildcard matching 36 | self.removeClass(removals); 37 | return !additions ? self : self.addClass(additions); 38 | } 39 | 40 | var patt = new RegExp( 41 | "\\s" + 42 | removals.replace(/\*/g, "[A-Za-z0-9-_]+").split(" ").join("\\s|\\s") + 43 | "\\s", 44 | "g" 45 | ); 46 | 47 | self.each(function (i, it) { 48 | var cn = " " + it.className + " "; 49 | while (patt.test(cn)) { 50 | cn = cn.replace(patt, " "); 51 | } 52 | it.className = $.trim(cn); 53 | }); 54 | 55 | return !additions ? self : self.addClass(additions); 56 | }, 57 | }); 58 | -------------------------------------------------------------------------------- /resources/assets/js/components/ExampleComponent.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 22 | -------------------------------------------------------------------------------- /resources/assets/sass/_avatar.scss: -------------------------------------------------------------------------------- 1 | .user-avatar { 2 | width: 80px; 3 | height: 80px; 4 | margin: 2em auto; 5 | display: block; 6 | @include vendor(border-radius, 50%); 7 | @include draggless(); 8 | } 9 | .user-avatar-nav { 10 | margin-top: -3px; 11 | margin-right: 1em; 12 | float: left; 13 | width: 30px; 14 | height: 30px; 15 | @include vendor(border-radius, 50%); 16 | @include draggless(); 17 | } 18 | 19 | #avatar_container { 20 | height: 202px; 21 | 22 | .dz-preview { 23 | display: none; 24 | } 25 | .dropzone { 26 | border: 1px dashed rgba(0, 0, 0, 0.3); 27 | background: rgba($white, 0.05); 28 | height: 180px; 29 | padding: 0; 30 | @include vendor(border-radius, $standard-radius); 31 | } 32 | .dz-message { 33 | margin-top: -20px 1em 0; 34 | padding: 0; 35 | text-align: center; 36 | 37 | &.dz-default { 38 | margin: 0 2em; 39 | } 40 | } 41 | } 42 | 43 | .user-image { 44 | width: 100px; 45 | height: 100px; 46 | border: 2px solid $brand-info; 47 | } 48 | -------------------------------------------------------------------------------- /resources/assets/sass/_badges.scss: -------------------------------------------------------------------------------- 1 | .badge { 2 | &.badge-primary { 3 | background-color: $brand-primary; 4 | } 5 | } 6 | 7 | // A Good time for an @extend 8 | .panel-default > .panel-heading { 9 | .badge { 10 | &.badge-primary { 11 | background-color: $brand-primary; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /resources/assets/sass/_helpers.scss: -------------------------------------------------------------------------------- 1 | .no-padding { 2 | padding: 0; 3 | } 4 | 5 | .start-hidden { 6 | display: none; 7 | } 8 | 9 | .no-shadow { 10 | @include vendor(box-shadow, none !important); 11 | @include vendor(outline, none !important); 12 | -webkit-appearance: none !important; 13 | } 14 | 15 | .border-bottom { 16 | border-bottom: 1px #f8f8f8 solid; 17 | margin: 5px 0 5px 0; 18 | } 19 | 20 | .border-radius { 21 | @include vendor(border-radius, $standard-radius); 22 | } 23 | 24 | @media (max-width: $mq-tiny) { 25 | .hidden-xxxs { 26 | display: none; 27 | } 28 | } 29 | 30 | @media (max-width: $phone) { 31 | .hidden-xxs { 32 | display: none; 33 | } 34 | } 35 | .center-block { 36 | display: block; 37 | margin-right: auto; 38 | margin-left: auto; 39 | } 40 | @media (min-width: $bs4-phone) { 41 | .rounded-left-sm-up { 42 | border-top-left-radius: $border-radius !important; 43 | border-bottom-left-radius: $border-radius !important; 44 | } 45 | } 46 | @media (min-width: $tablet) { 47 | .rounded-left-md-up { 48 | border-top-left-radius: $border-radius !important; 49 | border-bottom-left-radius: $border-radius !important; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /resources/assets/sass/_hideShowPassword.scss: -------------------------------------------------------------------------------- 1 | ::-ms-reveal, 2 | ::-ms-clear { 3 | display: none !important; 4 | } 5 | 6 | .hideShowPassword-wrapper { 7 | width: 100%; 8 | 9 | &.pass-strength-visible { 10 | .hideShowPassword-toggle { 11 | top: 13px !important; 12 | } 13 | } 14 | } 15 | 16 | .hideShowPassword-toggle { 17 | background-color: transparent; 18 | background-image: url("/images/wink.png"); /* fallback */ 19 | background-image: url("/images/wink.svg"), none; 20 | background-position: 0 center; 21 | background-repeat: no-repeat; 22 | border: 2px solid transparent; 23 | border-radius: 0.25em; 24 | cursor: pointer; 25 | font-size: 100%; 26 | height: 44px; 27 | margin: 0; 28 | max-height: 100%; 29 | padding: 0; 30 | overflow: "hidden"; 31 | text-indent: -999em; 32 | width: 46px; 33 | margin-top: -18px !important; 34 | top: 18px !important; 35 | -moz-appearance: none; 36 | -webkit-appearance: none; 37 | border: none; 38 | 39 | &:hover, 40 | &:focus { 41 | border-color: #0088cc; 42 | outline: transparent; 43 | } 44 | } 45 | 46 | .hideShowPassword-toggle-hide { 47 | background-position: -44px center; 48 | } 49 | -------------------------------------------------------------------------------- /resources/assets/sass/_lists.scss: -------------------------------------------------------------------------------- 1 | .list-group-responsive { 2 | span { 3 | display: block; 4 | overflow-y: auto; 5 | } 6 | } 7 | 8 | .theme-details-list { 9 | strong { 10 | width: 5.5em; 11 | display: inline-block; 12 | position: absolute; 13 | } 14 | span { 15 | margin-left: 5.5em; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /resources/assets/sass/_logs.scss: -------------------------------------------------------------------------------- 1 | .logs-container { 2 | .stack { 3 | font-size: 0.85em; 4 | } 5 | .date { 6 | min-width: 75px; 7 | } 8 | .text { 9 | word-break: break-all; 10 | } 11 | a.llv-active { 12 | z-index: 2; 13 | background-color: $brand-primary; 14 | border-color: $brand-primary; 15 | color: $white; 16 | 17 | .badge { 18 | background: $white; 19 | color: $text-color; 20 | margin-top: 0.2em; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /resources/assets/sass/_margins.scss: -------------------------------------------------------------------------------- 1 | .margin-half { 2 | margin: 0.5em; 3 | } 4 | 5 | .margin-bottom-half { 6 | margin-bottom: 1em; 7 | } 8 | 9 | @media (max-width: $phone) { 10 | .margin-half-phone { 11 | margin: 0.5em; 12 | } 13 | 14 | .margin-bottom-half-phone { 15 | margin-bottom: 1em; 16 | } 17 | 18 | .margin-top-half-phone { 19 | margin-top: 1em; 20 | } 21 | } 22 | 23 | @media (max-width: $tablet) { 24 | .margin-half-tablet { 25 | margin: 0.5em; 26 | } 27 | 28 | .margin-bottom-half-tablet { 29 | margin-bottom: 1em; 30 | } 31 | 32 | .margin-top-half-tablet { 33 | margin-top: 1em; 34 | } 35 | } 36 | 37 | @mixin generate-margins { 38 | @each $type in $types { 39 | @each $direction in $directions { 40 | @for $i from 0 through ($num-of-classes) - 1 { 41 | .#{$type}-#{$direction}-#{$i} { 42 | #{$type}-#{$direction}: (#{$i}em); 43 | } 44 | } 45 | } 46 | @each $query, $z in $queries { 47 | @media (min-width: #{$query}) { 48 | @each $direction in $directions { 49 | @for $i from 0 through ($num-of-classes) - 1 { 50 | .#{$type}-#{$direction}-#{$z}-#{$i} { 51 | #{$type}-#{$direction}: (#{$i}em); 52 | } 53 | } 54 | } 55 | } 56 | } 57 | } 58 | } 59 | @include generate-margins(); 60 | -------------------------------------------------------------------------------- /resources/assets/sass/_mixins.scss: -------------------------------------------------------------------------------- 1 | @mixin vendor($property, $value) { 2 | -webkit-#{$property}: $value; 3 | -moz-#{$property}: $value; 4 | -ms-#{$property}: $value; 5 | -o-#{$property}: $value; 6 | #{$property}: $value; 7 | } 8 | 9 | @mixin transitions() { 10 | @include vendor(transition, all $transitionSpeed ease-in-out); 11 | } 12 | 13 | @mixin transitionless() { 14 | @include vendor(transition, none); 15 | } 16 | 17 | @mixin draggless() { 18 | @include vendor(user-drag, none); 19 | @include vendor(user-select, none); 20 | } 21 | -------------------------------------------------------------------------------- /resources/assets/sass/_modals.scss: -------------------------------------------------------------------------------- 1 | .modal { 2 | .modal-header { 3 | border-top-left-radius: 3px; 4 | -moz-border-radius-top-left: 3px; 5 | -webkit-border-top-left-radius: 3px; 6 | border-top-right-radius: 3px; 7 | -moz-border-radius-top-right: 3px; 8 | -webkit-border-top-right-radius: 3px; 9 | } 10 | &.modal-success { 11 | .modal-header { 12 | color: $white; 13 | background-color: $brand-success; 14 | } 15 | } 16 | &.modal-warning { 17 | .modal-header { 18 | color: $white; 19 | background-color: $brand-warning; 20 | } 21 | } 22 | &.modal-danger { 23 | .modal-header { 24 | color: $white; 25 | background-color: $brand-danger; 26 | } 27 | } 28 | &.modal-info { 29 | .modal-header { 30 | color: $white; 31 | background-color: $brand-info; 32 | } 33 | } 34 | &.modal-primary { 35 | .modal-header { 36 | color: $white; 37 | background-color: $brand-primary; 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /resources/assets/sass/_panels.scss: -------------------------------------------------------------------------------- 1 | .panel-primary { 2 | border-color: $brand-primary; 3 | > .panel-heading { 4 | color: $white; 5 | background-color: $brand-primary; 6 | border-color: $brand-primary; 7 | } 8 | } 9 | 10 | .panel-info { 11 | border-color: $brand-info; 12 | > .panel-heading { 13 | color: $white; 14 | background-color: $brand-info; 15 | border-color: $brand-info; 16 | } 17 | } 18 | 19 | .panel-success { 20 | border-color: $brand-success; 21 | > .panel-heading { 22 | color: $white; 23 | background-color: $brand-success; 24 | border-color: $brand-success; 25 | } 26 | } 27 | 28 | .panel-warning { 29 | border-color: $brand-warning; 30 | > .panel-heading { 31 | color: $white; 32 | background-color: $brand-warning; 33 | border-color: $brand-warning; 34 | } 35 | } 36 | 37 | .panel-danger { 38 | border-color: $brand-danger; 39 | > .panel-heading { 40 | color: $white; 41 | background-color: $brand-danger; 42 | border-color: $brand-danger; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /resources/assets/sass/_socials.scss: -------------------------------------------------------------------------------- 1 | .facebook { 2 | background-color: $facebook; 3 | border-color: $facebook; 4 | &:hover { 5 | background-color: lighten($facebook, 10%); 6 | border-color: lighten($facebook, 10%); 7 | } 8 | &:focus, 9 | &:active { 10 | background-color: darken($facebook, 10%) !important; 11 | border-color: darken($facebook, 10%) !important; 12 | } 13 | } 14 | .twitter { 15 | background-color: $twitter; 16 | border-color: $twitter; 17 | &:hover { 18 | background-color: lighten($twitter, 10%); 19 | border-color: lighten($twitter, 10%); 20 | } 21 | &:focus, 22 | &:active { 23 | background-color: darken($twitter, 10%) !important; 24 | border-color: darken($twitter, 10%) !important; 25 | } 26 | } 27 | .google { 28 | background-color: $google; 29 | border-color: $google; 30 | &:hover { 31 | background-color: lighten($google, 10%); 32 | border-color: lighten($google, 10%); 33 | } 34 | &:focus, 35 | &:active { 36 | background-color: darken($google, 10%) !important; 37 | border-color: darken($google, 10%) !important; 38 | } 39 | } 40 | .github { 41 | background-color: $github; 42 | border-color: $github; 43 | &:hover { 44 | background-color: lighten($github, 10%); 45 | border-color: lighten($github, 10%); 46 | } 47 | &:focus, 48 | &:active { 49 | background-color: darken($github, 10%) !important; 50 | border-color: darken($github, 10%) !important; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /resources/assets/sass/_typography.scss: -------------------------------------------------------------------------------- 1 | .text-danger { 2 | color: $brand-danger; 3 | } 4 | .text-warning { 5 | color: $brand-warning; 6 | } 7 | 8 | .text-muted { 9 | color: #00b1b1; 10 | } 11 | 12 | .text-larger { 13 | font-size: 1.15em; 14 | } 15 | 16 | @media (min-width: $tablet + 1) { 17 | .text-left-tablet { 18 | text-align: left; 19 | } 20 | } 21 | 22 | // $brand-primary: #3097D1; 23 | // $brand-info: #8eb4cb; 24 | // $brand-success: #2ab27b; 25 | // $brand-warning: #cbb956; 26 | // $brand-danger: #bf5329; 27 | -------------------------------------------------------------------------------- /resources/assets/sass/_user-profile.scss: -------------------------------------------------------------------------------- 1 | .profile-sidebar { 2 | border-right: 2px solid $body-bg; 3 | padding: 0 !important; 4 | .nav-pills { 5 | a { 6 | border-radius: 0 !important; 7 | border-bottom: 2px solid $body-bg; 8 | &:first-child { 9 | border-radius: $border-radius $border-radius 0 0 !important; 10 | @media (min-width: $bs4-phone) { 11 | border-radius: $border-radius 0 0 0 !important; 12 | } 13 | } 14 | &.active { 15 | background: $secondary; 16 | } 17 | } 18 | } 19 | } 20 | 21 | .account-admin-subnav { 22 | li { 23 | &:first-child { 24 | border-radius: $border-radius 0 0 $border-radius; 25 | } 26 | &:last-child { 27 | border-radius: 0 $border-radius $border-radius 0; 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /resources/assets/sass/_variables.scss: -------------------------------------------------------------------------------- 1 | // Body 2 | $white: #ffffff; 3 | $body-bg: #f5f8fa; 4 | 5 | // Social Media 6 | $facebook: #4863ae; 7 | $twitter: #46c0fb; 8 | $google: #dd4b39; 9 | $github: #4183c4; 10 | 11 | // Brands 12 | $brand-primary: #3097d1; 13 | $brand-info: #8eb4cb; 14 | $brand-success: #2ab27b; 15 | $brand-warning: #cbb956; 16 | $brand-danger: #bf5329; 17 | $text-color: #636b6f; 18 | 19 | // Typography 20 | $font-family-sans-serif: "Raleway", sans-serif; 21 | $font-size-base: 0.9rem; 22 | $line-height-base: 1.6; 23 | 24 | // Transitions 25 | $transitionSpeed: 0.35s; 26 | 27 | // Radius' 28 | $standard-radius: 3px; 29 | 30 | // MQ's 31 | $mq-tiny: 320px; 32 | $phone: 480px; 33 | $bs4-phone: 576px; 34 | $tablet: 767px; 35 | $desktop: 992px; 36 | $lg-desktop: 1200px; 37 | 38 | // Margins and Padding 39 | $num-of-classes: 5; 40 | $directions: ("top", "bottom", "left", "right"); 41 | $types: ("margin", "padding"); 42 | $queries: ( 43 | $mq-tiny: "xxs", 44 | $phone: "xs", 45 | $tablet: "sm", 46 | $desktop: "md", 47 | $lg-desktop: "lg", 48 | ); 49 | 50 | // // Buttons 51 | $btn-default-color: $text-color; 52 | 53 | // Inputs 54 | $input-border: lighten($text-color, 40%); 55 | $input-border-focus: lighten($brand-primary, 25%); 56 | $input-color-placeholder: lighten($text-color, 30%); 57 | 58 | // Panels / Cards 59 | $panel-default-heading-bg: $white; 60 | -------------------------------------------------------------------------------- /resources/assets/sass/_wells.scss: -------------------------------------------------------------------------------- 1 | // .well { 2 | // min-height: 20px; 3 | // padding: 19px; 4 | // margin-bottom: 20px; 5 | // background-color: $well-bg; 6 | // border: 1px solid $well-border; 7 | // border-radius: $border-radius-base; 8 | // @include box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); 9 | // blockquote { 10 | // border-color: #ddd; 11 | // border-color: rgba(0,0,0,.15); 12 | // } 13 | 14 | .well { 15 | &.well-white { 16 | background-color: $white; 17 | } 18 | 19 | &.well-primary { 20 | background-color: $brand-primary; 21 | border-color: $brand-primary; 22 | color: $white; 23 | } 24 | 25 | &.well-info { 26 | background-color: $brand-info; 27 | border-color: $brand-info; 28 | color: $white; 29 | } 30 | 31 | &.well-success { 32 | background-color: $brand-success; 33 | border-color: $brand-success; 34 | color: $white; 35 | } 36 | 37 | &.well-warning { 38 | background-color: $brand-warning; 39 | border-color: $brand-warning; 40 | color: $white; 41 | } 42 | 43 | &.well-danger { 44 | background-color: $brand-danger; 45 | border-color: $brand-danger; 46 | color: $white; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /resources/assets/sass/app.scss: -------------------------------------------------------------------------------- 1 | // Fonts 2 | @import url("https://fonts.googleapis.com/css?family=Raleway:300,400,600"); 3 | 4 | // Variables 5 | @import "variables"; 6 | 7 | // Bootstrap 8 | @import "~bootstrap/scss/bootstrap"; 9 | 10 | .navbar-laravel { 11 | background-color: #fff; 12 | box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04); 13 | } 14 | 15 | // Font Awesome 16 | @import "~font-awesome/css/font-awesome.css"; // V4 17 | @import "@fortawesome/fontawesome-free/css/all.css"; // V5 18 | 19 | // // Dropzone 20 | // @import "~dropzone/dist/basic"; 21 | // @import "~dropzone/dist/dropzone"; 22 | 23 | @import "mixins"; 24 | @import "margins"; 25 | @import "helpers"; 26 | @import "typography"; 27 | @import "buttons"; 28 | @import "bootstrap-social"; 29 | @import "badges"; 30 | @import "panels"; 31 | @import "wells"; 32 | @import "modals"; 33 | @import "socials"; 34 | @import "forms"; 35 | @import "lists"; 36 | @import "avatar"; 37 | @import "logs"; 38 | @import "password"; 39 | @import "hideShowPassword"; 40 | @import "visibility"; 41 | @import "user-profile"; 42 | -------------------------------------------------------------------------------- /resources/assets/scss/laravel2step/_animations.scss: -------------------------------------------------------------------------------- 1 | .invalid-shake { 2 | -webkit-animation: kf_shake 0.4s 1 linear; 3 | -moz-animation: kf_shake 0.4s 1 linear; 4 | -o-animation: kf_shake 0.4s 1 linear; 5 | } 6 | @-webkit-keyframes kf_shake { 7 | 0% { 8 | -webkit-transform: translate(40px); 9 | } 10 | 20% { 11 | -webkit-transform: translate(-40px); 12 | } 13 | 40% { 14 | -webkit-transform: translate(20px); 15 | } 16 | 60% { 17 | -webkit-transform: translate(-20px); 18 | } 19 | 80% { 20 | -webkit-transform: translate(8px); 21 | } 22 | 100% { 23 | -webkit-transform: translate(0px); 24 | } 25 | } 26 | @-moz-keyframes kf_shake { 27 | 0% { 28 | -moz-transform: translate(40px); 29 | } 30 | 20% { 31 | -moz-transform: translate(-40px); 32 | } 33 | 40% { 34 | -moz-transform: translate(20px); 35 | } 36 | 60% { 37 | -moz-transform: translate(-20px); 38 | } 39 | 80% { 40 | -moz-transform: translate(8px); 41 | } 42 | 100% { 43 | -moz-transform: translate(0px); 44 | } 45 | } 46 | @-o-keyframes kf_shake { 47 | 0% { 48 | -o-transform: translate(40px); 49 | } 50 | 20% { 51 | -o-transform: translate(-40px); 52 | } 53 | 40% { 54 | -o-transform: translate(20px); 55 | } 56 | 60% { 57 | -o-transform: translate(-20px); 58 | } 59 | 80% { 60 | -o-transform: translate(8px); 61 | } 62 | 100% { 63 | -o-origin-transform: translate(0px); 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /resources/assets/scss/laravel2step/_mixins.scss: -------------------------------------------------------------------------------- 1 | @mixin vendor($property, $value) { 2 | -webkit-#{$property}: $value; 3 | -moz-#{$property}: $value; 4 | -ms-#{$property}: $value; 5 | -o-#{$property}: $value; 6 | #{$property}: $value; 7 | } 8 | 9 | @mixin transitions() { 10 | @include vendor(transition, all $transitionSpeed ease-in-out); 11 | } 12 | 13 | @mixin transitionless() { 14 | @include vendor(transition, none); 15 | } 16 | 17 | @mixin draggless() { 18 | @include vendor(user-drag, none); 19 | @include vendor(user-select, none); 20 | } 21 | -------------------------------------------------------------------------------- /resources/assets/scss/laravel2step/_modals.scss: -------------------------------------------------------------------------------- 1 | .modal { 2 | .modal-header { 3 | @include vendor(border-radius, $standardRadius $standardRadius 0 0); 4 | } 5 | &.modal-success { 6 | .modal-header { 7 | color: $white; 8 | background-color: $brand-success; 9 | } 10 | } 11 | &.modal-warning { 12 | .modal-header { 13 | color: $white; 14 | background-color: $brand-warning; 15 | } 16 | } 17 | &.modal-danger { 18 | .modal-header { 19 | color: $white; 20 | background-color: $brand-danger; 21 | } 22 | } 23 | &.modal-info { 24 | .modal-header { 25 | color: $white; 26 | background-color: $brand-info; 27 | } 28 | } 29 | &.modal-primary { 30 | .modal-header { 31 | color: $white; 32 | background-color: $brand-primary; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /resources/assets/scss/laravel2step/_variables.scss: -------------------------------------------------------------------------------- 1 | // Colors 2 | $white: #ffffff; 3 | 4 | // Brands 5 | $brand-primary: #3097d1; 6 | $brand-info: #8eb4cb; 7 | $brand-success: #2ab27b; 8 | $brand-warning: #cbb956; 9 | $brand-danger: #bf5329; 10 | 11 | // Transitions 12 | $transitionSpeed: 0.15s; 13 | 14 | // Radius' 15 | $standardRadius: 5px; 16 | 17 | // Breakpoints 18 | $breakpoint-xs: 500px; 19 | $breakpoint-sm: 650px; 20 | -------------------------------------------------------------------------------- /resources/assets/scss/laravel2step/_verification.scss: -------------------------------------------------------------------------------- 1 | .two-step-verification { 2 | .verification-exceeded-panel { 3 | margin-top: 2.5em; 4 | h4, 5 | p { 6 | margin: 0 0 2.5em 0; 7 | } 8 | 9 | .locked-icon { 10 | font-size: 3.5em; 11 | margin: 30px 0 0; 12 | } 13 | } 14 | #failed_login_alert { 15 | display: none; 16 | .glyphicon { 17 | font-size: 6em; 18 | text-align: center; 19 | display: block; 20 | margin: 0.25em 0 0.75em; 21 | } 22 | } 23 | .panel { 24 | overflow: hidden; 25 | } 26 | .verification-form-panel { 27 | margin-top: 2.5em; 28 | .code-inputs { 29 | margin-bottom: 3em; 30 | } 31 | .submit-container { 32 | margin-bottom: 2em; 33 | } 34 | input { 35 | font-size: 2em; 36 | height: 90px; 37 | } 38 | } 39 | @media (min-width: $breakpoint-xs) { 40 | .verification-form-panel input { 41 | font-size: 3em; 42 | height: 140px; 43 | } 44 | } 45 | @media (min-width: $breakpoint-sm) { 46 | .verification-form-panel input { 47 | font-size: 4em; 48 | height: 180px; 49 | } 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /resources/assets/scss/laravel2step/app.scss: -------------------------------------------------------------------------------- 1 | @import "variables"; 2 | @import "mixins"; 3 | @import "animations"; 4 | @import "modals"; 5 | @import "verification"; 6 | -------------------------------------------------------------------------------- /resources/lang/en/emails.php: -------------------------------------------------------------------------------- 1 | 'Activation required', 18 | 'activationGreeting' => 'Welcome!', 19 | 'activationMessage' => 'You need to activate your email before you can start using all of our services.', 20 | 'activationButton' => 'Activate', 21 | 'activationThanks' => 'Thank you for using our application!', 22 | 23 | // Goobye email. 24 | 'goodbyeSubject' => 'Sorry to see you go...', 25 | 'goodbyeGreeting' => 'Hello :username,', 26 | 'goodbyeMessage' => 'We are very sorry to see you go. We wanted to let you know that your account has been deleted. Thank for the time we shared. You have '.config('settings.restoreUserCutoff').' days to restore your account.', 27 | 'goodbyeButton' => 'Restore Account', 28 | 'goodbyeThanks' => 'We hope to see you again!', 29 | 30 | ]; 31 | -------------------------------------------------------------------------------- /resources/lang/en/modals.php: -------------------------------------------------------------------------------- 1 | 'Confirm Save', 16 | 'confirm_modal_title_std_msg' => 'Please confirm your request.', 17 | 18 | // Confirm Save Modal; 19 | 'confirm_modal_button_save_text' => 'Save Changes', 20 | 'confirm_modal_button_save_icon' => 'fa-save', 21 | 'confirm_modal_button_cancel_text' => 'Cancel', 22 | 'confirm_modal_button_cancel_icon' => 'fa-times', 23 | 'edit_user__modal_text_confirm_title' => 'Confirm Save', 24 | 'edit_user__modal_text_confirm_message' => 'Please confirm your changes.', 25 | 26 | // Form Modal 27 | 'form_modal_default_title' => 'Confirm', 28 | 'form_modal_default_message' => 'Please Confirm', 29 | 'form_modal_default_btn_cancel' => 'Cancel', 30 | 'form_modal_default_btn_submit' => 'Confirm Submit', 31 | 32 | ]; 33 | -------------------------------------------------------------------------------- /resources/lang/en/pagination.php: -------------------------------------------------------------------------------- 1 | '« Previous', 17 | 'next' => 'Next »', 18 | 19 | ]; 20 | -------------------------------------------------------------------------------- /resources/lang/en/passwords.php: -------------------------------------------------------------------------------- 1 | 'Passwords must be at least six characters and match the confirmation.', 17 | 'reset' => 'Your password has been reset!', 18 | 'sent' => 'We have e-mailed your password reset link!', 19 | 'token' => 'This password reset token is invalid.', 20 | 'user' => "We can't find a user with that e-mail address.", 21 | 22 | ]; 23 | -------------------------------------------------------------------------------- /resources/lang/en/permsandroles.php: -------------------------------------------------------------------------------- 1 | 'View', 7 | 'permissionCreate' => 'Create', 8 | 'permissionEdit' => 'Edit', 9 | 'permissionDelete' => 'Delete', 10 | 11 | ]; 12 | -------------------------------------------------------------------------------- /resources/lang/en/socials.php: -------------------------------------------------------------------------------- 1 | 'You did not share your profile data with our social app. ', 13 | 'noProvider' => 'No such provider. ', 14 | 'registerSuccess' => 'You have successfully registered! ', 15 | 16 | ]; 17 | -------------------------------------------------------------------------------- /resources/lang/en/terms.php: -------------------------------------------------------------------------------- 1 | [ 13 | 'title' => 'Terms', 14 | 'term1' => 'This site may use cookies to better your experience.', 15 | 'term2' => 'Public profile data on this site such as username, first name, user bio, twitter username, and github username may be visible to other users.', 16 | 'term3' => 'This save protects user data and does make it public or sell it.', 17 | 'term4' => '', 18 | 'term5' => '', 19 | 'term6' => '', 20 | 'term7' => '', 21 | 'term8' => '', 22 | ], 23 | ]; 24 | -------------------------------------------------------------------------------- /resources/lang/en/titles.php: -------------------------------------------------------------------------------- 1 | 'Laravel', 6 | 'app2' => 'Auth :version', 7 | 'auth' => 'Auth', 8 | 'home' => 'Home', 9 | 'login' => 'Login', 10 | 'logout' => 'Logout', 11 | 'register' => 'Register', 12 | 'resetPword' => 'Reset Password', 13 | 'toggleNav' => 'Toggle Navigation', 14 | 'profile' => 'Profile', 15 | 'editProfile' => 'Edit Profile', 16 | 'createProfile' => 'Create Profile', 17 | 'adminDropdownNav' => 'Admin', 18 | 19 | 'activation' => 'Registration Started | Activation Required', 20 | 'exceeded' => 'Activation Error', 21 | 22 | 'editProfile' => 'Edit Profile', 23 | 'createProfile' => 'Create Profile', 24 | 'adminUserList' => 'Users Administration', 25 | 'adminEditUsers' => 'Edit Users', 26 | 'adminNewUser' => 'Create New User', 27 | 28 | 'adminThemesList' => 'Themes', 29 | 'adminThemesAdd' => 'Add New Theme', 30 | 31 | 'adminLogs' => 'Log Files', 32 | 'adminActivity' => 'Activity Log', 33 | 'adminPHP' => 'PHP Information', 34 | 'adminRoutes' => 'Routing Details', 35 | 36 | 'activeUsers' => 'Active Users', 37 | 'laravelBlocker' => 'Blocker', 38 | 39 | 'laravelroles' => 'Roles Administration', 40 | ]; 41 | -------------------------------------------------------------------------------- /resources/lang/fr/emails.php: -------------------------------------------------------------------------------- 1 | 'Activation requise !', 22 | 'activationGreeting' => 'Bienvenue', 23 | 'activationMessage' => 'Vous devez valider adresse mail avant de pouvoir utiliser nos services.', 24 | 'activationButton' => 'Valider !', 25 | 'activationThanks' => 'Merci d\'utiliser notre site Internet.', 26 | 27 | /* 28 | * Goobye email. 29 | * 30 | */ 31 | 'goodbyeSubject' => 'Désolé de vous voir partir...', 32 | 'goodbyeGreeting' => 'Bonjour :username,', 33 | 'goodbyeMessage' => 'Nous vous confirmons la suppression de votre compte.'. 34 | 'Nous sommes désolés de vous voir partir.'. 35 | 'Merci pour le temps que nous avons passé ensemble.'. 36 | 'Vous pouvez récupérer votre compte dans les '.config('settings.restoreUserCutoff').' jours à venir.', 37 | 'goodbyeButton' => 'Récupérer votre compte', 38 | 'goodbyeThanks' => 'Nous espérons vous revoir bientôt.', 39 | 40 | ]; 41 | -------------------------------------------------------------------------------- /resources/lang/fr/modals.php: -------------------------------------------------------------------------------- 1 | 'Confirmer l\'enregistrement', 16 | 'confirm_modal_title_std_msg' => 'Confirmer la demande.', 17 | 18 | // Confirm Save Modal; 19 | 'confirm_modal_button_save_text' => 'Enregistrer', 20 | 'confirm_modal_button_save_icon' => 'fa-save', 21 | 'confirm_modal_button_cancel_text' => 'Annuler', 22 | 'confirm_modal_button_cancel_icon' => 'fa-times', 23 | 'edit_user__modal_text_confirm_title' => 'Confirmer l\'enregistrement', 24 | 'edit_user__modal_text_confirm_message' => 'Veuillez confirmer les modifications.', 25 | 26 | // Form Modal 27 | 'form_modal_default_title' => 'Confirmer', 28 | 'form_modal_default_message' => 'Confirmer SVP', 29 | 'form_modal_default_btn_cancel' => 'Annuler', 30 | 'form_modal_default_btn_submit' => 'Confirmer l\'enregistrement', 31 | 32 | ]; 33 | -------------------------------------------------------------------------------- /resources/lang/fr/pagination.php: -------------------------------------------------------------------------------- 1 | '« Précédent', 17 | 'next' => 'Suivant »', 18 | 19 | ]; 20 | -------------------------------------------------------------------------------- /resources/lang/fr/passwords.php: -------------------------------------------------------------------------------- 1 | 'Les mots de passe doivent contenir au moins six caractères et être identiques.', 17 | 'reset' => 'Votre mot de passe a été réinitialisé !', 18 | 'sent' => 'Nous vous avons envoyé un courriel contenant le lien de réinitialisation de votre mot de passe !', 19 | 'token' => "Ce jeton de réinitialisation du mot de passe n'est pas valide.", 20 | 'user' => "Aucun utilisateur n'a été trouvé avec cette adresse courriel.", 21 | 22 | ]; 23 | -------------------------------------------------------------------------------- /resources/lang/fr/permsandroles.php: -------------------------------------------------------------------------------- 1 | 'Voir', 7 | 'permissionCreate' => 'Créer', 8 | 'permissionEdit' => 'Editer', 9 | 'permissionDelete' => 'Supprimer', 10 | 11 | ]; 12 | -------------------------------------------------------------------------------- /resources/lang/fr/socials.php: -------------------------------------------------------------------------------- 1 | 'Vous n\'avez pas partagé les données du réseau social avec notre site Internet.', 13 | 'noProvider' => 'Aucun fournisseur social connu.', 14 | 'registerSuccess' => 'Vous êtes bien enregistré, merci.', 15 | 16 | ]; 17 | -------------------------------------------------------------------------------- /resources/lang/fr/titles.php: -------------------------------------------------------------------------------- 1 | 'GFC Foot Indoor', 6 | 'app2' => 'GFC FI Auth 2.0', 7 | 'home' => 'Accueil', 8 | 'login' => 'Connexion', 9 | 'logout' => 'Se déconnecter', 10 | 'register' => 'S\'enregistrer', 11 | 'resetPword' => 'Réinitialisation mot de passe', 12 | 'toggleNav' => 'Changer de menu', 13 | 'profile' => 'Profil', 14 | 'editProfile' => 'Editer le profil', 15 | 'createProfile' => 'Créer un profil', 16 | 17 | 'activation' => 'Inscription initiée | Activation requise', 18 | 'exceeded' => 'Erreur d\'activation', 19 | 20 | 'editProfile' => 'Editer le profil', 21 | 'createProfile' => 'Créer un profil', 22 | 'adminUserList' => 'Administration membres', 23 | 'adminEditUsers' => 'Edition membres', 24 | 'adminNewUser' => 'Créer un nouveau membre', 25 | 26 | 'adminThemesList' => 'Thèmes', 27 | 'adminThemesAdd' => 'Ajouter un nouveau thème', 28 | 29 | 'adminLogs' => 'Fichier Log', 30 | 'adminPHP' => 'Information PHP', 31 | 'adminRoutes' => 'Details routage', 32 | 33 | ]; 34 | -------------------------------------------------------------------------------- /resources/lang/pt-br/emails.php: -------------------------------------------------------------------------------- 1 | 'Ativação obrigatória', 22 | 'activationGreeting' => 'Bem-vindo!', 23 | 'activationMessage' => 'Você precisa ativar o seu email para poder usufluir de todos os novos serviços', 24 | 'activationButton' => 'Ativado', 25 | 'activationThanks' => 'Obrigado por utilizar nosso sistema', 26 | 27 | /* 28 | * Goobye email. 29 | * 30 | */ 31 | 'goodbyeSubject' => 'Lamentamos você ir', 32 | 'goodbyeGreeting' => 'Olá :username,', 33 | 'goodbyeMessage' => 'Lamentamos ver você ir. Sua conta foi excluída. Agradecemos o tempo que compartilhamos '.config('settings.restoreUserCutoff').' alguns dias para restaurar sua conta.', 34 | 'goodbyeButton' => 'Sua conta foi recuperada!', 35 | 'goodbyeThanks' => 'Esperamos vê-lo novamente!', 36 | 37 | ]; 38 | -------------------------------------------------------------------------------- /resources/lang/pt-br/modals.php: -------------------------------------------------------------------------------- 1 | 'Confirmar Salvar', 16 | 'confirm_modal_title_std_msg' => 'Por favor confirme sua solicitação', 17 | 18 | // Confirm Save Modal; 19 | 'confirm_modal_button_save_text' => 'Mudanças salvas com sucesso!', 20 | 'confirm_modal_button_save_icon' => 'fa-save', 21 | 'confirm_modal_button_cancel_text' => 'Cancelar', 22 | 'confirm_modal_button_cancel_icon' => 'fa-times', 23 | 'edit_user__modal_text_confirm_title' => 'Confirmar Salvar', 24 | 'edit_user__modal_text_confirm_message' => 'Por favor confirme suas mudanças.', 25 | 26 | // Form Modal 27 | 'form_modal_default_title' => 'Confirmado', 28 | 'form_modal_default_message' => 'Por favor! Confirme', 29 | 'form_modal_default_btn_cancel' => 'Cancelar', 30 | 'form_modal_default_btn_submit' => 'Confirmar solicitação', 31 | 32 | ]; 33 | -------------------------------------------------------------------------------- /resources/lang/pt-br/pagination.php: -------------------------------------------------------------------------------- 1 | '« Anterior', 17 | 'next' => 'Próximo »', 18 | 19 | ]; 20 | -------------------------------------------------------------------------------- /resources/lang/pt-br/passwords.php: -------------------------------------------------------------------------------- 1 | 'As senha devem possuir pelo menos seis caracteres', 17 | 'reset' => 'Sua senha foi redefinada!', 18 | 'sent' => 'Enviamos um link para redefinar sua senha em seu email', 19 | 'token' => 'Este codigo de confirmação de redefinição de senha e inválido', 20 | 'user' => 'Não encontramos um usuário com esse endereço de email', 21 | 22 | ]; 23 | -------------------------------------------------------------------------------- /resources/lang/pt-br/permsandroles.php: -------------------------------------------------------------------------------- 1 | 'Ver', 7 | 'permissionCreate' => 'Criar', 8 | 'permissionEdit' => 'Editar', 9 | 'permissionDelete' => 'Apagar', 10 | 11 | ]; 12 | -------------------------------------------------------------------------------- /resources/lang/pt-br/socials.php: -------------------------------------------------------------------------------- 1 | 'Você não compartilhou suas informações com o nosso aplicativo ', 13 | 'noProvider' => 'Não encontrado ', 14 | 'registerSuccess' => 'Você foi registrado com sucesso! ', 15 | 16 | ]; 17 | -------------------------------------------------------------------------------- /resources/lang/pt-br/titles.php: -------------------------------------------------------------------------------- 1 | 'Laravel', 6 | 'app2' => 'Auth 4.0', 7 | 'home' => 'Inicio', 8 | 'login' => 'Login', 9 | 'logout' => 'Logout', 10 | 'register' => 'Registrar', 11 | 'resetPword' => 'Recuperar Senha', 12 | 'toggleNav' => 'Alterar navegação', 13 | 'profile' => 'Perfil', 14 | 'editProfile' => 'Editar Perfil', 15 | 'createProfile' => 'Criar Perfil', 16 | 'adminDropdownNav' => 'Admin', 17 | 18 | 'activation' => 'Registro inciado em | Ativação Obrigatória', 19 | 'exceeded' => 'Erro de Ativação', 20 | 21 | 'editProfile' => 'Editar perfil', 22 | 'createProfile' => 'Criar perfil', 23 | 'adminUserList' => 'Usuários Administradores', 24 | 'adminEditUsers' => 'Editar usuários', 25 | 'adminNewUser' => 'Criar um novo usuário', 26 | 27 | 'adminThemesList' => 'Temas', 28 | 'adminThemesAdd' => 'Adicionar um novo tema', 29 | 30 | 'adminLogs' => 'Arquivos de Log', 31 | 'adminActivity' => 'Log de Atividade', 32 | 'adminPHP' => 'Informação sobre o PHP ', 33 | 'adminRoutes' => 'Detalhes das rotas', 34 | 35 | 'activeUsers' => 'Usuários Ativos.', 36 | ]; 37 | -------------------------------------------------------------------------------- /resources/lang/vendor/laravelPhpInfo/en/laravel-phpinfo.php: -------------------------------------------------------------------------------- 1 | "PHP Information", 12 | ]; 13 | -------------------------------------------------------------------------------- /resources/views/auth/activation.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layouts.app') 2 | 3 | @section('template_title') 4 | {{ trans('titles.activation') }} 5 | @endsection 6 | 7 | @section('content') 8 |
9 |
10 |
11 |
12 |
{{ trans('titles.activation') }}
13 |
14 |

{{ trans('auth.regThanks') }}

15 |

{{ trans('auth.anEmailWasSent',['email' => $email, 'date' => $date ] ) }}

16 |

{{ trans('auth.clickInEmail') }}

17 |

{{ trans('auth.clickHereResend') }}

18 |
19 |
20 |
21 |
22 |
23 | @endsection 24 | -------------------------------------------------------------------------------- /resources/views/auth/exceeded.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layouts.app') 2 | 3 | @section('template_title') 4 | {!! trans('titles.exceeded') !!} 5 | @endsection 6 | 7 | @section('content') 8 |
9 |
10 |
11 |
12 |
13 | {!! trans('titles.exceeded') !!} 14 |
15 |
16 |

17 | {!! trans('auth.tooManyEmails', ['email' => $email, 'hours' => $hours]) !!} 18 |

19 |
20 |
21 |
22 |
23 |
24 | @endsection 25 | -------------------------------------------------------------------------------- /resources/views/errors/401.blade.php: -------------------------------------------------------------------------------- 1 | @extends('errors::minimal') 2 | 3 | @section('title', __('Unauthorized')) 4 | @section('code', '401') 5 | @section('message', __('Unauthorized')) 6 | -------------------------------------------------------------------------------- /resources/views/errors/403.blade.php: -------------------------------------------------------------------------------- 1 | @extends('errors::minimal') 2 | 3 | @section('title', __('Forbidden')) 4 | @section('code', '403') 5 | @section('message', __($exception->getMessage() ?: 'Forbidden')) 6 | -------------------------------------------------------------------------------- /resources/views/errors/404.blade.php: -------------------------------------------------------------------------------- 1 | @extends('errors::minimal') 2 | 3 | @section('title', __('Not Found')) 4 | @section('code', '404') 5 | @section('message', __('Not Found')) 6 | -------------------------------------------------------------------------------- /resources/views/errors/500.blade.php: -------------------------------------------------------------------------------- 1 | @extends('errors::minimal') 2 | 3 | @section('title', __('Server Error')) 4 | @section('code', '500') 5 | @section('message', __('Server Error')) 6 | -------------------------------------------------------------------------------- /resources/views/errors/503.blade.php: -------------------------------------------------------------------------------- 1 | @extends('errors::minimal') 2 | 3 | @section('title', __('Service Unavailable')) 4 | @section('code', '503') 5 | @section('message', __('Service Unavailable')) 6 | -------------------------------------------------------------------------------- /resources/views/home.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layouts.app') 2 | 3 | @section('content') 4 |
5 |
6 |
7 |
8 |
Dashboard
9 | 10 |
11 | You are logged in! 12 |
13 |
14 |
15 |
16 |
17 | @endsection 18 | -------------------------------------------------------------------------------- /resources/views/layouts/guest.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {{ config('app.name', 'Laravel') }} 9 | 10 | 11 | 12 | 13 | 14 | 15 | @vite(['resources/css/app.css', 'resources/js/app.js']) 16 | 17 | 18 |
19 |
20 | 21 | 22 | 23 |
24 | 25 |
26 | {{ $slot }} 27 |
28 |
29 | 30 | 31 | -------------------------------------------------------------------------------- /resources/views/modals/modal-delete.blade.php: -------------------------------------------------------------------------------- 1 | 23 | -------------------------------------------------------------------------------- /resources/views/modals/modal-form.blade.php: -------------------------------------------------------------------------------- 1 | 22 | -------------------------------------------------------------------------------- /resources/views/modals/modal-save.blade.php: -------------------------------------------------------------------------------- 1 | 25 | -------------------------------------------------------------------------------- /resources/views/pages/admin/active-users.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layouts.app') 2 | 3 | @section('template_title') 4 | {{ trans('titles.activeUsers') }} 5 | @endsection 6 | 7 | @section('content') 8 | 9 | 10 | 11 | @endsection 12 | -------------------------------------------------------------------------------- /resources/views/pages/admin/home.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layouts.app') 2 | 3 | @section('template_title') 4 | Welcome {{ Auth::user()->name }} 5 | @endsection 6 | 7 | @section('head') 8 | @endsection 9 | 10 | @section('content') 11 |
12 |
13 |
14 | 15 | @include('panels.welcome-panel') 16 | 17 |
18 |
19 |
20 | 21 | @endsection 22 | -------------------------------------------------------------------------------- /resources/views/pages/status.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layouts.app') 2 | 3 | @section('template_title') 4 | See Message 5 | @endsection 6 | 7 | @section('head') 8 | @endsection 9 | 10 | @section('content') 11 | 12 |
13 |
14 |
15 | @include('partials.form-status') 16 |
17 |
18 |
19 | 20 | @endsection -------------------------------------------------------------------------------- /resources/views/pages/user/home.blade.php: -------------------------------------------------------------------------------- 1 | @extends('layouts.app') 2 | 3 | @section('template_title') 4 | {{ Auth::user()->name }}'s' Homepage 5 | @endsection 6 | 7 | @section('template_fastload_css') 8 | @endsection 9 | 10 | @section('content') 11 | 12 |
13 |
14 |
15 | 16 | @include('panels.welcome-panel') 17 | 18 |
19 |
20 |
21 | 22 | @endsection 23 | 24 | @section('footer_scripts') 25 | @endsection 26 | -------------------------------------------------------------------------------- /resources/views/partials/errors.blade.php: -------------------------------------------------------------------------------- 1 | @if(session()->has('errors')) 2 |
3 | 4 |

Following errors occurred:

5 | 10 |
11 | @endif -------------------------------------------------------------------------------- /resources/views/partials/socials-icons.blade.php: -------------------------------------------------------------------------------- 1 |
2 |
3 | {!! HTML::icon_link(route('social.redirect',['provider' => 'facebook']), 'fa-brands fa-facebook', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-facebook')) !!} 4 | {!! HTML::icon_link(route('social.redirect',['provider' => 'twitter']), 'fa-brands fa-twitter', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-twitter')) !!} 5 | {!! HTML::icon_link(route('social.redirect',['provider' => 'google']), 'fa-brands fa-google-plus', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-google')) !!} 6 | {!! HTML::icon_link(route('social.redirect',['provider' => 'github']), 'fa-brands fa-github', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-github')) !!} 7 | {!! HTML::icon_link(route('social.redirect',['provider' => 'youtube']), 'fa-brands fa-youtube', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-youtube')) !!} 8 | {!! HTML::icon_link(route('social.redirect',['provider' => 'twitch']), 'fa-brands fa-twitch', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-twitch')) !!} 9 | {!! HTML::icon_link(route('social.redirect',['provider' => 'instagram']), 'fa-brands fa-instagram', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-instagram')) !!} 10 | {!! HTML::icon_link(route('social.redirect',['provider' => '37signals']), 'fa fa-signal', '', array('class' => 'btn btn-social-icon btn-lg mb-1 btn-basecamp')) !!} 11 |
12 |
13 | -------------------------------------------------------------------------------- /resources/views/partials/status-panel.blade.php: -------------------------------------------------------------------------------- 1 | @if(session()->has('status')) 2 | @if(session()->get('status') == 'wrong') 3 |
4 |
5 |

{{ session()->get('message') }}

6 |
7 |
8 | @else 9 |
10 |
11 |

{{ session()->get('message') }}

12 |
13 |
14 | @endif 15 | @endif -------------------------------------------------------------------------------- /resources/views/partials/status.blade.php: -------------------------------------------------------------------------------- 1 | @if(Session::has('message')) 2 |
3 | 4 | {{ Session::get('message') }} 5 |
6 | @endif -------------------------------------------------------------------------------- /resources/views/scripts/check-changed.blade.php: -------------------------------------------------------------------------------- 1 | 32 | -------------------------------------------------------------------------------- /resources/views/scripts/datatables.blade.php: -------------------------------------------------------------------------------- 1 | {{-- FYI: Datatables do not support colspan or rowpan --}} 2 | 3 | 4 | 5 | 6 | 7 | 28 | -------------------------------------------------------------------------------- /resources/views/scripts/delete-modal-script.blade.php: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /resources/views/scripts/form-modal-script.blade.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resources/views/scripts/ga-analytics.blade.php: -------------------------------------------------------------------------------- 1 | @if(config('settings.googleanalyticsId')) 2 | {{-- Global site tag (gtag.js) - Google Analytics --}} 3 | 4 | 11 | @endif 12 | -------------------------------------------------------------------------------- /resources/views/scripts/gmaps-address-lookup-api3.blade.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resources/views/scripts/save-modal-script.blade.php: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /resources/views/scripts/toggleStatus.blade.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /resources/views/scripts/tooltips.blade.php: -------------------------------------------------------------------------------- 1 | {{-- 9 | --}} 10 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/create-new.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => 'laravelblocker::blocker.store', 3 | 'method' => 'POST', 4 | 'role' => 'form', 5 | 'class' => 'needs-validation' 6 | ]) !!} 7 | {!! csrf_field() !!} 8 | @include('laravelblocker::forms.partials.item-type-select') 9 | @include('laravelblocker::forms.partials.item-value-input') 10 | @include('laravelblocker::forms.partials.item-blocked-user-select') 11 | @include('laravelblocker::forms.partials.item-note-input') 12 |
13 |
14 | {!! Form::button(trans('laravelblocker::laravelblocker.buttons.create-larger'), array('class' => 'btn btn-success btn-block margin-bottom-1 mb-1 float-right','type' => 'submit' )) !!} 15 |
16 |
17 | {!! Form::close() !!} 18 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/delete-full.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => ['laravelblocker::blocker.destroy', $item->id], 3 | 'method' => 'DELETE', 4 | 'accept-charset' => 'UTF-8', 5 | 'data-toggle' => 'tooltip', 6 | 'title' => trans('laravelblocker::laravelblocker.tooltips.delete') 7 | ]) !!} 8 | {!! Form::hidden("_method", "DELETE") !!} 9 | {!! csrf_field() !!} 10 | 13 | {!! Form::close() !!} 14 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/delete-item.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => ['laravelblocker::blocker.destroy', $item->id], 3 | 'method' => 'DELETE', 4 | 'accept-charset' => 'UTF-8', 5 | 'data-toggle' => 'tooltip', 6 | 'title' => trans('laravelblocker::laravelblocker.tooltips.delete') 7 | ]) !!} 8 | {!! Form::hidden("_method", "DELETE") !!} 9 | {!! csrf_field() !!} 10 | 13 | {!! Form::close() !!} 14 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/delete-sm.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => ['laravelblocker::blocker.destroy', $blockedItem->id], 3 | 'method' => 'DELETE', 4 | 'accept-charset' => 'UTF-8', 5 | 'data-toggle' => 'tooltip', 6 | 'title' => trans('laravelblocker::laravelblocker.tooltips.delete') 7 | ]) !!} 8 | {!! Form::hidden("_method", "DELETE") !!} 9 | {!! csrf_field() !!} 10 | 13 | {!! Form::close() !!} 14 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/destroy-all.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => 'laravelblocker::destroy-all-blocked', 3 | 'method' => 'DELETE', 4 | 'accept-charset' => 'UTF-8' 5 | ]) !!} 6 | {!! Form::hidden("_method", "DELETE") !!} 7 | {!! csrf_field() !!} 8 | 11 | {!! Form::close() !!} 12 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/destroy-full.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => ['laravelblocker::blocker-item-destroy', $item->id], 3 | 'method' => 'DELETE', 4 | 'accept-charset' => 'UTF-8', 5 | 'data-toggle' => 'tooltip', 6 | 'title' => trans("laravelblocker::laravelblocker.tooltips.destroy_blocked_tooltip") 7 | ]) !!} 8 | {!! Form::hidden("_method", "DELETE") !!} 9 | {!! csrf_field() !!} 10 | 13 | {!! Form::close() !!} 14 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/destroy-sm.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => ['laravelblocker::blocker-item-destroy', $blockedItem->id], 3 | 'method' => 'DELETE', 4 | 'accept-charset' => 'UTF-8', 5 | 'data-toggle' => 'tooltip', 6 | 'title' => trans("laravelblocker::laravelblocker.tooltips.destroy_blocked_tooltip") 7 | ]) !!} 8 | {!! Form::hidden("_method", "DELETE") !!} 9 | {!! csrf_field() !!} 10 | 13 | {!! Form::close() !!} 14 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/edit-form.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => ['laravelblocker::blocker.update', $item->id], 3 | 'method' => 'PUT', 4 | 'role' => 'form', 5 | 'class' => 'needs-validation' 6 | ]) !!} 7 | {!! csrf_field() !!} 8 | @include('laravelblocker::forms.partials.item-type-select') 9 | @include('laravelblocker::forms.partials.item-value-input') 10 | @include('laravelblocker::forms.partials.item-blocked-user-select') 11 | @include('laravelblocker::forms.partials.item-note-input') 12 |
13 |
14 | {!! Form::button(trans('laravelblocker::laravelblocker.buttons.save-larger'), array('class' => 'btn btn-success btn-block margin-bottom-1 mb-1 float-right','type' => 'submit' )) !!} 15 |
16 |
17 | {!! Form::close() !!} 18 |
19 |
20 | @include('laravelblocker::forms.delete-full') 21 |
22 |
23 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/partials/item-blocked-user-select.blade.php: -------------------------------------------------------------------------------- 1 |
2 | {!! Form::label('userId', trans('laravelblocker::laravelblocker.forms.blockedUserLabel'), array('class' => 'col-md-3 control-label disabled', 'id' => 'blockerUserLabel1')); !!} 3 |
4 |
5 | 17 |
18 | 21 |
22 |
23 | @if ($errors->has('userId')) 24 | 25 | {{ $errors->first('userId') }} 26 | 27 | @endif 28 |
29 |
30 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/partials/item-note-input.blade.php: -------------------------------------------------------------------------------- 1 |
2 | {!! Form::label('note', trans('laravelblocker::laravelblocker.forms.blockedNoteLabel'), array('class' => 'col-md-3 control-label')); !!} 3 |
4 |
5 | @isset($item) 6 | {!! Form::textarea('note', $item->note, array('id' => 'note', 'class' => $errors->has('note') ? 'form-control is-invalid ' : 'form-control', 'placeholder' => trans('laravelblocker::laravelblocker.forms.blockedNotePH'))) !!} 7 | @else 8 | {!! Form::textarea('note', NULL, array('id' => 'note', 'class' => $errors->has('note') ? 'form-control is-invalid ' : 'form-control', 'placeholder' => trans('laravelblocker::laravelblocker.forms.blockedNotePH'))) !!} 9 | @endisset 10 |
11 | 14 |
15 |
16 | @if ($errors->has('note')) 17 | 18 | {{ $errors->first('note') }} 19 | 20 | @endif 21 |
22 |
23 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/partials/item-type-select.blade.php: -------------------------------------------------------------------------------- 1 |
2 | {!! Form::label('typeId', trans('laravelblocker::laravelblocker.forms.blockedTypeLabel'), array('class' => 'col-md-3 control-label')); !!} 3 |
4 |
5 | 17 |
18 | 21 |
22 |
23 | @if ($errors->has('typeId')) 24 | 25 | {{ $errors->first('typeId') }} 26 | 27 | @endif 28 |
29 |
30 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/partials/item-value-input.blade.php: -------------------------------------------------------------------------------- 1 |
2 | {!! Form::label('value', trans('laravelblocker::laravelblocker.forms.blockedValueLabel'), array('class' => 'col-md-3 control-label', 'id' => 'blockerValueLabel1')); !!} 3 |
4 |
5 | @isset($item) 6 | {!! Form::text('value', $item->value, array('id' => 'value', 'class' => $errors->has('value') ? 'form-control is-invalid ' : 'form-control', 'placeholder' => trans('laravelblocker::laravelblocker.forms.blockedValuePH'))) !!} 7 | @else 8 | {!! Form::text('value', NULL, array('id' => 'value', 'class' => $errors->has('value') ? 'form-control is-invalid ' : 'form-control', 'placeholder' => trans('laravelblocker::laravelblocker.forms.blockedValuePH'))) !!} 9 | @endisset 10 |
11 | 14 |
15 |
16 | @if ($errors->has('value')) 17 | 18 | {{ $errors->first('value') }} 19 | 20 | @endif 21 |
22 |
23 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/restore-all.blade.php: -------------------------------------------------------------------------------- 1 | {!! Form::open([ 2 | 'route' => 'laravelblocker::blocker-deleted-restore-all', 3 | 'method' => 'POST', 4 | 'accept-charset' => 'UTF-8' 5 | ]) !!} 6 | {!! csrf_field() !!} 7 | {!! Form::button(' 8 | ' . trans_choice('laravelblocker::laravelblocker.buttons.restore-all-blocked', 1, ['count' => $blocked->count()]), 9 | [ 10 | 'type' => 'button', 11 | 'class' => 'btn dropdown-item', 12 | 'data-toggle' => 'modal', 13 | 'data-target' => '#confirmRestore', 14 | 'data-title' => trans('laravelblocker::laravelblocker.modals.resotreAllBlockedTitle'), 15 | 'data-message' => trans('laravelblocker::laravelblocker.modals.resotreAllBlockedMessage') 16 | ]) !!} 17 | {!! Form::close() !!} 18 | -------------------------------------------------------------------------------- /resources/views/vendor/forms/restore-item.blade.php: -------------------------------------------------------------------------------- 1 | @if($restoreType == 'full') 2 | @php 3 | $itemId = $item->id; 4 | $itemValue = $item->value; 5 | $itemClasses = 'btn btn-success btn-block'; 6 | $itemText = trans('laravelblocker::laravelblocker.buttons.restore-blocked-item-full'); 7 | @endphp 8 | @endif 9 | @if($restoreType == 'small') 10 | @php 11 | $itemId = $blockedItem->id; 12 | $itemValue = $blockedItem->value; 13 | $itemClasses = 'btn btn-sm btn-success btn-block'; 14 | $itemText = trans('laravelblocker::laravelblocker.buttons.restore-blocked-item'); 15 | @endphp 16 | @endif 17 | 18 | {!! Form::open([ 19 | 'route' => ['laravelblocker::blocker-item-restore', $itemId], 20 | 'method' => 'PUT', 21 | 'accept-charset' => 'UTF-8', 22 | 'data-toggle' => 'tooltip', 23 | 'title' => trans("laravelblocker::laravelblocker.tooltips.restoreItem") 24 | ]) !!} 25 | {!! Form::hidden("_method", "PUT") !!} 26 | {!! csrf_field() !!} 27 | {!! Form::button($itemText, [ 28 | 'type' => 'button', 29 | 'class' => $itemClasses, 30 | 'data-toggle' => 'modal', 31 | 'data-target' => '#confirmRestore', 32 | 'data-title' => trans('laravelblocker::laravelblocker.modals.resotreBlockedItemTitle'), 33 | 'data-message' => trans('laravelblocker::laravelblocker.modals.resotreBlockedItemMessage', ['value' => $itemValue]) 34 | ]) !!} 35 | {!! Form::close() !!} 36 | -------------------------------------------------------------------------------- /resources/views/vendor/laravel-log-viewer/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/resources/views/vendor/laravel-log-viewer/.gitkeep -------------------------------------------------------------------------------- /resources/views/vendor/laravel2step/layouts/app.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | @hasSection('title')@yield('title') | @endif {{ config('app.name', 'Laravel 2-Step Verification') }} 9 | @if(config('laravel2step.laravel2stepBootstrapCssCdnEnbled')) 10 | 11 | @endif 12 | @if(config('laravel2step.laravel2stepAppCssEnabled')) 13 | 14 | @endif 15 | 16 | @yield('head') 17 | 22 | 23 | 24 |
25 | @yield('content') 26 |
27 | @yield('foot') 28 | 29 | 30 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/button.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/footer.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/header.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | @if (trim($slot) === 'Laravel') 5 | 6 | @else 7 | {{ $slot }} 8 | @endif 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/layout.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 25 | 26 | 27 | 28 | 51 | 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/message.blade.php: -------------------------------------------------------------------------------- 1 | @component('mail::layout') 2 | {{-- Header --}} 3 | @slot('header') 4 | @component('mail::header', ['url' => config('app.url')]) 5 | {{ config('app.name') }} 6 | @endcomponent 7 | @endslot 8 | 9 | {{-- Body --}} 10 | {{ $slot }} 11 | 12 | {{-- Subcopy --}} 13 | @isset($subcopy) 14 | @slot('subcopy') 15 | @component('mail::subcopy') 16 | {{ $subcopy }} 17 | @endcomponent 18 | @endslot 19 | @endisset 20 | 21 | {{-- Footer --}} 22 | @slot('footer') 23 | @component('mail::footer') 24 | © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.') 25 | @endcomponent 26 | @endslot 27 | @endcomponent 28 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/panel.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/subcopy.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/html/table.blade.php: -------------------------------------------------------------------------------- 1 |
2 | {{ Illuminate\Mail\Markdown::parse($slot) }} 3 |
4 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/button.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }}: {{ $url }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/footer.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/header.blade.php: -------------------------------------------------------------------------------- 1 | [{{ $slot }}]({{ $url }}) 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/layout.blade.php: -------------------------------------------------------------------------------- 1 | {!! strip_tags($header) !!} 2 | 3 | {!! strip_tags($slot) !!} 4 | @isset($subcopy) 5 | 6 | {!! strip_tags($subcopy) !!} 7 | @endisset 8 | 9 | {!! strip_tags($footer) !!} 10 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/message.blade.php: -------------------------------------------------------------------------------- 1 | @component('mail::layout') 2 | {{-- Header --}} 3 | @slot('header') 4 | @component('mail::header', ['url' => config('app.url')]) 5 | {{ config('app.name') }} 6 | @endcomponent 7 | @endslot 8 | 9 | {{-- Body --}} 10 | {{ $slot }} 11 | 12 | {{-- Subcopy --}} 13 | @isset($subcopy) 14 | @slot('subcopy') 15 | @component('mail::subcopy') 16 | {{ $subcopy }} 17 | @endcomponent 18 | @endslot 19 | @endisset 20 | 21 | {{-- Footer --}} 22 | @slot('footer') 23 | @component('mail::footer') 24 | © {{ date('Y') }} {{ config('app.name') }}. @lang('All rights reserved.') 25 | @endcomponent 26 | @endslot 27 | @endcomponent 28 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/panel.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/subcopy.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/mail/text/table.blade.php: -------------------------------------------------------------------------------- 1 | {{ $slot }} 2 | -------------------------------------------------------------------------------- /resources/views/vendor/modals/confirm-modal.blade.php: -------------------------------------------------------------------------------- 1 | @php 2 | if (!isset($actionBtnIcon)) { 3 | $actionBtnIcon = null; 4 | } else { 5 | $actionBtnIcon = $actionBtnIcon . ' fa-fw'; 6 | } 7 | if (!isset($modalClass)) { 8 | $modalClass = null; 9 | } 10 | if (!isset($btnSubmitText)) { 11 | $btnSubmitText = trans('laravelblocker::laravelblocker.modals.btnConfirm'); 12 | } 13 | @endphp 14 | 35 | -------------------------------------------------------------------------------- /resources/views/vendor/notifications/email.blade.php: -------------------------------------------------------------------------------- 1 | @component('mail::message') 2 | {{-- Greeting --}} 3 | @if (! empty($greeting)) 4 | # {{ $greeting }} 5 | @else 6 | @if ($level == 'error') 7 | # Whoops! 8 | @else 9 | # Hello! 10 | @endif 11 | @endif 12 | 13 | {{-- Intro Lines --}} 14 | @foreach ($introLines as $line) 15 | {{ $line }} 16 | 17 | @endforeach 18 | 19 | {{-- Action Button --}} 20 | @if (isset($actionText)) 21 | 33 | @component('mail::button', ['url' => $actionUrl, 'color' => $color]) 34 | {{ $actionText }} 35 | @endcomponent 36 | @endif 37 | 38 | {{-- Outro Lines --}} 39 | @foreach ($outroLines as $line) 40 | {{ $line }} 41 | 42 | @endforeach 43 | 44 | 45 | @if (! empty($salutation)) 46 | {{ $salutation }} 47 | @else 48 | Regards,
{{ config('app.name') }} 49 | @endif 50 | 51 | 52 | @if (isset($actionText)) 53 | @component('mail::subcopy') 54 | If you’re having trouble clicking the "{{ $actionText }}" button, copy and paste the URL below 55 | into your web browser: [{{ $actionUrl }}]({{ $actionUrl }}) 56 | @endcomponent 57 | @endif 58 | @endcomponent 59 | -------------------------------------------------------------------------------- /resources/views/vendor/pagination/bootstrap-4.blade.php: -------------------------------------------------------------------------------- 1 | @if ($paginator->hasPages()) 2 | 36 | @endif 37 | -------------------------------------------------------------------------------- /resources/views/vendor/pagination/default.blade.php: -------------------------------------------------------------------------------- 1 | @if ($paginator->hasPages()) 2 | 36 | @endif 37 | -------------------------------------------------------------------------------- /resources/views/vendor/pagination/simple-bootstrap-4.blade.php: -------------------------------------------------------------------------------- 1 | @if ($paginator->hasPages()) 2 | 17 | @endif 18 | -------------------------------------------------------------------------------- /resources/views/vendor/pagination/simple-default.blade.php: -------------------------------------------------------------------------------- 1 | @if ($paginator->hasPages()) 2 | 17 | @endif 18 | -------------------------------------------------------------------------------- /resources/views/vendor/partials/flash-messages.blade.php: -------------------------------------------------------------------------------- 1 | @if(config('laravelblocker.blockerFlashMessagesEnabled')) 2 |
3 |
4 |
5 | @include('laravelblocker::partials.form-status') 6 |
7 |
8 |
9 | @endif 10 | -------------------------------------------------------------------------------- /resources/views/vendor/scripts/confirm-modal.blade.php: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /resources/views/vendor/scripts/datatables.blade.php: -------------------------------------------------------------------------------- 1 | {{-- FYI: Datatables do not support colspan or rowspan --}} 2 | 3 | 4 | 29 | -------------------------------------------------------------------------------- /resources/views/vendor/scripts/tooltips.blade.php: -------------------------------------------------------------------------------- 1 | {{-- 9 | --}} 10 | -------------------------------------------------------------------------------- /routes/api.php: -------------------------------------------------------------------------------- 1 | get('/user', function (Request $request) { 18 | // return $request->user(); 19 | // }); 20 | -------------------------------------------------------------------------------- /routes/channels.php: -------------------------------------------------------------------------------- 1 | id === (int) $id; 18 | // }); 19 | 20 | Broadcast::channel('chart', function ($user) { 21 | return [ 22 | 'name' => $user->name, 23 | ]; 24 | }); 25 | -------------------------------------------------------------------------------- /routes/console.php: -------------------------------------------------------------------------------- 1 | comment(Inspiring::quote()); 19 | })->describe('Display an inspiring quote'); 20 | -------------------------------------------------------------------------------- /storage/debugbar/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore -------------------------------------------------------------------------------- /storage/framework/cache/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/framework/cache/.gitignore -------------------------------------------------------------------------------- /storage/framework/cache/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/framework/cache/.gitkeep -------------------------------------------------------------------------------- /storage/framework/sessions/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/framework/sessions/.gitignore -------------------------------------------------------------------------------- /storage/framework/sessions/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/framework/sessions/.gitkeep -------------------------------------------------------------------------------- /storage/framework/views/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/framework/views/.gitignore -------------------------------------------------------------------------------- /storage/framework/views/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/framework/views/.gitkeep -------------------------------------------------------------------------------- /storage/logs/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/logs/.gitignore -------------------------------------------------------------------------------- /storage/users/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeremykenedy/laravel-auth/b33f1bb689dc6d52143eca4dd0d744c07cd1c6f7/storage/users/.gitignore -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | const defaultTheme = require("tailwindcss/defaultTheme"); 2 | 3 | /** @type {import('tailwindcss').Config} */ 4 | module.exports = { 5 | content: [ 6 | "./vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php", 7 | "./storage/framework/views/*.php", 8 | "./resources/views/**/*.blade.php", 9 | ], 10 | 11 | theme: { 12 | extend: { 13 | fontFamily: { 14 | sans: ["Figtree", ...defaultTheme.fontFamily.sans], 15 | }, 16 | }, 17 | }, 18 | 19 | plugins: [require("@tailwindcss/forms")], 20 | }; 21 | -------------------------------------------------------------------------------- /tests/CreatesApplication.php: -------------------------------------------------------------------------------- 1 | make(Kernel::class)->bootstrap(); 18 | 19 | return $app; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /tests/Feature/Auth/AuthenticationTest.php: -------------------------------------------------------------------------------- 1 | get('/login'); 17 | 18 | $response->assertStatus(200); 19 | } 20 | 21 | public function test_users_can_authenticate_using_the_login_screen(): void 22 | { 23 | $user = User::factory()->create(); 24 | 25 | $response = $this->post('/login', [ 26 | 'email' => $user->email, 27 | 'password' => 'password', 28 | ]); 29 | 30 | $this->assertAuthenticated(); 31 | $response->assertRedirect(RouteServiceProvider::HOME); 32 | } 33 | 34 | public function test_users_can_not_authenticate_with_invalid_password(): void 35 | { 36 | $user = User::factory()->create(); 37 | 38 | $this->post('/login', [ 39 | 'email' => $user->email, 40 | 'password' => 'wrong-password', 41 | ]); 42 | 43 | $this->assertGuest(); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /tests/Feature/ExampleTest.php: -------------------------------------------------------------------------------- 1 | get('/'); 16 | 17 | $response->assertStatus(200); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /tests/Feature/PublicPagesTest.php: -------------------------------------------------------------------------------- 1 | get('/')->assertStatus(200); 17 | $this->get('/login')->assertStatus(200); 18 | $this->get('/password/reset')->assertStatus(200); 19 | $this->get('/register')->assertStatus(200); 20 | } 21 | 22 | /** 23 | * Test the non public (302) pages. 24 | * 25 | * @return void 26 | */ 27 | public function testNonPublicPages() 28 | { 29 | $this->get('/home')->assertStatus(302); 30 | $this->get('/routes')->assertStatus(302); 31 | $this->get('/themes')->assertStatus(302); 32 | $this->get('/users')->assertStatus(302); 33 | $this->get('/users/create')->assertStatus(302); 34 | $this->get('/phpinfo')->assertStatus(302); 35 | $this->get('/profile/create')->assertStatus(302); 36 | } 37 | 38 | /** 39 | * Test the permanent (301) redirects. 40 | * 41 | * @return void 42 | */ 43 | public function testPermRedirects() 44 | { 45 | $this->get('/php')->assertStatus(301); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /tests/Feature/ThemesTest.php: -------------------------------------------------------------------------------- 1 | _faker = (object) \Faker\Factory::create(); 27 | $this->_themeName = $this->_faker->domainWord; 28 | $this->_themeUrl = $this->_faker->url; 29 | 30 | $theme = Theme::create([ 31 | 'name' => $this->_themeName, 32 | 'link' => $this->_themeUrl, 33 | 'notes' => 'Test Default Theme.', 34 | 'status' => 1, 35 | 'taggable_id' => 0, 36 | 'taggable_type' => 'theme', 37 | ]); 38 | $theme->taggable_id = $theme->id; 39 | $theme->save(); 40 | 41 | $theme = Theme::where('name', $this->_themeName)->first(); 42 | $this->assertEquals($this->_themeUrl, $theme->link); 43 | $this->assertEquals($theme->id, $theme->taggable_id); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /tests/TestCase.php: -------------------------------------------------------------------------------- 1 | assertTrue(true); 15 | } 16 | } 17 | --------------------------------------------------------------------------------