diff --git a/CHANGELOG.md b/CHANGELOG.md index afa5619..9287162 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [1.0.3] - (12/02/2020) + +### Changed +- Registration changes to match new SDK +- Set up User Provider +- Update dependencies + ## [1.0.2] - (05/02/2020) ### Changed @@ -24,6 +31,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Open and save module instances - Change settings, permissions and third party connections -[Unreleased]: https://github.com/bristol-su/playground/compare/v1.0.1...HEAD +[Unreleased]: https://github.com/bristol-su/playground/compare/v1.0.3...HEAD +[1.0.3]: https://github.com/bristol-su/playground/compare/v1.0.2...v1.0.3 +[1.0.2]: https://github.com/bristol-su/playground/compare/v1.0.1...v1.0.2 [1.0.1]: https://github.com/bristol-su/playground/compare/v1.0...v1.0.1 [1.0]: https://github.com/bristol-su/playground/releases/tag/v1.0 diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..d6e4b70 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +# Set the base image for subsequent instructions +FROM php:7.2 + +# Update packages +RUN apt-get update + +# Install PHP and composer dependencies +RUN apt-get install -qq git curl libmcrypt-dev libjpeg-dev libpng-dev libfreetype6-dev libbz2-dev + +# Clear out the local repository of retrieved package files +RUN apt-get clean + +# Install needed extensions +# Here you can install any other extension that you need during the test and deployment process +RUN docker-php-ext-install mcrypt pdo_mysql zip + +# Install Composer +RUN curl --silent --show-error https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer + diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php index d932b7d..6dc372a 100644 --- a/app/Http/Controllers/Auth/RegisterController.php +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -54,7 +54,7 @@ protected function validator(array $data) return Validator::make($data, [ 'first_name' => ['required', 'string', 'max:255'], 'last_name' => ['required', 'string', 'max:255'], - 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'], + 'email' => ['required', 'string', 'email', 'max:255', 'unique:control_data_user'], 'password' => ['required', 'string', 'min:5', 'confirmed'], ]); } @@ -67,12 +67,13 @@ protected function validator(array $data) */ protected function create(array $data) { - $dataUser = app(DataUser::class)->create($data['first_name'], $data['last_name'], $data['email']); + $dataUser = app(DataUser::class)->create($data['first_name'], $data['last_name'], $data['email'], null, $data['first_name'] . ' ' . $data['last_name']); $controlUser = app(\BristolSU\ControlDB\Contracts\Repositories\User::class)->create($dataUser->id()); $databaseUser = app(UserRepository::class)->create([ 'control_id' => $controlUser->id() ]); + $databaseUser->email_verified_at = Carbon::now(); $databaseUser->password = Hash::make($data['password']); $databaseUser->save(); diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php index 7a7f48e..68bb3b4 100644 --- a/app/Providers/AuthServiceProvider.php +++ b/app/Providers/AuthServiceProvider.php @@ -2,7 +2,9 @@ namespace BristolSU\Playground\Providers; +use BristolSU\Playground\Support\Authentication\UserProvider; use BristolSU\Support\Authentication\Contracts\Authentication; +use Illuminate\Support\Facades\Auth; use Illuminate\Support\ServiceProvider; /** @@ -21,5 +23,9 @@ class AuthServiceProvider extends ServiceProvider public function boot() { $this->app->bind(Authentication::class, \BristolSU\Playground\Support\Authentication\Authentication::class); + + Auth::provider('data-user-provider', function($app) { + return $app->make(UserProvider::class); + }); } } diff --git a/app/Support/Authentication/UserProvider.php b/app/Support/Authentication/UserProvider.php new file mode 100644 index 0000000..55be660 --- /dev/null +++ b/app/Support/Authentication/UserProvider.php @@ -0,0 +1,115 @@ +userRepository = $userRepository; + } + + /** + * Retrieve a user by their unique email. + * + * @param mixed $email + * @return User|null + */ + public function retrieveById($email) + { + try { + return $this->userRepository->getById($email); + } catch (ModelNotFoundException $e) {} + return null; + } + + /** + * Retrieve a user by their unique email and "remember me" token. + * + * @param mixed $email + * @param string $token + * @return \Illuminate\Contracts\Auth\Authenticatable|null + */ + public function retrieveByToken($email, $token) + { + try { + $user = $this->userRepository->getFromRememberToken($token); + if($user->id === $email) { + return $user; + } + } catch (ModelNotFoundException $e) {} + return null; + } + + /** + * Update the "remember me" token for the given user in storage. + * + * @param Authenticatable|User $user + * @param string $token + * @return User|Authenticatable|null + */ + public function updateRememberToken(Authenticatable $user, $token) + { + $this->userRepository->setRememberToken($user->id, $token); + } + + /** + * Retrieve a user by the given credentials. + * + * @param array $credentials + * @return \Illuminate\Contracts\Auth\Authenticatable|null + */ + public function retrieveByCredentials(array $credentials) + { + + try { + $dataUser = app(DataUser::class)->getWhere([ + 'email' => $credentials['email'] + ]); + } catch (ModelNotFoundException $e) { + return null; + } + + try { + $controlUser = app(\BristolSU\ControlDB\Contracts\Repositories\User::class)->getByDataProviderId($dataUser->id()); + } catch (ModelNotFoundException $e) { + return null; + } + + try { + $user = $this->userRepository->getFromControlId($controlUser->id()); + } catch (ModelNotFoundException $e) { + return null; + } + + return $user; + } + + /** + * Validate a user against the given credentials. + * + * @param \Illuminate\Contracts\Auth\Authenticatable|User $user + * @param array $credentials + * @return bool + */ + public function validateCredentials(Authenticatable $user, array $credentials) + { + if(app(Hasher::class)->check($credentials['password'], $user->password)) { + return true; + } + return false; + } +} diff --git a/config/auth.php b/config/auth.php index 9a4631a..43e04be 100644 --- a/config/auth.php +++ b/config/auth.php @@ -40,12 +40,12 @@ 'guards' => [ 'web' => [ 'driver' => 'session', - 'provider' => 'users', + 'provider' => 'data-users', ], 'api' => [ 'driver' => 'passport', - 'provider' => 'users', + 'provider' => 'data-users', ], 'activity-instance' => [ @@ -82,6 +82,10 @@ 'model' => ActivityInstance::class ], + 'data-users' => [ + 'driver' => 'data-user-provider', + 'model' => \BristolSU\Support\User\User::class, + ] // 'users' => [ // 'driver' => 'database', diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..a2d68be --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,10 @@ +version: "3.4" +services: + app: + image: php:alpine + volumes: + - "./:/app" + working_dir: /app + command: "php artisan serve --host=0.0.0.0 --port=8000" + ports: + - 8888:8000 diff --git a/docs/AuthServiceProvider_8php_source.html b/docs/AuthServiceProvider_8php_source.html index 90915d6..761a4c0 100644 --- a/docs/AuthServiceProvider_8php_source.html +++ b/docs/AuthServiceProvider_8php_source.html @@ -66,10 +66,12 @@
AuthServiceProvider.php
-Go to the documentation of this file.
1 <?php
2 
4 
7 
11 class AuthServiceProvider extends ServiceProvider
12 {
13 
21  public function boot()
22  {
23  $this->app->bind(Authentication::class, \BristolSU\Playground\Support\Authentication\Authentication::class);
24  }
25 }
- +Go to the documentation of this file.
1 <?php
2 
4 
9 
13 class AuthServiceProvider extends ServiceProvider
14 {
15 
23  public function boot()
24  {
25  $this->app->bind(Authentication::class, \BristolSU\Playground\Support\Authentication\Authentication::class);
26 
27  Auth::provider('data-user-provider', function($app) {
28  return $app->make(UserProvider::class);
29  });
30  }
31 }
+ - + + +
diff --git a/docs/RegisterController_8php_source.html b/docs/RegisterController_8php_source.html index 1eb18c0..9cff9d9 100644 --- a/docs/RegisterController_8php_source.html +++ b/docs/RegisterController_8php_source.html @@ -66,7 +66,7 @@
RegisterController.php
-Go to the documentation of this file.
1 <?php
2 
4 
13 
15 {
16  /*
17  |--------------------------------------------------------------------------
18  | Register Controller
19  |--------------------------------------------------------------------------
20  |
21  | This controller handles the registration of new users as well as their
22  | validation and creation. By default this controller uses a trait to
23  | provide this functionality without requiring any additional code.
24  |
25  */
26 
27  use RegistersUsers;
28 
34  protected $redirectTo = '/';
35 
41  public function __construct()
42  {
43  $this->middleware('guest');
44  }
45 
52  protected function validator(array $data)
53  {
54  return Validator::make($data, [
55  'first_name' => ['required', 'string', 'max:255'],
56  'last_name' => ['required', 'string', 'max:255'],
57  'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
58  'password' => ['required', 'string', 'min:5', 'confirmed'],
59  ]);
60  }
61 
68  protected function create(array $data)
69  {
70  $dataUser = app(DataUser::class)->create($data['first_name'], $data['last_name'], $data['email']);
71  $controlUser = app(\BristolSU\ControlDB\Contracts\Repositories\User::class)->create($dataUser->id());
72 
73  $databaseUser = app(UserRepository::class)->create([
74  'control_id' => $controlUser->id()
75  ]);
76  $databaseUser->email_verified_at = Carbon::now();
77  $databaseUser->password = Hash::make($data['password']);
78  $databaseUser->save();
79  return $databaseUser;
80 
81  }
82 }
+Go to the documentation of this file.
1 <?php
2 
4 
13 
15 {
16  /*
17  |--------------------------------------------------------------------------
18  | Register Controller
19  |--------------------------------------------------------------------------
20  |
21  | This controller handles the registration of new users as well as their
22  | validation and creation. By default this controller uses a trait to
23  | provide this functionality without requiring any additional code.
24  |
25  */
26 
27  use RegistersUsers;
28 
34  protected $redirectTo = '/';
35 
41  public function __construct()
42  {
43  $this->middleware('guest');
44  }
45 
52  protected function validator(array $data)
53  {
54  return Validator::make($data, [
55  'first_name' => ['required', 'string', 'max:255'],
56  'last_name' => ['required', 'string', 'max:255'],
57  'email' => ['required', 'string', 'email', 'max:255', 'unique:control_data_user'],
58  'password' => ['required', 'string', 'min:5', 'confirmed'],
59  ]);
60  }
61 
68  protected function create(array $data)
69  {
70  $dataUser = app(DataUser::class)->create($data['first_name'], $data['last_name'], $data['email'], null, $data['first_name'] . ' ' . $data['last_name']);
71  $controlUser = app(\BristolSU\ControlDB\Contracts\Repositories\User::class)->create($dataUser->id());
72 
73  $databaseUser = app(UserRepository::class)->create([
74  'control_id' => $controlUser->id()
75  ]);
76 
77  $databaseUser->email_verified_at = Carbon::now();
78  $databaseUser->password = Hash::make($data['password']);
79  $databaseUser->save();
80  return $databaseUser;
81 
82  }
83 }
diff --git a/docs/UserProvider_8php.html b/docs/UserProvider_8php.html new file mode 100644 index 0000000..b59749c --- /dev/null +++ b/docs/UserProvider_8php.html @@ -0,0 +1,93 @@ + + + + + + + +Bristol SU Playground: app/Support/Authentication/UserProvider.php File Reference + + + + + + + + + +
+
+ + + + + + +
+
Bristol SU Playground +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
UserProvider.php File Reference
+
+ + + + + diff --git a/docs/UserProvider_8php_source.html b/docs/UserProvider_8php_source.html new file mode 100644 index 0000000..188ac4f --- /dev/null +++ b/docs/UserProvider_8php_source.html @@ -0,0 +1,93 @@ + + + + + + + +Bristol SU Playground: app/Support/Authentication/UserProvider.php Source File + + + + + + + + + +
+
+ + + + + + +
+
Bristol SU Playground +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
UserProvider.php
+
+
+Go to the documentation of this file.
1 <?php
2 
4 
11 
12 class UserProvider implements \Illuminate\Contracts\Auth\UserProvider
13 {
14 
18  private $userRepository;
19 
20  public function __construct(UserRepository $userRepository)
21  {
22  $this->userRepository = $userRepository;
23  }
24 
31  public function retrieveById($email)
32  {
33  try {
34  return $this->userRepository->getById($email);
35  } catch (ModelNotFoundException $e) {}
36  return null;
37  }
38 
46  public function retrieveByToken($email, $token)
47  {
48  try {
49  $user = $this->userRepository->getFromRememberToken($token);
50  if($user->id === $email) {
51  return $user;
52  }
53  } catch (ModelNotFoundException $e) {}
54  return null;
55  }
56 
64  public function updateRememberToken(Authenticatable $user, $token)
65  {
66  $this->userRepository->setRememberToken($user->id, $token);
67  }
68 
75  public function retrieveByCredentials(array $credentials)
76  {
77 
78  try {
79  $dataUser = app(DataUser::class)->getWhere([
80  'email' => $credentials['email']
81  ]);
82  } catch (ModelNotFoundException $e) {
83  return null;
84  }
85 
86  try {
87  $controlUser = app(\BristolSU\ControlDB\Contracts\Repositories\User::class)->getByDataProviderId($dataUser->id());
88  } catch (ModelNotFoundException $e) {
89  return null;
90  }
91 
92  try {
93  $user = $this->userRepository->getFromControlId($controlUser->id());
94  } catch (ModelNotFoundException $e) {
95  return null;
96  }
97 
98  return $user;
99  }
100 
108  public function validateCredentials(Authenticatable $user, array $credentials)
109  {
110  if(app(Hasher::class)->check($credentials['password'], $user->password)) {
111  return true;
112  }
113  return false;
114  }
115 }
+ +
validateCredentials(Authenticatable $user, array $credentials)
+ + + + + + + + + + + + + +
+ + + + diff --git a/docs/annotated.html b/docs/annotated.html index e618df9..16dc9d7 100644 --- a/docs/annotated.html +++ b/docs/annotated.html @@ -110,11 +110,12 @@  NSupport  NAuthentication  CAuthentication - NModule - CModuleInstanceFactory - NPermissions - CModulePermission - COverridePermissionTester + CUserProvider + NModule + CModuleInstanceFactory + NPermissions + CModulePermission + COverridePermissionTester
diff --git a/docs/classBristolSU_1_1Playground_1_1Providers_1_1AuthServiceProvider.html b/docs/classBristolSU_1_1Playground_1_1Providers_1_1AuthServiceProvider.html index 4330dd0..aee0d47 100644 --- a/docs/classBristolSU_1_1Playground_1_1Providers_1_1AuthServiceProvider.html +++ b/docs/classBristolSU_1_1Playground_1_1Providers_1_1AuthServiceProvider.html @@ -88,7 +88,7 @@

