<?php
/**
 * @copyright (c) Kufer Software GmbH, Loisachstrasse 4, D-84453 Mühldorf
 */

use Kufer\Admin\Classes\Settings\Helper\Tools\LinkHelper;

$sortId = 3;
$toolId = \ToolsAPI::TOOL_KURSUEBERSICHT_DOZ;

$settingsArray = array();
$objsettings = ToolSettingsAPI::getToolSettings(\ToolsAPI::TOOL_KURSUEBERSICHT_DOZ);

array_push($settingsArray, LinkHelper::createHardlinkSettingItemToWssField(3, $toolId));

$setting = new Setting();
$setting->name = 'showTnPictures';
$setting->description = 'Zeige Teilnehmerbilder, wenn die Maus über Name oder Vorname steht';
$setting->subGroup = 'Darstellung der Teilnehmer';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->config->size = 20;
$setting->config->maxLength = 20;
$setting->config->allowNegative = false;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'tnstatus';
$setting->description = 'Einschränkung der Teilnehmer auf  Belegungsstatus';
$setting->help = 'Wenn kein Status angegeben ist, werden alle Teilnehmer ohne Berücksichtigung ihrer Status angezeigt.';
$setting->subGroup = 'Darstellung der Teilnehmer';
$setting->toolId = $toolId;
$setting->config->separator = '';
$setting->config->loadConfiguration(SC_MULTISELECT);
$dbhlstatKZ = new DBWorkHLStatusKZ();
$hlstatAry = $dbhlstatKZ->getAll();
$mitFirma = true;
foreach ($hlstatAry as $hlstat) {
  if ($hlstat->kennz != '' && ($mitFirma || $hlstat->kennz != 'F')) {
    $setting->config->items[$hlstat->kennz] = 'Status <b>' . \CleanOperations::cleanStringForHtml($hlstat->text) . ' (' . \CleanOperations::cleanStringForHtml($hlstat->kennz) . ')</b>';
  }
}
array_push($settingsArray, $setting);

if (!empty($objsettings->tnstatus)) {
  $setting = new Setting();
  $setting->name = 'colortnstatus';
  $setting->description = 'Farben für den jeweiligen Status';
  $setting->help = 'Bitte verwenden Sie für eine Farbangabe folgendes Format: #F1G4C0 oder den Farbnamen';
  $setting->subGroup = 'Darstellung der Teilnehmer';
  $setting->toolId = $toolId;
  $setting->config->status = $objsettings->tnstatus;
  $setting->config->kennzeichen = 'tn';
  $setting->config->loadConfiguration(SC_TABLE);
  array_push($settingsArray, $setting);
}

$setting = new Setting();
$setting->name = 'sorttnasc';
$setting->description = 'Sortierung der Teilnehmer - nach Name';
$setting->subGroup = 'Darstellung der Teilnehmer';
$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 = 'sorttnasc';
$setting->description = 'Sortierung der Teilnehmer - nach Anmeldedatum';
$setting->subGroup = 'Darstellung der Teilnehmer';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_RADIO);
$setting->config->items = array(
  'anmeldedatumauf' => 'aufsteigend',
  'anmeldedatumab' => 'absteigend'
);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sorttnasc';
$setting->description = 'Sortierung der Teilnehmer - nach Anmeldereihenfolge';
$setting->help = 'Das Anmeldedatum kann sich bei Statusänderungen ändern. Die Anmeldereihenfolge entspricht, wann die Belegung zum Kurs erstellt wurde und bleibt gleich.';
$setting->subGroup = 'Darstellung der Teilnehmer';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_RADIO);
$setting->config->items = array(
  'idauf' => 'aufsteigend',
  'idab' => 'absteigend'
);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sorttnasc';
$setting->description = 'Sortierung der Teilnehmer - nach Firmennamen';
$setting->help = 'Sortiert die Teilnehmer nach den Namen der eingetragenen Firmen.';
$setting->subGroup = 'Darstellung der Teilnehmer';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_RADIO);
$setting->config->items = array(
  'firmennameauf' => 'aufsteigend',
  'firmennameab' => 'absteigend'
);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'showTnNurWennMinTn';
$setting->description = 'Teilnehmerdaten nur anzeigen, wenn die minimale Teilnehmeranzahl erreicht wurde';
$setting->help = 'Werden keine Teilnehmerdaten angezeigt, werden der Button Teilnehmer sowie der Reiter Teilnehmer in den Kursdetails des Kurses ausgeblendet. '
                 . 'In der Kursübersicht werden zum Kurs die PDF-Listen mit Teilnehmerdaten nicht erzeugt; stattdessen wird eine entsprechende Meldung ausgegeben.<br>'
                 . 'Diese Einstellung für die KuferTools kann auch unter  Dozenten / Kursübersicht / Kursübersicht gesetzt werden.';
