This commit is contained in:
ct
2025-07-03 20:27:48 +08:00
parent 3d7b3c428b
commit 3edfedecdd
7 changed files with 17 additions and 14 deletions

View File

@@ -34,10 +34,11 @@ public function handle()
if ($expiredTokens->isEmpty()) {
$this->info('No expired tokens found.');
return;
}
$this->info('Found ' . $expiredTokens->count() . ' expired tokens to process.');
$this->info('Found '.$expiredTokens->count().' expired tokens to process.');
$restoredCredits = 0;
@@ -47,10 +48,10 @@ public function handle()
// Restore credits to user
$token->user->user_usage()->increment('non_watermark_videos_left', $token->credits_reserved);
$restoredCredits += $token->credits_reserved;
$this->info("Restored {$token->credits_reserved} credits to user {$token->user_id}");
}
// Delete the expired token
$token->delete();
}
@@ -58,4 +59,4 @@ public function handle()
$this->info("Cleanup completed. Restored {$restoredCredits} credits and deleted {$expiredTokens->count()} expired tokens.");
}
}
}

View File

@@ -62,7 +62,7 @@ public function premiumExportComplete(Request $request)
->where('user_id', $user->id)
->first();
if (!$token) {
if (! $token) {
return response()->json([
'error' => [
'message' => 'Invalid export token.',
@@ -70,7 +70,7 @@ public function premiumExportComplete(Request $request)
]);
}
if (!$token->isValid()) {
if (! $token->isValid()) {
return response()->json([
'error' => [
'message' => 'Export token has expired or already been used.',

View File

@@ -37,12 +37,12 @@ public function isExpired(): bool
public function isUsed(): bool
{
return !is_null($this->used_at);
return ! is_null($this->used_at);
}
public function isValid(): bool
{
return !$this->isExpired() && !$this->isUsed();
return ! $this->isExpired() && ! $this->isUsed();
}
public function markAsUsed(): void
@@ -53,11 +53,11 @@ public function markAsUsed(): void
public function scopeExpiredAndUnused($query)
{
return $query->where('expires_at', '<', now())
->whereNull('used_at');
->whereNull('used_at');
}
public function scopeForUser($query, $userId)
{
return $query->where('user_id', $userId);
}
}
}

View File

@@ -20,7 +20,7 @@ public function up(): void
$table->timestamp('expires_at');
$table->timestamp('used_at')->nullable();
$table->timestamps();
$table->index(['user_id', 'expires_at']);
$table->index('expires_at');
});

View File

@@ -58,6 +58,8 @@ @theme {
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
--color-sidebar-border: var(--sidebar-border);
--color-sidebar-ring: var(--sidebar-ring);
--spacing-safe-area: env(safe-area-inset-top);
}
/*

View File

@@ -109,8 +109,8 @@ const UpgradeSheet = () => {
return (
<Sheet open={isOpen} onOpenChange={handleOpenChange}>
<SheetContent side="bottom" className="max-h-screen overflow-y-scroll pb-1">
<SheetHeader>
<SheetContent side="bottom" className="max-h-screen gap-0! overflow-y-scroll pb-1 pt-safe-area">
<SheetHeader className="mb-0">
<SheetTitle className="flex items-center justify-center gap-2 sm:text-center">
<CartIcon className={'h-4 w-4'} /> Store
</SheetTitle>

File diff suppressed because one or more lines are too long