Detailed Description

Authentication Service Provider

-

Definition at line 11 of file AuthServiceProvider.php.

+

Definition at line 13 of file AuthServiceProvider.php.

Member Function Documentation

◆ boot()

@@ -110,7 +110,7 @@

Returns
void
-

Definition at line 21 of file AuthServiceProvider.php.

+

Definition at line 23 of file AuthServiceProvider.php.

diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider-members.html b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider-members.html new file mode 100644 index 0000000..b9a81d7 --- /dev/null +++ b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider-members.html @@ -0,0 +1,87 @@ + + + + + + + +Bristol SU Playground: Member List + + + + + + + + + +
+
+ + + + + + +
+
Bristol SU Playground +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
BristolSU\Playground\Support\Authentication\UserProvider Member List
+
+
+ +

This is the complete list of members for BristolSU\Playground\Support\Authentication\UserProvider, including all inherited members.

+ + + + + + + + +
$userRepositoryBristolSU\Playground\Support\Authentication\UserProviderprivate
__construct(UserRepository $userRepository)BristolSU\Playground\Support\Authentication\UserProvider
retrieveByCredentials(array $credentials)BristolSU\Playground\Support\Authentication\UserProvider
retrieveById($email)BristolSU\Playground\Support\Authentication\UserProvider
retrieveByToken($email, $token)BristolSU\Playground\Support\Authentication\UserProvider
updateRememberToken(Authenticatable $user, $token)BristolSU\Playground\Support\Authentication\UserProvider
validateCredentials(Authenticatable $user, array $credentials)BristolSU\Playground\Support\Authentication\UserProvider
+ + + + diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider.html b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider.html new file mode 100644 index 0000000..9bc524a --- /dev/null +++ b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider.html @@ -0,0 +1,342 @@ + + + + + + + +Bristol SU Playground: BristolSU\Playground\Support\Authentication\UserProvider Class Reference + + + + + + + + + +
+
+ + + + + + +
+
Bristol SU Playground +
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+Public Member Functions | +Private Attributes | +List of all members
+
+
BristolSU\Playground\Support\Authentication\UserProvider Class Reference
+
+
+
+Inheritance diagram for BristolSU\Playground\Support\Authentication\UserProvider:
+
+
Inheritance graph
+
[legend]
+
+Collaboration diagram for BristolSU\Playground\Support\Authentication\UserProvider:
+
+
Collaboration graph
+
[legend]
+ + + + + + + + + + + + + + +