$setting->subGroup = 'Teilnehmer-Reiter und -Listen ausblenden';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'showTnTrotzMinTnWennKursstatusLaeuft';
$setting->description = 'Falls der Kurs-Status auf "Kurs läuft" steht, werden Teilnehmerdaten trotz minimaler Teilnehmeranzahl angezeigt';
$setting->help = 'Der Kurs-Status kann in KuferSQL im Kursstamm auf der 3. Seite über den Button "Kurs-Status ändern" auf "Kurs läuft" gesetzt werden.';
$setting->subGroup = 'Teilnehmer-Reiter und -Listen ausblenden';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'tnDatenAusblendenNachKursEnde';
$setting->description = 'Teilnehmerdaten nur bis x Tage nach Ende des Kurses anzeigen';
$setting->help = 'Werden keine Teilnehmerdaten angezeigt, werden der Button Teilnehmer sowie der Reiter Teilnehmer in den Kursdetails des Kurses ausgeblendet. '
                 . 'In der Kursübersicht werden zum Kurs die PDF-Listen mit Teilnehmerdaten nicht erzeugt; stattdessen wird eine entsprechende Meldung ausgegeben.<br>'
                 . 'Diese Einstellung für die KuferTools kann auch unter  Dozenten / Kursübersicht / Kursübersicht gesetzt werden.';
$setting->subGroup = 'Teilnehmer-Reiter und -Listen ausblenden';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_INPUTNUMERIC);
$setting->config->size = 4;
$setting->config->maxLength = 4;
$setting->config->allowNegative = false;
$setting->config->HasIncrDecr = true;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'tnDatenAusblendenVorKursBeginn';
$setting->description = 'Teilnehmerdaten erst ab x Tage vor Beginn des Kurses anzeigen';
$setting->help = 'Werden keine Teilnehmerdaten angezeigt, werden der Button Teilnehmer sowie der Reiter Teilnehmer in den Kursdetails des Kurses ausgeblendet. '
                 . 'In der Kursübersicht werden zum Kurs die PDF-Listen mit Teilnehmerdaten nicht erzeugt; stattdessen wird eine entsprechende Meldung ausgegeben.<br>'
                 . 'Diese Einstellung für die KuferTools kann auch unter  Dozenten / Kursübersicht / Kursübersicht gesetzt werden.';
$setting->subGroup = 'Teilnehmer-Reiter und -Listen ausblenden';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_INPUTNUMERIC);
$setting->config->size = 4;
$setting->config->maxLength = 4;
$setting->config->allowNegative = false;
$setting->config->HasIncrDecr = true;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'tnDatenAusblendenKursausfall';
$setting->description = 'Teilnehmerdaten nur anzeigen, wenn kein Kurs-Ausfall';
$setting->help = 'Wenn der Kurs ausfällt, werden dem Benutzer keine Teilnehmerdaten des Kurses angezeigt';
$setting->subGroup = 'Teilnehmer-Reiter und -Listen ausblenden';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sendMail2Einrichtung';
$setting->description = 'Kopie von E-Mails an Teilnehmer des Dozenten auch an die Schulungseinrichtung versenden';
$setting->help = 'Beim Versenden von Sammel E-Mails an die Teilnehmer des Dozenten wird damit zusätzlich eine Nachricht an die E-Mail Adresse der Schulungseinrichtung gesendet.';
$setting->subGroup = 'Sammel-E-Mail';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->config->size = 20;
$setting->config->maxLength = 20;
$setting->config->allowNegative = false;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sendMail2PlanendenMitarbeiter';
$setting->description = 'Kopie von E-Mails an Teilnehmer des Dozenten auch an den planenden Mitarbeiter versenden';
$setting->help = 'Beim Versenden von Sammel E-Mails an die Teilnehmer des Dozenten wird damit zusätzlich eine Nachricht an die E-Mail Adresse des planenden Mitarbeiters gesendet.';
$setting->subGroup = 'Sammel-E-Mail';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->config->size = 20;
$setting->config->maxLength = 20;
$setting->config->allowNegative = false;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sendMail2VerwaltendenMitarbeiter';
$setting->description = 'Kopie von E-Mails an Teilnehmer des Dozenten auch an den verwaltenden Mitarbeiter versenden';
$setting->help = 'Beim Versenden von Sammel E-Mails an die Teilnehmer des Dozenten wird damit zusätzlich eine Nachricht an die E-Mail Adresse des verwaltenden Mitarbeiters gesendet.';
$setting->subGroup = 'Sammel-E-Mail';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->config->size = 20;
$setting->config->maxLength = 20;
$setting->config->allowNegative = false;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sendMail2Dozent';
$setting->description = 'Kopie von E-Mails an Teilnehmer auch an den Dozenten versenden';
$setting->help = 'Beim Versenden von Sammel E-Mails an die Teilnehmer des Dozenten wird damit zusätzlich eine Nachricht an die  E-Mail Adresse des Dozenten gesendet.';
$setting->subGroup = 'Sammel-E-Mail';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->config->size = 20;
$setting->config->maxLength = 20;
$setting->config->allowNegative = false;
array_push($settingsArray, $setting);

