Upgrade Guide

Vanguard - Advanced PHP Login and User Management Vanguard - Advanced PHP Login and User Management / Setup Last updated on Updated  Oct 20, 2020

This section contains some info about what's changed in the latest version and how you should update your Vanguard application. You can find the version you are currently using inside config/app.php file. The complete changelog is available in the item description on CodeCanyon.

To 6.0.0 from 5.0.1

Upgraded to Laravel 8 and fixed a few minor issues.

The list of modified and removed files is available below (test files are omitted for readability):

 app/Country.php                                                   |    3 +
 app/Http/Controllers/Api/Auth/RegistrationController.php | 2 +-
 app/Http/Controllers/Web/Users/AvatarController.php | 2 +-
 app/Permission.php | 3 +
 app/Providers/AppServiceProvider.php | 5 +
 app/Role.php | 14 +-
 app/Services/Auth/Social/SocialManager.php | 3 +-
 app/Support/DataArraySerializer.php | 100 ----
 app/User.php | 4 +-
 composer.json | 50 +-
 config/app.php | 3 +-
 database/factories/CountryFactory.php | 40 +-
 database/factories/PermissionFactory.php | 36 +-
 database/factories/RoleFactory.php | 36 +-
 database/factories/TokenFactory.php | 16 -
 database/factories/UserFactory.php | 63 ++-
 database/migrations/2015_10_10_170827_create_users_table.php | 2 +-
 database/{seeds => seeders}/.gitkeep | 0
 database/{seeds => seeders}/CountriesSeeder.php | 6 +-
 database/{seeds => seeders}/DatabaseSeeder.php | 10 +-
 database/{seeds => seeders}/PermissionsSeeder.php | 2 +
 database/{seeds => seeders}/RolesSeeder.php | 2 +
 database/{seeds => seeders}/UserSeeder.php | 2 +
 phpunit.xml | 66 ++-
 resources/views/user/edit.blade.php | 1 -
 routes/api.php | 11 +-
 routes/web.php | 12 +-

To 5.0.1 from 4.0.1

Bugfix release to fix the installation wizard. The only file that has been updated is 

app/Http/Controllers/Web/InstallController.php

To 5.0.0 from 4.0.1

Upgraded to Laravel 7 and fixed a few reported issues. API responses and authentication are completely changed in this version and Vanguard is now using Laravel's first-party packages for this.

The list of modified and removed files is available below (test files are omitted for readability):

 app/Exceptions/Handler.php                                                      |    22 +-
 app/Http/Controllers/Api/ApiController.php | 122 +-
 app/Http/Controllers/Api/Auth/AuthController.php | 60 +-
 app/Http/Controllers/Api/Auth/Password/RemindController.php | 12 +-
 app/Http/Controllers/Api/Auth/Password/ResetController.php | 10 +-
 app/Http/Controllers/Api/Auth/RegistrationController.php | 4 +-
 app/Http/Controllers/Api/Auth/SocialLoginController.php | 6 +-
 app/Http/Controllers/Api/Auth/VerificationController.php | 104 +
 app/Http/Controllers/Api/Authorization/PermissionsController.php | 35 +-
 app/Http/Controllers/Api/Authorization/RolePermissionsController.php | 23 +-
 app/Http/Controllers/Api/Authorization/RolesController.php | 40 +-
 app/Http/Controllers/Api/CountriesController.php | 11 +-
 app/Http/Controllers/Api/Profile/AuthDetailsController.php | 15 +-
 app/Http/Controllers/Api/Profile/AvatarController.php | 23 +-
 app/Http/Controllers/Api/Profile/DetailsController.php | 19 +-
 app/Http/Controllers/Api/Profile/SessionsController.php | 10 +-
 app/Http/Controllers/Api/Profile/TwoFactorController.php | 16 +-
 app/Http/Controllers/Api/SessionsController.php | 10 +-
 app/Http/Controllers/Api/SettingsController.php | 2 -
 app/Http/Controllers/Api/StatsController.php | 13 +-
 app/Http/Controllers/Api/Users/ActivityController.php | 49 -
 app/Http/Controllers/Api/Users/AvatarController.php | 16 +-
 app/Http/Controllers/Api/Users/SessionsController.php | 11 +-
 app/Http/Controllers/Api/Users/TwoFactorController.php | 13 +-
 app/Http/Controllers/Api/Users/UsersController.php | 59 +-
 app/Http/Controllers/Web/Auth/LoginController.php | 4 +-
 app/Http/Controllers/Web/InstallController.php | 21 +-
 app/Http/Filters/UserKeywordSearch.php | 19 +
 app/Http/Kernel.php | 9 +-
 app/Http/Middleware/Authenticate.php | 8 +-
 app/Http/Middleware/CheckIfBanned.php | 24 +
 app/Http/Middleware/UseApiGuard.php | 3 +-
 app/Http/Requests/Auth/ApiLoginRequest.php | 33 +
 app/Http/Requests/Auth/ApiVerifyEmailRequest.php | 21 +
 app/Http/Requests/Auth/Social/ApiAuthenticateRequest.php | 1 +
 app/Http/Requests/BinaryFileUploadRequest.php | 76 -
 app/Http/Requests/User/UploadAvatarRawRequest.php | 11 +-
 app/Http/Resources/CountryResource.php | 37 +
 app/Http/Resources/PermissionResource.php | 27 +
 app/Http/Resources/RoleResource.php | 38 +
 app/Http/Resources/SessionResource.php | 28 +
 app/Http/Resources/UserResource.php | 54 +
 app/Listeners/Users/{InvalidateSessionsAndTokens.php => InvalidateSessions.php} | 9 +-
 app/Providers/EventServiceProvider.php | 4 +-
 app/Repositories/User/EloquentUser.php | 8 +-
 app/Services/Auth/Api/ExtendsJwtValidation.php | 69 -
 app/Services/Auth/Api/JWT.php | 8 -
 app/Services/Auth/Api/JWTAuth.php | 8 -
 app/Services/Auth/Api/JWTServiceProvider.php | 39 -
 app/Services/Auth/Api/Token.php | 12 -
 app/Services/Auth/Api/TokenFactory.php | 82 -
 app/Transformers/CountryTransformer.php | 32 -
 app/Transformers/PermissionTransformer.php | 22 -
 app/Transformers/RoleTransformer.php | 33 -
 app/Transformers/SessionTransformer.php | 24 -
 app/Transformers/UserTransformer.php | 54 -
 app/User.php | 30 +-
 composer.json | 33 +-
 composer.lock | 3055 ++++++++++++++----------
 config/app.php | 7 +-
 config/auth.php | 22 +-
 config/cache.php | 1 +
 config/cors.php | 34 +
 config/database.php | 7 +
 config/jwt.php | 262 ---
 config/logging.php | 12 +-
 config/mail.php | 139 +-
 config/queue.php | 1 +
 config/sanctum.php | 46 +
 config/services.php | 1 +
 config/session.php | 2 +-
 config/view.php | 5 +-
 database/migrations/2015_10_10_171049_create_social_login_table.php | 2 +-
 database/migrations/2015_12_29_224252_create_user_activity_table.php | 2 +-
 database/migrations/2017_04_13_200254_create_api_tokens_table.php | 51 -
 database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php | 36 +
 package.json | 17 +-
 public/assets/css/app.css | 8 +-
 public/assets/css/vendor.css | 2 +-
 public/assets/js/vendor.js | 12 +-
 public/mix-manifest.json | 6 +-
 readme.md | 2 +-
 resources/views/auth/login.blade.php | 2 +-
 resources/views/user/profile.blade.php | 1 -
 routes/api.php | 89 +-


To 4.0.1 from 4.0.0

Fixed a few small bugs and slightly updated the registration flow. From this release on the `/Documentation/Patches` folder will be removed from the ZIP archive since Git patches are being detected as a virus by some anti-virus applications.

The list of modified files is available below

 app/Http/Controllers/Web/Auth/RegisterController.php           |  6 ++++--
 app/Http/Controllers/Web/DashboardController.php | 6 +++++-
 app/Listeners/Users/ActivateUser.php | 33 +++++++++++++++++++++++++++++++++
 app/Providers/EventServiceProvider.php | 5 +++++
 app/User.php | 2 +-
 config/app.php | 2 +-
 config/filesystems.php | 2 +-
 resources/lang/de.json | 5 +++--
 resources/lang/sr.json | 3 ++-
 resources/views/dashboard/{admin.blade.php => index.blade.php} | 1 +
 tests/Feature/Web/RegistrationTest.php | 4 ++--
 11 files changed, 58 insertions(+), 11 deletions(-)


To 4.0.0 from 3.2.1

