App/routes/Personal.php

39 lines
1.3 KiB
PHP

<?php
namespace Routes;
require_once("resources/Personal/Personal.php");
require_once("links/Personal_Lehrgaenge.php");
require_once("subroutes/Fahrzeuge_Personal.php");
require_once("subroutes/Personal_Abteilungen.php");
require_once("subroutes/Personal_Gruppen.php");
require_once("subroutes/Personal_Lehrgaenge.php");
require_once("subroutes/Personal_Verwalter.php");
require_once("subroutes/Files.php");
class Personal extends Route
{
use \Subroutes\Fahrzeuge_Personal;
use \Subroutes\Personal_Abteilungen;
use \Subroutes\Personal_Gruppen;
use \Subroutes\Personal_Lehrgänge;
use \Subroutes\Personal_Verwalter;
use \subroutes\Files;
protected $resource = "Personal\\Personal";
protected static $rights = null;
public static function Rights() {
if (is_null(self::$rights)) {
self::$rights = \Rights::Make()
->Add(\Right::Make("DARF_PERSONAL_VERWALTEN")->Allow("admin"))
->Add(\Right::AllowSelf())
->Add(\Right::AllowUpdateSelf()->Limit(["Telefon", "EMail"]))
->Add(\Right::Make("DARF_KRAFTFAHRER_SEHEN")->Allow("readonly")->Require(\Condition::Make()->Add("Lehrgänge", 5, \Links\Personal_Lehrgänge::Get()->Short())))
->Add(\Right::Make("DARF_AGTS_SEHEN")->Allow("readonly")->Require(\Condition::Make()->Add("Lehrgänge", 2, \Links\Personal_Lehrgänge::Get()->Short())));
}
return self::$rights;
}
}