+Public Member Functions

 __construct (UserRepository $userRepository)
 
 retrieveById ($email)
 
 retrieveByToken ($email, $token)
 
 updateRememberToken (Authenticatable $user, $token)
 
 retrieveByCredentials (array $credentials)
 
 validateCredentials (Authenticatable $user, array $credentials)
 
+ + + +

+Private Attributes

 $userRepository
 
+

Detailed Description

+
+

Definition at line 12 of file UserProvider.php.

+

Constructor & Destructor Documentation

+ +

◆ __construct()

+ +
+
+ + + + + + + + +
BristolSU\Playground\Support\Authentication\UserProvider::__construct (UserRepository $userRepository)
+
+
+

Member Function Documentation

+ +

◆ retrieveByCredentials()

+ +
+
+ + + + + + + + +
BristolSU\Playground\Support\Authentication\UserProvider::retrieveByCredentials (array $credentials)
+
+

Retrieve a user by the given credentials.

+
Parameters
+ + +
array$credentials
+
+
+
Returns
|null
+ +

Definition at line 75 of file UserProvider.php.

+ +
+
+ +

◆ retrieveById()

+ +
+
+ + + + + + + + +
BristolSU\Playground\Support\Authentication\UserProvider::retrieveById ( $email)
+
+

Retrieve a user by their unique email.