if (\AllgSettingsAPI::getAllgSettings()->dmzEnabled) {
  $setting = new Setting();
  $setting->name = 'storeSammelEMailToTeilnehmer';
  $setting->description = 'Kopie von E-Mails in Dokumentenverwaltung des Teilnehmers speichern';
  $setting->help = 'Beim Versenden von Sammel E-Mails an die Teilnehmer wird damit zusätzlich die Nachricht in der Dokumentenverwaltung des Teilnehmers gespeichert.';
  $setting->subGroup = 'Sammel-E-Mail';
  $setting->toolId = $toolId;
  $setting->config->loadConfiguration(SC_CHECKBOX);
  array_push($settingsArray, $setting);
}

$setting = new Setting();
$setting->name = 'vhsEmailTool1Section3';
$setting->description = 'Ziel für E-Mail an die Einrichtung';
$setting->help = 'Ist das Feld leer, wird die Nachricht an die E-Mail-Adresse gesendet, die unter <a href="?action=settings&hardlink=file_system_schulungseinrichtung">Einstellungen / System / Daten der Einrichtung / Ziel für E-Mails aus den KuferTools an die Schulungseinrichtung</a> angegeben ist.';
$setting->subGroup = 'Sammel-E-Mail';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_TEXTNORMAL);
$setting->config->size = 20;
$setting->config->maxLength = 20;
$setting->config->allowNegative = false;
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sms_fusszeile';
$setting->description = 'Fußzeile für SMS';
$infoBoxCssClass = 'sms_fusszeile_infobox';
$infoBoxTitle = 'Diese Variablen stehen Ihnen in der Fußzeile zur Verfügung';
$infoBoxLines = array(
    'VHS:<br/>
        {%vhs_name%} = Name der Einrichtung (Zentrale Einstellungen->Allgemein) <br/>',
    'Kurs:<br/>
        {%k_kurzbez_titel%} = Titel für das Programmheft (wenn leer dann Kurzbezeichnung) <br/>
        {%k_titel%} = Titel für das Programmheft <br/>
        {%k_kurzbez%} = Kurzbezeichnung <br/>
        {%k_titel_zeile1%} = Titel für das Programmheft (nur erste Zeile) <br/>
        {%k_titel_untertitel%} = Titel für das Programmheft (alle Zeilen außer erste Zeile) <br/>
        {%k_id%} = Kursnummer <br/>
        {%k_nrab%} = Kursnummer gekürzt (in KuferSQL unter Einstellungen /Zentrale Einstellungen <br/>
        / Organisation / Darstellung der Variable Kursnummer an Stelle) <br/>',
    'Dozent:<br/>
        {%doz_name%} = Nachname <br/>
        {%doz_vorname%} = Vorname <br/>
        {%doz_namevorname%} = Name und Vorname durch Komma getrennt (Name, Vorname) <br/>
        {%doz_name_titel%} = z.B.: Dr. <br/>
        {%doz_name_vorname_ohne_komma%} = Name und Vorname durch Leerzeichen getrennt <br/>
        {%doz_vorname_name_ohne_komma%} = Vorname und Name durch Leerzeichen getrennt <br/>
        {%doz_titel_name_vorname%} = Titel, Name und Vorname durch Leerzeichen getrennt <br/>
        {%doz_titel_vorname_name%} = Titel, Vorname und Name durch Leerzeichen getrennt <br/>');
$htmlFuerInfoBox = HTMLOperations::getInfoBox($infoBoxLines, $infoBoxTitle, $infoBoxCssClass);
$setting->help = "$htmlFuerInfoBox";
$setting->subGroup = 'Sammel-SMS';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_TEXTBOX);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'sendSms2Dozent';
$setting->description = 'Kopie der SMS an Teilnehmer auch an den Dozenten versenden';
$setting->help = 'Beim Versenden einer Sammel SMS an die Teilnehmer des Dozenten wird damit zusätzlich eine SMS an den Dozenten gesendet.';
$setting->subGroup = 'Sammel-SMS';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_CHECKBOX);
$setting->config->size = 20;
$setting->config->maxLength = 20;
$setting->config->allowNegative = false;
array_push($settingsArray, $setting);



$setting = new Setting();
$setting->name = 'reiterTeilnehmerButtonExportName';
$setting->description = 'Beschriftung des Buttons Export zu Tabellenkalkulationsprogramm';
$setting->subGroup = 'Button Beschriftungen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_INPUTNORMAL);
array_push($settingsArray, $setting);

$setting = new Setting();
$setting->name = 'reiterTeilnehmerButtonBelegungenBearbeiten';
$setting->description = 'Beschriftung des Buttons Belegungen bearbeiten';
$setting->subGroup = 'Button Beschriftungen';
$setting->toolId = $toolId;
$setting->config->loadConfiguration(SC_INPUTNORMAL);
array_push($settingsArray, $setting);