1 | <?php namespace Arcanedev\LaravelAuth\Models\Traits; |
||
20 | trait Confirmable |
||
21 | { |
||
22 | /* ----------------------------------------------------------------- |
||
23 | | Scopes |
||
24 | | ----------------------------------------------------------------- |
||
25 | */ |
||
26 | |||
27 | /** |
||
28 | * Scope confirmed users. |
||
29 | * |
||
30 | * @param \Illuminate\Database\Eloquent\Builder $query |
||
31 | * |
||
32 | * @return \Illuminate\Database\Eloquent\Builder |
||
33 | */ |
||
34 | 3 | public function scopeConfirmed(Builder $query) |
|
39 | |||
40 | /** |
||
41 | * Scope unconfirmed users by code. |
||
42 | * |
||
43 | * @param \Illuminate\Database\Eloquent\Builder $query |
||
44 | * @param string $code |
||
45 | * |
||
46 | * @return \Illuminate\Database\Eloquent\Builder |
||
47 | */ |
||
48 | 15 | public function scopeUnconfirmed(Builder $query, $code = null) |
|
56 | |||
57 | /* ----------------------------------------------------------------- |
||
58 | | Getters & Setters |
||
59 | | ----------------------------------------------------------------- |
||
60 | */ |
||
61 | |||
62 | /** |
||
63 | * Get the `is_confirmed` attribute. |
||
64 | * |
||
65 | * @return bool |
||
66 | */ |
||
67 | 9 | public function getIsConfirmedAttribute() |
|
71 | |||
72 | /* ----------------------------------------------------------------- |
||
73 | | Main Methods |
||
74 | | ----------------------------------------------------------------- |
||
75 | */ |
||
76 | |||
77 | /** |
||
78 | * Confirm the unconfirmed user account by confirmation code. |
||
79 | * |
||
80 | * @param string $code |
||
81 | * |
||
82 | * @return \Arcanesoft\Contracts\Auth\Models\User |
||
83 | * |
||
84 | * @throws \Arcanedev\LaravelAuth\Exceptions\UserConfirmationException |
||
85 | */ |
||
86 | 15 | public static function findUnconfirmed($code) |
|
96 | |||
97 | /** |
||
98 | * Confirm the new user account. |
||
99 | * |
||
100 | * @param \Arcanesoft\Contracts\Auth\Models\User|string $code |
||
101 | * |
||
102 | * @return \Arcanesoft\Contracts\Auth\Models\User |
||
103 | */ |
||
104 | 9 | public static function confirm($code) |
|
113 | |||
114 | /* ----------------------------------------------------------------- |
||
115 | | Check Methods |
||
116 | | ----------------------------------------------------------------- |
||
117 | */ |
||
118 | |||
119 | /** |
||
120 | * Check if user has a confirmed account. |
||
121 | * |
||
122 | * @return bool |
||
123 | */ |
||
124 | 9 | public function isConfirmed() |
|
128 | } |
||
129 |