+
Parameters
+ + +
mixed$email
+
+
+
Returns
User|null
+ +

Definition at line 31 of file UserProvider.php.

+ +
+
+ +

◆ retrieveByToken()

+ +
+
+ + + + + + + + + + + + + + + + + + +
BristolSU\Playground\Support\Authentication\UserProvider::retrieveByToken ( $email,
 $token 
)
+
+

Retrieve a user by their unique email and "remember me" token.

+
Parameters
+ + + +
mixed$email
string$token
+
+
+
Returns
|null
+ +

Definition at line 46 of file UserProvider.php.

+ +
+
+ +

◆ updateRememberToken()

+ +
+
+ + + + + + + + + + + + + + + + + + +
BristolSU\Playground\Support\Authentication\UserProvider::updateRememberToken (Authenticatable $user,
 $token 
)
+
+

Update the "remember me" token for the given user in storage.

+
Parameters
+ + + +
Authenticatable | User$user
string$token
+
+
+
Returns
User|Authenticatable|null
+ +

Definition at line 64 of file UserProvider.php.

+ +
+
+ +

◆ validateCredentials()

+ +
+
+ + + + + + + + + + + + + + + + + + +
BristolSU\Playground\Support\Authentication\UserProvider::validateCredentials (Authenticatable $user,
array $credentials 
)
+
+