Version 4 of Vanguard, which runs on Laravel 6, comes with a lot of improvements and, if you have any projects created using the previous versions of Vanguard, it's recommended to move all your modifications to a clean Vanguard 4 installation than to upgrade your existing Vanguard version.

The reason for this is because there are a lot of changed files between Vanguard 3.2.1 and Vanguard 4, and it can take pretty long to update all the files to their latest versions.

Anyways, if you decide to upgrade the Vanguard manually since there are a lot of the changes files, you will need to go through each file from the list of modified files available below and compare it with the one from version 4. It's highly recommended to check the Git patch file that contains all the differences between those two versions. The patch file is located inside the Documentation/Patches directory and you can use any text editor to open it (something like this Chrome plugin will also be a good option).

Modified files:

 .gitignore                                                                                                 |    1 +
 app/Events/User/Registered.php                                                                             |   30 -
 app/Events/User/ResetedPasswordViaEmail.php                                                                |   26 -
 app/Exceptions/Handler.php                                                                                 |    8 -
 app/Http/Controllers/Api/ActivityController.php                                                            |   39 -
 app/Http/Controllers/Api/Auth/AuthController.php                                                           |   10 +-
 app/Http/Controllers/Api/Auth/Password/RemindController.php                                                |    4 +-
 app/Http/Controllers/Api/Auth/Password/ResetController.php                                                 |   10 +-
 app/Http/Controllers/Api/Auth/RegistrationController.php                                                   |   19 +-
 app/Http/Controllers/Api/Auth/SocialLoginController.php                                                    |    2 +-
 app/Http/Controllers/Api/Profile/AvatarController.php                                                      |    1 -
 app/Http/Controllers/Api/SessionsController.php                                                            |    2 +
 app/Http/Controllers/Api/SettingsController.php                                                            |    4 +-
 app/Http/Controllers/Api/StatsController.php                                                               |   43 +-
 app/Http/Controllers/Api/Users/AvatarController.php                                                        |   30 +-
 app/Http/Controllers/Api/Users/UsersController.php                                                         |    7 +-
 app/Http/Controllers/Web/ActivityController.php                                                            |   68 --
 app/Http/Controllers/Web/Auth/AuthController.php                                                           |  374 -------
 app/Http/Controllers/Web/Auth/ForgotPasswordController.php                                                 |   45 +
 app/Http/Controllers/Web/Auth/LoginController.php                                                          |  150 +++
 app/Http/Controllers/Web/Auth/PasswordController.php                                                       |  113 --
 app/Http/Controllers/Web/Auth/RegisterController.php                                                       |   63 ++
 app/Http/Controllers/Web/Auth/ResetPasswordController.php                                                  |   61 +
 app/Http/Controllers/Web/Auth/SocialAuthController.php                                                     |   25 +-
 app/Http/Controllers/Web/Auth/TwoFactorTokenController.php                                                 |   75 ++
 app/Http/Controllers/Web/Auth/VerificationController.php                                                   |   41 +
 app/Http/Controllers/Web/{ => Authorization}/PermissionsController.php                                     |   74 +-
 app/Http/Controllers/Web/Authorization/RolePermissionsController.php                                       |   53 +
 app/Http/Controllers/Web/{ => Authorization}/RolesController.php                                           |   43 +-
 app/Http/Controllers/Web/DashboardController.php                                                           |   78 +-
 app/Http/Controllers/Web/InstallController.php                                                             |   14 +-
 app/Http/Controllers/Web/Profile/AvatarController.php                                                      |   85 ++
 app/Http/Controllers/Web/Profile/DetailsController.php                                                     |   45 +
 app/Http/Controllers/Web/Profile/LoginDetailsController.php                                                |   51 +
 app/Http/Controllers/Web/Profile/ProfileController.php                                                     |   64 ++
 app/Http/Controllers/Web/Profile/SessionsController.php                                                    |   52 +
 app/Http/Controllers/Web/ProfileController.php                                                             |  224 ----
 app/Http/Controllers/Web/SettingsController.php                                                            |   36 +-
 app/Http/Controllers/Web/TwoFactorController.php                                                           |   10 +-
 app/Http/Controllers/Web/Users/AvatarController.php                                                        |   83 ++
 app/Http/Controllers/Web/Users/DetailsController.php                                                       |   76 ++
 app/Http/Controllers/Web/Users/LoginDetailsController.php                                                  |   54 +
 app/Http/Controllers/Web/Users/SessionsController.php                                                      |   62 +
 app/Http/Controllers/Web/Users/UsersController.php                                                         |  163 +++
 app/Http/Controllers/Web/UsersController.php                                                               |  326 ------
 app/Http/Kernel.php                                                                                        |   34 +-
 app/Http/Middleware/EncryptCookies.php                                                                     |    2 +-
 app/Http/Middleware/{Registration.php => PasswordResetEnabled.php}                                         |    6 +-
 app/Http/Middleware/RegistrationEnabled.php                                                                |   25 +
 app/Http/Middleware/TwoFactorEnabled.php                                                                   |   25 +
 app/Http/Requests/Activity/GetActivitiesRequest.php                                                        |   28 -
 app/Http/Requests/Auth/PasswordResetRequest.php                                                            |   10 +
 app/Http/Requests/Auth/RegisterRequest.php                                                                 |   31 +-
 app/Http/Requests/Permission/BasePermissionRequest.php                                                     |    8 +-
 app/Http/Requests/Permission/CreatePermissionRequest.php                                                   |    9 +-
 app/Http/Requests/Permission/RemovePermissionRequest.php                                                   |    3 +
 app/Http/Requests/Permission/UpdatePermissionRequest.php                                                   |   11 +-
 app/Http/Requests/User/CreateUserRequest.php                                                               |    1 +
 app/Listeners/PermissionEventsSubscriber.php                                                               |   66 --
 app/Listeners/Registration/SendConfirmationEmail.php                                                       |   43 -
 app/Listeners/Registration/SendSignUpNotification.php                                                      |    8 +-
 app/Listeners/RoleEventsSubscriber.php                                                                     |   72 --
 app/Listeners/UserEventsSubscriber.php                                                                     |  204 ----
 app/Mail/ResetPassword.php                                                                                 |   37 +
 app/Mail/UserRegistered.php                                                                                |   41 +
 app/Notifications/EmailConfirmation.php                                                                    |   54 -
 app/Notifications/ResetPassword.php                                                                        |   53 -
 app/Notifications/UserRegistered.php                                                                       |   70 --
 app/Presenters/Presenter.php                                                                               |   46 +
 app/Presenters/Traits/Presentable.php                                                                      |   26 +
 app/Presenters/UserPresenter.php                                                                           |   25 +-
 app/Providers/AppServiceProvider.php                                                                       |    5 +-
 app/Providers/EventServiceProvider.php                                                                     |   13 +-
 app/Providers/VanguardServiceProvider.php                                                                  |   52 +
 app/Repositories/Activity/ActivityRepository.php                                                           |   59 -
 app/Repositories/Activity/EloquentActivity.php                                                             |   98 --
 app/Rules/ValidPermissionName.php                                                                          |   44 +
 app/Services/Auth/Api/TokenFactory.php                                                                     |    2 +
 app/Services/Auth/ThrottlesLogins.php                                                                      |   81 ++
 app/Services/Logging/UserActivity/Activity.php                                                             |   20 -
 app/Services/Logging/UserActivity/Logger.php                                                               |   86 --
 app/Services/Upload/UserAvatarManager.php                                                                  |   89 +-
 app/Support/Enum/UserStatus.php                                                                            |    6 +-
 app/Support/Plugins/Dashboard/Dashboard.php                                                                |   17 +
 app/Support/Plugins/Dashboard/Widgets/BannedUsers.php                                                      |   44 +
 app/Support/Plugins/Dashboard/Widgets/LatestRegistrations.php                                              |   43 +
 app/Support/Plugins/Dashboard/Widgets/NewUsers.php                                                         |   43 +
 app/Support/Plugins/Dashboard/Widgets/RegistrationHistory.php                                              |   71 ++
 app/Support/Plugins/Dashboard/Widgets/TotalUsers.php                                                       |   43 +
 app/Support/Plugins/Dashboard/Widgets/UnconfirmedUsers.php                                                 |   44 +
 app/Support/Plugins/Dashboard/Widgets/UserActions.php                                                      |   27 +
 app/Support/Plugins/RolesAndPermissions.php                                                                |   31 +
 app/Support/Plugins/Settings.php                                                                           |   40 +
 app/Support/Plugins/Users.php                                                                              |   18 +
 app/Support/Sidebar/Item.php                                                                               |  249 +++++
 app/Support/helpers.php                                                                                    |   21 -
 app/Transformers/ActivityTransformer.php                                                                   |   36 -
 app/Transformers/UserTransformer.php                                                                       |    3 +-
 app/User.php                                                                                               |   38 +-
 composer.json                                                                                              |   56 +-
 composer.lock                                                                                              | 2847 +-
 config/app.php                                                                                             |   19 +-
 config/broadcasting.php                                                                                    |    3 +-
 config/cache.php                                                                                           |   13 +-
 config/database.php                                                                                        |   48 +-
 config/logging.php                                                                                         |   17 +-
 config/mail.php                                                                                            |   11 +
 config/plugins.php                                                                                         |   21 +
 config/queue.php                                                                                           |   10 +-
 config/services.php                                                                                        |   10 +-
 config/session.php                                                                                         |    4 +-
 config/setting.php                                                                                         |   85 ++
 config/settings.php                                                                                        |   17 -
 database/factories/ActivityFactory.php                                                                     |   15 -
 database/factories/RoleFactory.php                                                                         |    2 +-
 database/factories/UserFactory.php                                                                         |    5 +-
 database/migrations/2014_10_12_100000_create_password_resets_table.php                                     |    4 +-
 database/migrations/2015_08_25_172600_create_settings_table.php                                            |   42 -
 database/migrations/2015_10_10_170827_create_users_table.php                                               |    2 +-
 database/migrations/2015_12_29_224252_create_user_activity_table.php                                       |    2 +
 database/migrations/2017_08_24_000000_create_settings_table.php                                            |   41 +
 database/migrations/2019_08_22_140712_create_announcements_table.php                                       |   50 +
 database/seeds/UserSeeder.php                                                                              |    3 +-
 package-lock.json                                                                                          | 5165 +-
 phpunit.xml                                                                                                |    3 +
 public/assets/css/app.css                                                                                  |    2 +-
 public/assets/js/as/app.js                                                                                 |   14 +-
 public/mix-manifest.json                                                                                   |    2 +-
 public/vendor/plugins/announcements/css/announcements.css                                                  |    1 +
 public/vendor/plugins/announcements/js/announcements.js                                                    |    1 +
 public/vendor/plugins/announcements/mix-manifest.json                                                      |    4 +
 resources/lang/de.json                                                                                     |  242 ++++
 resources/lang/de/app.php                                                                                  |  328 +-----
 resources/lang/de/log.php                                                                                  |   32 -
 resources/lang/en/app.php                                                                                  |  331 +-----
 resources/lang/en/log.php                                                                                  |   32 -
 resources/lang/sr.json                                                                                     |  242 ++++
 resources/lang/sr/app.php                                                                                  |  335 +-----
 resources/lang/sr/log.php                                                                                  |   32 -
 resources/sass/_variables.scss                                                                             |   12 +-
 resources/sass/app.scss                                                                                    |    2 +-
 resources/sass/components/card.scss                                                                        |   29 +-
 resources/sass/components/general.scss                                                                     |   12 +-
 resources/sass/components/input.scss                                                                       |    9 +-
 resources/sass/components/navbar.scss                                                                      |   98 +-
 resources/sass/components/sidebar.scss                                                                     |  279 +++--
 resources/sass/components/util.scss                                                                        |   16 +
 resources/views/activity/index.blade.php                                                                   |  100 --
 resources/views/auth/login.blade.php                                                                       |   40 +-
 resources/views/auth/{password/remind.blade.php => passwords/email.blade.php}                              |   26 +-
 resources/views/auth/{password => passwords}/reset.blade.php                                               |   43 +-
 resources/views/auth/register.blade.php                                                                    |   90 +-
 resources/views/auth/token.blade.php                                                                       |   18 +-
 resources/views/auth/tos.blade.php                                                                         |   24 +
 resources/views/auth/verify.blade.php                                                                      |   30 +
 resources/views/dashboard/admin.blade.php                                                                  |  147 +--
 resources/views/dashboard/default.blade.php                                                                |  102 --
 resources/views/emails/notifications/new-registration.blade.php                                            |   10 -
 resources/views/emails/password/remind.blade.php                                                           |   12 -
 resources/views/emails/registration/confirmation.blade.php                                                 |   13 -
 resources/views/errors/403.blade.php                                                                       |    8 -
 resources/views/errors/404.blade.php                                                                       |   12 -
 resources/views/errors/500.blade.php                                                                       |   10 -
 resources/views/errors/503.blade.php                                                                       |    8 -
 resources/views/layouts/app.blade.php                                                                      |   10 +-
 resources/views/layouts/auth.blade.php                                                                     |    5 +-
 resources/views/layouts/errors.blade.php                                                                   |   35 -
 resources/views/layouts/install.blade.php                                                                  |    2 +-
 resources/views/mail/reset-password.blade.php                                                              |   22 +
 resources/views/mail/user-registered.blade.php                                                             |   19 +
 resources/views/partials/navbar.blade.php                                                                  |   33 +-
 resources/views/partials/sidebar.blade.php                                                                 |  122 --
 resources/views/partials/sidebar/items.blade.php                                                           |   26 +
 resources/views/partials/sidebar/main.blade.php                                                            |   37 +
 resources/views/permission/add-edit.blade.php                                                              |   46 +-
 resources/views/permission/index.blade.php                                                                 |   34 +-
 resources/views/plugins/dashboard/widgets/banned-users.blade.php                                           |   14 +
 resources/views/plugins/dashboard/widgets/latest-registrations.blade.php                                   |   31 +
 resources/views/plugins/dashboard/widgets/new-users.blade.php                                              |   14 +
 resources/views/plugins/dashboard/widgets/registration-history-scripts.blade.php                           |   12 +
 resources/views/plugins/dashboard/widgets/registration-history.blade.php                                   |   11 +
 resources/views/plugins/dashboard/widgets/total-users.blade.php                                            |   14 +
 resources/views/plugins/dashboard/widgets/unconfirmed-users.blade.php                                      |   14 +
 resources/views/plugins/dashboard/widgets/user-actions.blade.php                                           |   53 +
 resources/views/role/add-edit.blade.php                                                                    |   46 +-
 resources/views/role/index.blade.php                                                                       |   34 +-
 resources/views/settings/auth.blade.php                                                                    |   12 +-
 resources/views/settings/general.blade.php                                                                 |   18 +-
 resources/views/settings/notifications.blade.php                                                           |   30 +-
 resources/views/settings/partials/auth.blade.php                                                           |   35 +-
 resources/views/settings/partials/recaptcha.blade.php                                                      |   24 +-
 resources/views/settings/partials/registration.blade.php                                                   |   31 +-
 resources/views/settings/partials/throttling.blade.php                                                     |   39 +-
 resources/views/settings/partials/two-factor.blade.php                                                     |   29 +-
 resources/views/user/add.blade.php                                                                         |   20 +-
 resources/views/user/edit.blade.php                                                                        |   60 +-
 resources/views/user/list.blade.php                                                                        |   41 +-
 resources/views/user/partials/auth.blade.php                                                               |   46 +-
 resources/views/user/partials/avatar.blade.php                                                             |   31 +-
 resources/views/user/partials/details.blade.php                                                            |   42 +-
 resources/views/user/partials/row.blade.php                                                                |   35 +-
 resources/views/user/partials/two-factor.blade.php                                                         |   40 +-
 resources/views/user/profile.blade.php                                                                     |   58 +-
 resources/views/user/sessions.blade.php                                                                    |   34 +-
 resources/views/user/two-factor-verification.blade.php                                                     |   25 +-
 resources/views/user/view.blade.php                                                                        |   99 +-
 resources/views/vendor/mail/html/button.blade.php                                                          |   19 +
 resources/views/vendor/mail/html/footer.blade.php                                                          |   11 +
 resources/views/vendor/mail/html/header.blade.php                                                          |    7 +
 resources/views/vendor/mail/html/layout.blade.php                                                          |   54 +
 resources/views/vendor/mail/html/message.blade.php                                                         |   27 +
 resources/views/vendor/mail/html/panel.blade.php                                                           |   13 +
 resources/views/vendor/mail/html/promotion.blade.php                                                       |    7 +
 resources/views/vendor/mail/html/promotion/button.blade.php                                                |   13 +
 resources/views/vendor/mail/html/subcopy.blade.php                                                         |    7 +
 resources/views/vendor/mail/html/table.blade.php                                                           |    3 +
 resources/views/vendor/mail/html/themes/default.css                                                        |  307 +++++
 resources/views/vendor/mail/text/button.blade.php                                                          |    1 +
 resources/views/vendor/mail/text/footer.blade.php                                                          |    1 +
 resources/views/vendor/mail/text/header.blade.php                                                          |    1 +
 resources/views/vendor/mail/text/layout.blade.php                                                          |    9 +
 resources/views/vendor/mail/text/message.blade.php                                                         |   27 +
 resources/views/vendor/mail/text/panel.blade.php                                                           |    1 +
 resources/views/vendor/mail/text/promotion.blade.php                                                       |    1 +
 resources/views/vendor/mail/text/promotion/button.blade.php                                                |    1 +
 resources/views/vendor/mail/text/subcopy.blade.php                                                         |    1 +
 resources/views/vendor/mail/text/table.blade.php                                                           |    1 +
 resources/views/vendor/notifications/email.blade.php                                                       |    6 +-
 routes/api.php                                                                                             |   16 +-
 routes/web.php                                                                                             |  458 +++-----
 storage/app/.gitignore                                                                                     |    0
 storage/framework/.gitignore                                                                               |    1 +
 storage/settings.json                                                                                      |    2 +-
 tests/CreatesApplication.php                                                                               |   24 +
 tests/Feature/Api/Auth/AuthControllerTest.php                                                              |  162 +++
 tests/Feature/Api/Auth/Password/RemindControllerTest.php                                                   |   38 +
 tests/Feature/{Http/Controllers => }/Api/Auth/Password/ResetControllerTest.php                             |   46 +-
 tests/Feature/Api/Auth/RegistrationControllerTest.php                                                      |  104 ++
 tests/Feature/{Http/Controllers => }/Api/Auth/SocialLoginControllerTest.php                                |   69 +-
 tests/Feature/Api/Authorization/PermissionsControllerTest.php                                              |  161 +++
 tests/Feature/{Http/Controllers => }/Api/Authorization/RolePermissionsControllerTest.php                   |   56 +-
 tests/Feature/Api/Authorization/RolesControllerTest.php                                                    |  176 +++
 tests/Feature/{Http/Controllers => }/Api/CountriesControllerTest.php                                       |   16 +-
 tests/Feature/Api/Profile/AuthDetailsControllerTest.php                                                    |   83 ++
 tests/Feature/{Http/Controllers => }/Api/Profile/AvatarControllerTest.php                                  |   74 +-
 tests/Feature/Api/Profile/DetailsControllerTest.php                                                        |  123 ++
 tests/Feature/{Http/Controllers => }/Api/Profile/SessionsControllerTest.php                                |   19 +-
 tests/Feature/{Http/Controllers => }/Api/Profile/TwoFactorControllerTest.php                               |  119 +-
 tests/Feature/{Http/Controllers => }/Api/SessionsControllerTest.php                                        |   61 +-
 tests/Feature/Api/SettingsControllerTest.php                                                               |   38 +
 tests/Feature/{Http/Controllers => }/Api/StatsControllerTest.php                                           |   53 +-
 tests/Feature/Api/Users/AvatarControllerTest.php                                                           |  147 +++
 tests/Feature/{Http/Controllers => }/Api/Users/SessionsControllerTest.php                                  |   26 +-
 tests/Feature/Api/Users/TwoFactorControllerTest.php                                                        |  170 +++
 tests/Feature/{Http/Controllers => }/Api/Users/UsersControllerTest.php                                     |  127 ++-
 tests/Feature/ApiTestCase.php                                                                              |   22 +-
 tests/Feature/FunctionalTestCase.php                                                                       |  203 ----
 tests/Feature/Http/Controllers/Api/ActivityControllerTest.php                                              |  118 --
 tests/Feature/Http/Controllers/Api/Auth/AuthControllerTest.php                                             |  163 ---
 tests/Feature/Http/Controllers/Api/Auth/Password/RemindControllerTest.php                                  |   44 -
 tests/Feature/Http/Controllers/Api/Auth/RegistrationControllerTest.php                                     |  122 --
 tests/Feature/Http/Controllers/Api/Authorization/PermissionsControllerTest.php                             |  190 ----
 tests/Feature/Http/Controllers/Api/Authorization/RolesControllerTest.php                                   |  203 ----
 tests/Feature/Http/Controllers/Api/Profile/AuthDetailsControllerTest.php                                   |   88 --
 tests/Feature/Http/Controllers/Api/Profile/DetailsControllerTest.php                                       |  125 ---
 tests/Feature/Http/Controllers/Api/SettingsControllerTest.php                                              |   37 -
 tests/Feature/Http/Controllers/Api/Users/ActivityControllerTest.php                                        |  109 --
 tests/Feature/Http/Controllers/Api/Users/AvatarControllerTest.php                                          |  154 ---
 tests/Feature/Http/Controllers/Api/Users/TwoFactorControllerTest.php                                       |  196 ----
 tests/Feature/Http/Controllers/Web/ActivityControllerTest.php                                              |   83 --
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php                                             |  438 --------
 tests/Feature/Http/Controllers/Web/Auth/PasswordControllerTest.php                                         |  159 ---
 tests/Feature/Http/Controllers/Web/PermissionsControllerTest.php                                           |  181 ---
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php                                               |  266 -----
 tests/Feature/Http/Controllers/Web/RolesControllerTest.php                                                 |  138 ---
 tests/Feature/Http/Controllers/Web/SettingsControllerTest.php                                              |   34 -
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php                                                 |  464 --------
 tests/Feature/ImpersonateUsersTest.php                                                                     |   96 --
 tests/Feature/Listeners/BaseListenerTestCase.php                                                           |   29 -
 tests/Feature/Listeners/PermissionEventsSubscriberTest.php                                                 |   38 -
 tests/Feature/Listeners/RoleEventsSubscriberTest.php                                                       |   44 -
 tests/Feature/Listeners/UserEventsSubscriberTest.php                                                       |  178 ---
 tests/Feature/Repositories/Activity/EloquentActivityTest.php                                               |  128 ---
 tests/Feature/Repositories/Role/EloquentRoleTest.php                                                       |  108 --
 tests/Feature/Web/ImpersonateUsersTest.php                                                                 |   91 ++
 tests/Feature/Web/LoginTest.php                                                                            |  177 +++
 tests/Feature/Web/PermissionsTest.php                                                                      |  348 ++++++
 tests/Feature/Web/RegistrationTest.php                                                                     |  172 +++
 tests/Feature/Web/RolesTest.php                                                                            |  234 ++++
 tests/Feature/Web/Settings/AuthSettingsTest.php                                                            |  105 ++
 tests/Feature/Web/Settings/CaptchaSettingsTest.php                                                         |   49 +
 tests/Feature/Web/Settings/GeneralSettingsTest.php                                                         |   62 +
 tests/Feature/Web/Settings/TwoFactorSettingsTest.php                                                       |   49 +
 tests/Feature/Web/SettingsTest.php                                                                         |  137 +++
 tests/Feature/{Http/Controllers/Web/Auth/SocialAuthControllerTest.php => Web/SocialAuthenticationTest.php} |  141 +--
 tests/Feature/{Http/Controllers/Web/TwoFactorControllerTest.php => Web/TwoFactorAuthTest.php}              |  276 ++---
 tests/Feature/Web/UpdateProfileTest.php                                                                    |  251 +++++
 tests/Feature/Web/UsersTest.php                                                                            |  710 ++++++++++++
 tests/Setup/RoleFactory.php                                                                                |   47 +
 tests/Setup/UserFactory.php                                                                                |   95 ++
 tests/TestCase.php                                                                                         |   65 +-
 tests/{unit => Unit}/Presenters/UserPresenterTest.php                                                      |   31 +-
 tests/{Feature => Unit}/Repositories/Country/EloquentCountryTest.php                                       |   15 +-
 tests/{Feature => Unit}/Repositories/Permission/EloquentPermissionTest.php                                 |   29 +-
 tests/Unit/Repositories/Role/EloquentRoleTest.php                                                          |  117 ++
 tests/{Feature => Unit}/Repositories/Session/DbSessionTest.php                                             |   32 +-
 tests/{Feature => Unit}/Repositories/User/EloquentUserTest.php                                             |  195 ++--
 tests/{Feature => Unit}/Services/Auth/Api/TokenFactoryTest.php                                             |   37 +-
 tests/UpdatesSettings.php                                                                                  |   22 +
 tests/files/.DS_Store                                                                                      |  Bin 6148 -> 0 bytes
 tests/files/image.png                                                                                      |  Bin 38306 -> 0 bytes
 312 files changed, 15667 insertions(+), 16557 deletions(-)

