<?php
/**
 * @copyright (c) Kufer Software GmbH, Oderstraße 7, D-84453 Mühldorf
 */

$sortId = 1;
$toolId = \ToolsAPI::TOOL_MITARBEITERUEBERSICHT_FA;

$objsettings = ToolSettingsAPI::getToolSettings($toolId);
$settingsArray = array();


$setting = new Setting();
$setting->name = 'sorttnasc';
$setting->description = 'Sortierung der Firmenmitarbeiter - nach Name';
$setting->subGroup = 'Mitarbeiterübersicht';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_RADIO);
$setting->config->items = array(
  'nameauf' => 'aufsteigend',
  'nameab' => 'absteigend'
);
array_push($settingsArray, $setting);


$setting = new Setting();
$setting->name = 'useTool21Semester';
$setting->description = 'Semestereinstellungen aus Kursübersicht verwenden';
$setting->help = 'Falls die Option abweichende Semester gewählt wird, werden die im folgenden aufgelisteten '
                 . 'abweichenden Semestereinstellungen verwendet. In diesem Fall werden Querverweise auf die Kursdetails '
                 . 'des Tools "Kursübersicht für Firmen" nicht angezeigt.';
$setting->subGroup = 'Firmenmitarbeiter mit Kursen folgender Semester anzeigen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_RADIO);
$setting->config->items = array(
  'true' => 'Semestereinstellungen aus Tool "Kursübersicht für Firmen" verwenden',
  'false' => 'Abweichende Semester setzen'
);
array_push($settingsArray, $setting);


$setting = new Setting();
$setting->name = 'useAbweichendeSemester';
$setting->description = 'Von den allgemeinen Semestereinstellungen abweichende Semester verwenden bzw. abweichende Vorbelegung des Kursfilters verwenden';
$setting->help = 'Falls gesetzt, werden die unten angegebenen Semestereinstellungen verwendet, ansonsten die unter Allgemein/Semester und Kursfilter.';
$setting->subGroup = 'Firmenmitarbeiter mit Kursen folgender Semester anzeigen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);



$setting = new Setting();
$setting->name = 'semlist';
$setting->description = 'Kurse folgender Semester anzeigen';
$setting->help = 'Es können auch mehrere Semester gewählt werden.';
$setting->subGroup = 'Firmenmitarbeiter mit Kursen folgender Semester anzeigen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_MULTISELECT);
$setting->config->separator = ',';

$semapi = new SemesterHlAPI();
$semesterAry = $semapi->getSemester();
$items = array();
foreach ($semesterAry as $semester) {
  $items[$semester] = 'Semester \'<b>' . $semester . '</b>\'';
}
if (count($items) == 0) {
  $items[''] = 'Es sind keine Semester verfügbar! Bitte überprüfen Sie die
  Hinterlegung der Semester.';
}
$setting->config->items = $items;
array_push($settingsArray, $setting);


$setting = new Setting();
$setting->name = 'keineAusgefallenenKurse';
$setting->description = 'Ausgefallene Kurse ausblenden';
$setting->help = '';
$setting->subGroup = 'Firmenmitarbeiter mit Kursen folgender Semester anzeigen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'keineAbgeschlossenenKurse';
$setting->description = 'Abgeschlossene Kurse ausblenden';
$setting->help = '';
$setting->subGroup = 'Firmenmitarbeiter mit Kursen folgender Semester anzeigen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'keineHauptkurse';
$setting->description = 'Hauptkurse von Kursreihen ausblenden';
$setting->help = '';
$setting->subGroup = 'Firmenmitarbeiter mit Kursen folgender Semester anzeigen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);

$settingsArray[] = \Kufer\Admin\Classes\Settings\Helper\Tools\KursStatusHelper::createKursStatusSetting($toolId, $objsettings, 'Firmenmitarbeiter mit Kursen folgender Semester anzeigen');

$setting = new Setting();
$setting->name = 'tnstatus';
$setting->description = 'Einschränkung der Teilnehmer (angemeldete Mitarbeiter) auf deren Belegungsstatus';
$setting->help = 'Wenn kein Status angegeben ist, werden alle Teilnehmer angezeigt, die mit Status A, T, P in einem der Kurse angemeldet sind.';
$setting->subGroup = 'Mitarbeiterübersicht';
$setting->toolId = $toolId;
$setting->config->separator = '';
$setting->config->loadConfiguration(SC_MULTISELECT);
$dbhlstatKZ = new DBWorkHLStatusKZ();
$hlstatAry = $dbhlstatKZ->getAll();

foreach ($hlstatAry as $hlstat) {
  if ($hlstat->kennz != '') {
    $setting->config->items[$hlstat->kennz] = 'Status <b>' . \CleanOperations::cleanStringForHtml($hlstat->text) . ' (' . \CleanOperations::cleanStringForHtml($hlstat->kennz) . ')</b>';
  }
}
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'mitarbeiterAnhandBeziehung';
$setting->description = 'Mitarbeiter anhand Beziehung ermitteln';
$setting->help = 'Ist diese Einstellung gesetzt, so werden die auswählbaren Firmenmitarbeiter anhand der Beziehung "Firma - Mitarbeiter" ermittelt.<br>'
        . 'Ist diese nicht gesetzt, so werden die Teilnehmer früherer Firmenanmeldungen angeboten.';
$setting->subGroup = 'Mitarbeiterübersicht';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'mitarbeiterAnhandBeziehungIgnoreBegin';
$setting->description = 'Bei Beziehung Beginndatum ignorieren';
$setting->subGroup = 'Mitarbeiterübersicht';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->disabled = !$objsettings->mitarbeiterAnhandBeziehung;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'inAusbildungBeiAusbildungsschablone';
$setting->description = 'Mitarbeiter nach der Ausbildung ausblenden';
$setting->help = 'Ist diese Einstellung gesetzt, so werden Firmenmitarbeiter bei denen eine Ausbildungsschablone '
  . 'und das Bis-Datum der Ausbildung eingetragen ist, nicht mehr angezeigt, wenn das Bis-Datum älter ist '
  . 'als das heutige.';
$setting->subGroup = 'Mitarbeiterübersicht';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->disabled = !$objsettings->mitarbeiterAnhandBeziehung;
array_push($settingsArray, $setting);