Validate a user against the given credentials.

+
Parameters
+ + + +
\Illuminate\Contracts\Auth\Authenticatable | User$user
array$credentials
+
+
+
Returns
bool
+ +

Definition at line 108 of file UserProvider.php.

+ +
+
+

Member Data Documentation

+ +

◆ $userRepository

+ +
+
+ + + + + +
+ + + + +
BristolSU\Playground\Support\Authentication\UserProvider::$userRepository
+
+private
+
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.map b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.map new file mode 100644 index 0000000..ce46615 --- /dev/null +++ b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.md5 b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.md5 new file mode 100644 index 0000000..26ab95e --- /dev/null +++ b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.md5 @@ -0,0 +1 @@ +29e34a80f0eac42fe181fc1a4b575917 \ No newline at end of file diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.png b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.png new file mode 100644 index 0000000..991c056 Binary files /dev/null and b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__coll__graph.png differ diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.map b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.map new file mode 100644 index 0000000..ce46615 --- /dev/null +++ b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.map @@ -0,0 +1,2 @@ + + diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.md5 b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.md5 new file mode 100644 index 0000000..bccf8fd --- /dev/null +++ b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.md5 @@ -0,0 +1 @@ +858c37cedb03023f7b91a716ed44bb9f \ No newline at end of file diff --git a/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.png b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.png new file mode 100644 index 0000000..991c056 Binary files /dev/null and b/docs/classBristolSU_1_1Playground_1_1Support_1_1Authentication_1_1UserProvider__inherit__graph.png differ diff --git a/docs/classes.html b/docs/classes.html index e64f7d5..a37eecd 100644 --- a/docs/classes.html +++ b/docs/classes.html @@ -62,7 +62,7 @@
Class Index
-
a | c | e | f | h | k | l | m | o | r | s | t | v
+
a | c | e | f | h | k | l | m | o | r | s | t | u | v
+ - + + - + + +
  a  
  e  