To 3.2.1 from 3.2.0

Installation bugs fixed. The list of modified files is given below:

 app/Http/Controllers/Web/InstallController.php | 3 ++-
 config/app.php                                 | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

To 3.2.0 from 3.1.0

Vanguard's codebase has been upgraded to Laravel 5.8. The recommended way to upgrade your application is to make sure that your composer.json file matches the composer.json file from this release. Once you update your composer.json file, just run composer update to install those packages, and then you can go through the list of changed files inside the list below and make sure that they match the files from this release.

Below is the list of updated files:

app/Http/Controllers/Web/Auth/AuthController.php                         |    7 +-
 app/Http/Controllers/Web/PermissionsController.php                       |    3 +-
 app/Http/Controllers/Web/ProfileController.php                           |   24 +-
 app/Http/Controllers/Web/UsersController.php                             |    5 +-
 app/Http/Requests/Auth/LoginRequest.php                                  |    2 +
 app/Http/Requests/Auth/PasswordResetRequest.php                          |    2 +-
 app/Http/Requests/Auth/RegisterRequest.php                               |    2 +-
 app/Http/Requests/BinaryFileUploadRequest.php                            |    5 +-
 app/Http/Requests/User/UpdateLoginDetailsRequest.php                     |    2 +-
 app/Listeners/Registration/SendConfirmationEmail.php                     |    3 +-
 app/Providers/HtmlServiceProvider.php                                    |    8 +-
 app/Repositories/Role/EloquentRole.php                                   |    2 -
 app/Services/Auth/Api/TokenFactory.php                                   |    3 +-
 app/Services/Auth/Social/SocialManager.php                               |    3 +-
 app/Services/Upload/UserAvatarManager.php                                |    5 +-
 app/Support/Authorization/AuthorizationRoleTrait.php                     |    3 +-
 composer.json                                                            |   14 +-
 composer.lock                                                            | 1216 ++++++++++++--------
 config/app.php                                                           |    2 +-
 config/cache.php                                                         |   10 +-
 database/factories/PermissionFactory.php                                 |    3 +-
 database/factories/RoleFactory.php                                       |    3 +-
 database/factories/TokenFactory.php                                      |    3 +-
 database/factories/UserFactory.php                                       |    3 +-
 phpunit.xml                                                              |    1 +
 resources/lang/de/passwords.php                                          |    2 +-
 resources/lang/en/passwords.php                                          |    2 +-
 resources/lang/sr/passwords.php                                          |    2 +-
 tests/Feature/ApiTestCase.php                                            |    7 -
 tests/Feature/FunctionalTestCase.php                                     |    2 +-
 tests/Feature/Http/Controllers/Api/Auth/Password/ResetControllerTest.php |    6 +-
 tests/Feature/Http/Controllers/Api/Auth/RegistrationControllerTest.php   |   12 +-
 tests/Feature/Http/Controllers/Api/Profile/AuthDetailsControllerTest.php |    6 +-
 tests/Feature/Http/Controllers/Api/Profile/SessionsControllerTest.php    |   13 +-
 tests/Feature/Http/Controllers/Api/SessionsControllerTest.php            |    7 +-
 tests/Feature/Http/Controllers/Api/Users/SessionsControllerTest.php      |    9 +-
 tests/Feature/Http/Controllers/Web/ActivityControllerTest.php            |    2 +-
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php           |    7 +-
 tests/Feature/Http/Controllers/Web/Auth/PasswordControllerTest.php       |    6 +-
 tests/Feature/Http/Controllers/Web/PermissionsControllerTest.php         |    2 +-
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php             |   35 +-
 tests/Feature/Http/Controllers/Web/RolesControllerTest.php               |    2 +-
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php               |   25 +-
 tests/Feature/Listeners/BaseListenerTestCase.php                         |    2 +-
 tests/Feature/Listeners/PermissionEventsSubscriberTest.php               |    2 +-
 tests/Feature/Listeners/RoleEventsSubscriberTest.php                     |    2 +-
 tests/Feature/Listeners/UserEventsSubscriberTest.php                     |    2 +-
 tests/Feature/Repositories/Activity/EloquentActivityTest.php             |    2 +-
 tests/Feature/Repositories/Country/EloquentCountryTest.php               |    2 +-
 tests/Feature/Repositories/Permission/EloquentPermissionTest.php         |   11 +-
 tests/Feature/Repositories/Role/EloquentRoleTest.php                     |    2 +-
 tests/Feature/Repositories/Session/DbSessionTest.php                     |    9 +-
 tests/Feature/Repositories/User/EloquentUserTest.php                     |    9 +-
 tests/unit/Presenters/UserPresenterTest.php                              |    2 +-
 55 files changed, 5408 insertions(+), 3309 deletions(-)

