snipe-it/database/factories/CustomFieldFactory.php
snipe c3b3aa4de6 Set one field to encrypted in the seeder
Signed-off-by: snipe <snipe@snipe.net>
2023-10-26 06:25:51 +01:00

108 lines
2.5 KiB
PHP

<?php
namespace Database\Factories;
use App\Models\CustomField;
use Illuminate\Database\Eloquent\Factories\Factory;
class CustomFieldFactory extends Factory
{
/**
* The name of the factory's corresponding model.
*
* @var string
*/
protected $model = CustomField::class;
/**
* Define the model's default state.
*
* @return array
*/
public function definition()
{
return [
'name' => $this->faker->unique()->catchPhrase(),
'format' => '',
'element' => 'text',
'auto_add_to_fieldsets' => '0',
'show_in_requestable_list' => '0',
];
}
public function imei()
{
return $this->state(function () {
return [
'name' => 'IMEI',
'help_text' => 'The IMEI number for this device.',
'format' => 'regex:/^[0-9]{15}$/',
];
});
}
public function phone()
{
return $this->state(function () {
return [
'name' => 'Phone Number',
'help_text' => 'Enter the phone number for this device.',
];
});
}
public function ram()
{
return $this->state(function () {
return [
'name' => 'RAM',
'help_text' => 'The amount of RAM this device has.',
];
});
}
public function cpu()
{
return $this->state(function () {
return [
'name' => 'CPU',
'help_text' => 'The speed of the processor on this device.',
'show_in_requestable_list' => '1',
];
});
}
public function macAddress()
{
return $this->state(function () {
return [
'name' => 'MAC Address',
'format' => 'regex:/^([0-9a-fA-F]{2}[:-]){5}[0-9a-fA-F]{2}$/',
];
});
}
public function testEncrypted()
{
return $this->state(function () {
return [
'name' => 'Test Encrypted',
'field_encrypted' => '1',
'help_text' => 'This is a test encrypted field.',
];
});
}
public function testCheckbox()
{
return $this->state(function () {
return [
'name' => 'Test Checkbox',
'help_text' => 'This is a test checkbox.',
'field_values' => "One\nTwo\nThree",
'element' => 'checkbox',
];
});
}
}