File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 33namespace App \Jobs ;
44
55use App \User ;
6+ use App \UserTermOfUseAcceptance ;
7+ use App \TermOfUseVersion ;
68use Illuminate \Support \Facades \Hash ;
79
810class UserCreateJob extends Job {
@@ -28,6 +30,13 @@ public function handle() {
2830 'email ' => $ this ->email ,
2931 'password ' => Hash::make ($ this ->password ),
3032 'verified ' => $ this ->verified ,
33+
34+ ]);
35+
36+ UserTermOfUseAcceptance::create ([
37+ 'user_id ' => $ user ->id ,
38+ 'tou_version ' => TermOfUseVersion::V0 ,
39+ 'tou_accepted_at ' => now (),
3140 ]);
3241
3342 return $ user ;
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace App ;
4+
5+ enum TermOfUseVersion: string {
6+ case V0 = 'v0 ' ;
7+ // case V1 = 'v1';
8+ // case V2 = 'v2';
9+ }
Original file line number Diff line number Diff line change @@ -98,6 +98,10 @@ public function managesWikis(): \Illuminate\Database\Eloquent\Relations\BelongsT
9898 return $ this ->belongsToMany (Wiki::class, 'wiki_managers ' );
9999 }
100100
101+ public function touAcceptances (): \Illuminate \Database \Eloquent \Relations \BelongsToMany {
102+ return $ this ->belongsToMany (UserTermOfUseAcceptance::class, 'tou_acceptances ' );
103+ }
104+
101105 public function hasVerifiedEmail () {
102106 return (bool ) $ this ->verified ;
103107 }
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace App ;
4+
5+ use Illuminate \Database \Eloquent \Factories \HasFactory ;
6+ use Illuminate \Database \Eloquent \Model ;
7+
8+ class UserTermOfUseAcceptance extends Model {
9+ use HasFactory;
10+
11+ const FIELDS = [
12+ 'user_id ' ,
13+ 'tou_version ' ,
14+ 'tou_accepted_at ' ,
15+ ];
16+
17+ protected $ fillable = self ::FIELDS ;
18+
19+ protected $ visible = self ::FIELDS ;
20+
21+ protected $ casts = [
22+ 'tou_version ' => TermOfUseVersion::class,
23+ 'tou_accepted_at ' => 'datetime ' ,
24+ ];
25+ }
You can’t perform that action at this time.
0 commit comments