To 3.1.0 from 3.0.1

Vanguard's codebase has been upgraded to Laravel 5.7. The recommended way to upgrade your application is to make sure that your composer.json file matches the composer.json file from this release. Once you update your composer.json file, just run composer update to install those packages, and then you can go through the list of changed files inside the list below and make sure that they match the files from this release.

Two-Factor Authentication has been improved in this version and all users who want to activate 2FA will receive the phone confirmation SMS first. The reason for this update is to prevent users from locking their accounts and using the wrong phone number.

Below is the list of updated files:

 .editorconfig | 15 +
 .env.example | 26 +-
 .gitattributes | 1 +
 .gitignore | 14 +-
 app/Console/Kernel.php | 11 +-
 app/Exceptions/Handler.php | 29 +-
 app/Http/Controllers/Api/Profile/TwoFactorController.php | 32 +-
 app/Http/Controllers/Api/Users/TwoFactorController.php | 37 +-
 app/Http/Controllers/Web/ProfileController.php | 56 +--
 app/Http/Controllers/Web/TwoFactorController.php | 137 +++++++
 app/Http/Controllers/Web/UsersController.php | 55 +--
 app/Http/Kernel.php | 1 +
 app/Http/Middleware/VerifyTwoFactorPhone.php | 42 +++
 app/Http/Requests/TwoFactor/DisableTwoFactorRequest.php | 11 +
 app/Http/Requests/{User => TwoFactor}/EnableTwoFactorRequest.php | 7 +-
 app/Http/Requests/TwoFactor/ReSendTwoFactorTokenRequest.php | 7 +
 app/Http/Requests/TwoFactor/TwoFactorRequest.php | 48 +++
 app/Http/Requests/TwoFactor/VerifyTwoFactorTokenRequest.php | 18 +
 app/Jobs/Job.php | 21 --
 app/Listeners/UserEventsSubscriber.php | 28 ++
 app/Policies/.gitkeep | 0
 app/Services/Auth/TwoFactor/Authy.php | 20 +-
 app/Services/Auth/TwoFactor/Contracts/Provider.php | 7 +
 app/Support/CanImpersonateUsers.php | 28 ++
 app/Transformers/UserTransformer.php | 4 +-
 app/User.php | 4 +-
 composer.json | 26 +-
 composer.lock | 1686 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------
 config/app.php | 5 +-
 config/database.php | 21 +-
 config/filesystems.php | 38 +-
 config/hashing.php | 34 +-
 config/logging.php | 13 +-
 config/mail.php | 8 +-
 config/queue.php | 23 +-
 config/services.php | 4 +
 config/session.php | 4 +-
 database/migrations/2015_12_29_224252_create_user_activity_table.php | 8 +-
 database/migrations/2015_12_30_171734_add_foreign_keys.php | 16 +-
 database/migrations/2017_04_13_200254_create_api_tokens_table.php | 8 +-
 phpunit.xml | 4 +-
 public/assets/css/app.css | 2 +-
 public/assets/js/as/two-factor.js | 36 ++
 public/mix-manifest.json | 2 +-
 public/svg/403.svg | 1 +
 public/svg/404.svg | 1 +
 public/svg/500.svg | 1 +
 public/svg/503.svg | 1 +
 readme.md | 4 +
 resources/{assets => }/js/app.js | 0
 resources/{assets => }/js/bootstrap.js | 0
 resources/{assets => }/js/components/Example.vue | 0
 resources/lang/de/app.php | 14 +-
 resources/lang/de/log.php | 5 +-
 resources/lang/en/app.php | 14 +-
 resources/lang/en/log.php | 5 +-
 resources/lang/sr/app.php | 14 +-
 resources/lang/sr/log.php | 5 +-
 resources/{assets => }/sass/_variables.scss | 0
 resources/{assets => }/sass/app.scss | 2 +-
 resources/{assets => }/sass/components/avatar.scss | 0
 resources/{assets => }/sass/components/button.scss | 0
 resources/{assets => }/sass/components/card.scss | 4 +
 resources/{assets => }/sass/components/datepicker.scss | 0
 resources/{assets => }/sass/components/general.scss | 0
 resources/{assets => }/sass/components/input.scss | 0
 resources/{assets => }/sass/components/list-group.scss | 0
 resources/{assets => }/sass/components/nav-tabs.scss | 0
 resources/{assets => }/sass/components/navbar.scss | 0
 resources/{assets => }/sass/components/sidebar.scss | 0
 resources/{assets => }/sass/components/sweet-alert.scss | 0
 resources/{assets => }/sass/components/switch.scss | 0
 resources/{assets => }/sass/components/table.scss | 0
 resources/{assets => }/sass/components/util.scss | 0
 resources/views/auth/token.blade.php | 4 +-
 resources/views/partials/navbar.blade.php | 15 +
 resources/views/settings/notifications.blade.php | 2 +
 resources/views/user/edit.blade.php | 5 +-
 resources/views/user/partials/row.blade.php | 7 +
 resources/views/user/profile.blade.php | 4 +-
 resources/views/user/two-factor-verification.blade.php | 69 ++++
 resources/views/user/view.blade.php | 8 +
 routes/api.php | 2 +
 routes/channels.php | 16 +
 routes/web.php | 51 ++-
 storage/framework/cache/.gitignore | 1 +
 storage/framework/cache/data/.gitignore | 2 +
 storage/settings.json | 2 +-
 tests/Feature/FunctionalTestCase.php | 16 +-
 tests/Feature/Http/Controllers/Api/Auth/AuthControllerTest.php | 4 -
 tests/Feature/Http/Controllers/Api/Auth/Password/RemindControllerTest.php | 41 +--
 tests/Feature/Http/Controllers/Api/Auth/Password/ResetControllerTest.php | 3 -
 tests/Feature/Http/Controllers/Api/Auth/RegistrationControllerTest.php | 45 ++-
 tests/Feature/Http/Controllers/Api/Profile/TwoFactorControllerTest.php | 63 +++-
 tests/Feature/Http/Controllers/Api/Users/TwoFactorControllerTest.php | 63 +++-
 tests/Feature/Http/Controllers/Api/Users/UsersControllerTest.php | 39 +-
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php | 106 +++---
 tests/Feature/Http/Controllers/Web/Auth/PasswordControllerTest.php | 32 +-
 tests/Feature/Http/Controllers/Web/Auth/SocialAuthControllerTest.php | 1 -
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php | 65 ----
 tests/Feature/Http/Controllers/Web/TwoFactorControllerTest.php | 411 +++++++++++++++++++++
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php | 48 ---
 tests/Feature/ImpersonateUsersTest.php | 96 +++++
 tests/Feature/Listeners/UserEventsSubscriberTest.php | 28 +-
 tests/MailTrap.php | 131 -------
 webpack.mix.js | 2 +-
 107 files changed, 4917 insertions(+), 1473 deletions(-)

