diff --git a/include/tw/serviceterminal.inc.php b/include/tw/serviceterminal.inc.php new file mode 100644 index 000000000..df5dc8709 --- /dev/null +++ b/include/tw/serviceterminal.inc.php @@ -0,0 +1,75 @@ + + */ +/** + * Service Terminal Funktionen + */ +require_once(dirname(__FILE__).'/../addon.class.php'); + +// die aktiven Addons werden durchsucht, ob eines davon eigene Funktionen vorsieht +// falls ja, wird die Version des Addons genommen, ansonsten die Default Funktionalitaet +$serviceterminal_addon_found=false; +$serviceterminal_addons = new addon(); + +foreach($serviceterminal_addons->aktive_addons as $addon) +{ + $serviceterminal_addon_filename = dirname(__FILE__).'/../../addons/'.$addon.'/vilesci/serviceterminal.inc.php'; + + if(file_exists($serviceterminal_addon_filename)) + { + include($serviceterminal_addon_filename); + $serviceterminal_addon_found=true; + break; + } +} + +if(!$serviceterminal_addon_found) +{ + function ServiceTerminalCheckVerlaengerung($uid) + { + if(!check_lektor($uid)) + { + + $konto = new konto(); + if($aktSemester= $konto->getLastStudienbeitrag($uid)) + { + return array(true,'Studienbeitrag für Semester '.$aktSemester.' bezahlt'); + } + else + { + return array(false,'Verlängerung der Karte ist derzeit nicht möglich da der Studienbeitrag noch nicht bezahlt wurde'); + } + } + else + return array(false,'Für Mitarbeiter ist eine Kartenverlängerung nicht möglich'); + } + + function ServiceTerminalGetDrucktext($uid) + { + // hole Semester des letzten eingezahlten Studienbeitrages + $konto = new konto(); + if(!$aktSemester= $konto->getLastStudienbeitrag($uid)) + { + return array('datum'=>'', 'errorMessage'=>'Fehler beim Auslesen des Studienganges. Bitte wenden Sie sich an den Service Desk.'); + } + + return array('datum'=>'Gueltig fuer/valid for '.$aktSemester, 'errorMessage'=>''); + } +} +?> diff --git a/soap/kartenverlaengerung.soap.php b/soap/kartenverlaengerung.soap.php index 0c3e4f814..122910832 100755 --- a/soap/kartenverlaengerung.soap.php +++ b/soap/kartenverlaengerung.soap.php @@ -26,6 +26,7 @@ require_once('../include/studiensemester.class.php'); require_once('../include/benutzer.class.php'); require_once('../include/webservicelog.class.php'); require_once('../include/datum.class.php'); +require_once('../include/'.EXT_FKT_PATH.'/serviceterminal.inc.php'); ini_set("soap.wsdl_cache_enabled", "0"); @@ -57,38 +58,8 @@ function getNumber($cardNr) $objArray = array('datum'=>'', 'errorMessage'=>'Die Person kann nicht geladen werden. Bitte wenden Sie sich an den Service Desk.'); return $objArray; } - /* - // lädt das aktuelle semester und nach 75 Tagen nach Anfang des Semesters das nächste - $studSemester = new studiensemester(); - if(!$aktSemester= $studSemester->getNextOrAktSemester('75')) - { - $objArray = array('datum'=>'', 'errorMessage'=>'Konnte Semester nicht laden. Bitte wenden Sie sich an den Service Desk.'); - return $objArray; - } - */ - // hole Semester des letzten eingezahlten Studienbeitrages - $konto = new konto(); - if(!$aktSemester= $konto->getLastStudienbeitrag($cardPerson->uid)) - { - $objArray = array('datum'=>'', 'errorMessage'=>'Fehler beim Auslesen des Studienganges. Bitte wenden Sie sich an den Service Desk.'); - return $objArray; - } - - /* - // überprüft ob Studienbeitrag bezahlt wurde - if(!$konto->checkStudienbeitrag($cardPerson->uid, $aktSemester)) - { - $objArray = array('datum'=>'', 'errorMessage'=>'Studienbeitrag noch nicht gezahlt.'); - return $objArray; - } - */ - $studSemester = new studiensemester(); - $studSemester->load($aktSemester); - $datum = new datum(); - - //$objArray = array('datum'=>'Gueltig bis/valid thru '.$datum->formatDatum($studSemester->ende, 'd.m.Y'), 'errorMessage'=>''); - $objArray = array('datum'=>'Gueltig fuer/valid for '.$studSemester->studiensemester_kurzbz, 'errorMessage'=>''); - return $objArray; + + return ServiceTerminalGetDrucktext($cardUser->uid); } -?> \ No newline at end of file +?>