mirror of
https://github.com/archtechx/tenancy.git
synced 2025-12-12 14:34:04 +00:00
Also move pivot record deletion to that listener and improve tests The 'tenant pivot records are deleted along with the tenants to which they belong to' test is failing in this commit -- the listener for deleting mappings when a *tenant* is deleted is only implemented in the next commit. The only change done here is to re-add FKs (necessary for passing *in this commit* in that specific dataset variant) that were removed from the default test migration as we now have the the DeleteResourceMapping listener that's enabled by default.
52 lines
1.2 KiB
PHP
52 lines
1.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Stancl\Tenancy\Tests\Etc\ResourceSyncing;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Stancl\Tenancy\Database\Concerns\CentralConnection;
|
|
use Stancl\Tenancy\ResourceSyncing\ResourceSyncing;
|
|
use Stancl\Tenancy\ResourceSyncing\SyncMaster;
|
|
|
|
class CentralUser extends Model implements SyncMaster
|
|
{
|
|
use ResourceSyncing, CentralConnection;
|
|
|
|
protected $guarded = [];
|
|
|
|
public $timestamps = false;
|
|
|
|
public $table = 'users';
|
|
|
|
public static array $syncedAttributes = [];
|
|
|
|
public static array $creationAttributes = [];
|
|
|
|
public static bool $shouldSync = true;
|
|
|
|
public function getTenantModelName(): string
|
|
{
|
|
return TenantUser::class;
|
|
}
|
|
|
|
public function shouldSync(): bool
|
|
{
|
|
return static::$shouldSync;
|
|
}
|
|
|
|
public function getCentralModelName(): string
|
|
{
|
|
return static::class;
|
|
}
|
|
|
|
public function getSyncedAttributeNames(): array
|
|
{
|
|
return static::$syncedAttributes;
|
|
}
|
|
|
|
public function getCreationAttributes(): array
|
|
{
|
|
return count(static::$creationAttributes) ? static::$creationAttributes : $this->getSyncedAttributeNames();
|
|
}
|
|
}
|