To 3.0.1 from 3.0.0

Version 3.0.1 is a bug-fix release where some minor (mostly UI related) bugs that are reported by customers are fixed. The main bug fixed was the one where assets were not being loaded if you install the app in a sub-folder, which was caused by using the mix function without wrapping it with url function. Luckily, this is an easy fix applied in resources/views/layouts/app.blade.php layout file.

Below is the list of updated files, so make sure that you update them to the latest version.

 app/Http/Controllers/Web/Auth/SocialAuthController.php |  4 ++++
 app/Repositories/User/EloquentUser.php                 |  4 ++++
 config/app.php                                         |  2 +-
 resources/lang/de/app.php                              |  1 +
 resources/lang/en/app.php                              |  1 +
 resources/lang/sr/app.php                              |  1 +
 resources/views/layouts/app.blade.php                  |  6 +++---
 resources/views/user/partials/details.blade.php        |  2 +-
 resources/views/user/partials/row.blade.php            | 18 ++++++++++++------
 resources/views/user/view.blade.php                    |  6 +++---
 10 files changed, 31 insertions(+), 14 deletions(-)

To 3.0.0 from 2.2.0

This is the release which contains the complete rewrite of Vanguard frontend. The Bootstrap version is upgraded to 4.1 and the whole Vanguard frontend theme is updated to a different, more up-to-date, design.

