| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace BookStack\Auth\Access; | 
					
						
							| 
									
										
										
										
											2019-08-17 22:52:33 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | use BookStack\Auth\User; | 
					
						
							|  |  |  | use BookStack\Notifications\UserInvite; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class UserInviteService extends UserTokenService | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     protected $tokenTable = 'user_invites'; | 
					
						
							|  |  |  |     protected $expiryTime = 336; // Two weeks
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Send an invitation to a user to sign into BookStack | 
					
						
							|  |  |  |      * Removes existing invitation tokens. | 
					
						
							| 
									
										
										
										
											2021-06-26 23:23:15 +08:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2019-08-17 22:52:33 +08:00
										 |  |  |      * @param User $user | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public function sendInvitation(User $user) | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         $this->deleteByUser($user); | 
					
						
							|  |  |  |         $token = $this->createTokenForUser($user); | 
					
						
							|  |  |  |         $user->notify(new UserInvite($token)); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | } |