36 lines
892 B
PHP
36 lines
892 B
PHP
<?php
|
|
|
|
namespace Database\Factories;
|
|
|
|
use Carbon\Carbon;
|
|
use Illuminate\Support\Str;
|
|
use Pterodactyl\Models\ApiKey;
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
|
|
class ApiKeyFactory extends Factory
|
|
{
|
|
/**
|
|
* The name of the factory's corresponding model.
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $model = ApiKey::class;
|
|
|
|
/**
|
|
* Define the model's default state.
|
|
*/
|
|
public function definition(): array
|
|
{
|
|
static $token;
|
|
|
|
return [
|
|
'key_type' => ApiKey::TYPE_APPLICATION,
|
|
'identifier' => ApiKey::generateTokenIdentifier(ApiKey::TYPE_APPLICATION),
|
|
'token' => $token ?: $token = encrypt(Str::random(ApiKey::KEY_LENGTH)),
|
|
'allowed_ips' => null,
|
|
'memo' => 'Test Function Key',
|
|
'created_at' => Carbon::now(),
|
|
'updated_at' => Carbon::now(),
|
|
];
|
|
}
|
|
}
|