Upgrading to this version is pretty hard and it means that you need to make sure that all your view files are up to date with new classes and staff.

To start, it's recommended to make sure that your composer.json and package.json files are updated to the latest version so you can install all the packages you need. Once you update them to the latest version, run composer update and npm install to install php and npm packages, including Bootstrap 4.

Copy new sass folder to resources/assets folder, update webpack.mix.js file and run npm run dev to compile assets. Also make sure that all the assets in public/assets directory are updated to the latest version. If you haven't changed them much, then you can just overwrite them all. However, if you have modified some of them, make sure that you update them manually.

Once you have updated all the assets, you should start updating your view files one by one. Starting from the layout files is recommended, but you can do it however you decide.

The list of updated files is available below, so make sure that you check each one of them carefully, or you can check the patch file from documentation/Patches directory to see how the files are updated.

 app/Http/Controllers/Api/Profile/AuthDetailsController.php                  |    39 +
 app/Http/Controllers/Web/Auth/PasswordController.php                        |     4 +-
 app/Http/Controllers/Web/Auth/SocialAuthController.php                      |    65 +-
 app/Http/Controllers/Web/DashboardController.php                            |     2 +-
 app/Http/Controllers/Web/InstallController.php                              |     4 +-
 app/Http/Requests/User/UpdateProfileLoginDetailsRequest.php                 |     3 -
 app/Presenters/UserPresenter.php                                            |     6 +-
 app/Repositories/User/EloquentUser.php                                      |     5 +-
 app/Services/Auth/Social/ManagesSocialAvatarSize.php                        |    32 +
 app/Services/Auth/Social/SocialManager.php                                  |     4 +-
 app/User.php                                                                |     2 +-
 composer.lock                                                               |   393 ++--
 config/app.php                                                              |     2 +-
 package-lock.json                                                           | 14043 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 package.json                                                                |     4 +-
 public/assets/css/app.css                                                   |  1160 +---------
 public/assets/css/bootstrap-datetimepicker.min.css                          |     5 -
 public/assets/css/bootstrap-social.css                                      |   101 -
 public/assets/css/bootstrap.min.css                                         |     5 -
 public/assets/css/font-awesome.min.css                                      |     4 -
 public/assets/css/fontawesome-all.min.css                                   |     5 +
 public/assets/css/install.css                                               |     4 +-
 public/assets/css/metisMenu.css                                             |    99 -
 public/assets/css/sweetalert.css                                            |   932 --------
 public/assets/css/vendor.css                                                |    10 +
 public/assets/fonts/FontAwesome.otf                                         |   Bin 93888 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.eot                                 |   Bin 60767 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.svg                                 |   565 -----
 public/assets/fonts/fontawesome-webfont.ttf                                 |   Bin 122092 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.woff                                |   Bin 71508 -> 0 bytes
 public/assets/fonts/fontawesome-webfont.woff2                               |   Bin 56780 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.eot                        |   Bin 20127 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.svg                        |   288 ---
 public/assets/fonts/glyphicons-halflings-regular.ttf                        |   Bin 45404 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.woff                       |   Bin 23424 -> 0 bytes
 public/assets/fonts/glyphicons-halflings-regular.woff2                      |   Bin 18028 -> 0 bytes
 public/assets/js/as/app.js                                                  |    22 +-
 public/assets/js/as/btn.js                                                  |     4 +-
 public/assets/js/as/dashboard-admin.js                                      |    54 +-
 public/assets/js/as/dashboard-default.js                                    |    56 +-
 public/assets/js/as/login.js                                                |     2 +-
 public/assets/js/as/profile.js                                              |    11 +-
 public/assets/js/bootstrap-datetimepicker.min.js                            |     9 -
 public/assets/js/bootstrap.min.js                                           |    12 +-
 public/assets/js/bootstrap.min.js.map                                       |     1 +
 public/assets/js/chart.min.js                                               |     9 +-
 public/assets/js/delete.handler.js                                          |     8 +-
 public/assets/js/jquery-2.1.4.min.js                                        |     4 -
 public/assets/js/jquery-3.3.1.min.js                                        |     2 +
 public/assets/js/metisMenu.min.js                                           |    10 -
 public/assets/js/popper.min.js                                              |     5 +
 public/assets/js/sweetalert.min.js                                          |     2 +-
 public/assets/js/vendor.js                                                  |    11 +
 public/assets/plugins/bootstrap-datepicker/bootstrap-datepicker.min.css     |     9 +
 public/assets/plugins/bootstrap-datepicker/bootstrap-datepicker.min.css.map |     1 +
 public/assets/plugins/bootstrap-datepicker/bootstrap-datepicker.min.js      |     9 +
 public/assets/plugins/bootstrap-switch/bootstrap-switch.css                 |   195 --
 public/assets/plugins/bootstrap-switch/bootstrap-switch.min.js              |    22 -
 public/assets/webfonts/fa-brands-400.eot                                    |   Bin 0 -> 111620 bytes
 public/assets/webfonts/fa-brands-400.svg                                    |  1104 +++++++++
 public/assets/webfonts/fa-brands-400.ttf                                    |   Bin 0 -> 111384 bytes
 public/assets/webfonts/fa-brands-400.woff                                   |   Bin 0 -> 71560 bytes
 public/assets/webfonts/fa-brands-400.woff2                                  |   Bin 0 -> 61336 bytes
 public/assets/webfonts/fa-regular-400.eot                                   |   Bin 0 -> 31272 bytes
 public/assets/webfonts/fa-regular-400.svg                                   |   372 +++
 public/assets/webfonts/fa-regular-400.ttf                                   |   Bin 0 -> 31044 bytes
 public/assets/webfonts/fa-regular-400.woff                                  |   Bin 0 -> 14724 bytes
 public/assets/webfonts/fa-regular-400.woff2                                 |   Bin 0 -> 12188 bytes
 public/assets/webfonts/fa-solid-900.eot                                     |   Bin 0 -> 133140 bytes
 public/assets/webfonts/fa-solid-900.svg                                     |  1896 ++++++++++++++++
 public/assets/webfonts/fa-solid-900.ttf                                     |   Bin 0 -> 132920 bytes
 public/assets/webfonts/fa-solid-900.woff                                    |   Bin 0 -> 63836 bytes
 public/assets/webfonts/fa-solid-900.woff2                                   |   Bin 0 -> 50372 bytes
 public/mix-manifest.json                                                    |     5 +
 resources/assets/sass/_variables.scss                                       |    63 +-
 resources/assets/sass/app.scss                                              |    47 +-
 resources/assets/sass/components/avatar.scss                                |    16 +
 resources/assets/sass/components/button.scss                                |    78 +
 resources/assets/sass/components/card.scss                                  |    12 +
 resources/assets/sass/components/datepicker.scss                            |   160 ++
 resources/assets/sass/components/general.scss                               |    13 +
 resources/assets/sass/components/input.scss                                 |     8 +
 resources/assets/sass/components/list-group.scss                            |    17 +
 resources/assets/sass/components/nav-tabs.scss                              |    13 +
 resources/assets/sass/components/navbar.scss                                |    50 +
 resources/assets/sass/components/sidebar.scss                               |   122 +
 resources/assets/sass/components/sweet-alert.scss                           |     3 +
 resources/assets/sass/components/switch.scss                                |   158 ++
 resources/assets/sass/components/table.scss                                 |     8 +
 resources/assets/sass/components/util.scss                                  |    40 +
 resources/lang/de/app.php                                                   |    63 +-
 resources/lang/en/app.php                                                   |    58 +-
 resources/lang/sr/app.php                                                   |    64 +-
 resources/views/activity/index.blade.php                                    |   170 +-
 resources/views/auth/login.blade.php                                        |   103 +-
 resources/views/auth/password/remind.blade.php                              |    52 +-
 resources/views/auth/password/reset.blade.php                               |    82 +-
 resources/views/auth/register.blade.php                                     |   110 +-
 resources/views/auth/social/buttons.blade.php                               |    28 +-
 resources/views/auth/social/twitter-email.blade.php                         |    34 -
 resources/views/auth/token.blade.php                                        |    49 +-
 resources/views/dashboard/admin.blade.php                                   |   168 +-
 resources/views/dashboard/default.blade.php                                 |   106 +-
 resources/views/errors/403.blade.php                                        |    49 +-
 resources/views/errors/404.blade.php                                        |    63 +-
 resources/views/errors/500.blade.php                                        |    49 +-
 resources/views/errors/503.blade.php                                        |    44 +-
 resources/views/install/complete.blade.php                                  |     2 +-
 resources/views/install/database.blade.php                                  |     2 +-
 resources/views/install/error.blade.php                                     |     2 +-
 resources/views/install/permissions.blade.php                               |    12 +-
 resources/views/install/requirements.blade.php                              |     8 +-
 resources/views/install/start.blade.php                                     |     2 +-
 resources/views/layouts/app.blade.php                                       |    89 +-
 resources/views/layouts/auth.blade.php                                      |    24 +-
 resources/views/layouts/errors.blade.php                                    |    35 +
 resources/views/layouts/install.blade.php                                   |    37 +-
 resources/views/partials/messages.blade.php                                 |     4 +-
 resources/views/partials/navbar.blade.php                                   |    79 +
 resources/views/partials/sidebar.blade.php                                  |   167 +-
 resources/views/permission/add-edit.blade.php                               |    46 +-
 resources/views/permission/index.blade.php                                  |   159 +-
 resources/views/role/add-edit.blade.php                                     |    56 +-
 resources/views/role/index.blade.php                                        |   129 +-
 resources/views/settings/auth.blade.php                                     |    64 +-
 resources/views/settings/general.blade.php                                  |    41 +-
 resources/views/settings/notifications.blade.php                            |    78 +-
 resources/views/settings/partials/auth.blade.php                            |    70 +-
 resources/views/settings/partials/recaptcha.blade.php                       |    16 +-
 resources/views/settings/partials/registration.blade.php                    |    78 +-
 resources/views/settings/partials/throttling.blade.php                      |    45 +-
 resources/views/settings/partials/two-factor.blade.php                      |    15 +-
 resources/views/user/add.blade.php                                          |    71 +-
 resources/views/user/edit.blade.php                                         |   153 +-
 resources/views/user/list.blade.php                                         |   170 +-
 resources/views/user/partials/auth.blade.php                                |    57 +-
 resources/views/user/partials/avatar.blade.php                              |    69 +-
 resources/views/user/partials/details.blade.php                             |   118 +-
 resources/views/user/partials/row.blade.php                                 |    59 +
 resources/views/user/partials/two-factor.blade.php                          |    58 +-
 resources/views/user/profile.blade.php                                      |   143 +-
 resources/views/user/sessions.blade.php                                     |   123 +-
 resources/views/user/view.blade.php                                         |   172 +-
 resources/views/vendor/jsvalidation/bootstrap.php                           |    20 +-
 routes/api.php                                                              |     1 +
 storage/settings.json                                                       |     2 +-
 tests/Feature/Http/Controllers/Api/Auth/SocialLoginControllerTest.php       |     2 +
 tests/Feature/Http/Controllers/Api/Profile/AuthDetailsControllerTest.php    |    88 +
 tests/Feature/Http/Controllers/Api/Profile/TwoFactorControllerTest.php      |    28 +-
 tests/Feature/Http/Controllers/Api/Users/TwoFactorControllerTest.php        |    32 +-
 tests/Feature/Http/Controllers/Web/ActivityControllerTest.php               |     1 -
 tests/Feature/Http/Controllers/Web/Auth/AuthControllerTest.php              |     2 +-
 tests/Feature/Http/Controllers/Web/Auth/SocialAuthControllerTest.php        |    26 +-
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php                |    22 +-
 tests/Feature/Http/Controllers/Web/SettingsControllerTest.php               |     2 +-
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php                  |    40 +-
 tests/Feature/Repositories/User/EloquentUserTest.php                        |    61 +-
 tests/unit/Presenters/UserPresenterTest.php                                 |     6 +-
 webpack.mix.js                                                              |    26 +-
 159 files changed, 20812 insertions(+), 5721 deletions(-)

