some fixes
This commit is contained in:
@@ -16,6 +16,7 @@ class Website extends Model
|
||||
'user_id',
|
||||
'name',
|
||||
'domain',
|
||||
'slug',
|
||||
'tracking_id',
|
||||
'is_active',
|
||||
'settings',
|
||||
@@ -35,9 +36,32 @@ class Website extends Model
|
||||
if (empty($website->tracking_id)) {
|
||||
$website->tracking_id = 'TA-' . strtoupper(Str::random(10));
|
||||
}
|
||||
|
||||
// Auto-generate slug from name if not provided
|
||||
if (empty($website->slug)) {
|
||||
$baseSlug = Str::slug($website->name);
|
||||
$slug = $baseSlug;
|
||||
$counter = 1;
|
||||
|
||||
// Ensure slug uniqueness
|
||||
while (static::where('slug', $slug)->exists()) {
|
||||
$slug = $baseSlug . '-' . $counter;
|
||||
$counter++;
|
||||
}
|
||||
|
||||
$website->slug = $slug;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the route key for the model.
|
||||
*/
|
||||
public function getRouteKeyName(): string
|
||||
{
|
||||
return 'slug';
|
||||
}
|
||||
|
||||
public function user(): BelongsTo
|
||||
{
|
||||
return $this->belongsTo(User::class);
|
||||
|
||||
Reference in New Issue
Block a user