@@ -76,24 +76,25 @@
TrustProxies (BristolSU\Playground\Http\Middleware)   
Authentication (BristolSU\Playground\Support\Authentication)   
  f  
  m  
-
  v  
+
  u  
AuthServiceProvider (BristolSU\Playground\Providers)   RedirectIfAuthenticated (BristolSU\Playground\Http\Middleware)   
  c  
-
ForgotPasswordController (BristolSU\Playground\Http\Controllers\Auth)   ModuleController (BristolSU\Playground\Http\Controllers\Api)   RegisterController (BristolSU\Playground\Http\Controllers\Auth)   VerificationController (BristolSU\Playground\Http\Controllers\Auth)   
ForgotPasswordController (BristolSU\Playground\Http\Controllers\Auth)   ModuleController (BristolSU\Playground\Http\Controllers\Api)   RegisterController (BristolSU\Playground\Http\Controllers\Auth)   UserProvider (BristolSU\Playground\Support\Authentication)   
  h  
-
ModuleInstanceFactory (BristolSU\Playground\Support\Module)   ResetPasswordController (BristolSU\Playground\Http\Controllers\Auth)   VerifyCsrfToken (BristolSU\Playground\Http\Middleware)   
CheckForMaintenanceMode (BristolSU\Playground\Http\Middleware)   ModuleInstancePermissionController (BristolSU\Playground\Http\Controllers\Api)   RouteServiceProvider (BristolSU\Playground\Providers)   ViewServiceProvider (BristolSU\Playground\Providers)   
ModuleInstanceFactory (BristolSU\Playground\Support\Module)   ResetPasswordController (BristolSU\Playground\Http\Controllers\Auth)   
  v  
+
CheckForMaintenanceMode (BristolSU\Playground\Http\Middleware)   ModuleInstancePermissionController (BristolSU\Playground\Http\Controllers\Api)   RouteServiceProvider (BristolSU\Playground\Providers)   
ClearDatabase (BristolSU\Playground\Console\Commands)   Handler (BristolSU\Playground\Exceptions)   ModuleInstanceServiceController (BristolSU\Playground\Http\Controllers\Api)   
  s  
-
ConfirmPasswordController (BristolSU\Playground\Http\Controllers\Auth)   HomeController (BristolSU\Playground\Http\Controllers)   ModuleInstanceSettingController (BristolSU\Playground\Http\Controllers\Api)   
VerificationController (BristolSU\Playground\Http\Controllers\Auth)   
ConfirmPasswordController (BristolSU\Playground\Http\Controllers\Auth)   HomeController (BristolSU\Playground\Http\Controllers)   ModuleInstanceSettingController (BristolSU\Playground\Http\Controllers\Api)   VerifyCsrfToken (BristolSU\Playground\Http\Middleware)   
ConnectionController (BristolSU\Playground\Http\Controllers\Api)   
  k  
-
ModuleModuleInstanceController (BristolSU\Playground\Http\Controllers\Api)   ServiceConnectionController (BristolSU\Playground\Http\Controllers\Api)   
ModuleModuleInstanceController (BristolSU\Playground\Http\Controllers\Api)   ServiceConnectionController (BristolSU\Playground\Http\Controllers\Api)   ViewServiceProvider (BristolSU\Playground\Providers)   
Controller (BristolSU\Playground\Http\Controllers)   ModulePermission (BristolSU\Playground\Support\Permissions)   ServiceConnectorController (BristolSU\Playground\Http\Controllers\Api)   
Kernel (BristolSU\Playground\Console)   
-
a | c | e | f | h | k | l | m | o | r | s | t | v
+
a | c | e | f | h | k | l | m | o | r | s | t | u | v