belongsTo(User::class, 'owner_id'); } public function members(): BelongsToMany { return $this->belongsToMany(User::class) ->withPivot('role') ->as('membership') ->using(OrganisationUser::class) ->withTimestamps(); } public function servers(): HasMany { return $this->hasMany(Server::class); } public function applications(): HasMany { return $this->hasMany(Application::class); } public static function createUniqueSlug(string $name): string { $slug = Str::slug($name); $count = 2; while (Organisation::where('slug', $slug)->exists()) { $slug = Str::slug($name) . '-' . $count++; } return $slug; } }