108 lines
3.0 KiB
PHP
108 lines
3.0 KiB
PHP
|
|
<?php
|
||
|
|
declare(strict_types=1);
|
||
|
|
|
||
|
|
class TaskCertConstants
|
||
|
|
{
|
||
|
|
public const ASSIGNMENT_STATUSES = [
|
||
|
|
'open', 'in_progress', 'approval_pending', 'overdue', 'completed', 'rejected', 'expired',
|
||
|
|
];
|
||
|
|
|
||
|
|
public const COMPLETED_STATUSES = ['completed', 'expired'];
|
||
|
|
|
||
|
|
public const SUBMISSION_STATUSES = [
|
||
|
|
'submitted', 'auto_passed', 'awaiting_approval', 'approved', 'rejected',
|
||
|
|
];
|
||
|
|
|
||
|
|
public const METHOD_TYPES = [
|
||
|
|
'knowledge_read', 'form_submit', 'quiz', 'manual_approval',
|
||
|
|
];
|
||
|
|
|
||
|
|
public const FIELD_TYPES = [
|
||
|
|
'text', 'textarea', 'number', 'date', 'select', 'checkbox', 'radio', 'file',
|
||
|
|
];
|
||
|
|
|
||
|
|
public const CERTIFICATE_STATUSES = ['valid', 'expired', 'revoked'];
|
||
|
|
|
||
|
|
public static function assignmentStatusLabels(): array
|
||
|
|
{
|
||
|
|
return [
|
||
|
|
'open' => 'Offen',
|
||
|
|
'in_progress' => 'In Bearbeitung',
|
||
|
|
'approval_pending' => 'Warten auf Freigabe',
|
||
|
|
'overdue' => 'Überfällig',
|
||
|
|
'completed' => 'Abgeschlossen',
|
||
|
|
'rejected' => 'Bitte erneut einreichen',
|
||
|
|
'expired' => 'Abgelaufen',
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function submissionStatusLabels(): array
|
||
|
|
{
|
||
|
|
return [
|
||
|
|
'submitted' => 'Eingereicht',
|
||
|
|
'auto_passed' => 'Erledigt',
|
||
|
|
'awaiting_approval' => 'Wartet auf Freigabe',
|
||
|
|
'approved' => 'Freigegeben',
|
||
|
|
'rejected' => 'Abgelehnt',
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function methodLabels(): array
|
||
|
|
{
|
||
|
|
return [
|
||
|
|
'knowledge_read' => 'Wissensbeiträge lesen',
|
||
|
|
'form_submit' => 'Formular ausfüllen',
|
||
|
|
'quiz' => 'Quiz beantworten',
|
||
|
|
'manual_approval' => 'Antrag auf Freigabe',
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function certificateStatusLabels(): array
|
||
|
|
{
|
||
|
|
return [
|
||
|
|
'valid' => 'Gültig',
|
||
|
|
'expired' => 'Abgelaufen',
|
||
|
|
'revoked' => 'Widerrufen',
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function fieldTypeLabels(): array
|
||
|
|
{
|
||
|
|
return [
|
||
|
|
'text' => 'Text',
|
||
|
|
'textarea' => 'Textbereich',
|
||
|
|
'number' => 'Zahl',
|
||
|
|
'date' => 'Datum',
|
||
|
|
'select' => 'Auswahl',
|
||
|
|
'checkbox' => 'Checkbox',
|
||
|
|
'radio' => 'Radio',
|
||
|
|
'file' => 'Datei-Upload',
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function isValidAssignmentStatus(string $status): bool
|
||
|
|
{
|
||
|
|
return in_array($status, self::ASSIGNMENT_STATUSES, true);
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function isValidSubmissionStatus(string $status): bool
|
||
|
|
{
|
||
|
|
return in_array($status, self::SUBMISSION_STATUSES, true);
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function isValidMethodType(string $type): bool
|
||
|
|
{
|
||
|
|
return in_array($type, self::METHOD_TYPES, true);
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function isValidFieldType(string $type): bool
|
||
|
|
{
|
||
|
|
return in_array($type, self::FIELD_TYPES, true);
|
||
|
|
}
|
||
|
|
|
||
|
|
public static function isValidCertificateStatus(string $status): bool
|
||
|
|
{
|
||
|
|
return in_array($status, self::CERTIFICATE_STATUSES, true);
|
||
|
|
}
|
||
|
|
}
|