added public mailbox support

This commit is contained in:
Gitea
2025-05-07 16:33:09 +05:30
parent 6f24db4c8b
commit 08f4618ea8
6 changed files with 174 additions and 46 deletions

View File

@@ -178,24 +178,24 @@ class Premium extends Model
$connection->expunge();
}
public static function getEmail($generate = false) {
if (Cookie::has('email')) {
return Cookie::get('email');
if (Cookie::has('p_email')) {
return Cookie::get('p_email');
} else {
return $generate ? self::generateRandomEmail() : null;
}
}
public static function getEmails() {
if (Cookie::has('emails')) {
return unserialize(Cookie::get('emails'));
if (Cookie::has('p_emails')) {
return unserialize(Cookie::get('p_emails'));
} else {
return [];
}
}
public static function setEmail($email): void
{
$emails = unserialize(Cookie::get('emails'));
$emails = unserialize(Cookie::get('p_emails'));
if (is_array($emails) && in_array($email, $emails)) {
Cookie::queue('email', $email, 43800);
Cookie::queue('p_email', $email, 43800);
}
}
@@ -204,7 +204,7 @@ class Premium extends Model
$usageLogs = UsageLog::where(['user_id' => auth()->user()->id])->first();
$emails = $usageLogs->emails_created_history;
if (is_array($emails) && in_array($email, $emails)) {
Cookie::queue('email', $email, 43800);
Cookie::queue('p_email', $email, 43800);
}
}
public static function removeEmail($email): void
@@ -216,10 +216,10 @@ class Premium extends Model
}
if (count($emails) > 0) {
self::setEmail($emails[0]);
Cookie::queue('emails', serialize($emails), 43800);
Cookie::queue('p_emails', serialize($emails), 43800);
} else {
Cookie::queue('email', '', -1);
Cookie::queue('emails', serialize([]), -1);
Cookie::queue('p_email', '', -1);
Cookie::queue('p_emails', serialize([]), -1);
}
}
public static function createCustomEmailFull($email): string
@@ -368,12 +368,12 @@ class Premium extends Model
self::storeUsageLog($email);
Cookie::queue('email', $email, 43800);
$emails = Cookie::has('emails') ? unserialize(Cookie::get('emails')) : [];
Cookie::queue('p_email', $email, 43800);
$emails = Cookie::has('p_emails') ? unserialize(Cookie::get('p_emails')) : [];
if (!in_array($email, $emails)) {
self::incrementEmailStats();
$emails[] = $email;
Cookie::queue('emails', serialize($emails), 43800);
Cookie::queue('p_emails', serialize($emails), 43800);
}
}
public static function incrementEmailStats($count = 1): void