add CRM module start
This commit is contained in:
@@ -87,6 +87,7 @@ class InvitationService
|
||||
|
||||
// Генерируем токен приглашения
|
||||
$inviteToken = $this->generateToken();
|
||||
$inviteExpiresAt = date('Y-m-d H:i:s', strtotime('+7 days'));
|
||||
|
||||
// Создаем запись приглашения
|
||||
$invitationData = [
|
||||
@@ -95,6 +96,7 @@ class InvitationService
|
||||
'role' => $role,
|
||||
'status' => OrganizationUserModel::STATUS_PENDING,
|
||||
'invite_token' => $inviteToken,
|
||||
'invite_expires_at' => $inviteExpiresAt,
|
||||
'invited_by' => $invitedBy,
|
||||
];
|
||||
|
||||
@@ -238,8 +240,10 @@ class InvitationService
|
||||
|
||||
// Генерируем новый токен
|
||||
$newToken = $this->generateToken();
|
||||
$newExpiresAt = date('Y-m-d H:i:s', strtotime('+7 days'));
|
||||
$this->orgUserModel->update($invitationId, [
|
||||
'invite_token' => $newToken,
|
||||
'invite_expires_at' => $newExpiresAt,
|
||||
'invited_at' => date('Y-m-d H:i:s'),
|
||||
]);
|
||||
|
||||
@@ -290,6 +294,7 @@ class InvitationService
|
||||
protected function createShadowUser(string $email): int
|
||||
{
|
||||
$token = bin2hex(random_bytes(32));
|
||||
$tokenExpiresAt = date('Y-m-d H:i:s', strtotime('+24 hours'));
|
||||
|
||||
return $this->userModel->insert([
|
||||
'email' => $email,
|
||||
@@ -297,6 +302,7 @@ class InvitationService
|
||||
'password' => null, // Без пароля до регистрации
|
||||
'email_verified' => 0,
|
||||
'verification_token' => $token,
|
||||
'token_expires_at' => $tokenExpiresAt,
|
||||
'created_at' => date('Y-m-d H:i:s'),
|
||||
]);
|
||||
}
|
||||
@@ -367,7 +373,7 @@ class InvitationService
|
||||
</p>
|
||||
<p>Если кнопка не работает, скопируйте ссылку и откройте в браузере:</p>
|
||||
<p class="invite-link">{$inviteLink}</p>
|
||||
<p>Ссылка действительна 48 часов.</p>
|
||||
<p>Ссылка действительна 7 дней.</p>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<p>© Бизнес.Точка</p>
|
||||
|
||||
Reference in New Issue
Block a user