To 2.2.0 from 2.1.1

In this release Laravel is upgraded to version 5.6. The only significant change here is that some packages (like proengsoft/laravel-jsvalidation, tymon/jwt-auth etc.) needs to be updated to latest version.

The recommended way to upgrade your application is to make sure that your composer.json file matches the composer.json file from this release. Once you update your composer.json file, just run composer update to install those packages, and then you can proceed and add missing files (there are few new configuration files added in Laravel 5.6) and update modified files that are listed below:

  _ide_helper.php                                              | 22037 +++---
  app/Http/Controllers/Api/Auth/AuthController.php             |     2 +-
  app/Http/Controllers/Api/StatsController.php                 |     4 +-
  app/Http/Controllers/Web/Auth/AuthController.php             |    42 +-
  app/Http/Controllers/Web/DashboardController.php             |     4 +-
  app/Http/Kernel.php                                          |     1 +
  app/Http/Middleware/TrustProxies.php                         |     8 +-
  app/Http/Requests/Auth/LoginRequest.php                      |    40 +
  app/Repositories/User/EloquentUser.php                       |     1 +
  app/Services/Auth/TwoFactor/Authy.php                        |     8 +-
  app/Services/Auth/TwoFactor/Contracts/Provider.php           |     3 +-
  app/User.php                                                 |     2 -
  composer.json                                                |    28 +-
  composer.lock                                                |  1133 +++----
  config/app.php                                               |    17 +-
  config/broadcasting.php                                      |     3 +
  config/filesystems.php                                       |     9 +-
  config/hashing.php                                           |    20 +
  config/logging.php                                           |    70 +
  config/queue.php                                             |     1 +
  config/services.php                                          |     3 +
  database/migrations/2015_10_10_170827_create_users_table.php |     2 +
  package.json                                                 |     7 +-
  public/.htaccess                                             |     2 +-
  resources/assets/js/app.js                                   |     2 +-
  resources/assets/js/bootstrap.js                             |     7 +-
  resources/assets/js/components/Example.vue                   |    12 +-
  storage/settings.json                                        |     2 +-
  tests/Feature/Http/Controllers/Api/StatsControllerTest.php   |    20 +-
  tests/Feature/Repositories/User/EloquentUserTest.php         |    60 +-
  tests/TestCase.php                                           |     2 +
  30 files changed, 13872 insertions(+), 9680 deletions(-)

To 2.1.1 from 2.1.0

This is mostly a bug-fix release with few new features added. To upgrade to this release I would recommend you to go through the list of modified files available below and to update file to the latest version. You don't have to update files from /tests and /database/factories folders since those files are related to application testing and won't affect the way how application works.

Here is the list of modified files:

 app/Http/Controllers/Web/DashboardController.php                      |   2 +-
 app/Http/Controllers/Web/InstallController.php                        |   6 +-
 app/Http/Requests/User/CreateUserRequest.php                          |   4 +-
 app/Http/Requests/User/UpdateDetailsRequest.php                       |   2 +-
 app/Http/Requests/User/UpdateProfileDetailsRequest.php                |   2 +-
 app/Http/Requests/User/UpdateUserRequest.php                          |   4 +-
 app/Listeners/Users/InvalidateSessionsAndTokens.php                   |  39 ++++++++++
 app/Presenters/UserPresenter.php                                      |   2 +-
 app/Providers/AppServiceProvider.php                                  |   1 +
 app/Providers/EventServiceProvider.php                                |   5 ++
 app/Repositories/Session/DbSession.php                                |  43 ++++++++++-
 app/Repositories/Session/SessionRepository.php                        |   7 ++
 app/Repositories/User/EloquentUser.php                                |  42 ++++------
 app/Repositories/User/UserRepository.php                              |   3 +-
 app/Transformers/SessionTransformer.php                               |  11 +--
 composer.json                                                         |   2 +-
 composer.lock                                                         | 511 +++++++++++++++
 config/app.php                                                        |  16 +++-
 database/factories/ActivityFactory.php                                |  15 ++++
 database/factories/CountryFactory.php                                 |  15 ++++
 database/factories/ModelFactory.php                                   |  98 ------------------------
 database/factories/PermissionFactory.php                              |  12 +++
 database/factories/RoleFactory.php                                    |  12 +++
 database/factories/TokenFactory.php                                   |  15 ++++
 database/factories/UserFactory.php                                    |  23 ++++++
 database/migrations/2015_10_10_170827_create_users_table.php          |   2 +-
 extra/auth.php                                                        |   6 +-
 package.json                                                          |  25 +++---
 resources/assets/js/app.js                                            |  22 ++++++
 resources/assets/js/bootstrap.js                                      |  53 +++++++++++++
 resources/assets/js/components/Example.vue                            |  23 ++++++
 resources/assets/sass/_variables.scss                                 |  38 +++++++++
 resources/assets/sass/app.scss                                        |   8 +-
 resources/lang/de/app.php                                             |  29 +++----
 resources/lang/en/app.php                                             |  25 +++---
 resources/lang/sr/app.php                                             |  25 +++---
 resources/views/activity/index.blade.php                              |   2 +-
 resources/views/errors/token-mismatch.blade.php                       |  43 -----------
 resources/views/user/list.blade.php                                   |   2 +-
 resources/views/user/sessions.blade.php                               |  18 +++--
 resources/views/user/view.blade.php                                   |   2 +-
 storage/settings.json                                                 |   2 +-
 tests/Feature/Http/Controllers/Api/Profile/SessionsControllerTest.php |   5 +-
 tests/Feature/Http/Controllers/Api/SessionsControllerTest.php         |   3 +-
 tests/Feature/Http/Controllers/Api/Users/SessionsControllerTest.php   |   9 ++-
 tests/Feature/Http/Controllers/Web/ActivityControllerTest.php         |   2 +-
 tests/Feature/Http/Controllers/Web/ProfileControllerTest.php          |  13 +++-
 tests/Feature/Http/Controllers/Web/UsersControllerTest.php            |  77 ++++++++++++++++---
 tests/Feature/Repositories/Session/DbSessionTest.php                  |  40 ++++++++--
 tests/Feature/Repositories/User/EloquentUserTest.php                  |  24 +++---
 50 files changed, 877 insertions(+), 513 deletions(-)

To 2.1.0 from 2.0.2

In this release Laravel is upgraded to version 5.5. The only significant change here is that some packages (like proengsoft/laravel-jsvalidation) needs to be updated to latest version.

The recommended way to upgrade your application is to make sure that your composer.json file matches the composer.json file from this release. Once you update your composer.json file, just run composer update to install those packages, and then you can proceed and update/overwrite modified files that are listed below (tests are excluded):

app/Exceptions/Handler.php                                     |   57 +----
 app/Http/Controllers/Web/Auth/AuthController.php               |    7 +-
 app/Http/Kernel.php                                            |    3 +
 app/Http/Middleware/TrimStrings.php                            |   18 ++
 app/Http/Middleware/TrustProxies.php                           |   29 +++
 app/Http/Middleware/UseApiGuard.php                            |    1 +
 app/Http/Requests/User/UpdateLoginDetailsRequest.php           |    4 +-
 artisan                                                        |    4 +-
 bootstrap/autoload.php                                         |   34 ---
 composer.json                                                  |   59 +++--
 composer.lock                                                  | 1440 +++---
 config/app.php                                                 |    2 +-
 config/broadcasting.php                                        |    7 +-
 config/cache.php                                               |   21 +-
 config/compile.php                                             |   35 ---
 config/database.php                                            |   33 +--
 config/filesystems.php                                         |    7 +
 config/mail.php                                                |   18 +-
 config/queue.php                                               |   29 +--
 config/services.php                                            |    4 -
 config/session.php                                             |   49 +++-
 config/settings.php                                            |   26 +-
 config/view.php                                                |    2 +-
 phpspec.yml                                                    |    5 -
 phpunit.xml                                                    |    2 +-
 public/.htaccess                                               |   11 +-
 public/index.php                                               |    4 +-
 public/vendor/jsvalidation/js/jsvalidation.js                  | 1681 +++---
 public/vendor/jsvalidation/js/jsvalidation.js.map              |    2 +-
 public/vendor/jsvalidation/js/jsvalidation.min.js              |    4 +-
 resources/views/activity/index.blade.php                       |    3 +-
 resources/views/user/view.blade.php                            |    2 +-
 resources/views/vendor/jsvalidation/bootstrap.php              |    7 +-
 webpack.mix.js                                                 |    2 +-

Since Laravel version is also upgraded, I would recommend you to go through Laravel's official upgrade guide to make sure that your custom code is also up to date.

To 2.0.2 from 2.0.1

This is bug-fix release mainly to fix few glitches related to API authentication for unconfirmed and banned users, and other minor issues.

The list of updated files is displayed below:

 app/Repositories/User/EloquentUser.php                        |  6 +++++-
 composer.json                                                 |  4 +---
 database/factories/ModelFactory.php                           |  2 +-
 resources/views/user/list.blade.php                           |  4 ++--
 resources/views/user/view.blade.php                           |  2 +-
 tests/TestCase.php                                            | 16 ++++++++++++++++
 tests/functional/FunctionalTestCase.php                       |  9 ++++++++-
 tests/functional/Http/Controllers/Auth/AuthControllerTest.php | 21 ++++++++++++++-------
 tests/functional/Http/Controllers/ProfileControllerTest.php   |  6 +++++-
 tests/functional/Http/Controllers/UsersControllerTest.php     | 39 +++++++++++++++++++++++++++++++++++++--
 tests/functional/Repositories/Session/DbSessionTest.php       | 15 +++++++++++----
 12 files changed, 102 insertions(+), 24 deletions(-)

To 2.0.1 from 2.0.0

This is bug-fix release which addresses few small bugs related mainly to the installation of version 2.0.0.

The following files are changed, so make sure that you update them if you want to install Vanguard via installer again:

 app/Http/Controllers/Web/InstallController.php | 1 +
 config/app.php                                 | 2 +-
 database/seeds/UserSeeder.php                  | 4 +---
 phpunit.xml                                    | 1 +
 resources/views/layouts/install.blade.php      | 6 +++---
 5 files changed, 7 insertions(+), 7 deletions(-)

If you have installed version 2.0.0 already, but you haven't executed the php artisan jwt:secret command since it was not documented as a part of 2.0.0 update guide (I added it now btw, but it was not there originally), make sure that you run the command now so it can generate random 32 characters long secret key used for signing JWT tokens for Vanguard JSON API. Btw, in version 2.0.1 this command will be automatically executed during the installation process, so you don't have to worry about it.