From cfa4439c002b0d93dc2b5fe65b5d7dd07229ac36 Mon Sep 17 00:00:00 2001 From: Andreas Moik Date: Wed, 22 Jun 2016 11:25:08 +0200 Subject: [PATCH] more new student -> prestudent changes ported student->getTab to prestudent->getTab ported student->getStudents to prestudent->getPrestudents --- .../benotungstool/lvgesamtnoteeintragen.php | 6 +- cis/private/profile/index.php | 119 +- content/pdfExport.php | 41 +- include/akadgrad.class.php | 9 +- include/benutzer.class.php | 6 +- include/prestudent.class.php | 267 +- include/student.class.php | 46 - locale/de-AT/global.php | 347 +- locale/en-US/global.php | 335 +- locale/it-IT/global.php | 1 + rdf/ausbildungsvertrag.xml.php | 231 +- rdf/diplomasupplement.xml.php | 3 +- rdf/konto.rdf.php | 8 +- rdf/student.rdf.php | 181 +- rdf/studienblatt.xml.php | 76 +- soap/semesterticket.soap.php | 69 +- soap/soap_test_student.php | 21 +- soap/student.soap.php | 237 +- system/checkStudenten.php | 11 +- vilesci/fhausweis/kartenkorrektur.php | 2 +- vilesci/personen/personen_details.php | 82 +- vilesci/personen/student_edit.php | 236 - vilesci/personen/wiederholer.php | 2 +- wawi/bestellung.php | 5450 ++++++++--------- 24 files changed, 3721 insertions(+), 4065 deletions(-) delete mode 100644 vilesci/personen/student_edit.php diff --git a/cis/private/lehre/benotungstool/lvgesamtnoteeintragen.php b/cis/private/lehre/benotungstool/lvgesamtnoteeintragen.php index 2f3265a3c..c2c6106dc 100755 --- a/cis/private/lehre/benotungstool/lvgesamtnoteeintragen.php +++ b/cis/private/lehre/benotungstool/lvgesamtnoteeintragen.php @@ -232,7 +232,7 @@ if (isset($_REQUEST["submit"])) //PreID ermitteln $prestudent = new prestudent(); - if(!$prestudent_id = $prestudent->getPreIdFromPerskz($matrikelnummer)) + if(!$prestudent->loadFromPerskz($matrikelnummer)) { $response.="\n".$p->t('benotungstool/studentMitMatrikelnummerExistiertNicht',array($matrikelnummer)); continue; @@ -240,12 +240,12 @@ if (isset($_REQUEST["submit"])) // Hole Zeugnisnote wenn schon eine eingetragen ist /* - if ($zeugnisnote = new zeugnisnote($lvid, $prestudent_id, $stsem)) + if ($zeugnisnote = new zeugnisnote($lvid, $prestudent->prestudent_id, $stsem)) $znote = $zeugnisnote->note; else $znote = null; */ - $val=savenote($db,$lvid, $prestudent_id, $note, $punkte); + $val=savenote($db,$lvid, $prestudent->prestudent_id, $note, $punkte); if($val!='neu' && $val!='update' && $val!='update_f') $response.=$val; } diff --git a/cis/private/profile/index.php b/cis/private/profile/index.php index 3800f8124..e4c4bfdc3 100644 --- a/cis/private/profile/index.php +++ b/cis/private/profile/index.php @@ -17,8 +17,9 @@ * * Authors: Christian Paminger , * Andreas Oesterreicher , - * Rudolf Hangl and - * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at>. + * Rudolf Hangl , + * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at> and + * Andreas Moik . */ require_once('../../../config/cis.config.inc.php'); require_once('../../../config/global.config.inc.php'); @@ -34,12 +35,14 @@ require_once('../../../include/phrasen.class.php'); require_once('../../../include/betriebsmittel_betriebsmittelstatus.class.php'); require_once('../../../include/benutzer.class.php'); require_once('../../../include/mitarbeiter.class.php'); +require_once('../../../include/prestudent.class.php'); require_once('../../../include/student.class.php'); require_once('../../../include/kontakt.class.php'); require_once('../../../include/fotostatus.class.php'); require_once('../../../include/addon.class.php'); require_once('../../../include/gruppe.class.php'); require_once('../../../include/adresse.class.php'); +require_once('../../../include/studiensemester.class.php'); $sprache = getSprache(); $p=new phrasen($sprache); @@ -107,7 +110,7 @@ if(check_lektor($uid)) } else { - $user = new student(); + $user = new benutzer(); $type='student'; } @@ -151,6 +154,11 @@ echo ' sortList: [[0,0]], widgets: ["zebra"] }); + $("#t3").tablesorter( + { + sortList: [[0,0]], + widgets: ["zebra"] + }); }); --> @@ -282,24 +290,11 @@ if(!$ansicht) } } -$studiengang = new studiengang(); -if ($type=='student' && (!defined('CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN') || CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN)) -{ - $studiengang->load($user->studiengang_kz); - - echo " - ".$p->t('global/studiengang').": $studiengang->bezeichnung
- ".$p->t('global/semester').": $user->semester ".$p->t('benotungstool/liste')."
- ".$p->t('global/verband').": $user->verband ".($user->verband!=' '?"".$p->t('benotungstool/liste')."":"")."
- ".$p->t('global/gruppe').": $user->gruppe ".($user->gruppe!=' '?"".$p->t('benotungstool/liste')."":"")."
- ".$p->t('profil/martrikelnummer').": $user->matrikelnr
"; -} - if ($type=='mitarbeiter') { echo "
".$p->t('profil/kurzzeichen').": $user->kurzbz
"; - + if($user->telefonklappe!='') { echo $p->t('profil/telefonTw').": $vorwahl - $user->telefonklappe
"; @@ -307,7 +302,7 @@ if ($type=='mitarbeiter') } if ($user->ort_kurzbz!='') echo $p->t('profil/buero').': '.$user->ort_kurzbz.'
'; -} +} echo ''; echo ''; if(!$ansicht && (!defined('CIS_PROFIL_FHAUSWEIS_ANZEIGEN') || CIS_PROFIL_FHAUSWEIS_ANZEIGEN)) @@ -408,18 +403,32 @@ $mail = MAIL_ADMIN; { $user->studiengang_kz = 0; } - - //Wenn eine Assistentin fuer diesen Studiengang eingetragen ist, - //dann werden die aenderungswuesche an diese Adresse gesendet - if($studiengang->email!='') - $mail = $studiengang->email; + + if($type=='student') + { + $ps = new prestudent(); + $ps->getPrestudentsFromUid($user->uid); + + + if(count($ps->result) < 1) + $mail = MAIL_ADMIN; + else + { + //Wenn eine Assistentin fuer diesen Studiengang eingetragen ist, + //dann werden die aenderungswuesche an diese Adresse gesendet + $stg = new studiengang(); + $stg->load($ps->result[count($ps->result)-1]->studiengang_kz); + + if($stg->email=='') + $mail = MAIL_ADMIN; + else + $mail = $stg->email; + } + } else - $mail = MAIL_ADMIN; - - if($user->studiengang_kz=='0') $mail = MAIL_GST; -if(!$ansicht) + if(!$ansicht) { echo " ".$p->t('profil/solltenDatenNichtStimmen')." uid'%20sind%20nicht%20korrekt.%0D @@ -428,24 +437,24 @@ if(!$ansicht) %0A%0A***%0DPlatz fuer weitere (nicht angefuehrte Daten)%0D***\">".$p->t('profil/zustaendigeAssistenz')."

"; } -echo ''; +echo '
'; echo '"; - $student = new student(); - if($student->load($student_id)) - echo ''; + $benutzer = new benutzer(); + if($benutzer->load($student_id)) + echo ''; else echo ''; echo ""; } - } echo "
'; if(!defined('CIS_PROFIL_FUNKTIONEN_ANZEIGEN') || CIS_PROFIL_FUNKTIONEN_ANZEIGEN) -{ +{ + - //Funktionen - $qry = "SELECT + $qry = "SELECT *, tbl_benutzerfunktion.oe_kurzbz as oe_kurzbz, tbl_organisationseinheit.bezeichnung as oe_bezeichnung, tbl_benutzerfunktion.semester, tbl_benutzerfunktion.bezeichnung as bf_bezeichnung - FROM - public.tbl_benutzerfunktion - JOIN public.tbl_funktion USING(funktion_kurzbz) + FROM + public.tbl_benutzerfunktion + JOIN public.tbl_funktion USING(funktion_kurzbz) JOIN public.tbl_organisationseinheit USING(oe_kurzbz) - WHERE + WHERE uid=".$db->db_add_param($uid)." AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; @@ -465,6 +474,46 @@ if(!defined('CIS_PROFIL_FUNKTIONEN_ANZEIGEN') || CIS_PROFIL_FUNKTIONEN_ANZEIGEN) } } + + +if ($type=='student' && (!defined('CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN') || CIS_PROFIL_STUDIENINFORMATION_ANZEIGEN)) +{ + $studiengang = new studiengang(); + echo ''.$p->t('global/studiengaenge').' + + + + + + + + + + '; + + $prestudent = new prestudent(); + $prestudent->getPrestudentsFromUid($user->uid); + foreach($prestudent->result as $ps) + { + $studiengang->load($ps->studiengang_kz); + $stsem = new studiensemester(); + $student = new student(); + $student->load_studentlehrverband($ps->prestudent_id, $stsem->getaktorNext()); + + echo " + + + + + + "; + + } + echo '
'.$p->t('global/studiengang').''.$p->t('profil/martrikelnummer').''.$p->t('global/semester').''.$p->t('global/verband').''.$p->t('global/gruppe').'
".$studiengang->bezeichnung."".$ps->perskz."".($student->semester!=' '?"".$student->semester."":"")."".($student->verband!=' '?"".$student->verband."":"")."".($student->gruppe!=' '?"".$student->gruppe."":"")."
'; +} + + + if(!$ansicht && (!defined('CIS_PROFIL_BETRIEBSMITTEL_ANZEIGEN') || CIS_PROFIL_BETRIEBSMITTEL_ANZEIGEN)) { // Betriebsmittel Personen diff --git a/content/pdfExport.php b/content/pdfExport.php index 11fac9918..676670181 100755 --- a/content/pdfExport.php +++ b/content/pdfExport.php @@ -71,22 +71,9 @@ else $xsl_stg_kz=$_GET['stg_kz']; else { - // Werden UIDs oder Prestudent_IDs uebergeben, wird die Vorlage des Studiengangs genommen + // Werden Prestudent_IDs uebergeben, wird die Vorlage des Studiengangs genommen // in dem der 1. Studierende in der Liste ist - if(isset($_GET['uid']) && $_GET['uid']!='') - { - if(strstr($_GET['uid'],';')) - $uids = explode(';',$_GET['uid']); - else - $uids[1] = $_GET['uid']; - - $student_obj = new student(); - if($student_obj->load($uids[1])) - { - $xsl_stg_kz=$student_obj->studiengang_kz; - } - } - elseif(isset($_GET['prestudent_id']) && $_GET['prestudent_id']!='') + if(isset($_GET['prestudent_id']) && $_GET['prestudent_id']!='') { if(strstr($_GET['prestudent_id'],';')) $prestudent_ids = explode(';',$_GET['prestudent_id']); @@ -154,10 +141,10 @@ if(isset($_GET['mitarbeiter_uid'])) $params.='&mitarbeiter_uid='.urlencode($_GET['mitarbeiter_uid']); if(isset($_GET['vertrag_id'])) { - foreach($_GET['vertrag_id'] as $id) - { - $params.='&vertrag_id[]='.urlencode($id); - } + foreach($_GET['vertrag_id'] as $id) + { + $params.='&vertrag_id[]='.urlencode($id); + } } if(isset($_GET['studienordnung_id'])) $params.='&studienordnung_id='.urlencode($_GET['studienordnung_id']); @@ -590,19 +577,21 @@ if (!isset($_REQUEST["archive"])) else { // Archivieren von Dokumenten - $uid = $_REQUEST["uid"]; + $prestudent_id = $_REQUEST["prestudent_id"]; $heute = date('Y-m-d'); - $student=new student(); - $student->load($uid); + $prestudent = new prestudent(); + $prestudent->load($prestudent_id); + $student = new student(); + $uid = $student->getUid($prestudent_id); if(isset($_REQUEST['ss'])) { $ss = $_REQUEST["ss"]; - $prestudent=new prestudent(); - $prestudent->getLastStatus($student->prestudent_id,$ss); - $semester=$prestudent->ausbildungssemester; + $ps=new prestudent(); + $ps->getLastStatus($student->prestudent_id,$ss); + $semester=$ps->ausbildungssemester; $query = " SELECT @@ -615,7 +604,7 @@ else tbl_studentlehrverband.prestudent_id = tbl_prestudent.prestudent_id AND tbl_prestudent.person_id = tbl_person.person_id AND tbl_studentlehrverband.studiengang_kz = tbl_studiengang.studiengang_kz - AND tbl_studentlehrverband.prestudent_id = ".$db->db_add_param($prestudent->prestudent_id, FHC_INTEGER)." + AND tbl_studentlehrverband.prestudent_id = ".$db->db_add_param($ps->prestudent_id, FHC_INTEGER)." AND tbl_studentlehrverband.studiensemester_kurzbz = ".$db->db_add_param($ss); if($result = $db->db_query($query)) diff --git a/include/akadgrad.class.php b/include/akadgrad.class.php index 9e8dce72d..7d7d3a7d6 100644 --- a/include/akadgrad.class.php +++ b/include/akadgrad.class.php @@ -121,15 +121,14 @@ class akadgrad extends basis_db * Liefert den Akademischen Grad eines Studenten aus der Tabelle Akadgrad * @param student_uid */ - public function getAkadgradStudent($student_uid) + public function getAkadgradStudent($prestudent_id) { //laden des Datensatzes $qry = "SELECT * FROM lehre.tbl_akadgrad WHERE - studiengang_kz = ( SELECT studiengang_kz FROM public.tbl_prestudent WHERE uid=".$this->db_add_param($student_uid).") AND + studiengang_kz = ( SELECT studiengang_kz FROM public.tbl_prestudent WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER).") AND ( geschlecht = ( SELECT geschlecht FROM public.tbl_prestudent - JOIN public.tbl_benutzer ON (tbl_prestudent.uid=tbl_benutzer.uid) - JOIN public.tbl_person USING (person_id) - WHERE student_uid=".$this->db_add_param($student_uid).") + JOIN public.tbl_person ON (tbl_person.person_id = tbl_prestudent.person_id) + WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER).") OR geschlecht IS NULL) LIMIT 1"; diff --git a/include/benutzer.class.php b/include/benutzer.class.php index 7584c479c..165912779 100644 --- a/include/benutzer.class.php +++ b/include/benutzer.class.php @@ -302,11 +302,11 @@ class benutzer extends person distinct on (uid) vorname, nachname, uid, mitarbeiter_uid, titelpre, titelpost, lektor, fixangestellt, alias, tbl_benutzer.aktiv, (SELECT UPPER (tbl_studiengang.typ || tbl_studiengang.kurzbz) - FROM public.tbl_prestudent - JOIN public.tbl_studiengang USING(studiengang_kz) + FROM public.tbl_prestudent + JOIN public.tbl_studiengang USING(studiengang_kz) WHERE uid=tbl_benutzer.uid) as studiengang, - (SELECT studiengang_kz FROM public.tbl_prestudent + (SELECT studiengang_kz FROM public.tbl_prestudent WHERE uid=tbl_benutzer.uid) as studiengang_kz, (SELECT tbl_kontakt.kontakt || ' - ' ||telefonklappe diff --git a/include/prestudent.class.php b/include/prestudent.class.php index 8c4080d41..b4ee94146 100755 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -811,13 +811,11 @@ class prestudent extends person return false; } - $qry = 'INSERT INTO public.tbl_prestudentstatus (prestudent_id, uid, perskz, status_kurzbz, + $qry = 'INSERT INTO public.tbl_prestudentstatus (prestudent_id, status_kurzbz, studiensemester_kurzbz, ausbildungssemester, datum, insertamum, insertvon, updateamum, updatevon, ext_id, orgform_kurzbz, bestaetigtam, bestaetigtvon, anmerkung, bewerbung_abgeschicktamum, studienplan_id) VALUES('. $this->db_add_param($this->prestudent_id, FHC_INTEGER).",". - $this->db_add_param($this->uid).",". - $this->db_add_param($this->perskz).",". $this->db_add_param($this->status_kurzbz).",". $this->db_add_param($this->studiensemester_kurzbz).",". $this->db_add_param($this->ausbildungssemester).",". @@ -1175,6 +1173,81 @@ class prestudent extends person } } + + /** + * Laedt alle Prestudenten der Person + * @return true wenn ok, false wenn Fehler + */ + public function getPrestudentenFromStg($person_id, $studiengang_kz) + { + if(!is_numeric($person_id) || $person_id=='') + { + $this->errormsg='ID ist ungueltig'; + return false; + } + if(!is_numeric($studiengang_kz) || $studiengang_kz=='') + { + $this->errormsg='studiengang_kz ist ungueltig'; + return false; + } + + $qry = "SELECT * FROM public.tbl_prestudent + WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER)." + AND studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." + ORDER BY prestudent_id DESC"; + + if($this->db_query($qry)) + { + while($row = $this->db_fetch_object()) + { + $obj = new prestudent(); + + $obj->prestudent_id = $row->prestudent_id; + $obj->uid = $row->uid; + $obj->perskz = $row->perskz; + $obj->aufmerksamdurch_kurzbz = $row->aufmerksamdurch_kurzbz; + $obj->studiengang_kz = $row->studiengang_kz; + $obj->berufstaetigkeit_code = $row->berufstaetigkeit_code; + $obj->ausbildungcode = $row->ausbildungcode; + $obj->zgv_code = $row->zgv_code; + $obj->zgvort = $row->zgvort; + $obj->zgvdatum = $row->zgvdatum; + $obj->zgvnation = $row->zgvnation; + $obj->zgvmas_code = $row->zgvmas_code; + $obj->zgvmaort = $row->zgvmaort; + $obj->zgvmadatum = $row->zgvmadatum; + $obj->zgvmanation = $row->zgvmanation; + $obj->aufnahmeschluessel = $row->aufnahmeschluessel; + $obj->facheinschlberuf = $this->db_parse_bool($row->facheinschlberuf); + $obj->anmeldungreihungstest = $row->anmeldungreihungstest; + $obj->reihungstestangetreten = $this->db_parse_bool($row->reihungstestangetreten); + $obj->reihungstest_id = $row->reihungstest_id; + $obj->punkte = $row->rt_gesamtpunkte; + $obj->rt_punkte1 = $row->rt_punkte1; + $obj->rt_punkte2 = $row->rt_punkte2; + $obj->rt_punkte3 = $row->rt_punkte3; + $obj->bismelden = $this->db_parse_bool($row->bismelden); + $obj->person_id = $row->person_id; + $obj->anmerkung = $row->anmerkung; + $obj->mentor = $row->mentor; + $obj->ext_id_prestudent = $row->ext_id; + $obj->dual = $this->db_parse_bool($row->dual); + $obj->ausstellungsstaat = $row->ausstellungsstaat; + $obj->zgvdoktor_code = $row->zgvdoktor_code; + $obj->zgvdoktorort = $row->zgvdoktorort; + $obj->zgvdoktordatum = $row->zgvdoktordatum; + + $this->result[] = $obj; + } + return true; + } + else + { + $this->errormsg = "Fehler beim Laden"; + return false; + } + } + /** * Gibt die eingetragenen ZGV zurück * @return array @@ -1904,6 +1977,99 @@ class prestudent extends person } } + /** + * Rueckgabewert ist die Anzahl der Ergebnisse. Bei Fehler negativ und die + * Fehlermeldung liegt in errormsg. + * Wenn der Parameter stg_kz NULL ist tritt gruppe in Kraft. + * @param string $einheit_kurzbz Einheit + * @param string grp Gruppe + * @param string ver Verband + * @param integer sem Semester + * @param integer stg_kz Kennzahl des Studiengangs + * @return integer Anzahl der gefundenen Einträge; negativ bei Fehler + */ + public function getPrestudents($stg_kz,$sem=null,$ver=null,$grp=null,$gruppe=null, $stsem=null) + { + $where = ''; + if ($gruppe!=null) + { + $where=" gruppe_kurzbz=".$this->db_add_param($gruppe)." AND tbl_benutzer.uid=tbl_benutzergruppe.uid"; + if($stsem!=null) + $where.=" AND tbl_benutzergruppe.studiensemester_kurzbz=".$this->db_add_param($stsem); + } + else + { + $where.=" tbl_studentlehrverband.studiengang_kz=".$this->db_add_param($stg_kz); + if ($sem!=null) + $where.=" AND tbl_studentlehrverband.semester=".$this->db_add_param($sem); + if ($ver!=null) + $where.=" AND tbl_studentlehrverband.verband=".$this->db_add_param($ver); + if ($grp!=null) + $where.=" AND tbl_studentlehrverband.gruppe=".$this->db_add_param($grp); + } + + if($stsem!=null) + $where.=" AND tbl_studentlehrverband.studiensemester_kurzbz=".$this->db_add_param($stsem); + + $sql_query = "SELECT * + FROM public.tbl_person, public.tbl_prestudent, public.tbl_benutzer, public.tbl_studentlehrverband"; + if($gruppe!=null) + $sql_query.= ",public.tbl_benutzergruppe"; + $sql_query.= " WHERE tbl_person.person_id=tbl_benutzer.person_id AND tbl_benutzer.uid = tbl_prestudent.uid AND tbl_studentlehrverband.prestudent_id=tbl_prestudent.prestudent_id AND $where ORDER BY nachname, vorname"; + //echo $sql_query; + if(!$this->db_query($sql_query)) + { + $this->errormsg=$this->db_last_error(); + return false; + } + $result=array(); + + while($row = $this->db_fetch_object()) + { + $l=new prestudent(); + + // Personendaten + $l->uid=$row->uid; + $l->person_id=$row->person_id; + $l->prestudent_id=$row->prestudent_id; + $l->titelpre=$row->titelpre; + $l->titelpost=$row->titelpost; + $l->vornamen=$row->vornamen; + $l->vorname=$row->vorname; + $l->nachname=$row->nachname; + $l->gebdatum=$row->gebdatum; + $l->gebort=$row->gebort; + $l->gebzeit=$row->gebzeit; + $l->familienstand = $row->familienstand; + $l->svnr=$row->svnr; + $l->foto=$row->foto; + $l->anmerkungen=$row->anmerkung; + $l->aktiv=$this->db_parse_bool($row->aktiv); + $l->alias=$row->alias; + $l->homepage=$row->homepage; + $l->updateamum=(isset($row->updateamum)?$row->updateamum:''); + $l->updatevon=(isset($row->updatevon)?$row->updatevon:''); + + // Studentendaten + $l->matrikelnr=$row->matrikelnr; + $l->gruppe=$row->lvb_gruppe; + $l->verband=$row->lvb_verband; + $l->semester=$row->lvb_semester; + $l->studiengang_kz=$row->lvb_studiengang_kz; + $l->staatsbuergerschaft = $row->staatsbuergerschaft; + + $l->zgv_code = $row->zgv_code; + $l->zgvort = $row->zgvort; + $l->zgvdatum = $row->zgvdatum; + $l->zgvmas_code = $row->zgvmas_code; + $l->zgvmaort = $row->zgvmaort; + $l->zgvmadatum = $row->zgvmadatum; + + $result[]=$l; + + } + return $result; + } /** @@ -1962,7 +2128,6 @@ class prestudent extends person return false; } } - $this->errormsg = "Fehler bei der Datenabfrage"; return false; } @@ -1970,20 +2135,26 @@ class prestudent extends person + /** - * Laedt die Prestudent_id anhand des Personenkennzeichens - * @param Personenkennzeichen - * @return prestudent_id wenn ok, false wenn Fehler + * Laedt Prestudent mit dem uebergebenen Personenkennzeichen + * @param $perskz Personenkennzeichen des Prestudenten, der geladen werden soll */ - function getPreIdFromPerskz($perskz) + public function loadFromPerskz($perskz) { + if(!is_numeric($perskz)) + { + $this->errormsg = 'perskz ist ungueltig'; + return false; + } + $qry = "SELECT prestudent_id FROM public.tbl_prestudent WHERE perskz=".$this->db_add_param($perskz); if($this->db_query($qry)) { if($row = $this->db_fetch_object()) { - return $row->prestudent_id; + return $this->load($row->prestudent_id); } else { @@ -1997,4 +2168,82 @@ class prestudent extends person return false; } } + + /** + * Liefert die Tabellenelemente die den Kriterien der Parameter entsprechen + * Ueberschreibt die Methode aus der Klasse Person + * @param $filter String mit Vorname oder Nachname + * @param $order Sortierkriterium + * @return array mit Personen oder false wenn ein Fehler auftritt + */ + public function getTab($filter, $order='person_id') + { + $sql_query = "SELECT + tbl_prestudent.person_id, staatsbuergerschaft, geburtsnation, sprache, anrede, titelpost, titelpre, + nachname, vorname, vornamen, gebdatum, gebort, gebzeit, tbl_prestudent.anmerkung, homepage, svnr, + ersatzkennzeichen, familienstand, geschlecht, anzahlkinder, tbl_person.aktiv, kurzbeschreibung, + tbl_benutzer.aktiv as bnaktiv, tbl_prestudent.studiengang_kz, tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, + tbl_studentlehrverband.gruppe, tbl_prestudent.prestudent_id + FROM + public.tbl_person + JOIN public.tbl_benutzer ON(tbl_person.person_id=tbl_benutzer.person_id) + JOIN public.tbl_prestudent ON(tbl_benutzer.uid=tbl_prestudent.uid) + JOIN public.tbl_studentlehrverband ON(tbl_studentlehrverband.prestudent_id = tbl_prestudent.prestudent_id) + WHERE true "; + + if($filter!='') + { + $sql_query.=" AND nachname ~* ".$this->db_add_param($filter)." OR + vorname ~* ".$this->db_add_param($filter)." OR + (nachname || ' ' || vorname) ~* ".$this->db_add_param($filter)." OR + (vorname || ' ' || nachname) ~* ".$this->db_add_param($filter); + } + + $sql_query .= " ORDER BY $order"; + if($filter=='') + $sql_query .= " LIMIT 30"; + + if($this->db_query($sql_query)) + { + while($row = $this->db_fetch_object()) + { + $l = new prestudent(); + $l->person_id = $row->person_id; + $l->staatsbuergerschaft = $row->staatsbuergerschaft; + $l->geburtsnation = $row->geburtsnation; + $l->sprache = $row->sprache; + $l->anrede = $row->anrede; + $l->titelpost = $row->titelpost; + $l->titelpre = $row->titelpre; + $l->nachname = $row->nachname; + $l->vorname = $row->vorname; + $l->vornamen = $row->vornamen; + $l->gebdatum = $row->gebdatum; + $l->gebort = $row->gebort; + $l->gebzeit = $row->gebzeit; + $l->anmerkungen = $row->anmerkung; + $l->homepage = $row->homepage; + $l->svnr = $row->svnr; + $l->ersatzkennzeichen = $row->ersatzkennzeichen; + $l->familienstand = $row->familienstand; + $l->geschlecht = $row->geschlecht; + $l->anzahlkinder = $row->anzahlkinder; + $l->aktiv = $this->db_parse_bool($row->aktiv); + $l->kurzbeschreibung = $row->kurzbeschreibung; + $l->bnaktiv = $this->db_parse_bool($row->bnaktiv); + $l->studiengang_kz = $row->studiengang_kz; + $l->semester = $row->semester; + $l->verband = $row->verband; + $l->gruppe = $row->gruppe; + $l->prestudent_id = $row->prestudent_id; + $this->result[]=$l; + } + } + else + { + $this->errormsg = $this->db_last_error(); + return false; + } + return true; + } } diff --git a/include/student.class.php b/include/student.class.php index eb7a81324..756b14f7f 100644 --- a/include/student.class.php +++ b/include/student.class.php @@ -581,52 +581,6 @@ class student extends benutzer } } - /** - * Laedt die Daten eines Studenten anhand der Person_id und des Studienganges - * Wenn mehrere Eintraege fuer diesen Studiengang vorhanden sind, dann wird der zuletzt eingetragene verwendet - * - * @param person_id - * @param studiengang_kz - * @return true wenn ok, false im Fehlerfall - */ - public function load_person($person_id, $studiengang_kz) - { - $qry = "SELECT tbl_student.* FROM public.tbl_benutzer JOIN public.tbl_student ON(uid=student_uid) - WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER)." AND studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." - ORDER BY prestudent_id DESC LIMIT 1"; - - if($this->db_query($qry)) - { - if($row = $this->db_fetch_object()) - { - $this->uid = $row->student_uid; - $this->matrikelnr = $row->matrikelnr; - $this->prestudent_id = $row->prestudent_id; - $this->studiengang_kz = $row->studiengang_kz; - $this->semester = $row->semester; - $this->verband = $row->verband; - $this->gruppe = $row->gruppe; - $this->updateamum = $row->updateamum; - $this->updatevon = $row->updatevon; - $this->insertamum = $row->insertamum; - $this->insertvon = $row->insertvon; - $this->ext_id = $row->ext_id; - - return true; - } - else - { - $this->errormsg = 'Kein Benutzer mit dieser UID vorhanden'; - return false; - } - } - else - { - $this->errormsg = 'Fehler beim Auslesen des Studenten'; - return false; - } - } - /** * Liefert die Tabellenelemente die den Kriterien der Parameter entsprechen * Ueberschreibt die Methode aus der Klasse Person diff --git a/locale/de-AT/global.php b/locale/de-AT/global.php index b30b02f3a..d7c69e6ea 100755 --- a/locale/de-AT/global.php +++ b/locale/de-AT/global.php @@ -1,173 +1,174 @@ -phrasen['global/studiengang']='Studiengang'; -$this->phrasen['global/studienrichtung']='Studienrichtung'; -$this->phrasen['global/institut']='Institut'; -$this->phrasen['global/semester']='Semester'; -$this->phrasen['global/studiensemester']='Studiensemester'; -$this->phrasen['global/studienzentrum']='Studienzentrum'; -$this->phrasen['global/studiengangsleitung']='Studiengangsleitung'; -$this->phrasen['global/leitung']='Leitung'; -$this->phrasen['global/koordination']='Koordination'; -$this->phrasen['global/lehrveranstaltung']='Lehrveranstaltung'; -$this->phrasen['global/lehreinheit']='Lehreinheit'; -$this->phrasen['global/organisationseinheit']='Organisationseinheit'; -$this->phrasen['global/organisationseinheiten']='Organisationseinheiten'; -$this->phrasen['global/organisationsform']='Organisationsform'; - -$this->phrasen['global/ects']='ECTS'; -$this->phrasen['global/semesterstunden']='Semesterstunden'; - -$this->phrasen['global/studiengangsmanagement']='Studiengangsmanagement'; -$this->phrasen['global/geschaeftsfuehrendeltg']='geschäftsf. Leitung'; -$this->phrasen['global/stellvertreter']='Stellvertretung'; -$this->phrasen['global/sekretariat']='Sekretariat'; -$this->phrasen['global/studentenvertreter']='Studienvertretung'; -$this->phrasen['global/jahrgangsvertretung']='Jahrgangsvertretung'; -$this->phrasen['global/hochschulvertretung']='Hochschulvertretung'; - -$this->phrasen['global/lehrziele']='Lehrziele'; -$this->phrasen['global/allgemeinerdownload']='Allgemeiner Download'; -$this->phrasen['global/newsgroups']='Newsgroups'; - -$this->phrasen['global/speichern']='Speichern'; -$this->phrasen['global/loeschen']='Löschen'; -$this->phrasen['global/entfernen']='Entfernen'; -$this->phrasen['global/editieren']='Editieren'; -$this->phrasen['global/suchen']='Suchen'; -$this->phrasen['global/alle']='Alle'; -$this->phrasen['global/abbrechen']='Abbrechen'; -$this->phrasen['global/eintragen']='Eintragen'; -$this->phrasen['global/erstellen']='Erstellen'; -$this->phrasen['global/zurueck']='Zurück'; -$this->phrasen['global/abschicken']='Abschicken'; -$this->phrasen['global/zuruecksetzen']='Zurücksetzen'; -$this->phrasen['global/datei']='Datei'; -$this->phrasen['global/auswaehlen']='Auswählen'; -$this->phrasen['global/umbenennen']='Umbenennen'; -$this->phrasen['global/anzeigen']='Anzeigen'; -$this->phrasen['global/ausblenden']='Ausblenden'; -$this->phrasen['global/bearbeiten']='Bearbeiten'; -$this->phrasen['global/aendern']='Ändern'; -$this->phrasen['global/kopieren']='Kopieren'; -$this->phrasen['global/ja']='Ja'; -$this->phrasen['global/nein']='Nein'; -$this->phrasen['global/download']='Download'; -$this->phrasen['global/auswahl']='Auswahl'; -$this->phrasen['global/hinzufuegen']='Hinzufügen'; - -$this->phrasen['global/username']='Username'; -$this->phrasen['global/vorname']='Vorname'; -$this->phrasen['global/nachname']='Nachname'; -$this->phrasen['global/name']='Name'; -$this->phrasen['global/uid']='UID'; -$this->phrasen['global/postnomen']='Postnomen'; -$this->phrasen['global/strasse']='Straße'; -$this->phrasen['global/plz']='Postleitzahl'; -$this->phrasen['global/ort']='Ort'; -$this->phrasen['global/anmerkung']='Anmerkung'; -$this->phrasen['global/anmerkungen']='Anmerkungen'; -$this->phrasen['global/sprache']='Sprache'; -$this->phrasen['global/englisch']='Englisch'; -$this->phrasen['global/deutsch']='Deutsch'; -$this->phrasen['global/titel']='Titel'; -$this->phrasen['global/geschlecht']='Geschlecht'; -$this->phrasen['global/mann']='Mann'; -$this->phrasen['global/frau']='Frau'; -$this->phrasen['global/staatsbuergerschaft']='Staatsbürgerschaft'; -$this->phrasen['global/geburtsdatum']='Geburtsdatum'; -$this->phrasen['global/geburtsort']='Geburtsort'; -$this->phrasen['global/universität']='Universität'; -$this->phrasen['global/code']='Code'; -$this->phrasen['global/adresse']='Adresse'; -$this->phrasen['global/hauptwohnsitz']='Hauptwohnsitz'; -$this->phrasen['global/nebenwohnsitz']='Nebenwohnsitz'; -$this->phrasen['global/emailAdresse']='E-Mail Adresse'; -$this->phrasen['global/mail']='Mail'; -$this->phrasen['global/telefon']='Telefon'; -$this->phrasen['global/telefonnummer']='Telefonnummer'; -$this->phrasen['global/handy']='Handy'; -$this->phrasen['global/fax']='Fax'; -$this->phrasen['global/bezeichnung']='Bezeichnung'; -$this->phrasen['global/datum']='Datum'; -$this->phrasen['global/stunde']='Stunde'; -$this->phrasen['global/minute']='Minute'; -$this->phrasen['global/person']='Person'; -$this->phrasen['global/personen']='Personen'; -$this->phrasen['global/personenkz']='Personenkz.'; -$this->phrasen['global/beschreibung']='Beschreibung'; -$this->phrasen['global/angelegtAm']='angelegt am'; -$this->phrasen['global/funktion']='Funktion'; //Mitarbeiterfunktion zB Assistenz -$this->phrasen['global/montag']='Montag'; -$this->phrasen['global/dienstag']='Dienstag'; -$this->phrasen['global/mittwoch']='Mittwoch'; -$this->phrasen['global/donnerstag']='Donnerstag'; -$this->phrasen['global/freitag']='Freitag'; -$this->phrasen['global/samstag']='Samstag'; -$this->phrasen['global/sonntag']='Sonntag'; -$this->phrasen['global/matrikelnummer']='Matrikelnummer'; -$this->phrasen['global/personenkennzeichen']='Personenkennzeichen'; - -$this->phrasen['global/von']='Von'; -$this->phrasen['global/bis']='Bis'; -$this->phrasen['global/zweck']='Zweck'; -$this->phrasen['global/aktion']='Aktion'; -$this->phrasen['global/nummer']='Nummer'; -$this->phrasen['global/gruppe']='Gruppe'; -$this->phrasen['global/verband']='Verband'; -$this->phrasen['global/kalender']='Kalender'; -$this->phrasen['global/beginn']='Beginn'; -$this->phrasen['global/ende']='Ende'; -$this->phrasen['global/beispiele']='Beispiele'; -$this->phrasen['global/neu']='Neu'; -$this->phrasen['global/ok']='OK'; - -$this->phrasen['global/anmelden']='Anmelden'; -$this->phrasen['global/angemeldet']='Angemeldet'; -$this->phrasen['global/löschen']='Löschen'; -$this->phrasen['global/dateiLoeschen']='Datei Löschen'; -$this->phrasen['global/betreff']='Betreff'; -$this->phrasen['global/handbuch']='Handbuch'; -$this->phrasen['global/hilfe']='Hilfe'; -$this->phrasen['global/benutzer']='Benutzer'; -$this->phrasen['global/anleitung']='Anleitung'; - -// Statusmeldungen -$this->phrasen['global/erfolgreichgespeichert']='Erfolgreich gespeichert'; -$this->phrasen['global/erfolgreichgelöscht']='Erfolgreich gelöscht'; -$this->phrasen['global/fehleraufgetreten']='Es ist ein Fehler aufgetreten'; -$this->phrasen['global/emailgesendetan']='E-Mail gesendet an'; -$this->phrasen['global/keineBerechtigungFuerDieseSeite']='Sie haben keine Berechtigung für diese Seite'; -$this->phrasen['global/fehlerBeimOeffnenDerDatenbankverbindung']='Fehler beim Öffnen der Datenbankverbindung'; -$this->phrasen['global/fehlerBeimLesenAusDatenbank']='Fehler beim Lesen aus der Datenbank'; -$this->phrasen['global/userNichtGefunden']='Es wurde kein User gefunden'; -$this->phrasen['global/datumNichtGesetzt']='Datum ist nicht gesetzt'; -$this->phrasen['global/studiensemesterKonnteNichtGefundenWerden'] = 'Studiensemester konnte nicht gefunden werden'; -$this->phrasen['global/studiengangKonnteNichtGefundenWerden'] = 'Studiengang konnte nicht gefunden werden'; -$this->phrasen['global/fehlerBeimErmittelnDerUID'] = 'Fehler beim ermitteln der UID'; -$this->phrasen['global/nichtAngemeldet'] = 'Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden'; -$this->phrasen['global/LDAPserverNichtErreichbar']='Der LDAP-Server ist nicht erreichbar'; -$this->phrasen['global/unbekannterFehleraufgetreten']='Es ist ein unbekannter Fehler aufgetreten'; -$this->phrasen['global/fehlerBeiDerParameteruebergabe']='Fehler bei der Uebergabe der Parameter'; -$this->phrasen['global/warnungWirklichLoeschen']='Wollen Sie diesen Datensatz wirklich löschen?'; -$this->phrasen['global/dateiErfolgreichHochgeladen']='Die Datei wurde erfolgreich hochgeladen'; -$this->phrasen['global/dateiNichtErfolgreichHochgeladen']='Die Datei wurde nicht erfolgreich hochgeladen. Bitte wiederholen Sie den Vorgang'; -$this->phrasen['global/FuerDieseAktionBenoetigenSieAdministrationsrechte']='Fuer diese Aktion benoetigen Sie Administratorenrechte'; -$this->phrasen['global/dateiExistiertNicht']='Die Datei existiert nicht'; -$this->phrasen['global/fehlerBeimAktualisierenDerDaten']='Fehler beim Aktualisieren der Daten'; -$this->phrasen['global/fehlerBeimLadenDesDatensatzes']='Fehler beim Laden des Datensatzes'; -$this->phrasen['global/fehlerBeimSpeichernDerDaten']='Fehler beim Speichern der Daten'; -$this->phrasen['global/datenWurdenGespeichert']='Daten wurden gespeichert'; -$this->phrasen['global/eintragWurdeGeloescht']='Eintrag wurde gelöscht'; -$this->phrasen['global/fehlerBeimLoeschenDesEintrags']='Fehler beim Löschen des Eintrags'; -$this->phrasen['global/keineBerechtigung']='Keine Berechtigung'; -$this->phrasen['global/datensatzWurdeNichtGefunden']='Datensatz wurde nicht gefunden'; -$this->phrasen['global/keineBerechtigungZumAendernDesDatensatzes']='Keine Berechtigung zum Ändern des Datensatzes'; -$this->phrasen['global/keineDatenGefunden']='Keine Daten gefunden'; -$this->phrasen['global/erfolgreichAngelegt']='Erfolgreich angelegt'; - -//infrastruktur - -$this->phrasen['global/passwort']='Passwort'; -$this->phrasen['global/abmelden']='Abmelden'; -$this->phrasen['global/emailAnAssistenz']='Email an Assistenz'; -?> +phrasen['global/studiengang']='Studiengang'; +$this->phrasen['global/studiengaenge']='Studiengänge'; +$this->phrasen['global/studienrichtung']='Studienrichtung'; +$this->phrasen['global/institut']='Institut'; +$this->phrasen['global/semester']='Semester'; +$this->phrasen['global/studiensemester']='Studiensemester'; +$this->phrasen['global/studienzentrum']='Studienzentrum'; +$this->phrasen['global/studiengangsleitung']='Studiengangsleitung'; +$this->phrasen['global/leitung']='Leitung'; +$this->phrasen['global/koordination']='Koordination'; +$this->phrasen['global/lehrveranstaltung']='Lehrveranstaltung'; +$this->phrasen['global/lehreinheit']='Lehreinheit'; +$this->phrasen['global/organisationseinheit']='Organisationseinheit'; +$this->phrasen['global/organisationseinheiten']='Organisationseinheiten'; +$this->phrasen['global/organisationsform']='Organisationsform'; + +$this->phrasen['global/ects']='ECTS'; +$this->phrasen['global/semesterstunden']='Semesterstunden'; + +$this->phrasen['global/studiengangsmanagement']='Studiengangsmanagement'; +$this->phrasen['global/geschaeftsfuehrendeltg']='geschäftsf. Leitung'; +$this->phrasen['global/stellvertreter']='Stellvertretung'; +$this->phrasen['global/sekretariat']='Sekretariat'; +$this->phrasen['global/studentenvertreter']='Studienvertretung'; +$this->phrasen['global/jahrgangsvertretung']='Jahrgangsvertretung'; +$this->phrasen['global/hochschulvertretung']='Hochschulvertretung'; + +$this->phrasen['global/lehrziele']='Lehrziele'; +$this->phrasen['global/allgemeinerdownload']='Allgemeiner Download'; +$this->phrasen['global/newsgroups']='Newsgroups'; + +$this->phrasen['global/speichern']='Speichern'; +$this->phrasen['global/loeschen']='Löschen'; +$this->phrasen['global/entfernen']='Entfernen'; +$this->phrasen['global/editieren']='Editieren'; +$this->phrasen['global/suchen']='Suchen'; +$this->phrasen['global/alle']='Alle'; +$this->phrasen['global/abbrechen']='Abbrechen'; +$this->phrasen['global/eintragen']='Eintragen'; +$this->phrasen['global/erstellen']='Erstellen'; +$this->phrasen['global/zurueck']='Zurück'; +$this->phrasen['global/abschicken']='Abschicken'; +$this->phrasen['global/zuruecksetzen']='Zurücksetzen'; +$this->phrasen['global/datei']='Datei'; +$this->phrasen['global/auswaehlen']='Auswählen'; +$this->phrasen['global/umbenennen']='Umbenennen'; +$this->phrasen['global/anzeigen']='Anzeigen'; +$this->phrasen['global/ausblenden']='Ausblenden'; +$this->phrasen['global/bearbeiten']='Bearbeiten'; +$this->phrasen['global/aendern']='Ändern'; +$this->phrasen['global/kopieren']='Kopieren'; +$this->phrasen['global/ja']='Ja'; +$this->phrasen['global/nein']='Nein'; +$this->phrasen['global/download']='Download'; +$this->phrasen['global/auswahl']='Auswahl'; +$this->phrasen['global/hinzufuegen']='Hinzufügen'; + +$this->phrasen['global/username']='Username'; +$this->phrasen['global/vorname']='Vorname'; +$this->phrasen['global/nachname']='Nachname'; +$this->phrasen['global/name']='Name'; +$this->phrasen['global/uid']='UID'; +$this->phrasen['global/postnomen']='Postnomen'; +$this->phrasen['global/strasse']='Straße'; +$this->phrasen['global/plz']='Postleitzahl'; +$this->phrasen['global/ort']='Ort'; +$this->phrasen['global/anmerkung']='Anmerkung'; +$this->phrasen['global/anmerkungen']='Anmerkungen'; +$this->phrasen['global/sprache']='Sprache'; +$this->phrasen['global/englisch']='Englisch'; +$this->phrasen['global/deutsch']='Deutsch'; +$this->phrasen['global/titel']='Titel'; +$this->phrasen['global/geschlecht']='Geschlecht'; +$this->phrasen['global/mann']='Mann'; +$this->phrasen['global/frau']='Frau'; +$this->phrasen['global/staatsbuergerschaft']='Staatsbürgerschaft'; +$this->phrasen['global/geburtsdatum']='Geburtsdatum'; +$this->phrasen['global/geburtsort']='Geburtsort'; +$this->phrasen['global/universität']='Universität'; +$this->phrasen['global/code']='Code'; +$this->phrasen['global/adresse']='Adresse'; +$this->phrasen['global/hauptwohnsitz']='Hauptwohnsitz'; +$this->phrasen['global/nebenwohnsitz']='Nebenwohnsitz'; +$this->phrasen['global/emailAdresse']='E-Mail Adresse'; +$this->phrasen['global/mail']='Mail'; +$this->phrasen['global/telefon']='Telefon'; +$this->phrasen['global/telefonnummer']='Telefonnummer'; +$this->phrasen['global/handy']='Handy'; +$this->phrasen['global/fax']='Fax'; +$this->phrasen['global/bezeichnung']='Bezeichnung'; +$this->phrasen['global/datum']='Datum'; +$this->phrasen['global/stunde']='Stunde'; +$this->phrasen['global/minute']='Minute'; +$this->phrasen['global/person']='Person'; +$this->phrasen['global/personen']='Personen'; +$this->phrasen['global/personenkz']='Personenkz.'; +$this->phrasen['global/beschreibung']='Beschreibung'; +$this->phrasen['global/angelegtAm']='angelegt am'; +$this->phrasen['global/funktion']='Funktion'; //Mitarbeiterfunktion zB Assistenz +$this->phrasen['global/montag']='Montag'; +$this->phrasen['global/dienstag']='Dienstag'; +$this->phrasen['global/mittwoch']='Mittwoch'; +$this->phrasen['global/donnerstag']='Donnerstag'; +$this->phrasen['global/freitag']='Freitag'; +$this->phrasen['global/samstag']='Samstag'; +$this->phrasen['global/sonntag']='Sonntag'; +$this->phrasen['global/matrikelnummer']='Matrikelnummer'; +$this->phrasen['global/personenkennzeichen']='Personenkennzeichen'; + +$this->phrasen['global/von']='Von'; +$this->phrasen['global/bis']='Bis'; +$this->phrasen['global/zweck']='Zweck'; +$this->phrasen['global/aktion']='Aktion'; +$this->phrasen['global/nummer']='Nummer'; +$this->phrasen['global/gruppe']='Gruppe'; +$this->phrasen['global/verband']='Verband'; +$this->phrasen['global/kalender']='Kalender'; +$this->phrasen['global/beginn']='Beginn'; +$this->phrasen['global/ende']='Ende'; +$this->phrasen['global/beispiele']='Beispiele'; +$this->phrasen['global/neu']='Neu'; +$this->phrasen['global/ok']='OK'; + +$this->phrasen['global/anmelden']='Anmelden'; +$this->phrasen['global/angemeldet']='Angemeldet'; +$this->phrasen['global/löschen']='Löschen'; +$this->phrasen['global/dateiLoeschen']='Datei Löschen'; +$this->phrasen['global/betreff']='Betreff'; +$this->phrasen['global/handbuch']='Handbuch'; +$this->phrasen['global/hilfe']='Hilfe'; +$this->phrasen['global/benutzer']='Benutzer'; +$this->phrasen['global/anleitung']='Anleitung'; + +// Statusmeldungen +$this->phrasen['global/erfolgreichgespeichert']='Erfolgreich gespeichert'; +$this->phrasen['global/erfolgreichgelöscht']='Erfolgreich gelöscht'; +$this->phrasen['global/fehleraufgetreten']='Es ist ein Fehler aufgetreten'; +$this->phrasen['global/emailgesendetan']='E-Mail gesendet an'; +$this->phrasen['global/keineBerechtigungFuerDieseSeite']='Sie haben keine Berechtigung für diese Seite'; +$this->phrasen['global/fehlerBeimOeffnenDerDatenbankverbindung']='Fehler beim Öffnen der Datenbankverbindung'; +$this->phrasen['global/fehlerBeimLesenAusDatenbank']='Fehler beim Lesen aus der Datenbank'; +$this->phrasen['global/userNichtGefunden']='Es wurde kein User gefunden'; +$this->phrasen['global/datumNichtGesetzt']='Datum ist nicht gesetzt'; +$this->phrasen['global/studiensemesterKonnteNichtGefundenWerden'] = 'Studiensemester konnte nicht gefunden werden'; +$this->phrasen['global/studiengangKonnteNichtGefundenWerden'] = 'Studiengang konnte nicht gefunden werden'; +$this->phrasen['global/fehlerBeimErmittelnDerUID'] = 'Fehler beim ermitteln der UID'; +$this->phrasen['global/nichtAngemeldet'] = 'Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden'; +$this->phrasen['global/LDAPserverNichtErreichbar']='Der LDAP-Server ist nicht erreichbar'; +$this->phrasen['global/unbekannterFehleraufgetreten']='Es ist ein unbekannter Fehler aufgetreten'; +$this->phrasen['global/fehlerBeiDerParameteruebergabe']='Fehler bei der Uebergabe der Parameter'; +$this->phrasen['global/warnungWirklichLoeschen']='Wollen Sie diesen Datensatz wirklich löschen?'; +$this->phrasen['global/dateiErfolgreichHochgeladen']='Die Datei wurde erfolgreich hochgeladen'; +$this->phrasen['global/dateiNichtErfolgreichHochgeladen']='Die Datei wurde nicht erfolgreich hochgeladen. Bitte wiederholen Sie den Vorgang'; +$this->phrasen['global/FuerDieseAktionBenoetigenSieAdministrationsrechte']='Fuer diese Aktion benoetigen Sie Administratorenrechte'; +$this->phrasen['global/dateiExistiertNicht']='Die Datei existiert nicht'; +$this->phrasen['global/fehlerBeimAktualisierenDerDaten']='Fehler beim Aktualisieren der Daten'; +$this->phrasen['global/fehlerBeimLadenDesDatensatzes']='Fehler beim Laden des Datensatzes'; +$this->phrasen['global/fehlerBeimSpeichernDerDaten']='Fehler beim Speichern der Daten'; +$this->phrasen['global/datenWurdenGespeichert']='Daten wurden gespeichert'; +$this->phrasen['global/eintragWurdeGeloescht']='Eintrag wurde gelöscht'; +$this->phrasen['global/fehlerBeimLoeschenDesEintrags']='Fehler beim Löschen des Eintrags'; +$this->phrasen['global/keineBerechtigung']='Keine Berechtigung'; +$this->phrasen['global/datensatzWurdeNichtGefunden']='Datensatz wurde nicht gefunden'; +$this->phrasen['global/keineBerechtigungZumAendernDesDatensatzes']='Keine Berechtigung zum Ändern des Datensatzes'; +$this->phrasen['global/keineDatenGefunden']='Keine Daten gefunden'; +$this->phrasen['global/erfolgreichAngelegt']='Erfolgreich angelegt'; + +//infrastruktur + +$this->phrasen['global/passwort']='Passwort'; +$this->phrasen['global/abmelden']='Abmelden'; +$this->phrasen['global/emailAnAssistenz']='Email an Assistenz'; +?> diff --git a/locale/en-US/global.php b/locale/en-US/global.php index 33ad75369..52e685c1f 100755 --- a/locale/en-US/global.php +++ b/locale/en-US/global.php @@ -1,167 +1,168 @@ -phrasen['global/studiengang']='Degree-Program'; -$this->phrasen['global/studienrichtung']='Degree-Program'; -$this->phrasen['global/institut']='Institute'; -$this->phrasen['global/semester']='Semester'; -$this->phrasen['global/studiensemester']='Semester'; -$this->phrasen['global/studienzentrum']='Study Center'; -$this->phrasen['global/studiengangsleitung']='Program Director'; -$this->phrasen['global/lehrveranstaltung']='Subject'; -$this->phrasen['global/lehreinheit']='Teaching unit'; -$this->phrasen['global/organisationseinheit']='Organisation Unit'; -$this->phrasen['global/organisationseinheiten']='Organisation Units'; - -$this->phrasen['global/studiengangsmanagement']='Study Management'; -$this->phrasen['global/geschaeftsfuehrendeltg']='business Leadership'; -$this->phrasen['global/stellvertreter']='Deputy Program Director'; -$this->phrasen['global/sekretariat']='Administrative Assistant'; -$this->phrasen['global/studentenvertreter']='Degree Program Representative'; -$this->phrasen['global/jahrgangsvertretung']='Academic Year Representative'; -$this->phrasen['global/hochschulvertretung']='UAS Representative'; - -$this->phrasen['global/lehrziele']='Teaching goals'; -$this->phrasen['global/allgemeinerdownload']='Global Download'; -$this->phrasen['global/newsgroups']='Newsgroups'; - -$this->phrasen['global/speichern']='Save'; -$this->phrasen['global/loeschen']='Delete'; -$this->phrasen['global/entfernen']='Delete'; -$this->phrasen['global/editieren']='Edit'; -$this->phrasen['global/suchen']='Search'; -$this->phrasen['global/alle']='All'; -$this->phrasen['global/abbrechen']='Cancel'; -$this->phrasen['global/eintragen']='Register'; -$this->phrasen['global/erstellen']='Create'; -$this->phrasen['global/zurueck']='Back'; -$this->phrasen['global/abschicken']='Submit'; -$this->phrasen['global/zuruecksetzen']='Reset'; -$this->phrasen['global/datei']='File'; -$this->phrasen['global/auswaehlen']='Select'; -$this->phrasen['global/umbenennen']='Rename'; -$this->phrasen['global/anzeigen']='Show'; -$this->phrasen['global/ausblenden']='Hide'; -$this->phrasen['global/bearbeiten']='Edit'; -$this->phrasen['global/aendern']='Change'; -$this->phrasen['global/kopieren']='Copy'; -$this->phrasen['global/ja']='Yes'; -$this->phrasen['global/nein']='No'; -$this->phrasen['global/download']='Download'; -$this->phrasen['global/auswahl']='Select'; -$this->phrasen['global/hinzufuegen']='Add'; - -$this->phrasen['global/username']='Username'; -$this->phrasen['global/vorname']='First Name'; -$this->phrasen['global/nachname']='Last Name'; -$this->phrasen['global/name']='Name'; -$this->phrasen['global/uid']='UID'; -$this->phrasen['global/postnomen']='Postnomen'; -$this->phrasen['global/strasse']='Street'; -$this->phrasen['global/plz']='Postal Code'; -$this->phrasen['global/ort']='City'; -$this->phrasen['global/anmerkung']='Comment'; -$this->phrasen['global/anmerkungen']='Comments'; -$this->phrasen['global/sprache']='Language'; -$this->phrasen['global/englisch']='English'; -$this->phrasen['global/deutsch']='German'; -$this->phrasen['global/titel']='Title'; -$this->phrasen['global/geschlecht']='Gender'; -$this->phrasen['global/mann']='Male'; -$this->phrasen['global/frau']='Female'; -$this->phrasen['global/staatsbuergerschaft']='Citizenship'; -$this->phrasen['global/geburtsdatum']='Date of Birth'; -$this->phrasen['global/geburtsort']='Place of Birth'; -$this->phrasen['global/universität']='University'; -$this->phrasen['global/code']='Code'; -$this->phrasen['global/adresse']='Address'; -$this->phrasen['global/hauptwohnsitz']='Principal residence'; -$this->phrasen['global/nebenwohnsitz']='Secondary residence'; -$this->phrasen['global/emailAdresse']='E-Mail Adress'; -$this->phrasen['global/mail']='Mail'; -$this->phrasen['global/telefon']='Telephone'; -$this->phrasen['global/telefonnummer']='Telephone number'; -$this->phrasen['global/handy']='Mobile phone'; -$this->phrasen['global/fax']='Fax'; -$this->phrasen['global/bezeichnung']='Description'; -$this->phrasen['global/datum']='Date'; -$this->phrasen['global/stunde']='Hour'; -$this->phrasen['global/minute']='Minute'; -$this->phrasen['global/person']='Person'; -$this->phrasen['global/personenkz']='StudentID'; -$this->phrasen['global/personen']='Number of Persons'; -$this->phrasen['global/beschreibung']='Description'; -$this->phrasen['global/angelegtAm']='created:'; -$this->phrasen['global/funktion']='Role'; //Mitarbeiterfunktion zB Assistenz -$this->phrasen['global/montag']='Monday'; -$this->phrasen['global/dienstag']='Tuesday'; -$this->phrasen['global/mittwoch']='Wednesday'; -$this->phrasen['global/donnerstag']='Thursday'; -$this->phrasen['global/freitag']='Friday'; -$this->phrasen['global/samstag']='Saturday'; -$this->phrasen['global/sonntag']='Sunday'; -$this->phrasen['global/matrikelnummer']='Matriculation number'; -$this->phrasen['global/personenkennzeichen']='Personal identifier'; - -$this->phrasen['global/von']='From'; -$this->phrasen['global/bis']='To'; -$this->phrasen['global/zweck']='Purpose'; -$this->phrasen['global/aktion']='Action'; -$this->phrasen['global/nummer']='Number'; -$this->phrasen['global/gruppe']='Group'; -$this->phrasen['global/verband']='Division'; -$this->phrasen['global/kalender']='Calendar'; -$this->phrasen['global/beginn']='Start'; -$this->phrasen['global/ende']='End'; -$this->phrasen['global/beispiele']='Examples'; -$this->phrasen['global/neu']='New'; -$this->phrasen['global/ok']='OK'; - -$this->phrasen['global/anmelden']='Register'; -$this->phrasen['global/angemeldet']='Registered'; -$this->phrasen['global/löschen']='Delete'; -$this->phrasen['global/dateiLoeschen']='Delete File'; -$this->phrasen['global/betreff']='Subject'; -$this->phrasen['global/handbuch']='Manual'; -$this->phrasen['global/hilfe']='Help'; -$this->phrasen['global/benutzer']='User'; -$this->phrasen['global/anleitung']='Manual'; - -// Statusmeldungen -$this->phrasen['global/erfolgreichgespeichert']='Successfully saved'; -$this->phrasen['global/erfolgreichgelöscht']='Successfully deleted'; -$this->phrasen['global/fehleraufgetreten']='Error occurred'; -$this->phrasen['global/emailgesendetan']='E-Mail sent to'; -$this->phrasen['global/keineBerechtigungFuerDieseSeite']='You dont have the authority to view this site'; -$this->phrasen['global/fehlerBeimOeffnenDerDatenbankverbindung']='Cant open Database connection'; -$this->phrasen['global/fehlerBeimLesenAusDatenbank']='Error reading from database'; -$this->phrasen['global/userNichtGefunden']='No user found'; -$this->phrasen['global/datumNichtGesetzt']='Date is missing'; -$this->phrasen['global/studiensemesterKonnteNichtGefundenWerden'] = 'No semester found'; -$this->phrasen['global/studiengangKonnteNichtGefundenWerden'] = 'Program not found'; -$this->phrasen['global/fehlerBeimErmittelnDerUID'] = 'Error finding the UID'; -$this->phrasen['global/nichtAngemeldet'] = 'You are not logged in. No UID found'; -$this->phrasen['global/LDAPserverNichtErreichbar']='Error connecting to LDAP-Server'; -$this->phrasen['global/unbekannterFehleraufgetreten']='Unknown error occurred'; -$this->phrasen['global/fehlerBeiDerParameteruebergabe']='Error in the parameter transfer'; -$this->phrasen['global/warnungWirklichLoeschen']='Do you want to delete this record?'; -$this->phrasen['global/dateiErfolgreichHochgeladen']='File successfully uploaded'; -$this->phrasen['global/dateiNichtErfolgreichHochgeladen']='Failed to upload File. Please retry'; -$this->phrasen['global/FuerDieseAktionBenoetigenSieAdministrationsrechte']='You must be Administrator.'; -$this->phrasen['global/dateiExistiertNicht']='File not found'; -$this->phrasen['global/fehlerBeimAktualisierenDerDaten']='Error updating the data. '; -$this->phrasen['global/fehlerBeimLadenDesDatensatzes']='Error loading entries'; -$this->phrasen['global/fehlerBeimSpeichernDerDaten']='Error saving the data'; -$this->phrasen['global/datenWurdenGespeichert']='Data saved'; -$this->phrasen['global/eintragWurdeGeloescht']='Entry deleted'; -$this->phrasen['global/fehlerBeimLoeschenDesEintrags']='Error deleting entry'; -$this->phrasen['global/keineBerechtigung']='No authority'; -$this->phrasen['global/datensatzWurdeNichtGefunden']='Data not found'; -$this->phrasen['global/keineBerechtigungZumAendernDesDatensatzes']='You dont have the authority to change to data'; -$this->phrasen['global/keineDatenGefunden']='No data found'; -$this->phrasen['global/erfolgreichAngelegt']='Created successfully'; - -//infrastruktur - -$this->phrasen['global/passwort']='Password'; -$this->phrasen['global/abmelden']='Logout'; -$this->phrasen['global/emailAnAssistenz']='Email Administrative Assistant'; -?> +phrasen['global/studiengang']='Degree-Program'; +$this->phrasen['global/studiengaenge']='Degree-Programs'; +$this->phrasen['global/studienrichtung']='Degree-Program'; +$this->phrasen['global/institut']='Institute'; +$this->phrasen['global/semester']='Semester'; +$this->phrasen['global/studiensemester']='Semester'; +$this->phrasen['global/studienzentrum']='Study Center'; +$this->phrasen['global/studiengangsleitung']='Program Director'; +$this->phrasen['global/lehrveranstaltung']='Subject'; +$this->phrasen['global/lehreinheit']='Teaching unit'; +$this->phrasen['global/organisationseinheit']='Organisation Unit'; +$this->phrasen['global/organisationseinheiten']='Organisation Units'; + +$this->phrasen['global/studiengangsmanagement']='Study Management'; +$this->phrasen['global/geschaeftsfuehrendeltg']='business Leadership'; +$this->phrasen['global/stellvertreter']='Deputy Program Director'; +$this->phrasen['global/sekretariat']='Administrative Assistant'; +$this->phrasen['global/studentenvertreter']='Degree Program Representative'; +$this->phrasen['global/jahrgangsvertretung']='Academic Year Representative'; +$this->phrasen['global/hochschulvertretung']='UAS Representative'; + +$this->phrasen['global/lehrziele']='Teaching goals'; +$this->phrasen['global/allgemeinerdownload']='Global Download'; +$this->phrasen['global/newsgroups']='Newsgroups'; + +$this->phrasen['global/speichern']='Save'; +$this->phrasen['global/loeschen']='Delete'; +$this->phrasen['global/entfernen']='Delete'; +$this->phrasen['global/editieren']='Edit'; +$this->phrasen['global/suchen']='Search'; +$this->phrasen['global/alle']='All'; +$this->phrasen['global/abbrechen']='Cancel'; +$this->phrasen['global/eintragen']='Register'; +$this->phrasen['global/erstellen']='Create'; +$this->phrasen['global/zurueck']='Back'; +$this->phrasen['global/abschicken']='Submit'; +$this->phrasen['global/zuruecksetzen']='Reset'; +$this->phrasen['global/datei']='File'; +$this->phrasen['global/auswaehlen']='Select'; +$this->phrasen['global/umbenennen']='Rename'; +$this->phrasen['global/anzeigen']='Show'; +$this->phrasen['global/ausblenden']='Hide'; +$this->phrasen['global/bearbeiten']='Edit'; +$this->phrasen['global/aendern']='Change'; +$this->phrasen['global/kopieren']='Copy'; +$this->phrasen['global/ja']='Yes'; +$this->phrasen['global/nein']='No'; +$this->phrasen['global/download']='Download'; +$this->phrasen['global/auswahl']='Select'; +$this->phrasen['global/hinzufuegen']='Add'; + +$this->phrasen['global/username']='Username'; +$this->phrasen['global/vorname']='First Name'; +$this->phrasen['global/nachname']='Last Name'; +$this->phrasen['global/name']='Name'; +$this->phrasen['global/uid']='UID'; +$this->phrasen['global/postnomen']='Postnomen'; +$this->phrasen['global/strasse']='Street'; +$this->phrasen['global/plz']='Postal Code'; +$this->phrasen['global/ort']='City'; +$this->phrasen['global/anmerkung']='Comment'; +$this->phrasen['global/anmerkungen']='Comments'; +$this->phrasen['global/sprache']='Language'; +$this->phrasen['global/englisch']='English'; +$this->phrasen['global/deutsch']='German'; +$this->phrasen['global/titel']='Title'; +$this->phrasen['global/geschlecht']='Gender'; +$this->phrasen['global/mann']='Male'; +$this->phrasen['global/frau']='Female'; +$this->phrasen['global/staatsbuergerschaft']='Citizenship'; +$this->phrasen['global/geburtsdatum']='Date of Birth'; +$this->phrasen['global/geburtsort']='Place of Birth'; +$this->phrasen['global/universität']='University'; +$this->phrasen['global/code']='Code'; +$this->phrasen['global/adresse']='Address'; +$this->phrasen['global/hauptwohnsitz']='Principal residence'; +$this->phrasen['global/nebenwohnsitz']='Secondary residence'; +$this->phrasen['global/emailAdresse']='E-Mail Adress'; +$this->phrasen['global/mail']='Mail'; +$this->phrasen['global/telefon']='Telephone'; +$this->phrasen['global/telefonnummer']='Telephone number'; +$this->phrasen['global/handy']='Mobile phone'; +$this->phrasen['global/fax']='Fax'; +$this->phrasen['global/bezeichnung']='Description'; +$this->phrasen['global/datum']='Date'; +$this->phrasen['global/stunde']='Hour'; +$this->phrasen['global/minute']='Minute'; +$this->phrasen['global/person']='Person'; +$this->phrasen['global/personenkz']='StudentID'; +$this->phrasen['global/personen']='Number of Persons'; +$this->phrasen['global/beschreibung']='Description'; +$this->phrasen['global/angelegtAm']='created:'; +$this->phrasen['global/funktion']='Role'; //Mitarbeiterfunktion zB Assistenz +$this->phrasen['global/montag']='Monday'; +$this->phrasen['global/dienstag']='Tuesday'; +$this->phrasen['global/mittwoch']='Wednesday'; +$this->phrasen['global/donnerstag']='Thursday'; +$this->phrasen['global/freitag']='Friday'; +$this->phrasen['global/samstag']='Saturday'; +$this->phrasen['global/sonntag']='Sunday'; +$this->phrasen['global/matrikelnummer']='Matriculation number'; +$this->phrasen['global/personenkennzeichen']='Personal identifier'; + +$this->phrasen['global/von']='From'; +$this->phrasen['global/bis']='To'; +$this->phrasen['global/zweck']='Purpose'; +$this->phrasen['global/aktion']='Action'; +$this->phrasen['global/nummer']='Number'; +$this->phrasen['global/gruppe']='Group'; +$this->phrasen['global/verband']='Division'; +$this->phrasen['global/kalender']='Calendar'; +$this->phrasen['global/beginn']='Start'; +$this->phrasen['global/ende']='End'; +$this->phrasen['global/beispiele']='Examples'; +$this->phrasen['global/neu']='New'; +$this->phrasen['global/ok']='OK'; + +$this->phrasen['global/anmelden']='Register'; +$this->phrasen['global/angemeldet']='Registered'; +$this->phrasen['global/löschen']='Delete'; +$this->phrasen['global/dateiLoeschen']='Delete File'; +$this->phrasen['global/betreff']='Subject'; +$this->phrasen['global/handbuch']='Manual'; +$this->phrasen['global/hilfe']='Help'; +$this->phrasen['global/benutzer']='User'; +$this->phrasen['global/anleitung']='Manual'; + +// Statusmeldungen +$this->phrasen['global/erfolgreichgespeichert']='Successfully saved'; +$this->phrasen['global/erfolgreichgelöscht']='Successfully deleted'; +$this->phrasen['global/fehleraufgetreten']='Error occurred'; +$this->phrasen['global/emailgesendetan']='E-Mail sent to'; +$this->phrasen['global/keineBerechtigungFuerDieseSeite']='You dont have the authority to view this site'; +$this->phrasen['global/fehlerBeimOeffnenDerDatenbankverbindung']='Cant open Database connection'; +$this->phrasen['global/fehlerBeimLesenAusDatenbank']='Error reading from database'; +$this->phrasen['global/userNichtGefunden']='No user found'; +$this->phrasen['global/datumNichtGesetzt']='Date is missing'; +$this->phrasen['global/studiensemesterKonnteNichtGefundenWerden'] = 'No semester found'; +$this->phrasen['global/studiengangKonnteNichtGefundenWerden'] = 'Program not found'; +$this->phrasen['global/fehlerBeimErmittelnDerUID'] = 'Error finding the UID'; +$this->phrasen['global/nichtAngemeldet'] = 'You are not logged in. No UID found'; +$this->phrasen['global/LDAPserverNichtErreichbar']='Error connecting to LDAP-Server'; +$this->phrasen['global/unbekannterFehleraufgetreten']='Unknown error occurred'; +$this->phrasen['global/fehlerBeiDerParameteruebergabe']='Error in the parameter transfer'; +$this->phrasen['global/warnungWirklichLoeschen']='Do you want to delete this record?'; +$this->phrasen['global/dateiErfolgreichHochgeladen']='File successfully uploaded'; +$this->phrasen['global/dateiNichtErfolgreichHochgeladen']='Failed to upload File. Please retry'; +$this->phrasen['global/FuerDieseAktionBenoetigenSieAdministrationsrechte']='You must be Administrator.'; +$this->phrasen['global/dateiExistiertNicht']='File not found'; +$this->phrasen['global/fehlerBeimAktualisierenDerDaten']='Error updating the data. '; +$this->phrasen['global/fehlerBeimLadenDesDatensatzes']='Error loading entries'; +$this->phrasen['global/fehlerBeimSpeichernDerDaten']='Error saving the data'; +$this->phrasen['global/datenWurdenGespeichert']='Data saved'; +$this->phrasen['global/eintragWurdeGeloescht']='Entry deleted'; +$this->phrasen['global/fehlerBeimLoeschenDesEintrags']='Error deleting entry'; +$this->phrasen['global/keineBerechtigung']='No authority'; +$this->phrasen['global/datensatzWurdeNichtGefunden']='Data not found'; +$this->phrasen['global/keineBerechtigungZumAendernDesDatensatzes']='You dont have the authority to change to data'; +$this->phrasen['global/keineDatenGefunden']='No data found'; +$this->phrasen['global/erfolgreichAngelegt']='Created successfully'; + +//infrastruktur + +$this->phrasen['global/passwort']='Password'; +$this->phrasen['global/abmelden']='Logout'; +$this->phrasen['global/emailAnAssistenz']='Email Administrative Assistant'; +?> diff --git a/locale/it-IT/global.php b/locale/it-IT/global.php index e37b79008..45834dfb6 100755 --- a/locale/it-IT/global.php +++ b/locale/it-IT/global.php @@ -128,6 +128,7 @@ $this->phrasen['global/stellvertreter']='supplenza '; $this->phrasen['global/strasse']='via'; $this->phrasen['global/studentenvertreter']='rappresentanti degli studendi'; $this->phrasen['global/studiengang']='Corso di studi'; +$this->phrasen['global/studiengaenge']='Corso di studio'; $this->phrasen['global/studiengangKonnteNichtGefundenWerden ']='impossibile trovare corso di studi digitato'; $this->phrasen['global/studiengangsleitung']='Direzione del corso di studi'; $this->phrasen['global/studiengangsmanagement']='Management del corso di studi'; diff --git a/rdf/ausbildungsvertrag.xml.php b/rdf/ausbildungsvertrag.xml.php index babca7272..d20cfb846 100755 --- a/rdf/ausbildungsvertrag.xml.php +++ b/rdf/ausbildungsvertrag.xml.php @@ -33,10 +33,7 @@ require_once('../include/studiensemester.class.php'); require_once('../include/nation.class.php'); require_once('../include/prestudent.class.php'); -$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null); $prestudent_arr = (isset($_REQUEST['prestudent_id'])?$_REQUEST['prestudent_id']:null); - -$uid_arr = explode(";",$uid_arr); $prestudent_arr = explode(";",$prestudent_arr); $db = new basis_db(); @@ -44,193 +41,13 @@ $db = new basis_db(); echo "\n"; echo "\n"; -$uid = isset($uid_arr[1])?$uid_arr[1]:$uid_arr[0]; - -$student_help = new student(); -// an 2ter stelle da im Aufruf vom FAS ;; der erste immer '' ist -if($student_help->load($uid)) -{ - $studiengang = new studiengang(); - $studiengang->load($student_help->studiengang_kz); - switch($studiengang->typ) - { - case 'b': - $studTyp = 'Bachelor'; - $titel_kurzbz = 'BSc'; - break; - case 'm': - $studTyp = 'Master'; - $titel_kurzbz ='MSc'; - break; - case 'd': - $studTyp = 'Diplom'; - break; - default: - $studTyp =''; - $titel_kurzbz = ''; - } - echo "\t".$studTyp."\n"; - echo "\t".$studiengang->bezeichnung."\n"; - echo "\t".$studiengang->english."\n"; -} - -foreach($uid_arr as $uid) -{ - if($uid=='') - continue; - - echo "\t\n"; - - $student = new student(); - if($student->load($uid)) - { - $datum_aktuell = date('d.m.Y'); - $gebdatum = date('d.m.Y',strtotime($student->gebdatum)); - $studiengang = new studiengang(); - $studiengang->load($student->studiengang_kz); - $staatsbuergerschaft = new nation(); - $staatsbuergerschaft->load($student->staatsbuergerschaft); - - $svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr; - - //Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen - if ($studiengang->studiengang_kz<0) - { - $stg = new studiengang(); - $stg->load($studiengang->studiengang_kz); - - $studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz)); - } - else - $studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz)); - - echo "\t\t1\n"; - echo "\t\t".$student->anrede."\n"; - echo "\t\t".$student->vorname." ".$student->vornamen."\n"; - echo "\t\t".$student->vornamen."\n"; - echo "\t\t".$student->nachname."\n"; - echo "\t\t".$student->titelpre."\n"; - echo "\t\t".$student->titelpost."\n"; - echo "\t\t".$gebdatum."\n"; - echo "\t\t".$student->gebort."\n"; - echo "\t\t".$staatsbuergerschaft->langtext."\n"; - echo "\t\t".$svnr."\n"; - echo "\t\t".trim($student->matrikelnr)."\n"; - echo "\t\t".$studiengang->bezeichnung."\n"; - echo "\t\t".$studiengang->english."\n"; - echo "\t\t".$studiengang->kurzbzlang."\n"; - echo "\t\t".$studiengang_kz."\n"; - echo "\t\t".$studiengang->sprache.""; - - echo "\t\t".date('Y').""; - - // check ob Quereinsteiger - $prestudent = new prestudent(); - $ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'1'; - echo "\t\t".$ausbildungssemester.""; - - $studiensemester_beginn = new studiensemester(); - $studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:''; - $studiensemester_beginn->load($studienbeginn); - - echo "\t\t".$studiensemester_beginn->bezeichnung.""; - - $studiensemester_endedatum = new studiensemester(); - $studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1)); - - echo "\t\t".date('d.m.Y',strtotime($studiensemester_endedatum->ende)).""; - - switch($studiengang->typ) - { - case 'b': - $studTyp = 'Bachelor'; - $titel_kurzbz = 'BSc'; - break; - case 'm': - $studTyp = 'Master'; - $titel_kurzbz ='MSc'; - break; - case 'd': - $studTyp = 'Diplom'; - break; - default: - $studTyp =''; - $titel_kurzbz = ''; - } - - echo "\t\t".$titel_kurzbz."\n"; - echo "\t\t".$studTyp."\n"; - echo "\t\t".$studiengang->sprache."\n"; - echo "\t\t".$studiengang->max_semester."\n"; - echo "\t\t".($studiengang->max_semester/2)."\n"; - - //Wenn Quereinsteiger stimmt studiengang_maxsemester nicht mit der tatsaechlichen Ausbildungsdauer ueberein - $student_maxsemester = ($studiengang->max_semester-$ausbildungssemester)+1; - echo "\t\t".$student_maxsemester."\n"; - echo "\t\t".($student_maxsemester/2)."\n"; - - $akadgrad = new akadgrad(); - $akadgrad->getAkadgradStudent($student->uid); - - echo "\t\t".$akadgrad->titel."\n"; - echo "\t\t".$akadgrad->akadgrad_kurzbz."\n"; - - //für ao. Studierende wird die StgKz der Lehrveranstaltungen benötigt, die sie besuchen - $lv_studiengang_kz=''; - $lv_studiengang_bezeichnung=''; - $lv_studiengang_typ=''; - - $stg_typ=new studiengang(); - $lv=new lehrveranstaltung(); - $lv->load_lva_student($student->prestudent_id); - if(count($lv->lehrveranstaltungen)>0) - { - $lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz; - $lv_studiengang=new studiengang(); - $lv_studiengang->load($lv_studiengang_kz); - $lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung; - $stg_typ->getStudiengangTyp($lv_studiengang->typ); - $lv_studiengang_typ=$stg_typ->bezeichnung; - } - - echo "\t\t".sprintf('%04s', $lv_studiengang_kz).""; - echo "\t\t$lv_studiengang_typ"; - echo "\t\t$lv_studiengang_bezeichnung"; - - echo "\t\t".$datum_aktuell."\n"; - - $adresse = new adresse(); - $adresse->load_pers($student->person_id); - - foreach($adresse->result as $row_adresse) - { - if($row_adresse->zustelladresse) - { - echo "\t\t".$row_adresse->strasse."\n"; - echo "\t\t".$row_adresse->plz." ".$row_adresse->ort."\n"; - echo "\t\t".$row_adresse->nation."\n"; - break; - } - } - $prestudent = new prestudent(); - $prestudent->getLastStatus($student->prestudent_id, null, 'Student'); - - if($prestudent->orgform_kurzbz!='') - $orgform = $prestudent->orgform_kurzbz; - else - $orgform = $studiengang->orgform_kurzbz; - echo "\t\t".$orgform."\n"; - } - echo "\t\n"; -} - ///// // Wenn auch PrestudentIDs uebergeben werden ///// $prest_id = isset($prestudent_arr[1])?$prestudent_arr[1]:$prestudent_arr[0]; $prestudent_help = new prestudent(); -// an 2ter stelle da im Aufruf vom FAS ;; der erste immer '' ist +// an 2ter stelle da im Aufruf vom FAS ;; der erste immer '' ist if($prestudent_help->load($prest_id)) { $studiengang = new studiengang(); @@ -261,7 +78,7 @@ foreach($prestudent_arr as $prest_id) { if($prest_id=='') continue; - + echo "\t\n"; $prestudent = new prestudent(); @@ -276,20 +93,20 @@ foreach($prestudent_arr as $prest_id) $studiengang->load($prestudent->studiengang_kz); $staatsbuergerschaft = new nation(); $staatsbuergerschaft->load($person->staatsbuergerschaft); - + $svnr = ($person->svnr == '')?($person->ersatzkennzeichen != ''?'Ersatzkennzeichen: '.$person->ersatzkennzeichen:''):$person->svnr; - + //Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen if ($studiengang->studiengang_kz<0) { $stg = new studiengang(); $stg->load($studiengang->studiengang_kz); - + $studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studiengang->studiengang_kz)); } else $studiengang_kz = sprintf("%04s", abs($studiengang->studiengang_kz)); - + echo "\t\t1\n"; echo "\t\t".$person->anrede."\n"; echo "\t\t".$person->vorname." ".$person->vornamen."\n"; @@ -306,9 +123,9 @@ foreach($prestudent_arr as $prest_id) echo "\t\t".$studiengang->kurzbzlang."\n"; echo "\t\t".$studiengang_kz."\n"; echo "\t\t".$studiengang->sprache.""; - + echo "\t\t".date('Y').""; - + switch($studiengang->typ) { case 'b': @@ -326,24 +143,24 @@ foreach($prestudent_arr as $prest_id) $studTyp =''; $titel_kurzbz = ''; } - + echo "\t\t".$titel_kurzbz."\n"; echo "\t\t".$studTyp."\n"; echo "\t\t".$studiengang->sprache."\n"; echo "\t\t".$studiengang->max_semester."\n"; echo "\t\t".($studiengang->max_semester/2)."\n"; - - + + //Bis die Akadgrad-Tabelle an die Studienordnung angepasst ist, wird der Akadgrad hier ermittelt - + $akadgrad_titel = ''; $akadgrad_kurzbz = ''; - - $qry = "SELECT * FROM lehre.tbl_akadgrad - WHERE studiengang_kz=".$db->db_add_param($studiengang->studiengang_kz, FHC_INTEGER)." + + $qry = "SELECT * FROM lehre.tbl_akadgrad + WHERE studiengang_kz=".$db->db_add_param($studiengang->studiengang_kz, FHC_INTEGER)." AND (geschlecht=".$db->db_add_param($person->geschlecht, FHC_STRING)." OR geschlecht IS NULL) LIMIT 1"; - + if($db->db_query($qry)) { if($row = $db->db_fetch_object()) @@ -352,15 +169,15 @@ foreach($prestudent_arr as $prest_id) $akadgrad_kurzbz = $row->akadgrad_kurzbz; } } - + echo "\t\t".$akadgrad_titel."\n"; echo "\t\t".$akadgrad_kurzbz."\n"; - + echo "\t\t".$datum_aktuell."\n"; - + $adresse = new adresse(); $adresse->load_pers($person->person_id); - + foreach($adresse->result as $row_adresse) { if($row_adresse->zustelladresse) @@ -373,20 +190,20 @@ foreach($prestudent_arr as $prest_id) } $prestudent_orgform = new prestudent(); $prestudent_orgform->getLastStatus($prest_id, null, null); - + if($prestudent_orgform->orgform_kurzbz!='') $orgform = $prestudent_orgform->orgform_kurzbz; else $orgform = $studiengang->orgform_kurzbz; - + echo "\t\t".$orgform."\n"; - + $ausbildungssemester = ($prestudent_orgform->ausbildungssemester!='')?$prestudent_orgform->ausbildungssemester:'1'; echo "\t\t".$ausbildungssemester.""; } } echo "\t\n"; } -echo ""; +echo ""; ?> diff --git a/rdf/diplomasupplement.xml.php b/rdf/diplomasupplement.xml.php index c030c5a85..94c66bffa 100644 --- a/rdf/diplomasupplement.xml.php +++ b/rdf/diplomasupplement.xml.php @@ -576,7 +576,6 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $helpyear = sprintf("%02d",$helpyear); $semester_kurzbz = 'Winter Semester '.$year.'/'.$helpyear; } - $sqlStudent = new student(); echo " Semester $start | $semester_kurzbz"; @@ -590,7 +589,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") join lehre.tbl_note note using(note) join lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) where prestudent_id = ".$db->db_add_param($prestudent_id_arr[$i], FHC_INTEGER)." AND zeugnis = true AND - studiensemester_kurzbz in (".$sqlStudent->implode4SQL($aktuellesSemester).") + studiensemester_kurzbz in (".$db->db_implode4SQL($aktuellesSemester).") ORDER BY sort, tbl_lehrveranstaltung.bezeichnung;"; diff --git a/rdf/konto.rdf.php b/rdf/konto.rdf.php index 46b03458b..7f529b94a 100644 --- a/rdf/konto.rdf.php +++ b/rdf/konto.rdf.php @@ -35,7 +35,7 @@ require_once('../include/studiengang.class.php'); require_once('../include/studiensemester.class.php'); require_once('../include/datum.class.php'); require_once('../include/functions.inc.php'); -require_once('../include/student.class.php'); +require_once('../include/prestudent.class.php'); require_once('../include/benutzerberechtigung.class.php'); if(isset($_SERVER['REMOTE_USER'])) @@ -251,8 +251,8 @@ elseif ($xmlformat=='xml') $pers->load($row->person_id); $stg = new studiengang($row->studiengang_kz); - $student_obj = new student(); - $student_obj->load_person($row->person_id, $row->studiengang_kz); + $prestudent = new prestudent(); + $prestudent->getPrestudentenFromStg($row->person_id, $row->studiengang_kz); switch($stg->typ) { @@ -285,7 +285,7 @@ elseif ($xmlformat=='xml') convertISODate($pers->gebdatum)."]]> svnr."]]> ersatzkennzeichen."]]> - matrikelnr)."]]> + result[0]) ? $prestudent->result[0]->perskz : ""))."]]> ".DOC_ROOT."skin/images/ bezeichnung."]]> diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php index 3ed88c9a4..8c471659a 100755 --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -403,12 +403,7 @@ if($xmlformat=='rdf') if(isset($prestudent_id)) { $prestd = new prestudent($prestudent_id); - $student=new student(); - $uid = $student->getUid($prestudent_id); - $student->load($uid, $studiensemester_kurzbz); - - draw_content($student); - $prestd->load($student->prestudent_id); + draw_content($prestd); draw_prestudent($prestd); } if($typ=='student') @@ -508,26 +503,10 @@ if($xmlformat=='rdf') { while($row = $db->db_fetch_object()) { - $student=new student(); - if($uid = $student->getUid($row->prestudent_id)) - { - //Wenn kein Eintrag fuers aktuelle Studiensemester da ist, dann - //nochmal laden aber ohne studiensemester - if(!$student->load($uid, $studiensemester_kurzbz)) - $student->load($uid); - } $prestd = new prestudent(); $prestd->load($row->prestudent_id); - if($uid!='') - { - draw_content($student); - draw_prestudent($prestd); - } - else - { - draw_content($prestd); - draw_prestudent($prestd); - } + draw_content($prestd); + draw_prestudent($prestd); } } } @@ -543,19 +522,8 @@ if($xmlformat=='rdf') { foreach ($prestd->result as $row) { - if(checkfilter($row, $filter2)) - { - $student=new student(); - if($uid = $student->getUid($row->prestudent_id)) - { - if(!$student->load($uid, $studiensemester_kurzbz)) - $student->load($uid); - draw_content($student); - } - else - draw_content($row); - draw_prestudent($row); - } + draw_content($row); + draw_prestudent($row); } } } @@ -585,29 +553,16 @@ if($xmlformat=='rdf') foreach($zahlungsreferenz as $ref) { - $konto = new konto(); - $konto->loadFromZahlungsreferenz($ref); - $prestudent=new prestudent(); - $prestudent->getPrestudenten($konto->person_id); - if(!empty($prestudent->result)) - { - $prestudent_temp = new prestudent($prestudent->result[0]->prestudent_id); - $student = new student(); - $uid = $student->getUid($prestudent_temp->prestudent_id); - - if($uid!='' && $uid != false) + $konto = new konto(); + $konto->loadFromZahlungsreferenz($ref); + $prestudent=new prestudent(); + $prestudent->getPrestudenten($konto->person_id); + if(!empty($prestudent->result)) { - if(!$student->load($uid, $studiensemester_kurzbz)) - $student->load($uid); - draw_content($student); - draw_prestudent($prestudent_temp); + $prestudent_temp = new prestudent($prestudent->result[0]->prestudent_id); + draw_content($prestudent_temp); + draw_prestudent($prestudent_temp); } - else - { - draw_content($prestudent_temp); - draw_prestudent($prestudent_temp); - } - } } } else @@ -626,52 +581,20 @@ if($xmlformat=='rdf') { while($row = $db->db_fetch_object()) { - $student=new student(); - if($uid = $student->getUid($row->prestudent_id)) - { - //Wenn kein Eintrag fuers aktuelle Studiensemester da ist, dann - //nochmal laden aber ohne studiensemester - if(!$student->load($uid, $studiensemester_kurzbz)) - $student->load($uid); - } $prestd = new prestudent(); $prestd->load($row->prestudent_id); - if($uid!='') - { - draw_content($student); - draw_prestudent($prestd); - } - else - { - draw_content($prestd); - draw_prestudent($prestd); - } + draw_content($prestd); + draw_prestudent($prestd); } } } } elseif(isset($prestudent_id)) { - $student=new student(); - if($uid = $student->getUid($prestudent_id)) - { - //Wenn kein Eintrag fuers aktuelle Studiensemester da ist, dann - //nochmal laden aber ohne studiensemester - if(!$student->load($uid, $studiensemester_kurzbz)) - $student->load($uid); - } $prestd = new prestudent(); $prestd->load($prestudent_id); - if($uid!='') - { - draw_content($student); - draw_prestudent($prestd); - } - else - { - draw_content($prestd); - draw_prestudent($prestd); - } + draw_content($prestd); + draw_prestudent($prestd); } } echo "\n"; @@ -679,19 +602,19 @@ if($xmlformat=='rdf') else { //XML - $uids = explode(';',$uid); + $prestudent_ids = explode(';',$prestudent_id); echo ''; - foreach ($uids as $uid) + foreach ($prestudent_ids as $prestudent_id) { - if($uid!='') + if(is_numeric($prestudent_id)) { - $student = new student(); - $student->load($uid); + $prestudent = new prestudent(); + $prestudent->load($prestudent_id); $studiengang = new studiengang(); - $studiengang->load($student->studiengang_kz); + $studiengang->load($prestudent->studiengang_kz); - $stgleiter = $studiengang->getLeitung($student->studiengang_kz); + $stgleiter = $studiengang->getLeitung($prestudent->studiengang_kz); $stgl=''; $i = 0; foreach ($stgleiter as $stgleiter_uid) @@ -728,7 +651,7 @@ else $studiengbeginn = ''; $studiensemester_kurzbz=''; $qry = "SELECT * FROM public.tbl_prestudentstatus JOIN public.tbl_studiensemester USING(studiensemester_kurzbz) - WHERE prestudent_id='$student->prestudent_id' AND status_kurzbz in('Student','Incoming') ORDER BY datum LIMIT 1"; + WHERE prestudent_id='$prestudent->prestudent_id' AND status_kurzbz in('Student','Incoming') ORDER BY datum LIMIT 1"; if($db->db_query($qry)) { if($row = $db->db_fetch_object()) @@ -743,7 +666,7 @@ else $stsem->load($ss); - $qry = "SELECT * FROM public.tbl_prestudentstatus WHERE prestudent_id='$student->prestudent_id' AND studiensemester_kurzbz='$ss' ORDER BY datum DESC"; + $qry = "SELECT * FROM public.tbl_prestudentstatus WHERE prestudent_id='$prestudent->prestudent_id' AND studiensemester_kurzbz='$ss' ORDER BY datum DESC"; $semester=0; if($db->db_query($qry)) { @@ -760,7 +683,7 @@ else $lv_studiengang_art=''; $lv=new lehrveranstaltung(); - $lv->load_lva_student($student->prestudent_id); + $lv->load_lva_student($prestudent->prestudent_id); if(count($lv->lehrveranstaltungen)>0) { $lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz; @@ -792,7 +715,7 @@ else } } $prestudent = new prestudent(); - $prestudent->getLastStatus($student->prestudent_id); + $prestudent->getLastStatus($prestudent->prestudent_id); $orgform_bezeichnung = new organisationsform(); $orgform_bezeichnung->load($studiengang->orgform_kurzbz); @@ -812,15 +735,15 @@ else $lv_studiengang_kz = sprintf("%04s", abs($lv_studiengang_kz)); //Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen - if ($student->studiengang_kz<0) + if ($prestudent->studiengang_kz<0) { $stg = new studiengang(); - $stg->load($student->studiengang_kz); + $stg->load($prestudent->studiengang_kz); - $stg_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($student->studiengang_kz)); + $stg_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($prestudent->studiengang_kz)); } else - $stg_kz = sprintf("%04s", abs($student->studiengang_kz)); + $stg_kz = sprintf("%04s", abs($prestudent->studiengang_kz)); if (($semester % 2) == 0) $studienjahr = $semester/2; else @@ -828,21 +751,21 @@ else echo ' - uid.']]> - person_id.']]> - titelpre.']]> - titelpost.']]> - vornamen.']]> - vorname.']]> - nachname.']]> - perskz.']]> - matr_nr.']]> - convertISODate($student->gebdatum).']]> - gebdatum.']]> - gebort.']]> + uid.']]> + person_id.']]> + titelpre.']]> + titelpost.']]> + vornamen.']]> + vorname.']]> + nachname.']]> + perskz.']]> + matr_nr.']]> + convertISODate($prestudent->gebdatum).']]> + gebdatum.']]> + gebort.']]> - verband.']]> - gruppe.']]> + verband.']]> + gruppe.']]> orgform_kurzbz.']]> bezeichnung.']]> @@ -857,11 +780,11 @@ else - anrede.']]> - geschlecht.']]> - svnr.']]> - ersatzkennzeichen.']]> - familienstand.']]> + anrede.']]> + geschlecht.']]> + svnr.']]> + ersatzkennzeichen.']]> + familienstand.']]> convertISODate($studienbeginn).']]> @@ -872,7 +795,7 @@ else max_semester.']]> anmerkung.']]> - aktiv.']]> + aktiv.']]> '; } } diff --git a/rdf/studienblatt.xml.php b/rdf/studienblatt.xml.php index 5eedd3646..8650da520 100644 --- a/rdf/studienblatt.xml.php +++ b/rdf/studienblatt.xml.php @@ -38,23 +38,23 @@ require_once('../include/organisationsform.class.php'); require_once('../include/zgv.class.php'); require_once('../include/konto.class.php'); -$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null); +$pid_arr = (isset($_REQUEST['prestudent_id'])?$_REQUEST['prestudent_id']:null); $studiensemester = (isset($_REQUEST['ss'])?$_REQUEST['ss']:null); -$uid_arr = explode(";",$uid_arr); +$pid_arr = explode(";",$pid_arr); echo "\n"; echo "\n"; -$uid = isset($uid_arr[1])?$uid_arr[1]:$uid_arr[0]; +$pid = isset($pid_arr[1])?$pid_arr[1]:$pid_arr[0]; $konto = new konto(); -$student_help = new student(); +$ps_help = new prestudent(); // an 2ter stelle da im Aufruf vom FAS ;; der erste immer '' ist -if($student_help->load($uid)) +if($ps_help->load($pid)) { $studiengang = new studiengang(); - $studiengang->load($student_help->studiengang_kz); + $studiengang->load($ps_help->studiengang_kz); switch($studiengang->typ) { case 'b': @@ -82,20 +82,20 @@ if($student_help->load($uid)) echo "\t".$studiengang->bezeichnung."\n"; } -foreach($uid_arr as $uid) +foreach($pid_arr as $pid) { - if($uid=='') + if(!is_numeric($pid)) continue; - - echo "\t\n"; - $student = new student(); - if($student->load($uid)) + echo "\t\n"; + + $ps = new prestudent(); + if($ps->load($pid)) { $datum_aktuell = date('d.m.Y'); - $gebdatum = date('d.m.Y',strtotime($student->gebdatum)); - $prestudent = new prestudent($student->prestudent_id); - $prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student'); + $gebdatum = date('d.m.Y',strtotime($ps->gebdatum)); + $prestudent = new prestudent($ps->prestudent_id); + $prestudent->getLastStatus($ps->prestudent_id,$studiensemester,'Student'); $studienordnung = new studienordnung(); $studienordnung->getStudienordnungFromStudienplan($prestudent->studienplan_id); $studiengang = new studiengang(); @@ -103,12 +103,12 @@ foreach($uid_arr as $uid) $studienplan = new studienplan(); $studienplan->loadStudienplan($prestudent->studienplan_id); $staatsbuergerschaft = new nation(); - $staatsbuergerschaft->load($student->staatsbuergerschaft); + $staatsbuergerschaft->load($ps->staatsbuergerschaft); - $svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr; + $svnr = ($ps->svnr == '')?'Ersatzkennzeichen: '.$ps->ersatzkennzeichen:$ps->svnr; - switch($student->geschlecht) + switch($ps->geschlecht) { case 'm': $geschlecht = 'Männlich'; @@ -134,20 +134,20 @@ foreach($uid_arr as $uid) else $studiengang_kz = sprintf("%04s", abs($studienordnung->studiengang_kz)); - echo "\t\t1\n"; - echo "\t\t".$uid."\n"; + echo "\t\t1\n"; // TODO EINE ergibt das einen sinn? + echo "\t\t".$ps->uid."\n";// TODO EINE ergibt das einen sinn? echo "\t\t".$geschlecht."\n"; - echo "\t\t".$student->anrede."\n"; - echo "\t\t".$student->vorname." ".$student->vornamen."\n"; - echo "\t\t".$student->vornamen."\n"; - echo "\t\t".$student->nachname."\n"; - echo "\t\t".$student->titelpre."\n"; - echo "\t\t".$student->titelpost."\n"; + echo "\t\t".$ps->anrede."\n"; + echo "\t\t".$ps->vorname." ".$ps->vornamen."\n"; + echo "\t\t".$ps->vornamen."\n"; + echo "\t\t".$ps->nachname."\n"; + echo "\t\t".$ps->titelpre."\n"; + echo "\t\t".$ps->titelpost."\n"; echo "\t\t".$gebdatum."\n"; - echo "\t\t".$student->gebort."\n"; + echo "\t\t".$ps->gebort."\n"; echo "\t\t".$staatsbuergerschaft->langtext."\n"; echo "\t\t".$svnr."\n"; - echo "\t\t".trim($student->matrikelnr)."\n"; + echo "\t\t".trim($ps->perskz)."\n"; echo "\t\t".$studienordnung->studiengangbezeichnung."\n"; echo "\t\t".$studienordnung->studiengangbezeichnung_englisch."\n"; echo "\t\t".$studienordnung->studiengangkurzbzlang."\n"; @@ -166,21 +166,21 @@ foreach($uid_arr as $uid) echo "\t\t".$studiensemester_aktuell->bezeichnung.""; // check ob Oeh-Beitrag bezahlt wurde - $oehbeitrag = $konto->getOehBeitragGesamt($uid, $studiensemester_aktuell->studiensemester_kurzbz); + $oehbeitrag = $konto->getOehBeitragGesamt($ps->uid, $studiensemester_aktuell->studiensemester_kurzbz); echo "\t\t".str_replace('.', ',', $oehbeitrag).""; // check ob Quereinsteiger - $ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:''; + $ausbildungssemester = ($prestudent->getFirstStatus($ps->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:''; echo "\t\t".$ausbildungssemester.""; $studiensemester_beginn = new studiensemester(); - $studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:''; + $studienbeginn = ($prestudent->getFirstStatus($ps->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:''; $studiensemester_beginn->load($studienbeginn); echo "\t\t".$studiensemester_beginn->bezeichnung.""; echo "\t\t".date('d.m.Y',strtotime($studiensemester_beginn->start)).""; - $prestudent->getLastStatus($student->prestudent_id,$studiensemester,'Student'); + $prestudent->getLastStatus($ps->prestudent_id,$studiensemester,'Student'); $studiensemester_abschluss = new studiensemester(); $abschluss = $studiensemester_abschluss->jump($prestudent->studiensemester_kurzbz, $studienplan->regelstudiendauer-$prestudent->ausbildungssemester); $studiensemester_abschluss->load($abschluss); @@ -192,7 +192,7 @@ foreach($uid_arr as $uid) echo "\t\t".date('d.m.Y',strtotime($studiensemester_endedatum->ende)).""; - $status_aktuell = ($prestudent->getLastStatus($student->prestudent_id,null,null))?$prestudent->status_kurzbz:''; + $status_aktuell = ($prestudent->getLastStatus($ps->prestudent_id,null,null))?$prestudent->status_kurzbz:''; switch($status_aktuell) { @@ -253,7 +253,7 @@ foreach($uid_arr as $uid) echo "\t\t".$studienplan->regelstudiendauer."\n"; $akadgrad = new akadgrad(); - $akadgrad->getAkadgradStudent($student->uid); + $akadgrad->getAkadgradStudent($ps->prestudent_id); echo "\t\t".$akadgrad->titel."\n"; echo "\t\t".$akadgrad->akadgrad_kurzbz."\n"; @@ -265,7 +265,7 @@ foreach($uid_arr as $uid) $stg_typ=new studiengang(); $lv=new lehrveranstaltung(); - $lv->load_lva_student($student->prestudent_id); + $lv->load_lva_student($ps->prestudent_id); if(count($lv->lehrveranstaltungen)>0) { $lv_studiengang_kz=$lv->lehrveranstaltungen[0]->studiengang_kz; @@ -283,7 +283,7 @@ foreach($uid_arr as $uid) echo "\t\t".$datum_aktuell."\n"; $adresse = new adresse(); - $adresse->load_pers($student->person_id); + $adresse->load_pers($ps->person_id); foreach($adresse->result as $row_adresse) { @@ -306,7 +306,7 @@ foreach($uid_arr as $uid) } } $prestudent = new prestudent(); - $prestudent->getLastStatus($student->prestudent_id, null, 'Student'); + $prestudent->getLastStatus($ps->prestudent_id, null, 'Student'); if($prestudent->orgform_kurzbz!='') $orgform = $prestudent->orgform_kurzbz; @@ -322,7 +322,7 @@ foreach($uid_arr as $uid) //Studiengangsleiter auslesen $stg_oe_obj = new studiengang($studienordnung->studiengang_kz); if ($studienordnung->studiengang_kz=='') - $stgleiter = $stg_oe_obj->getLeitung($student_help->studiengang_kz); + $stgleiter = $stg_oe_obj->getLeitung($ps_help->studiengang_kz); else $stgleiter = $stg_oe_obj->getLeitung($studienordnung->studiengang_kz); $stgl=''; diff --git a/soap/semesterticket.soap.php b/soap/semesterticket.soap.php index d3fe2e766..4acce4f04 100644 --- a/soap/semesterticket.soap.php +++ b/soap/semesterticket.soap.php @@ -15,11 +15,12 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * - * Authors: Karl Burkhart . + * Authors: Karl Burkhart and + * Andreas Moik . */ - -require_once('../config/vilesci.config.inc.php'); -require_once('../include/student.class.php'); + +require_once('../config/vilesci.config.inc.php'); +require_once('../include/prestudent.class.php'); require_once('../include/benutzer.class.php'); require_once('../include/adresse.class.php'); require_once('../include/person.class.php'); @@ -64,21 +65,18 @@ function verifyData($parameters) } else { - $student = new student(); - $student_uid = $student->getUidFromMatrikelnummer($parameters->Matrikelnummer); - - // überprüfe ob Benutzer aktiv ist - $benutzer = new benutzer(); - $benutzer->load($student_uid); - if(!$benutzer->bnaktiv) + $prestudent = new prestudent(); + if(!$prestudent->loadFromPerskz($parameters->Matrikelnummer)) { + // es wurde kein student gefunden $obj->result = 'false'; - $obj->fehler ='1'; - return $obj; - } - + $obj->fehler = '3'; + return $obj; + } + + // überprüfe vorname - if($benutzer->vorname != $parameters->Vorname) + if($prestudent->vorname != $parameters->Vorname) { // es wurde keine übereinstimmung gefunden $obj->result = 'false'; @@ -86,7 +84,7 @@ function verifyData($parameters) return $obj; } - if($benutzer->nachname != $parameters->Name) + if($prestudent->nachname != $parameters->Name) { // es wurde keine übereinstimmung gefunden $obj->result = 'false'; @@ -96,7 +94,7 @@ function verifyData($parameters) // Überprüfe PLZ $adresse = new adresse(); - $adresse->load_pers($benutzer->person_id); + $adresse->load_pers($prestudent->person_id); $foundAdr = false; foreach($adresse->result as $adr) @@ -113,47 +111,36 @@ function verifyData($parameters) } // Überprüfe Geburtsdatum - $person = new person(); - $person->load($benutzer->person_id); - if($person->gebdatum != $parameters->Geburtsdatum) + if($prestudent->gebdatum != $parameters->Geburtsdatum) { - $obj->result = 'false'; - $obj->fehler = '4'; - return $obj; - } - - // hole prestudentID - $student->load($student_uid); - if($student->prestudent_id == '') - { - // es wurde kein student gefunden $obj->result = 'false'; - $obj->fehler = '3'; - return $obj; - } - + $obj->fehler = '4'; + return $obj; + } + + // Übergabe von studiensemester -> z.b 11W, 12S auf WS2011, SS2012 - $year = mb_substr($parameters->Semesterkuerzel, 0,2); - $semester = mb_substr($parameters->Semesterkuerzel,2,1); + $year = mb_substr($parameters->Semesterkuerzel, 0,2); + $semester = mb_substr($parameters->Semesterkuerzel,2,1); if($semester == 'S') { - $semester = 'SS'; + $semester = 'SS'; } else if($semester == 'W') { - $semester= 'WS'; + $semester= 'WS'; } else { // ungültiges Semester $obj->result = 'false'; $obj->fehler = '8'; - return $obj; + return $obj; } $studiensemester = $semester.'20'.$year; // letzten Status holen - $qry = "Select public.get_rolle_prestudent ('".$student->prestudent_id."', '".$studiensemester."')"; + $qry = "Select public.get_rolle_prestudent ('".$prestudent->prestudent_id."', '".$studiensemester."')"; if($db->db_query($qry)) { diff --git a/soap/soap_test_student.php b/soap/soap_test_student.php index 63408d99e..6040890dd 100755 --- a/soap/soap_test_student.php +++ b/soap/soap_test_student.php @@ -295,7 +295,7 @@ if(isset($_REQUEST['submit_matrikelnummer'])) try { - $authentifizierung = new foo(); + $authentifizierung = new stdClass(); $authentifizierung->username=$_REQUEST['username']; $authentifizierung->passwort=$_REQUEST['passwort']; $response = $client->getStudentFromMatrikelnummer($matrikelnummer = $_REQUEST['matrikelnummer'], $authentifizierung); @@ -314,7 +314,7 @@ if(isset($_REQUEST['submit_uid'])) try { - $authentifizierung = new foo(); + $authentifizierung = new stdClass(); $authentifizierung->username=$_REQUEST['username']; $authentifizierung->passwort=$_REQUEST['passwort']; $response = $client->getStudentFromUid($student_uid = $_REQUEST['student_uid'], $authentifizierung); @@ -325,29 +325,26 @@ if(isset($_REQUEST['submit_uid'])) { echo "SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR; } - } if(isset($_REQUEST['submit_studiengang'])) { - $client = new SoapClient(APP_ROOT."soap/student.wsdl.php?".microtime(true)); - + $client = new SoapClient(APP_ROOT."soap/student.wsdl.php?".microtime(true)); + try { - $authentifizierung = new foo(); - $authentifizierung->username=$_REQUEST['username']; - $authentifizierung->passwort=$_REQUEST['passwort']; + $authentifizierung = new stdClass(); + $authentifizierung->username=$_REQUEST['username']; + $authentifizierung->passwort=$_REQUEST['passwort']; $response = $client->getStudentFromStudiengang($studiengang = $_REQUEST['studiengang'], $semester=$_REQUEST['semester'], $verband=$_REQUEST['verband'], $gruppe=$_REQUEST['gruppe'], $authentifizierung); var_dump($response); } catch(SoapFault $fault) { - echo "SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR; + echo "SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR; } } - -class foo{} - ?> +?> diff --git a/soap/student.soap.php b/soap/student.soap.php index 0fb3df5c3..91a081b8f 100755 --- a/soap/student.soap.php +++ b/soap/student.soap.php @@ -16,11 +16,11 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * - * Authors: Karl Burkhart . + * Authors: Karl Burkhart and + * Andreas Moik . */ require_once('../config/vilesci.config.inc.php'); -require_once('../include/student.class.php'); require_once('../include/prestudent.class.php'); require_once('../include/webservicerecht.class.php'); require_once('../include/studiensemester.class.php'); @@ -39,43 +39,44 @@ $SOAPServer->handle(); */ function getStudentFromUid($student_uid, $authentifizierung) { - $recht = new webservicerecht(); - $user = $authentifizierung->username; - $passwort = $authentifizierung->passwort; - - // User authentifizieren - if(!check_user($user, $passwort)) - return new SoapFault("Server", "Invalid Credentials"); - - // darf User überhaupt Methode verwenden - $recht = new webservicerecht(); - if(!$recht->isUserAuthorized($user, 'getStudentFromUid')) - return new SoapFault("Server", "No permission"); - - $studentObj = new student(); // Studentendaten - $student = new foo(); // Rückgabeobjekt - $preStudent = new prestudent(); // StudentenStatus + $recht = new webservicerecht(); + $user = $authentifizierung->username; + $passwort = $authentifizierung->passwort; - if(!$studentObj->load($student_uid)) - return new SoapFault("Server", "Kein Student mit übergebener Uid gefunden"); - - $preStudent->getLastStatus($studentObj->prestudent_id); - - $student->studiengang_kz = $studentObj->studiengang_kz; - $student->person_id = $studentObj->person_id; - $student->semester = $studentObj->semester; - $student->verband = $studentObj->verband; - $student->gruppe = $studentObj->gruppe; - $student->vorname = $studentObj->vorname; - $student->nachname = $studentObj->nachname; - $student->uid = $studentObj->uid; - $student->status = $preStudent->status_kurzbz; - $student->personenkennzeichen = $studentObj->matrikelnr; - $student->email = $student->uid.'@'.DOMAIN; - - $student = $recht->clearResponse($user, 'getStudentFromUid', $student); - - return $student; + // User authentifizieren + if(!check_user($user, $passwort)) + return new SoapFault("Server", "Invalid Credentials"); + + // darf User überhaupt Methode verwenden + $recht = new webservicerecht(); + if(!$recht->isUserAuthorized($user, 'getStudentFromUid')) + return new SoapFault("Server", "No permission"); + + $obj = new stdClass(); // Rückgabeobjekt + $prestudent = new prestudent(); + + if(!$prestudent->getPrestudentsFromUid($student_uid) || count($prestudent->result) < 1) + return new SoapFault("Server", "Kein Student mit übergebener Uid gefunden"); + + $ps = $prestudent->result[count($prestudent->result)-1]; // TODO EINE hier wird nur der letzte prestudent zurückgegeben(muss noch abgeklärt werden, wer diese schnittstelle verwendet) + + $prestudent->getLastStatus($ps->prestudent_id); + + $obj->studiengang_kz = $ps->studiengang_kz; + $obj->person_id = $ps->person_id; + $obj->semester = $ps->semester; + $obj->verband = $ps->verband; + $obj->gruppe = $ps->gruppe; + $obj->vorname = $ps->vorname; + $obj->nachname = $ps->nachname; + $obj->uid = $ps->uid; + $obj->status = $prestudent->status_kurzbz; + $obj->personenkennzeichen = $ps->perskz; + $obj->email = $obj->uid.'@'.DOMAIN; + + $obj = $recht->clearResponse($user, 'getStudentFromUid', $obj); + + return $obj; } /** @@ -85,44 +86,42 @@ function getStudentFromUid($student_uid, $authentifizierung) */ function getStudentFromMatrikelnummer($matrikelnummer, $authentifizierung) { - $recht = new webservicerecht(); - $user = $authentifizierung->username; - $passwort = $authentifizierung->passwort; - - // User authentifizieren - if(!check_user($user, $passwort)) - return new SoapFault("Server", "Invalid Credentials"); - - // darf User überhaupt Methode verwenden - $recht = new webservicerecht(); - if(!$recht->isUserAuthorized($user, 'getStudentFromMatrikelnummer')) - return new SoapFault("Server", "No permission"); - - $studentObj = new student(); // Studentendaten - $student = new foo(); // Rückgabeobjekt - $preStudent = new prestudent(); // StudentenStatus - - $student_uid = $studentObj->getUidFromMatrikelnummer($matrikelnummer); - if(!$studentObj->load($student_uid)) - return new SoapFault("Server", "Kein Student mit übergebener Matrikelnummer gefunden"); - - $preStudent->getLastStatus($studentObj->prestudent_id); - - $student->studiengang_kz = $studentObj->studiengang_kz; - $student->person_id = $studentObj->person_id; - $student->semester = $studentObj->semester; - $student->verband = $studentObj->verband; - $student->gruppe = $studentObj->gruppe; - $student->vorname = $studentObj->vorname; - $student->nachname = $studentObj->nachname; - $student->uid = $studentObj->uid; - $student->status = $preStudent->status_kurzbz; - $student->personenkennzeichen = $studentObj->matrikelnr; - $student->email = $student->uid.'@'.DOMAIN; - - $student = $recht->clearResponse($user, 'getStudentFromMatrikelnummer', $student); - - return $student; + $recht = new webservicerecht(); + $user = $authentifizierung->username; + $passwort = $authentifizierung->passwort; + + // User authentifizieren + if(!check_user($user, $passwort)) + return new SoapFault("Server", "Invalid Credentials"); + + // darf User überhaupt Methode verwenden + $recht = new webservicerecht(); + if(!$recht->isUserAuthorized($user, 'getStudentFromMatrikelnummer')) + return new SoapFault("Server", "No permission"); + + $student = new stdClass(); // Rückgabeobjekt + $prestudent = new prestudent(); // Studentendaten + + if(!$prestudent->loadFromPerskz($matrikelnummer)) + return new SoapFault("Server", "Kein Student mit übergebener Matrikelnummer gefunden"); + + $prestudent->getLastStatus($prestudent->prestudent_id); + + $student->studiengang_kz = $prestudent->studiengang_kz; + $student->person_id = $prestudent->person_id; + $student->semester = $prestudent->semester; + $student->verband = $prestudent->verband; + $student->gruppe = $prestudent->gruppe; + $student->vorname = $prestudent->vorname; + $student->nachname = $prestudent->nachname; + $student->uid = $prestudent->uid; + $student->status = $prestudent->status_kurzbz; + $student->personenkennzeichen = $prestudent->perskz; + $student->email = $student->uid.'@'.DOMAIN; + + $student = $recht->clearResponse($user, 'getStudentFromMatrikelnummer', $student); + + return $student; } /** @@ -134,51 +133,49 @@ function getStudentFromMatrikelnummer($matrikelnummer, $authentifizierung) * @param $authentifizierung */ function getStudentFromStudiengang($studiengang, $semester = null, $verband = null, $gruppe = null, $authentifizierung) -{ - $recht = new webservicerecht(); - $user = $authentifizierung->username; - $passwort = $authentifizierung->passwort; - - // User authentifizieren - if(!check_user($user, $passwort)) - return new SoapFault("Server", "Invalid Credentials"); +{ + $recht = new webservicerecht(); + $user = $authentifizierung->username; + $passwort = $authentifizierung->passwort; - // darf User überhaupt Methode verwenden - $recht = new webservicerecht(); - if(!$recht->isUserAuthorized($user, 'getStudentFromStudiengang')) - return new SoapFault("Server", "No permission"); + // User authentifizieren + if(!check_user($user, $passwort)) + return new SoapFault("Server", "Invalid Credentials"); - $studentObj = new student(); // Studentendaten - $preStudent = new prestudent(); // StudentenStatus - - $studiensemester = new studiensemester(); // aktuelles Studiensemester - $studSemester = $studiensemester->getakt(); - - $studentObj->result = $studentObj->getStudents($studiengang, $semester, $verband, $gruppe, null, $studSemester); - - $studentArray = array(); - - foreach($studentObj->result as $stud) - { - $student = new foo(); // Rückgabeobjekt - $preStudent->getLastStatus($stud->prestudent_id); - - $student->studiengang_kz = $stud->studiengang_kz; - $student->person_id = $stud->person_id; - $student->semester = $stud->semester; - $student->verband = $stud->verband; - $student->gruppe = $stud->gruppe; - $student->vorname = $stud->vorname; - $student->nachname = $stud->nachname; - $student->uid = $stud->uid; - $student->status = $preStudent->status_kurzbz; - $student->personenkennzeichen = $stud->matrikelnr; - $student->email = $stud->uid.'@'.DOMAIN; - - $student = $recht->clearResponse($user, 'getStudentFromStudiengang', $student); - $studentArray[] = $student; - } - return $studentArray; + // darf User überhaupt Methode verwenden + $recht = new webservicerecht(); + if(!$recht->isUserAuthorized($user, 'getStudentFromStudiengang')) + return new SoapFault("Server", "No permission"); + + $prestudent = new prestudent(); + + $studiensemester = new studiensemester(); // aktuelles Studiensemester + $studSemester = $studiensemester->getakt(); + + $prestudent->result = $prestudent->getPrestudents($studiengang, $semester, $verband, $gruppe, null, $studSemester); + + $ret = array(); + + foreach($prestudent->result as $ps) + { + $obj = new stdClass(); // Rückgabeobjekt + $prestudent->getLastStatus($ps->prestudent_id); + + $obj->studiengang_kz = $ps->studiengang_kz; + $obj->person_id = $ps->person_id; + $obj->semester = $ps->semester; + $obj->verband = $ps->verband; + $obj->gruppe = $ps->gruppe; + $obj->vorname = $ps->vorname; + $obj->nachname = $ps->nachname; + $obj->uid = $ps->uid; + $obj->status = $prestudent->status_kurzbz; + $obj->personenkennzeichen = $ps->matrikelnr; + $obj->email = $ps->uid.'@'.DOMAIN; + + $obj = $recht->clearResponse($user, 'getStudentFromStudiengang', $obj); + $ret[] = $obj; + } + return $ret; } -class foo{} diff --git a/system/checkStudenten.php b/system/checkStudenten.php index c5a19b5e5..fc962675d 100644 --- a/system/checkStudenten.php +++ b/system/checkStudenten.php @@ -445,16 +445,15 @@ foreach($ausgabe as $stg_kz=>$value) } foreach ($uid as $student_id) - { + { echo "
'.$student->vorname.''.$student->nachname.''.$student->uid.''.$benutzer->vorname.''.$benutzer->nachname.''.$benutzer->uid.''.$student_id,'
"; } @@ -487,4 +486,4 @@ function getDateForInscription ($semester) } ?> - + diff --git a/vilesci/fhausweis/kartenkorrektur.php b/vilesci/fhausweis/kartenkorrektur.php index 92a96679f..edc12f10b 100755 --- a/vilesci/fhausweis/kartenkorrektur.php +++ b/vilesci/fhausweis/kartenkorrektur.php @@ -254,4 +254,4 @@ else } echo ' '; -?> \ No newline at end of file +?> diff --git a/vilesci/personen/personen_details.php b/vilesci/personen/personen_details.php index 956bbfd7c..ab6f50bed 100644 --- a/vilesci/personen/personen_details.php +++ b/vilesci/personen/personen_details.php @@ -15,10 +15,11 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * - * Authors: Christian Paminger < christian.paminger@technikum-wien.at > - * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > - * Rudolf Hangl < rudolf.hangl@technikum-wien.at > - * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > + * Authors: Christian Paminger < christian.paminger@technikum-wien.at >, + * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >, + * Rudolf Hangl < rudolf.hangl@technikum-wien.at >, + * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > and + * Andreas Moik . */ require_once('../../config/vilesci.config.inc.php'); require_once('../../include/functions.inc.php'); @@ -285,35 +286,6 @@ if(isset($_POST['savemitarbeiter'])) } } -if(isset($_POST['savestudent'])) -{ - $student = new student(); - if(!$student->load($uid)) - die('Student konnte nicht geladen werden'); - - $studiengang = new studiengang(); - if(!$studiengang->load($student->studiengang_kz)) - die('Fehler beim Laden des Studienganges'); - - if(!$rechte->isBerechtigt('student/stammdaten', $studiengang->oe_kurzbz, 'su')) - die('Sie haben keine Berechtigung fuer diese Aktion'); - - $student->matrikelnr = $matrikelnummer; - $student->semester = $semester; - $student->verband = $verband; - $student->gruppe = $gruppe; - $student->updateamum = date('Y-m-d H:i:s'); - $student->updatevon = $user; - $student->new = false; - - if($student->save(null, false)) - $msg = '

Daten wurden erfolgreich gespeichert

'; - else - { - $msg = "

Fehler beim Speichern der Daten: $student->errormsg

"; - $error_student_save = true; - } -} $person = new person(); if(!$person->load($person_id)) @@ -647,51 +619,9 @@ if(isset($uid) && $uid!='') "; } - else - { - $student = new student(); - if(!$student->load($uid)) - die('Fehler beim Laden des Studenten'); - - if(!$error_student_save) - { - $semester = $student->semester; - $verband = $student->verband; - $gruppe = $student->gruppe; - $matrikelnummer = $student->matrikelnr; - } - - //STUDENT - echo " -
- Studentendaten -
- - - - - - - - - - - - - - - - - -
SemesterVerbandGruppe
Matrikelnummer
-
-
- - "; - } } echo ""; ?> - \ No newline at end of file + diff --git a/vilesci/personen/student_edit.php b/vilesci/personen/student_edit.php deleted file mode 100644 index 18b7a1c5a..000000000 --- a/vilesci/personen/student_edit.php +++ /dev/null @@ -1,236 +0,0 @@ - - * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > - * Rudolf Hangl < rudolf.hangl@technikum-wien.at > - * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > - */ - - - -/** - * Changes: 23.10.2004: Anpassung an neues DB-Schema sowie Verwendung der - * 'student'-Klasse; Datei ersetzt student_edit_save.php - * (WM) - */ - -require_once('../../config/vilesci.config.inc.php'); -require_once('../../include/functions.inc.php'); -require_once('../../include/person.class.php'); -require_once('../../include/benutzer.class.php'); -require_once('../../include/student.class.php'); -require_once('../../include/studiengang.class.php'); -require_once('../../include/benutzerberechtigung.class.php'); - -echo ' - - -Student Edit - - - - - -'; - -$user = get_uid(); - -$rechte = new benutzerberechtigung(); -$rechte->getBerechtigungen($user); - -if(!$rechte->isBerechtigt('student/stammdaten',null, 'suid')) - die('Sie haben keine Berechtigung für diese Seite'); - -echo '

Student '; -if (isset($_GET['new'])) - echo 'Neu

'; -else - echo 'Edit'; - -if (isset($_POST['Save'])) -{ - doSAVE(); -} -else if (isset($_GET['new'])) -{ - doEDIT(null,true); - -} -else -{ - if (!isset ($_GET['id'])) - { - echo "benötige UID für Student"; - } - doEDIT($_GET['id']); -} - -/** - * Daten speichern - */ -function doSAVE() -{ - $student = new student(); - if($_POST['new']) - { - $student->new=true; - $student->insertamum=date('Y-m-d H:i:s'); - $student->insertvon=$user; - } - else - { - $student->load($_POST['uid']); - $student->new=false; - } - // person - $student->uid=$_POST['uid']; - if (isset($_POST['new_uid'])) - $student->uid=$_POST['new_uid']; - $student->titelpre=$_POST['titelpre']; - $student->vorname=$_POST['vorname']; - $student->nachname=$_POST['nachname']; - $student->gebdatum=$_POST['gebdatum']; - $student->gebort=$_POST['gebort']; - //$student->gebzeit=$_POST['gebzeit']; - //$student->anmerkungen=$_POST['anmerkungen']; - $student->aktiv=($_POST['aktiv']=='1'?true:false); - $student->alias=$_POST['alias']; - $student->homepage=$_POST['homepage']; - //echo "

aktiv=".($student->aktiv?'true':'false').'

'; - // student - if (is_numeric($_POST['studiengang_kz'])) - { - $student->studiengang_kz=$_POST['studiengang_kz']; - } - else - { - echo "

Studiengang ist keine Zahl (".$_POST['studiengang_kz'].").

"; - return; - } - $student->matrikelnr=$_POST['matrikelnr']; - if (is_numeric($_POST['semester'])) - { - $student->semester=$_POST['semester']; - } - else - { - echo "

Semester ist keine Zahl"; - return; - } - $student->verband=$_POST['verband']; - $student->gruppe=$_POST['gruppe']; - - if ($student->save()) - { - echo "

Datensatz gespeichert.

"; - } - else - { - echo "

".$student->errormsg."

"; - } - - doEDIT($student->uid); -} - -/** - * Edit-Formular - */ -function doEDIT($id,$new=false) -{ - - // Studentendaten holen - $student = new student(); - $status_ok=false; - if (!$new) - { - $status_ok=$student->load($id); - } - if (!$status_ok && !$new) - { - // Laden fehlgeschlagen - echo $student->errormsg; - } - else - { - // Eingabeformular anzeigen - echo '
'; - - echo ' -
- - - - - - - - - - - - - - - - - - - - - - - -
UID* - -
Titel
Vornamen
Nachname
Aktivaktiv?'checked':'').'>
Geburtsdatum (TT.MM.JJJJ)
Gebort
eMail Alias
Homepage
Matrikelnr*
Studiengang - - -
Semester
Verband
Gruppe
- - - -
'; - - echo '
'; - echo 'AccountInfoBlatt erstellen'; - - echo '
'; - - } - -} // ENDE doEDIT() - -?> - - - diff --git a/vilesci/personen/wiederholer.php b/vilesci/personen/wiederholer.php index f4f786bb5..d86d63f15 100644 --- a/vilesci/personen/wiederholer.php +++ b/vilesci/personen/wiederholer.php @@ -130,7 +130,7 @@ if(isset($_POST['filter'])) $filter = $_POST['filter']; $stg_obj = new studiengang(); $stg_obj->getAll('typ, kurzbz',false); - $std_obj = new student(); + $std_obj = new prestudent(); $stsem_obj = new studiensemester(); $stsem = $stsem_obj->getaktorNext(); $stsem_obj->getAll(); diff --git a/wawi/bestellung.php b/wawi/bestellung.php index 6544af6a9..f5d7c0980 100644 --- a/wawi/bestellung.php +++ b/wawi/bestellung.php @@ -1,2725 +1,2725 @@ -, - * Andreas Oesterreicher and - * Karl Burkhart . - */ -require_once '../config/wawi.config.inc.php'; -require_once('auth.php'); - -require_once '../include/firma.class.php'; -require_once '../include/organisationseinheit.class.php'; -require_once '../include/mitarbeiter.class.php'; -require_once '../include/datum.class.php'; -require_once '../include/benutzerberechtigung.class.php'; -require_once '../include/standort.class.php'; -require_once '../include/adresse.class.php'; -require_once '../include/studiengang.class.php'; -require_once '../include/mail.class.php'; -require_once '../include/geschaeftsjahr.class.php'; -require_once '../include/wawi_konto.class.php'; -require_once '../include/wawi_bestellung.class.php'; -require_once '../include/wawi_kostenstelle.class.php'; -require_once '../include/wawi_bestelldetail.class.php'; -require_once '../include/wawi_aufteilung.class.php'; -require_once '../include/wawi_bestellstatus.class.php'; -require_once '../include/wawi_zahlungstyp.class.php'; -require_once '../include/tags.class.php'; -require_once '../include/projekt.class.php'; - -$aktion =''; -$test = 0; // Bestelldetail Anzahl -$date = new datum(); -$user=get_uid(); -$ausgabemsg=''; - -$berechtigung_kurzbz='wawi/bestellung'; -$rechte = new benutzerberechtigung(); -$rechte->getBerechtigungen($user); -$kst=new wawi_kostenstelle(); -$kst->loadArray($rechte->getKostenstelle($berechtigung_kurzbz),'bezeichnung'); - -$projekt = new projekt(); -$projekt->getProjekteMitarbeiter($user); -$projektZugeordnet = false; - -// Abfrage ob dem user ein oder mehrere Projekte zugeordnet sind -if(count($projekt->result) > 0) - $projektZugeordnet = true; - -if(isset($_POST['getKonto'])) -{ - $id = $_POST['id']; - if(is_numeric($id)) - { - $konto = new wawi_konto(); - $konto->getKontoFromKostenstelle($id); - if(count($konto->result)>0) - { - foreach($konto->result as $ko) - { - echo '\n"; - } - } - else - echo ""; - } - else - echo ""; - exit; -} - -if(isset($_POST['getFirma'])) -{ - $id = $_POST['id']; - if(isset($_POST['id'])) - { - if($_POST['id'] == 'opt_auswahl') - { - echo "\n"; - } - else - { - // anzeige der Firmen die oe zugeordnet sind - $firma = new firma(); - $firma->get_firmaorganisationseinheit(null,$id); - if(count($firma->result)>0) - { - echo "\n"; - foreach($firma->result as $fi) - { - echo '\n"; - } - } - else - echo ""; - } - } - else - echo ""; - exit; -} - -if(isset($_POST['getSearchKonto'])) -{ - $id = $_POST['id']; - if(isset($_POST['id'])) - { - if($_POST['id'] == 'opt_auswahl') - { - $konto = new wawi_konto(); - $konto->getAll(); - // anzeige aller Konten - echo "\n"; - foreach($konto->result as $ko) - { - echo '\n"; - } - } - else - { - // anzeige aller Konten die der Kostenstelle zugeordnet sind - $konto = new wawi_konto(); - $konto->getKontoFromOE($id); - if(count($konto->result)>0) - { - echo "\n"; - foreach($konto->result as $ko) - { - echo '\n"; - } - } - else - echo ""; - } - } - else - echo ""; - exit; -} - -if(isset($_POST['getDetailRow']) && isset($_POST['id'])) -{ - if(is_numeric($_POST['id'])) - { - echo getDetailRow($_POST['id'],'','','','','','','','','',$_POST['bestellung_id'],$_POST['id']); - $test++; - exit; - } - else - { - die('ID ungueltig'); - } -} - -if(isset($_POST['deleteDetail']) && isset($_POST['id'])) -{ - if(is_numeric($_POST['id'])) - { - $detail = new wawi_bestelldetail(); - $bestellung = new wawi_bestellung(); - - if(!$detail->load($_POST['id'])) - die('Eintrag wurde nicht gefunden'); - if(!$bestellung->load($detail->bestellung_id)) - die('Bestellung konnte nicht geladen werden'); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'suid', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung fuer diese Aktion'); - - $detail->delete($_POST['id']); - exit; - } - else - { - die('ID ungueltig'); - } -} - -if(isset($_POST['saveDetail'])) -{ - $bestellung = new wawi_bestellung(); - if(!$bestellung->load($_POST['bestellung'])) - die('Bestellung konnte nicht geladen werden'); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung zum Aendern der Daten'); - - $detail = new wawi_bestelldetail(); - $detail->bestellung_id = $_POST['bestellung']; - $detail->position = $_POST['pos']; - $detail->menge = $_POST['menge']; - $detail->verpackungseinheit = $_POST['ve']; - $detail->beschreibung = $_POST['beschreibung']; - $detail->artikelnummer = $_POST['artikelnr']; - $detail->preisprove = $_POST['preis']; - $detail->mwst = $_POST['mwst']; - if($_POST['sort'] != '') - $detail->sort = $_POST['sort']; - else - $detail->sort = $_POST['pos']; - $detail->insertamum = date('Y-m-d H:i:s'); - $detail->updateamum = date('Y-m-d H:i:s'); - $detail->new = true; - if(!$detail->save()) - echo $detail->errormsg; - echo $detail->bestelldetail_id; - exit; -} - -if(isset($_POST['updateDetail'])) -{ - $bestellung = new wawi_bestellung(); - if(!$bestellung->load($_POST['bestellung'])) - die('Bestellung konnte nicht geladen werden'); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung zum Aendern der Daten'); - - $detail = new wawi_bestelldetail(); - $detail->bestelldetail_id = $_POST['detail_id']; - $detail->bestellung_id = $_POST['bestellung']; - $detail->position = $_POST['pos']; - $detail->menge = $_POST['menge']; - $detail->verpackungseinheit = $_POST['ve']; - $detail->beschreibung = $_POST['beschreibung']; - $detail->artikelnummer = $_POST['artikelnr']; - $detail->preisprove = $_POST['preis']; - $detail->mwst = $_POST['mwst']; - $detail->sort = $_POST['sort']; - $detail->insertamum = date('Y-m-d H:i:s'); - $detail->updateamum = date('Y-m-d H:i:s'); - $detail->erhalten = false; - $detail->text = false; - $detail->new = false; - if(!$detail->save()) - echo $detail->errormsg; - echo $detail->bestelldetail_id; - exit; -} - -if(isset($_POST['deleteBtnGeliefert']) && isset($_POST['id'])) -{ - $bestellung = new wawi_bestellung(); - if(!$bestellung->load($_POST['id'])) - die('Bestellung konnte nicht geladen werden'); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung fuer diese Aktion'); - - $bestellstatus = new wawi_bestellstatus(); - $bestellstatus->bestellung_id = $_POST['id']; - $bestellstatus->bestellstatus_kurzbz = 'Lieferung'; - $bestellstatus->uid = $_POST['user_id']; - $bestellstatus->oe_kurzbz = ''; - $bestellstatus->datum = date('Y-m-d H:i:s'); - $bestellstatus->insertvon = $_POST['user_id']; - $bestellstatus->insertamum = date('Y-m-d H:i:s'); - $bestellstatus->updatevon = $_POST['user_id']; - $bestellstatus->updateamum = date('Y-m-d H:i:s'); - if($bestellstatus->save()) - { - echo $date->formatDatum($bestellstatus->datum, 'd.m.Y'); - sendBestellerMail($bestellung, 'geliefert'); - } - else - echo $bestellstatus->errormsg; - exit; -} - -if(isset($_POST['deleteBtnBestellt']) && isset($_POST['id'])) -{ - $bestellung = new wawi_bestellung(); - if(!$bestellung->load($_POST['id'])) - die('Bestellung konnte nicht geladen werden'); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung fuer diese Aktion'); - - $bestellstatus = new wawi_bestellstatus(); - $bestellstatus->bestellung_id = $_POST['id']; - $bestellstatus->bestellstatus_kurzbz = 'Bestellung'; - $bestellstatus->uid = $_POST['user_id']; - $bestellstatus->oe_kurzbz = ''; - $bestellstatus->datum = date('Y-m-d H:i:s'); - $bestellstatus->insertvon = $_POST['user_id']; - $bestellstatus->insertamum = date('Y-m-d H:i:s'); - $bestellstatus->updatevon = $_POST['user_id']; - $bestellstatus->updateamum = date('Y-m-d H:i:s'); - if($bestellstatus->save()) - { - echo $date->formatDatum($bestellstatus->datum, 'd.m.Y'); - sendBestellerMail($bestellung, 'bestellt'); - } - else - echo $bestellstatus->errormsg; - exit; -} - -if(isset($_POST['deleteBtnStorno']) && isset($_POST['id'])) -{ - $bestellung = new wawi_bestellung(); - if(!$bestellung->load($_POST['id'])) - die('Bestellung konnte nicht geladen werden'); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung fuer diese Aktion'); - - $date = new datum(); - $bestellstatus = new wawi_bestellstatus(); - $bestellstatus->bestellung_id = $_POST['id']; - $bestellstatus->bestellstatus_kurzbz = 'Storno'; - $bestellstatus->uid = $_POST['user_id']; - $bestellstatus->oe_kurzbz = ''; - $bestellstatus->datum = date('Y-m-d H:i:s'); - $bestellstatus->insertvon = $_POST['user_id']; - $bestellstatus->insertamum = date('Y-m-d H:i:s'); - $bestellstatus->updatevon = $_POST['user_id']; - $bestellstatus->updateamum = date('Y-m-d H:i:s'); - if($bestellstatus->save()) - { - echo $date->formatDatum($bestellstatus->datum, 'd.m.Y'); - sendBestellerMail($bestellung, 'storno'); - } - else - echo $bestellstatus->errormsg; - exit; -} -?> - - - - WaWi Bestellung - - - - - - - - - - - - - -isberechtigt('wawi/bestellung',null, 's')) - die('Sie haben keine Berechtigung zum Suchen von Bestellungen'); - - // Suchmaske anzeigen - $konto = new wawi_konto(); - $konto->getAll(); - $konto_all = $konto->result; - $zahlungstyp = new wawi_zahlungstyp(); - $zahlungstyp->getAll(); - - $kostenstelle = new wawi_kostenstelle(); - $oe_berechtigt = new organisationseinheit(); - - $datum = new datum(); - $datum=getdate(); - - if ($datum['mon']<9) - $suchdatum="01.09.".($datum['year']-1); - else - $suchdatum="01.09.".$datum['year']; - - echo "

Bestellung suchen

\n"; - echo "
\n"; - echo ""; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo ""; - echo ""; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - $oe_array = $rechte->getOEkurzbz('wawi/bestellung'); - $oe_berechtigt->loadArray($oe_array,'organisationseinheittyp_kurzbz', false); - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - $kst_array = $rechte->getKostenstelle('wawi/bestellung'); - $kostenstelle->loadArray($kst_array,'bezeichnung'); - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - - echo ""; - -/* echo ""; */ - - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo ""; - echo ""; - echo "\n"; - echo ""; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "
Bestell.- Inventarnummer
Titel
Bestellposition:
Erstelldatumvon bis
Bestelldatumvon bis
Organisationseinheit: \n"; - echo "
Firma: \n"; - echo "\n"; - echo " \n"; - echo "
Kostenstelle: \n"; - echo "
Konto: \n"; - echo "
Zahlungstyp: \n"; - echo "
Tag:
Änderung durch: \n"; - echo " \n"; - echo "
Nur ohne Rechnung
Nur ohne Tags
Nur ohne Freigabe
 
\n"; - echo "
\n"; - } - else - { - // Suchergebnisse anzeigen - if(!$rechte->isberechtigt('wawi/bestellung',null, 's')) - die('Sie haben keine Berechtigung zum Suchen von Bestellungen'); - - $_SESSION['wawi/lastsearch']=$_SERVER['QUERY_STRING']; - - $status = new wawi_bestellstatus(); - $bestellnummer = (isset($_REQUEST['bestellnr'])?$_REQUEST['bestellnr']:''); - $titel = (isset($_REQUEST['titel'])?mb_str_replace("'", "´",$_REQUEST['titel']):''); - $evon = (isset($_REQUEST['evon'])?$_REQUEST['evon']:''); - $ebis = (isset($_REQUEST['ebis'])?$_REQUEST['ebis']:''); - $bvon = (isset($_REQUEST['bvon'])?$_REQUEST['bvon']:''); - $bbis = (isset($_REQUEST['bbis'])?$_REQUEST['bbis']:''); - $tag = (isset($_REQUEST['tag'])?$_REQUEST['tag']:''); - $zahlungstyp = (isset($_REQUEST['filter_zahlungstyp'])?$_REQUEST['filter_zahlungstyp']:''); - $firma_id = (isset($_REQUEST['firma_id'])?$_REQUEST['firma_id']:''); - if(!isset($_REQUEST['filter_oe_kurzbz']) || $_REQUEST['filter_oe_kurzbz'] == 'opt_auswahl') - $oe_kurzbz = ''; - else - $oe_kurzbz = $_REQUEST['filter_oe_kurzbz']; - $filter_kostenstelle = (isset($_REQUEST['filter_kostenstelle'])?$_REQUEST['filter_kostenstelle']:''); - $filter_tag = (isset($_REQUEST['filter_tag'])?$_REQUEST['filter_tag']:''); - $filter_konto = (isset($_REQUEST['filter_konto'])?$_REQUEST['filter_konto']:''); - $mitarbeiter_uid = (isset($_REQUEST['mitarbeiter_uid'])?$_REQUEST['mitarbeiter_uid']:''); - $filter_firma = (isset($_REQUEST['filter_firma'])?$_REQUEST['filter_firma']:''); - $rechnung = (isset ($_REQUEST['rechnung'])?true:false); - $tagsNotExists = (isset ($_REQUEST['tagsvorhanden'])?true:false); - $ohneFreigabe = (isset ($_REQUEST['ohneFreigabe'])?true:false); - - $bestellposition= (isset($_REQUEST['bestellposition'])?mb_str_replace("'", "´", $_REQUEST['bestellposition']):''); - $bestellung = new wawi_bestellung(); - - if($evon != '') - $evon = $date->formatDatum($evon); - if($ebis != '') - $ebis = $date->formatDatum($ebis); - if($bvon != '') - $bvon = $date->formatDatum($bvon); - if($bbis != '') - $bbis = $date->formatDatum($bbis); - - if(($evon || $evon === '') && ($ebis || $ebis === '' ) && ($bvon || $bvon === '') && ($bbis || $bbis === '')) - { - if($bestellnummer=='' && $titel=='' && $evon=='' && $ebis=='' && $bvon=='' && $bbis=='' && $firma_id=='' && $oe_kurzbz=='' && $filter_konto=='' && $mitarbeiter_uid=='' && $filter_firma=='' && $filter_kostenstelle=='' && $tag=='' && $zahlungstyp=='' && $bestellposition=='') - { - echo "Bitte grenzen Sie Ihre Suche weiter ein"; - } - else - { - // Filter firma oder firma id werden angezeigt - if($bestellung->getAllSearch($bestellnummer, $titel, $evon, $ebis, $bvon, $bbis, $firma_id, $oe_kurzbz, $filter_konto, $mitarbeiter_uid, $rechnung, $filter_firma, $filter_kostenstelle, $tag, $zahlungstyp, $tagsNotExists, $bestellposition, $ohneFreigabe)) - { - $brutto = 0; - $gesamtpreis =0; - $firma = new firma(); - $date = new datum(); - - echo "\n"; - echo " - - - - - - - - - - - \n"; - - foreach($bestellung->result as $row) - { - $geliefert = 'nein'; - $brutto = $bestellung->getBrutto($row->bestellung_id); - $gesamtpreis +=$brutto; - if($status->isStatiVorhanden($row->bestellung_id, 'Lieferung')) - $geliefert = 'ja'; - $firmenname = ''; - if(is_numeric($row->firma_id)) - { - $firma->load($row->firma_id); - $firmenname = $firma->name; - } - - // freigegebene oder bestellte Bestellungen können nur vom Zentraleinkauf gelöscht werden - $bestellung_status_help = new wawi_bestellstatus(); - - //Zeilen der Tabelle ausgeben - echo "\n"; - echo ""; - echo '\n"; - echo '\n"; - echo '\n"; - echo '\n"; - echo '\n"; - echo ''; - echo '\n"; - echo '\n"; - echo '\n"; - - echo "\n"; - } - echo "\n"; - echo "
Bestellnr.Bestell_IDFirmaErstellungFreigegebenGeliefertBruttoTitelLetzte Änderung
bestellung_id\" title=\"Bestellung bearbeiten\"> bestellung_id\" onclick='return conf_del()' title='Bestellung löschen' > bestellung_id\" title=\"Neue Rechnung anlegen\"> bestellung_id\" title=\"Bestellung kopieren\"> '.$row->bestell_nr."'.$row->bestellung_id."'.$firmenname."'.$date->formatDatum($row->insertamum, 'd.m.Y')."'.($row->freigegeben?'ja':'nein')."'.$geliefert.''.number_format($brutto, 2, ",",".")."'.$row->titel."'.$date->formatDatum($row->updateamum,'d.m.Y').' '.$row->updatevon ."
Summe:".number_format($gesamtpreis,2, ",",".")." €
\n"; - } - else - echo $bestellung->errormsg; - } - } - else - echo "ungültiges Datumsformat"; - } -} -elseif($aktion == 'new') -{ - // Maske für neue Bestellung anzeigen - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui')) - die('Sie haben keine Berechtigung zum Anlegen von Bestellungen'); - - echo "

Neue Bestellung

"; - echo "
\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "
Titel:"; - echo "
Kostenstelle:
Firma:
Konto: \n"; - echo "\n"; - echo "
 
\n"; - echo "
"; - echo "
Waren im Wert von über € 500,- sind als Investition zu betrachten, darunter als geringwertiges Wirtschaftsgut (GWG). Dienstleistungen, Nahrungsmittel etc. sind Aufwände.
"; - - - echo ' - '; -} -elseif($aktion == 'save') -{ - if(isset($_POST)) - { - // Die Bestellung wird gespeichert und die neue id zurückgegeben - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui')) - die('Sie haben keine Berechtigung fuer diese Aktion'); - - $newBestellung = new wawi_bestellung(); - $newBestellung->titel = mb_str_replace("'", "´", $_POST['titel']); - - if($_POST['filter_kst']=='opt_kostenstelle') - $newBestellung->kostenstelle_id = null; - else - $newBestellung->kostenstelle_id = $_POST['filter_kst']; - - $newBestellung->firma_id = $_POST['firma_id']; - - if($_POST['konto']=='') - $newBestellung->konto_id = null; - else - $newBestellung->konto_id = $_POST['konto']; - - $newBestellung->insertamum = date('Y-m-d H:i:s'); - $newBestellung->insertvon = $user; - $newBestellung->updateamum = date('Y-m-d H:i:s'); - $newBestellung->updatevon = $user; - $newBestellung->besteller_uid = $user; - $newBestellung->new = true; - $newBestellung->freigegeben = false; - // vordefinierte Werte - $newBestellung->zahlungstyp_kurzbz = 'rechnung'; - $newBestellung->lieferadresse = '1'; - $newBestellung->rechnungsadresse = '1'; - $newBestellung->bestell_nr = $newBestellung->createBestellNr($newBestellung->kostenstelle_id); - if (!$bestell_id = $newBestellung->save()) - { - echo $newBestellung->errormsg; - } - else - { - $ausgabemsg.='Bestellung wurde erfolgreich angelegt!
'; - $_GET['method']= 'update'; - $_GET['id'] = $bestell_id; - } - } -} -elseif($_GET['method']=='delete') -{ - // Bestellung löschen - $id = (isset($_GET['id'])?$_GET['id']:null); - $bestellung = new wawi_bestellung(); - $bestellung_status_help = new wawi_bestellstatus(); - $bestellung->load($id); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'suid', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung zum Löschen von Bestellungen'); - - if($bestellung->RechnungVorhanden($id)) - { - echo 'Kann nicht gelöscht werden. Der Bestellung ist eine Rechnung zugeordnet.'; - } - else if(($bestellung_status_help->isStatiVorhanden($id, 'Bestellung') || $bestellung_status_help->isStatiVorhanden($id, 'Freigabe'))&& !$rechte->isBerechtigt('wawi/delete_advanced')) - { - echo 'Bestellte oder Freigegebene Bestellungen können nicht gelöscht werden, wenden Sie sich bitte an den Zentraleinkauf'; - } - else - { - if($bestellung->delete($id)) - echo 'Bestellung erfolgreich gelöscht.
'; - else - echo $bestellung->errormsg; - } -} -elseif($_GET['method']=='deletedetail') -{ - if(!$rechte->isberechtigt('wawi/bestellung',null, 'suid')) - die('Sie haben keine Berechtigung zum Löschen von Bestellungen'); - - // Detail löschen - $id = (isset($_GET['id'])?$_GET['id']:null); - $detail = new wawi_bestelldetail(); - $detail->delete($id); - -} -elseif($_GET['method']=='copy') -{ - $bestellung_id = $_GET['id']; - $bestellung = new wawi_bestellung(); - $bestellung->load($bestellung_id); - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung zum Kopieren dieser Bestellung.'); - - if ($bestellung_neu = $bestellung->copyBestellung($bestellung_id, $user)) - { - $_GET['method']='update'; - $_GET['id']=$bestellung_neu; - $ausgabemsg.='Bestellung wurde erfolgreich kopiert.
'; - } - -} -if($_GET['method']=='update') -{ - echo ' '; - - // Bestellung Editieren - if(isset($_GET['bestellung'])) - { - // Update auf Bestellung - $date = new datum(); - $error = false; - $save = false; - $bestellung_id = $_GET['bestellung']; - $bestellung_old = new wawi_bestellung(); - $bestellung_old->load($bestellung_id); - $bestellung_new = new wawi_bestellung(); - $bestellung_new->load($bestellung_id); - $bestellung_new_brutto = $bestellung_new->getBrutto($bestellung_id); - $status = new wawi_bestellstatus(); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui',$bestellung_old->kostenstelle_id) - && !$rechte->isberechtigt('wawi/freigabe',null, 's',$bestellung_old->kostenstelle_id) - && !$rechte->isberechtigt('wawi/freigabe_advanced')) - die('Sie haben keine Berechtigung fuer diese Bestellung'); - - // speichern - if(isset($_POST['btn_abschicken']) || isset($_POST['btn_submit'])) - { - // überprüfen wenn js fehlschlägt, nicht speichern - if(isset($_POST['filter_kst']) || isset($_POST['titel'])) - { - - $aufteilung_anzahl = $_POST['anz_aufteilung']; - $bestellung_detail_anz = $_POST['detail_anz']; - - $bestellung_new->new = false; - $bestellung_new->besteller_uid=$_POST['besteller_uid']; - if(is_numeric($_POST['filter_konto'])) - $bestellung_new->konto_id = $_POST['filter_konto']; - else - $bestellung_new->konto_id = ''; - $bestellung_new->firma_id = $_POST['firma_id']; - $bestellung_new->lieferadresse = $_POST['filter_lieferadresse']; - $bestellung_new->rechnungsadresse = $_POST['filter_rechnungsadresse']; - $bestellung_new->titel = mb_str_replace("'", "´", $_POST['titel']); - $bestellung_new->bemerkung = mb_str_replace("'", "´",$_POST['bemerkung']); - $bestellung_new->liefertermin = $_POST['liefertermin']; - $bestellung_new->updateamum = date('Y-m-d H:i:s'); - $bestellung_new->updatevon = $user; - $bestellung_new->zahlungstyp_kurzbz = $_POST['filter_zahlungstyp']; - $bestellung_new->kostenstelle_id = $_POST['filter_kst']; - - if(isset($_POST['filter_projekt'])) - { - // Projekt zu Bestellung speichern - $bestellung_new->saveProjektToBestellung($bestellung_new->bestellung_id, $_REQUEST['filter_projekt']); - } - - // wenn sich kostenstelle geändert hat, neue bestellnummer generieren - if($bestellung_new->kostenstelle_id != $bestellung_old->kostenstelle_id && !$status->isStatiVorhanden($bestellung_id, 'Bestellung') ) - { - $bestellung_new->bestell_nr = $bestellung_new->createBestellNr($bestellung_new->kostenstelle_id); - } - - $tags = explode(";", $_POST['tags']); - $help_tags = new tags(); - $help_tags->bestellung_id = $bestellung_id; - $help_tags->deleteBestellungTag($tags); - - foreach ($tags as $bestelltags) - { - $tag_bestellung = new tags(); - $tag_bestellung->tag = trim($bestelltags); - $tag_bestellung->bestellung_id = $bestellung_id; - $tag_bestellung->insertvon = $user; - $tag_bestellung->insertamum = date('Y-m-d H:i:s'); - - if(!$tag_bestellung->TagExists()) - { - $tag_bestellung->saveTag(); - $tag_bestellung->saveBestellungTag(); - } - else - { - if(!$tag_bestellung->BestellungTagExists()) - $tag_bestellung->saveBestellungTag(); - } - } - for($i = 1; $i <= $bestellung_detail_anz; $i++) - { - // wenn ein Detail gelöscht wird Durchlauf überspringen - if(!isset($_POST["bestelldetailid_$i"])) - continue; - // wenn letzte zeile leer ist, nicht speichern - if($i == $bestellung_detail_anz && $_POST["ve_$i"] == '' && $_POST["menge_$i"] =='' && $_POST["beschreibung_$i"]=='' && $_POST["artikelnr_$i"] =='') - continue; - $detail_id = $_POST["bestelldetailid_$i"]; - $bestell_detail = new wawi_bestelldetail(); - - // gibt es ein bestelldetail schon - if($detail_id != '') - { - // Update - $bestell_detail->load($detail_id); - $tags_detail = explode(";", $_POST["detail_tag_$i"]); - $help_detailtags = new tags(); - $help_detailtags->bestelldetail_id = $detail_id; - $help_detailtags->deleteBestelldetailTag($tags_detail); - foreach ($tags_detail as $det) - { - $detail_tag = new tags(); - $detail_tag->tag = trim($det); - $detail_tag->bestelldetail_id = $detail_id; - $detail_tag->insertvon = $user; - $detail_tag->insertamum = date('Y-m-d H:i:s'); - - if(!$detail_tag->TagExists()) - { - $detail_tag->saveTag(); - $detail_tag->saveBestelldetailTag(); - } - else - { - if(!$detail_tag->BestelldetailTagExists()) - $detail_tag->saveBestelldetailTag(); - } - } - $menge = $_POST["menge_$i"]; - if($menge == '') - $menge = '0'; - $bestell_detail->position = $_POST["pos_$i"]; - if($_POST["sort_$i"] !='') - $bestell_detail->sort = $_POST["sort_$i"]; - else - $bestell_detail->sort = $_POST["pos_$i"]; - - $bestell_detail->menge = $menge; - $bestell_detail->verpackungseinheit = $_POST["ve_$i"]; - $bestell_detail->beschreibung = $_POST["beschreibung_$i"]; - $bestell_detail->artikelnummer = $_POST["artikelnr_$i"]; - $bestell_detail->preisprove = mb_str_replace(',', '.', $_POST["preis_$i"]); - $bestell_detail->mwst = mb_str_replace(',', '.', $_POST["mwst_$i"]); - $bestell_detail->updateamum = date('Y-m-d H:i:s'); - $bestell_detail->updatevon = $user; - $bestell_detail->new = false; - } - else - { - // Insert - $menge = $_POST["menge_$i"]; - if($menge == '') - $menge = '0'; - - $bestell_detail->mwst = ($_POST["mwst_$i"]=='')?0:mb_str_replace(',', '.', $_POST["mwst_$i"]); - $bestell_detail->bestellung_id = $_GET['bestellung']; - $bestell_detail->position = $_POST["pos_$i"]; - $bestell_detail->menge = $menge; - $bestell_detail->verpackungseinheit = $_POST["ve_$i"]; - $bestell_detail->beschreibung = $_POST["beschreibung_$i"]; - $bestell_detail->artikelnummer = $_POST["artikelnr_$i"]; - $bestell_detail->preisprove =mb_str_replace(',', '.', $_POST["preis_$i"]); - if($bestell_detail->preisprove == '') - $bestell_detail->preisprove=0; - if($_POST["sort_$i"] != '') - $bestell_detail->sort = $_POST["sort_$i"]; - else - $bestell_detail->sort = $_POST["pos_$i"]; - - $bestell_detail->insertamum = date('Y-m-d H:i:s'); - $bestell_detail->insertvon = $user; - $bestell_detail->updateamum = date('Y-m-d H:i:s'); - $bestell_detail->updatevon = $user; - $bestell_detail->new = true; - } - if(!$bestell_detail->save()) - { - echo ''.$bestell_detail->errormsg.''; - $error = true; - } - } - - for($i=0; $i<$aufteilung_anzahl; $i++) - { - $aufteilung = new wawi_aufteilung(); - $aufteilung->bestellung_id = $bestellung_id; - $aufteilung->oe_kurzbz = $_POST['oe_kurzbz_'.$i]; - $aufteilung->anteil = $_POST['aufteilung_'.$i]; - if($aufteilung->AufteilungExists()) - { - // Update - $aufteilung->updateamum = date('Y-m-d H:i:s'); - $aufteilung->updatevon = $user; - $aufteilung->new = false; - } - else - { - // Insert - $aufteilung->updateamum = date('Y-m-d H:i:s'); - $aufteilung->updatevon = $user; - $aufteilung->insertamum = date('Y-m-d H:i:s'); - $aufteilung->insertvon = $user; - $aufteilung->new = true; - } - $aufteilung->saveAufteilung(); - } - if($error == false) - if($bestellung_new->save()) - { - $ausgabemsg.='Bestellung wurde erfolgreich gespeichert!
'; - $save = true; - } - } - } - // Bestellung freigeben wird in gang gesetzt --> durch Abschick Button - if(isset($_POST['btn_abschicken']) ) - { - // wenn status Storno vorhanden ist kann nicht mehr freigegeben werden - if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno')) - { - echo 'Keine Freigabe mehr möglich, da Storniert wurde.
'; - } - else - { - $status_abgeschickt = new wawi_bestellstatus(); - if(!$status_abgeschickt->isStatiVorhanden($bestellung_id, 'Abgeschickt')) - { - $bestellung_new->load($bestellung_id); - - $status_abgeschickt->bestellung_id = $bestellung_id; ; - $status_abgeschickt->bestellstatus_kurzbz ='Abgeschickt'; - $status_abgeschickt->uid = $user; - $status_abgeschickt->oe_kurzbz = ''; - $status_abgeschickt->datum = date('Y-m-d H:i:s'); - $status_abgeschickt->insertvon = $user; - $status_abgeschickt->insertamum = date('Y-m-d H:i:s'); - $status_abgeschickt->updatevon = $user; - $status_abgeschickt->updateamum = date('Y-m-d H:i:s'); - if(!$status_abgeschickt->save()) - echo "Fehler beim Setzen auf Status Abgeschickt."; - - // wer ist freigabeberechtigt auf kostenstelle - $rechte_fg = new benutzerberechtigung(); - $uids = $rechte_fg->getFreigabeBenutzer($bestellung_new->kostenstelle_id, null); - if(empty($uids)) - $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; - else - $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); - } - } - } - // Kostenstelle hat freigegeben - if(isset($_POST['btn_freigabe']) || isset($_POST['btn_freigabe_kst']) ) - { - if(!$rechte->isBerechtigt('wawi/freigabe',null, 'suid', $bestellung_new->kostenstelle_id) - && !$rechte->isBerechtigt('wawi/freigabe_advanced')) - die('Sie haben keine Berechtigung zum Freigeben der Bestellung'); - - if(isset($_POST['btn_freigabe_kst'])) - { - // wenn status Storno vorhanden, soll nicht mehr freigegeben werden. - if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno')) - { - $ausgabemsg.= 'Keine Freigabe mehr möglich, da Storniert wurde.
'; - } - else - { - // Freigabestatus für Kostenstelle - $bestellung_new->load($bestellung_id); - $status = new wawi_bestellstatus(); - $status->bestellung_id = $bestellung_new->bestellung_id; - $status->bestellstatus_kurzbz = 'Freigabe'; - $status->uid = $user; - $status->oe_kurzbz = ''; - $status->datum = date('Y-m-d H:i:s'); - $status->insertvon = $user; - $status->insertamum = date('Y-m-d H:i:s'); - $status->updateamum = date('Y-m-d H:i:s'); - $status->updatevon = $user; - - if(!$status->save()) - { - $ausgabemsg.= 'Fehler beim Setzen auf Status Freigabe.
'; - } - else - { - $ausgabemsg.= 'Bestellung wurde erfolgreich freigegeben
'; - - // wer ist freigabeberechtigt auf nächsthöhere Organisationseinheit - $oes = array(); - $oes = $bestellung_new->FreigabeOe($bestellung_id); - $freigabe= false; - foreach($oes as $o) - { - if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe', $o)) - { - $rechte_fg = new benutzerberechtigung(); - $uids = $rechte_fg->getFreigabeBenutzer(null, $o); - if(empty($uids)) - $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; - else - $freigabe = true; - break; - } - } - if(!$freigabe == false) - { - $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); - } - else - { - //Bestellung komplett freigegeben - //Freigabe setzen und Info an Zentraleinkauf schicken - if(!$bestellung_new->isFreigegeben($bestellung_new->bestellung_id)) - $bestellung_new->SetFreigegeben($bestellung_new->bestellung_id); - - sendZentraleinkaufFreigegeben($bestellung_new); - sendBestellerMail($bestellung_new, 'freigabe'); - } - } - } - } - else - { - // OE hat freigegeben - // wenn status Storno vorhanden, soll nicht mehr freigegeben werden. - if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno')) - { - $ausgabemsg.='Keine Freigabe mehr möglich, da Storniert wurde.
'; - } - else - { - // Freigabestatus für Kostenstelle - $bestellung_new->load($bestellung_id); - $status = new wawi_bestellstatus(); - $status->bestellung_id = $bestellung_new->bestellung_id; - $status->bestellstatus_kurzbz = 'Freigabe'; - $status->uid = $user; - $status->oe_kurzbz = $_POST['freigabe_oe']; - $status->datum = date('Y-m-d H:i:s'); - $status->insertvon = $user; - $status->insertamum = date('Y-m-d H:i:s'); - $status->updateamum = date('Y-m-d H:i:s'); - $status->updatevon = $user; - - if(!$status->save()) - { - $ausgabemsg.= 'Fehler beim Setzen auf Status Freigabe.
'; - } - else - { - $ausgabemsg.= 'Bestellung wurde erfolgreich freigegeben
'; - - // wer ist freigabeberechtigt auf nächsthöhere Organisationseinheit - $oes = array(); - $oes = $bestellung_new->FreigabeOe($bestellung_id); - $freigabe = false; - foreach($oes as $o) - { - if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe', $o)) - { - $rechte_fg = new benutzerberechtigung(); - $uids = $rechte_fg->getFreigabeBenutzer(null, $o); - if(empty($uids)) - $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt. Bitte wenden Sie sich an den Support.
'; - else - $freigabe = true; - break; - } - } - if(!$freigabe == false) - { - // es wurde noch nicht alles Freigegeben - $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); - } - else - { - //Bestellung komplett freigegeben - //Freigabe setzen und Info an Zentraleinkauf schicken - if(!$bestellung_new->isFreigegeben($bestellung_new->bestellung_id)) - $bestellung_new->SetFreigegeben($bestellung_new->bestellung_id); - - sendZentraleinkaufFreigegeben($bestellung_new); - sendBestellerMail($bestellung_new, 'freigabe'); - } - } - } - } - } - - // es soll die freigabenachricht erneut versendet werden, an dem der zum freigeben drann ist - if(isset($_POST['btn_erneut_abschicken'])) - { - if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe')) - { - // KST hat noch nicht freigegeben - $rechte_fg = new benutzerberechtigung(); - $uids = $rechte_fg->getFreigabeBenutzer($bestellung_new->kostenstelle_id, null); - if(empty($uids)) - $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; - else - $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); - } - else - { - $bestellung_new->load($bestellung_id); - - // wer ist freigabeberechtigt auf nächsthöhere Organisationseinheit - $oes = array(); - $oes = $bestellung_new->FreigabeOe($bestellung_id); - $freigabe= false; - foreach($oes as $o) - { - if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe', $o)) - { - $rechte_fg = new benutzerberechtigung(); - $uids = $rechte_fg->getFreigabeBenutzer(null, $o); - if(empty($uids)) - $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; - else - $freigabe = true; - break; - } - } - if(!$freigabe == false) - { - $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); - // fehlermeldung wenn kein uid gefunden - } - else - { - $ausgabemsg.= 'Die Bestellung wurde komplett freigegeben
'; - } - - } - - } - $_GET['method']='update'; - $_GET['id']=$bestellung_new->bestellung_id; - } - - // Bestellung Editieren - $id = (isset($_GET['id'])?$_GET['id']:null); - - $bestellung = new wawi_bestellung(); - if(!$bestellung->load($id)) - die("Bestellung ist nicht vorhanden."); - - if(!$rechte->isberechtigt('wawi/bestellung',null, 's',$bestellung->kostenstelle_id) - && !$rechte->isberechtigt('wawi/freigabe',null, 's',$bestellung->kostenstelle_id)) - die('Sie haben keine Berechtigung fuer diese Bestellung Zurück'); - - //Session setzen damit von der Firmenanlage wieder zurueckgesprungen werden kann - $_SESSION['wawi/last_bestellung_id']=$id; - - $detail = new wawi_bestelldetail(); - $detail->getAllDetailsFromBestellung($id); - $anz_detail = count($detail->result); - $konto = new wawi_konto(); - $konto->getKontoFromKostenstelle($bestellung->kostenstelle_id); - $konto_bestellung = new wawi_konto(); - $konto_bestellung->load($bestellung->konto_id); - $kostenstelle = new wawi_kostenstelle(); - $kostenstelle->load($bestellung->kostenstelle_id); - $aufteilung = new wawi_aufteilung(); - - // Bei neuer Bestellung Default Aufteilung holen ansonsten von bestehender bestellung - if(isset($_GET['new'])) - $aufteilung->getAufteilungFromKostenstelle($bestellung->kostenstelle_id); - else - $aufteilung->getAufteilungFromBestellung($bestellung->bestellung_id); - - $firma = new firma(); - $firma->load($bestellung->firma_id); - $allStandorte = new standort(); - $allStandorte->getStandorteWithTyp('Intern'); - $status= new wawi_bestellstatus(); - $bestell_tag = new tags(); - $studiengang = new studiengang(); - $studiengang->getAll('typ, kurzbz', null); - - //budget berechnung - $geschaeftsjahr = new geschaeftsjahr(); - $gJahr = $geschaeftsjahr->getSpecific($bestellung->insertamum); - $budget = $kostenstelle->getBudget($bestellung->kostenstelle_id,$gJahr); - $spentBudget = $bestellung->getSpentBudget($bestellung->kostenstelle_id, $gJahr); - $restBudget = $budget - $spentBudget; - $summe= 0; - $konto_vorhanden = false; - $kst_vorhanden =false; - $alert =''; - $besteller = new benutzer(); - $besteller->load($bestellung->besteller_uid); - $besteller_vorname=$besteller->vorname; - $besteller_nachname=$besteller->nachname; - - - - if($restBudget < 0 && $budget != 0) - $ausgabemsg.='Ihr aktuelles Budget ist bereits überzogen.'; - - //Meldungen Ausgeben - echo '
',$ausgabemsg,'
'; - - echo "

Bearbeiten

"; - - echo "
bestellung_id\" method='post' name='editForm' id='editForm' onSubmit='document.getElementById(\"filter_kst\").disabled=false;'>\n"; - echo "

Bestellnummer: ".$bestellung->bestell_nr; - echo ' '; - echo ' '; - - if($rechte->isBerechtigt('system/developer')) - echo ' '; - - echo '

'; - - //tabelle Bestelldetails - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo ""; - echo "\n"; - echo "\n"; - $disabled = ''; - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung') || $status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') || $status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) - $disabled = 'disabled'; - if($rechte->isberechtigt('wawi/bestellung_advanced',null, 'suid', $bestellung->kostenstelle_id) || ($rechte->isBerechtigt('wawi/freigabe', null, 'suid',$bestellung->kostenstelle_id) && $bestellung->freigegeben)) - $disabled = ''; - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - - echo "\n"; - echo"\n"; - $bestell_tag->GetTagsByBestellung($bestellung->bestellung_id); - $tag_help = $bestell_tag->GetStringTags(); - echo "\n"; - echo "\n"; - echo ""; - echo ""; - echo "\n"; - echo "\n"; - - $restBudget = sprintf('%01.2f',$restBudget); - echo ""; - echo "
Titel: Erstellt am:".$date->formatDatum($bestellung->insertamum, 'd.m.Y')."Liefertermin:
Firma: \n"; - echo " Kontaktperson: \n"; - echo " "; - // wenn user projekt zugeordnet ist -> Projekt Drop Down anzeigen - $ProjektUser = new projekt(); - $ProjektUser->getProjektFromBestellung($bestellung->bestellung_id); - $Bestellung_Projekt = false; // Projekt DropDown aus allen Projekten von eingeloggten User und dem der Bestellung -> true wenn Projekt aus Bestellung in User Projekten enthalten ist - if($projektZugeordnet == true) - { - echo " Projekt:"; - echo " "; - } - - echo "
Kostenstelle:Lieferadresse:
Konto: Rechnungsadresse:
Bemerkungen: Status:\n"; - echo ""; - - $new = 0; - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung')) - { - $status_help = new wawi_bestellstatus(); - $status_help->getStatiFromBestellung('Bestellung', $bestellung->bestellung_id); - echo ' Bestellt am: '.$date->formatDatum($status->datum,'d.m.Y').''; - $new++; - } - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Lieferung') ) - { - $status_help = new wawi_bestellstatus(); - $status_help->getStatiFromBestellung('Lieferung', $bestellung->bestellung_id); - echo " insertvon>Geliefert am: ".$date->formatDatum($status->datum, 'd.m.Y').""; - $new++; - } - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') ) - { - echo " Storniert am: ".$date->formatDatum($status->datum, 'd.m.Y').""; - $new++; - } - if($new == 0) - { - echo "Erstellt am: ".$date->formatDatum($bestellung->insertamum, 'd.m.Y').""; - } - echo ""; - echo "\n"; - - $disabled=''; - if(($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung') - ||$status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') - || $rechte->isBerechtigt('wawi/bestellung_advanced',null,'suid') == false)) - { - $disabled ='disabled'; - } - - echo ""; - - $disabled=''; - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Lieferung') - ||$status->isStatiVorhanden($bestellung->bestellung_id, 'Storno')) - { - $disabled ='disabled'; - } - echo ""; - - $disabled = ''; - - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung') - || $status->isStatiVorhanden($bestellung->bestellung_id, 'Storno')) - { - $disabled ='disabled'; - } - if($rechte->isberechtigt('wawi/storno',null, 'suid', $bestellung->kostenstelle_id)) - { - echo ""; - } - - echo"
Tags:\n"; - - echo ""; - -/* echo ' '; */ - echo "Freigabe:"; - - if(!$status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt') && !$bestellung->freigegeben) - { - echo "Bitte Abschicken zur Freigabe."; - } - - $freigabebutton = true; - // Freigabe Buttons fuer Kostenstelle Anzeigen - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Freigabe')) - { - echo "KST:".$date->formatDatum($status->datum,'d.m.Y')." "; - } - else - { - $disabled = 'disabled'; - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) - { - if($rechte->isberechtigt('wawi/freigabe',null, 'su', $bestellung->kostenstelle_id) - || $rechte->isBerechtigt('wawi/freigabe_advanced')) - { - $disabled = ''; - $freigabebutton=false; - } - - echo ""; - } - } - - // Freigabe Buttons fuer Organisationseinheiten anzeigen - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) - { - $oes = array(); - $oes = $bestellung->FreigabeOe($bestellung->bestellung_id); - $freigabe = false; - foreach($oes as $o) - { - if(!$status->isStatiVorhanden($bestellung->bestellung_id, 'Freigabe', $o)) - { - if($freigabebutton===true && ($rechte->isberechtigt('wawi/freigabe',$o, 'su', null) - || $rechte->isBerechtigt('wawi/freigabe_advanced'))) - { - echo ""; - echo ""; - $freigabebutton=false; - } - else - { - echo ""; - } - $freigabe = true; - } - else - { - echo "".$o.":".$date->formatDatum($status->datum,'d.m.Y')." "; - } - } - /*if($freigabe == false) - { - if(!$bestellung->isFreigegeben($bestellung->bestellung_id)) - $bestellung->SetFreigegeben($bestellung->bestellung_id); - }*/ - } - - echo "
Zahlungstyp:Rest-Budget:$restBudget
\n"; - echo "
"; - //tabelle Details - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - // echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo ""; - echo "\n"; - echo ""; - $i= 1; - foreach($detail->result as $det) - { - - $brutto=($det->menge * ($det->preisprove +($det->preisprove * ($det->mwst/100)))); - $brutto = floor( $brutto * 1000) / 1000; - getDetailRow($i, $det->bestelldetail_id, $det->sort, $det->menge, $det->verpackungseinheit, $det->beschreibung, $det->artikelnummer, $det->preisprove, $det->mwst, sprintf("%01.2f",$brutto), $bestellung->bestellung_id, $det->position); - $summe+=$brutto; - $i++; - } - if(!$bestellung->freigegeben) - getDetailRow($i,null,$i,null,null,null,null,null,null,null,$bestellung->bestellung_id,$i); - - $test = $i; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo""; - echo ""; - echo ""; - echo "
PosSortMengeVEBezeichnungArtikelnr.Preis/VEUSt BruttoTags
"; - - // neue Zeile hinzufügen nur mit Berechtigung - if($rechte->isberechtigt('wawi/bestellung_advanced',null, 'suid', $bestellung->kostenstelle_id)) - echo ""; - echo "Gesamtpreis Netto:
Gesamtpreis Brutto:
\n"; - echo "

\n"; - echo ' - '; - - $disabled=''; - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') || $status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt') || ($bestellung->freigegeben)) - $disabled='disabled'; - - $aktBrutto = $bestellung->getBrutto($bestellung->bestellung_id); - if($aktBrutto =='') - $aktBrutto ="0"; - echo ''; - echo ""; - echo ""; - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt') && !$bestellung->freigegeben) - echo ""; - echo"
"; - echo ""; - echo "

"; - if($disabled!='') - { - //Wenn die Advanced Berechtigung vorhanden ist, werden die Felder nicht gesperrt oder derjenige hat berechtigungen auf die kst oder oe und die bestellung ist noch nicht freigegeben - if(!($rechte->isBerechtigt('wawi/bestellung_advanced',null, 'suid') - || ($rechte->isBerechtigt('wawi/freigabe',null,'suid',$bestellung->kostenstelle_id)) && !$bestellung->freigegeben)) - { - // Felder Sperren - echo ''; - } - } - if(isset($_SESSION['wawi/lastsearch'])) - echo '

'; - - if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) - echo "Bestellung wurde am ".$date->formatDatum($status->datum,'d.m.Y')." zur Freigabe abgeschickt."; - - if($bestellung->isFreigegeben($bestellung->bestellung_id)) - echo "

Die Bestellung wurde vollständig freigegeben

"; - - // div Aufteilung --> kann ein und ausgeblendet werden - echo "
"; - echo "Aufteilung anzeigen / ausblenden\n"; - echo "
"; - echo "
\n"; - echo ""; - echo "\n"; - $help = 0; - $anteil = 0; - $summe = 0; - // alle studiengänge, auch inaktive - foreach($studiengang->result as $stud) - { - $vorhanden = false; - if($stud->studiengang_kz < 10000) - { - if($help%6 == 0) - { - echo""; - } - foreach($aufteilung->result as $auf) - { - // wenn in aufteilung vorhanden - if(mb_strtoupper($auf->oe_kurzbz) == mb_strtoupper($stud->oe_kurzbz)) - { - $anteil = $auf->anteil; - $vorhanden = true; - } - } - if($stud->aktiv || $vorhanden) - { - $summe += $anteil; - echo "\n"; - $help++; - $anteil = 0; - } - } - } - echo ""; - echo "\n"; - echo ' - - - - - - - - - - - '; - echo ""; - echo ""; - echo "
".mb_strtoupper($stud->oe_kurzbz).": %
Summe:%
"; - echo "
"; - echo "

"; - - echo ' - '; -} - -// ****** FUNKTIONEN ******* // - -/** - * Gibt eine Bestelldetail Zeile aus - */ -function getDetailRow($i, $bestelldetail_id='', $sort='', $menge='', $ve='', $beschreibung='', $artikelnr='', $preisprove='', $mwst='', $brutto='', $bestell_id='', $pos='') -{ - $removeDetail =''; - $checkSave = "checkSave(".$i.");"; - $checkRow = ''; - $replaceKomma = "replaceKomma(".$i.");"; - $user=get_uid(); - $status= new wawi_bestellstatus(); - $rechte = new benutzerberechtigung(); - $rechte->getBerechtigungen($user); - $bestellung = new wawi_bestellung(); - $bestellung->load($bestell_id); - // wenn status Storno oder Abgeschickt, kein löschen der Details mehr möglich - if(!$status->isStatiVorhanden($bestell_id,'Storno')) - { - if(!$status->isStatiVorhanden($bestell_id,'Abgeschickt')) - { - $removeDetail = "removeDetail(".$i.");"; - $checkRow = "setTimeout(\"checkNewRow(".$i.",".$bestell_id.")\",100);"; - } - - if($status->isStatiVorhanden($bestell_id,'Abgeschickt') && ($rechte->isBerechtigt('wawi/bestellung_advanced') || ($rechte->isBerechtigt('wawi/freigabe', null,'suid',$bestellung->kostenstelle_id) && !$bestellung->freigegeben))) - $removeDetail = "removeDetail(".$i.");"; - } - - if($sort == '') - $sort = $i; - $mwst = str_replace('.', ',', $mwst); - - echo "\n"; - echo " \n"; - echo "\n"; - echo " \n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - $detail_tag = new tags(); - $detail_tag->GetTagsByBestelldetail($bestelldetail_id); - $help = $detail_tag->GetStringTags(); - - echo ""; - -/* echo " "; */ - - echo ""; - echo ""; - echo "\n"; - echo "\n"; - echo "\n"; - -} - -/** - * Sendet ein FreigabeMail fuer einen Bestellung - * - * @param uids Array mit UIDs an die das Freigabemail gesendet werden soll - * @param bestellung Bestellung Object mit der Bestellung die freigegeben werden soll - */ -function sendFreigabeMails($uids, $bestellung, $user) -{ - global $date; - $tags = new tags(); - $tags->GetTagsByBestellung($bestellung->bestellung_id); - $tagsAusgabe=''; - foreach($tags->result as $res) - { - if($tagsAusgabe!='') - $tagsAusgabe.=', '; - - $tagsAusgabe.=$res->tag; - } - $msg = ''; - - $kst_mail = new wawi_kostenstelle(); - $kst_mail->load($bestellung->kostenstelle_id); - $firma_mail = new firma(); - $firma_mail->load($bestellung->firma_id); - $konto_mail = new wawi_konto(); - $konto_mail->load($bestellung->konto_id); - $besteller = new benutzer(); - $besteller->load($bestellung->besteller_uid); - - // E-Mail an Kostenstellenverantwortliche senden - $email= "Dies ist eine automatisch generierte E-Mail.

"; - $email.="Es wurde eine neue Bestellung auf Kostenstelle '".$kst_mail->bezeichnung."' erstellt bzw. eine bestehende geändert. Bitte geben Sie die Bestellung frei.
"; - $email.="Bestellnummer: ".$bestellung->bestell_nr."
"; - $email.="Titel: ".$bestellung->titel."
"; - $email.="Firma: ".$firma_mail->name."
"; - $email.="Kontaktperson: ".$besteller->titelpre.' '.$besteller->vorname.' '.$besteller->nachname.' '.$besteller->titelpost."
"; - $email.="Erstellt am: ".$date->formatDatum($bestellung->insertamum,'d.m.Y')."
"; - $email.="Kostenstelle: ".$kst_mail->bezeichnung."
Konto: ".$konto_mail->kurzbz."
"; - $email.="Tags: ".$tagsAusgabe."
"; - - $email.="Link: zur Bestellung "; - - foreach($uids as $uid) - { - $mail = new mail($uid.'@'.DOMAIN, $user, 'Freigabe Bestellung '.$bestellung->bestell_nr, 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'); - $mail->setHTMLContent($email); - if(!$mail->send()) - $msg.= 'Fehler beim Senden des Mails
'; - else - $msg.= ' Mail verschickt an '.$uid.'@'.DOMAIN.'!
'; - } - return $msg; -} - -/** - * E-Mail Benachrichtigung ueber vollstaendige Freigabe der Bestellung an - * den Zentraleinkauf senden - * @param $bestellung Bestellung Object der freigegebenen Bestellung - */ -function sendZentraleinkaufFreigegeben($bestellung) -{ - global $date; - $tags = new tags(); - $tags->GetTagsByBestellung($bestellung->bestellung_id); - $tagsAusgabe=''; - foreach($tags->result as $res) - { - if($tagsAusgabe!='') - $tagsAusgabe.=', '; - - $tagsAusgabe.=$res->tag; - } - $msg = ''; - - $kst_mail = new wawi_kostenstelle(); - $kst_mail->load($bestellung->kostenstelle_id); - $firma_mail = new firma(); - $firma_mail->load($bestellung->firma_id); - $konto_mail = new wawi_konto(); - $konto_mail->load($bestellung->konto_id); - $besteller = new benutzer(); - $besteller->load($bestellung->besteller_uid); - - // E-Mail an Kostenstellenverantwortliche senden - $email= "Dies ist eine automatisch generierte E-Mail.

"; - $email.= "Die folgende Bestellung wurde freigegeben und kann bestellt werden:
"; - $email.="Kostenstelle: ".$kst_mail->bezeichnung."
"; - $email.="Bestellnummer: ".$bestellung->bestell_nr."
"; - $email.="Titel: ".$bestellung->titel."
"; - $email.="Firma: ".$firma_mail->name."
"; - $email.="Kontaktperson: ".$besteller->titelpre.' '.$besteller->vorname.' '.$besteller->nachname.' '.$besteller->titelpost."
"; - $email.="Erstellt am: ".$date->formatDatum($bestellung->insertamum,'d.m.Y')."
"; - $email.="Konto: ".$konto_mail->kurzbz."
"; - $email.="Tags: ".$tagsAusgabe."
"; - - $email.="Link: zur Bestellung "; - - $mail = new mail(MAIL_ZENTRALEINKAUF, 'no-reply', 'Freigabe Bestellung', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'); - $mail->setHTMLContent($email); - if(!$mail->send()) - $msg.= 'Fehler beim Senden des Mails
'; - else - $msg.= ' Mail verschickt an '.MAIL_ZENTRALEINKAUF.'!
'; - - return $msg; -} - -/** - * Schickt ein Status-Mail an die Kontaktperson der Bestellung - * - * @param $bestellung Bestellung Object der Bestellung - * @param $status Art der Statusaenderung (bestellt|geliefert|freigabe|storno) - */ -function sendBestellerMail($bestellung, $status) -{ - global $date; - $tags = new tags(); - $tags->GetTagsByBestellung($bestellung->bestellung_id); - $tagsAusgabe=''; - foreach($tags->result as $res) - { - if($tagsAusgabe!='') - $tagsAusgabe.=', '; - - $tagsAusgabe.=$res->tag; - } - $msg = ''; - - $kst_mail = new wawi_kostenstelle(); - $kst_mail->load($bestellung->kostenstelle_id); - $firma_mail = new firma(); - $firma_mail->load($bestellung->firma_id); - $konto_mail = new wawi_konto(); - $konto_mail->load($bestellung->konto_id); - - // E-Mail an Kostenstellenverantwortliche senden - $email= "Dies ist eine automatisch generierte E-Mail.

"; - - switch($status) - { - case 'bestellt': $email.=" Ihre Bestellung wurde bestellt"; break; - case 'geliefert': $email.=" Ihre Bestellung wurde geliefert
Hinweis: Nach erfolgter Lieferung werden Waren ab einem Wert von EUR 400,-- pro Einzelposition inventarisiert.
"; break; - case 'freigabe': $email.=" Ihre Bestellung wurde freigegeben"; break; - case 'storno': $email.=" Ihre Bestellung wurde storniert"; break; - } - - $email.="
"; - $email.="Kostenstelle: ".$kst_mail->bezeichnung."
"; - $email.="Bestellnummer: ".$bestellung->bestell_nr."
"; - $email.="Titel: ".$bestellung->titel."
"; - $email.="Firma: ".$firma_mail->name."
"; - $email.="Erstellt am: ".$date->formatDatum($bestellung->insertamum,'d.m.Y')."
"; - $email.="Kostenstelle: ".$kst_mail->bezeichnung."
Konto: ".$konto_mail->kurzbz."
"; - $email.="Tags: ".$tagsAusgabe."
"; - - $email.="Link: zur Bestellung "; - - $mail = new mail($bestellung->besteller_uid.'@'.DOMAIN, 'no-reply', 'Bestellung '.$bestellung->bestell_nr, 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'); - $mail->setHTMLContent($email); - if(!$mail->send()) - $msg.= 'Fehler beim Senden des Mails
'; - else - $msg.= ' Mail verschickt an '.$bestellung->besteller_uid.'@'.DOMAIN.'!
'; - - return $msg; -} -?> - - +, + * Andreas Oesterreicher and + * Karl Burkhart . + */ +require_once '../config/wawi.config.inc.php'; +require_once('auth.php'); + +require_once '../include/firma.class.php'; +require_once '../include/organisationseinheit.class.php'; +require_once '../include/mitarbeiter.class.php'; +require_once '../include/datum.class.php'; +require_once '../include/benutzerberechtigung.class.php'; +require_once '../include/standort.class.php'; +require_once '../include/adresse.class.php'; +require_once '../include/studiengang.class.php'; +require_once '../include/mail.class.php'; +require_once '../include/geschaeftsjahr.class.php'; +require_once '../include/wawi_konto.class.php'; +require_once '../include/wawi_bestellung.class.php'; +require_once '../include/wawi_kostenstelle.class.php'; +require_once '../include/wawi_bestelldetail.class.php'; +require_once '../include/wawi_aufteilung.class.php'; +require_once '../include/wawi_bestellstatus.class.php'; +require_once '../include/wawi_zahlungstyp.class.php'; +require_once '../include/tags.class.php'; +require_once '../include/projekt.class.php'; + +$aktion =''; +$test = 0; // Bestelldetail Anzahl +$date = new datum(); +$user=get_uid(); +$ausgabemsg=''; + +$berechtigung_kurzbz='wawi/bestellung'; +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); +$kst=new wawi_kostenstelle(); +$kst->loadArray($rechte->getKostenstelle($berechtigung_kurzbz),'bezeichnung'); + +$projekt = new projekt(); +$projekt->getProjekteMitarbeiter($user); +$projektZugeordnet = false; + +// Abfrage ob dem user ein oder mehrere Projekte zugeordnet sind +if(count($projekt->result) > 0) + $projektZugeordnet = true; + +if(isset($_POST['getKonto'])) +{ + $id = $_POST['id']; + if(is_numeric($id)) + { + $konto = new wawi_konto(); + $konto->getKontoFromKostenstelle($id); + if(count($konto->result)>0) + { + foreach($konto->result as $ko) + { + echo '\n"; + } + } + else + echo ""; + } + else + echo ""; + exit; +} + +if(isset($_POST['getFirma'])) +{ + $id = $_POST['id']; + if(isset($_POST['id'])) + { + if($_POST['id'] == 'opt_auswahl') + { + echo "\n"; + } + else + { + // anzeige der Firmen die oe zugeordnet sind + $firma = new firma(); + $firma->get_firmaorganisationseinheit(null,$id); + if(count($firma->result)>0) + { + echo "\n"; + foreach($firma->result as $fi) + { + echo '\n"; + } + } + else + echo ""; + } + } + else + echo ""; + exit; +} + +if(isset($_POST['getSearchKonto'])) +{ + $id = $_POST['id']; + if(isset($_POST['id'])) + { + if($_POST['id'] == 'opt_auswahl') + { + $konto = new wawi_konto(); + $konto->getAll(); + // anzeige aller Konten + echo "\n"; + foreach($konto->result as $ko) + { + echo '\n"; + } + } + else + { + // anzeige aller Konten die der Kostenstelle zugeordnet sind + $konto = new wawi_konto(); + $konto->getKontoFromOE($id); + if(count($konto->result)>0) + { + echo "\n"; + foreach($konto->result as $ko) + { + echo '\n"; + } + } + else + echo ""; + } + } + else + echo ""; + exit; +} + +if(isset($_POST['getDetailRow']) && isset($_POST['id'])) +{ + if(is_numeric($_POST['id'])) + { + echo getDetailRow($_POST['id'],'','','','','','','','','',$_POST['bestellung_id'],$_POST['id']); + $test++; + exit; + } + else + { + die('ID ungueltig'); + } +} + +if(isset($_POST['deleteDetail']) && isset($_POST['id'])) +{ + if(is_numeric($_POST['id'])) + { + $detail = new wawi_bestelldetail(); + $bestellung = new wawi_bestellung(); + + if(!$detail->load($_POST['id'])) + die('Eintrag wurde nicht gefunden'); + if(!$bestellung->load($detail->bestellung_id)) + die('Bestellung konnte nicht geladen werden'); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'suid', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung fuer diese Aktion'); + + $detail->delete($_POST['id']); + exit; + } + else + { + die('ID ungueltig'); + } +} + +if(isset($_POST['saveDetail'])) +{ + $bestellung = new wawi_bestellung(); + if(!$bestellung->load($_POST['bestellung'])) + die('Bestellung konnte nicht geladen werden'); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung zum Aendern der Daten'); + + $detail = new wawi_bestelldetail(); + $detail->bestellung_id = $_POST['bestellung']; + $detail->position = $_POST['pos']; + $detail->menge = $_POST['menge']; + $detail->verpackungseinheit = $_POST['ve']; + $detail->beschreibung = $_POST['beschreibung']; + $detail->artikelnummer = $_POST['artikelnr']; + $detail->preisprove = $_POST['preis']; + $detail->mwst = $_POST['mwst']; + if($_POST['sort'] != '') + $detail->sort = $_POST['sort']; + else + $detail->sort = $_POST['pos']; + $detail->insertamum = date('Y-m-d H:i:s'); + $detail->updateamum = date('Y-m-d H:i:s'); + $detail->new = true; + if(!$detail->save()) + echo $detail->errormsg; + echo $detail->bestelldetail_id; + exit; +} + +if(isset($_POST['updateDetail'])) +{ + $bestellung = new wawi_bestellung(); + if(!$bestellung->load($_POST['bestellung'])) + die('Bestellung konnte nicht geladen werden'); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung zum Aendern der Daten'); + + $detail = new wawi_bestelldetail(); + $detail->bestelldetail_id = $_POST['detail_id']; + $detail->bestellung_id = $_POST['bestellung']; + $detail->position = $_POST['pos']; + $detail->menge = $_POST['menge']; + $detail->verpackungseinheit = $_POST['ve']; + $detail->beschreibung = $_POST['beschreibung']; + $detail->artikelnummer = $_POST['artikelnr']; + $detail->preisprove = $_POST['preis']; + $detail->mwst = $_POST['mwst']; + $detail->sort = $_POST['sort']; + $detail->insertamum = date('Y-m-d H:i:s'); + $detail->updateamum = date('Y-m-d H:i:s'); + $detail->erhalten = false; + $detail->text = false; + $detail->new = false; + if(!$detail->save()) + echo $detail->errormsg; + echo $detail->bestelldetail_id; + exit; +} + +if(isset($_POST['deleteBtnGeliefert']) && isset($_POST['id'])) +{ + $bestellung = new wawi_bestellung(); + if(!$bestellung->load($_POST['id'])) + die('Bestellung konnte nicht geladen werden'); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung fuer diese Aktion'); + + $bestellstatus = new wawi_bestellstatus(); + $bestellstatus->bestellung_id = $_POST['id']; + $bestellstatus->bestellstatus_kurzbz = 'Lieferung'; + $bestellstatus->uid = $_POST['user_id']; + $bestellstatus->oe_kurzbz = ''; + $bestellstatus->datum = date('Y-m-d H:i:s'); + $bestellstatus->insertvon = $_POST['user_id']; + $bestellstatus->insertamum = date('Y-m-d H:i:s'); + $bestellstatus->updatevon = $_POST['user_id']; + $bestellstatus->updateamum = date('Y-m-d H:i:s'); + if($bestellstatus->save()) + { + echo $date->formatDatum($bestellstatus->datum, 'd.m.Y'); + sendBestellerMail($bestellung, 'geliefert'); + } + else + echo $bestellstatus->errormsg; + exit; +} + +if(isset($_POST['deleteBtnBestellt']) && isset($_POST['id'])) +{ + $bestellung = new wawi_bestellung(); + if(!$bestellung->load($_POST['id'])) + die('Bestellung konnte nicht geladen werden'); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung fuer diese Aktion'); + + $bestellstatus = new wawi_bestellstatus(); + $bestellstatus->bestellung_id = $_POST['id']; + $bestellstatus->bestellstatus_kurzbz = 'Bestellung'; + $bestellstatus->uid = $_POST['user_id']; + $bestellstatus->oe_kurzbz = ''; + $bestellstatus->datum = date('Y-m-d H:i:s'); + $bestellstatus->insertvon = $_POST['user_id']; + $bestellstatus->insertamum = date('Y-m-d H:i:s'); + $bestellstatus->updatevon = $_POST['user_id']; + $bestellstatus->updateamum = date('Y-m-d H:i:s'); + if($bestellstatus->save()) + { + echo $date->formatDatum($bestellstatus->datum, 'd.m.Y'); + sendBestellerMail($bestellung, 'bestellt'); + } + else + echo $bestellstatus->errormsg; + exit; +} + +if(isset($_POST['deleteBtnStorno']) && isset($_POST['id'])) +{ + $bestellung = new wawi_bestellung(); + if(!$bestellung->load($_POST['id'])) + die('Bestellung konnte nicht geladen werden'); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung fuer diese Aktion'); + + $date = new datum(); + $bestellstatus = new wawi_bestellstatus(); + $bestellstatus->bestellung_id = $_POST['id']; + $bestellstatus->bestellstatus_kurzbz = 'Storno'; + $bestellstatus->uid = $_POST['user_id']; + $bestellstatus->oe_kurzbz = ''; + $bestellstatus->datum = date('Y-m-d H:i:s'); + $bestellstatus->insertvon = $_POST['user_id']; + $bestellstatus->insertamum = date('Y-m-d H:i:s'); + $bestellstatus->updatevon = $_POST['user_id']; + $bestellstatus->updateamum = date('Y-m-d H:i:s'); + if($bestellstatus->save()) + { + echo $date->formatDatum($bestellstatus->datum, 'd.m.Y'); + sendBestellerMail($bestellung, 'storno'); + } + else + echo $bestellstatus->errormsg; + exit; +} +?> + + + + WaWi Bestellung + + + + + + + + + + + + + +isberechtigt('wawi/bestellung',null, 's')) + die('Sie haben keine Berechtigung zum Suchen von Bestellungen'); + + // Suchmaske anzeigen + $konto = new wawi_konto(); + $konto->getAll(); + $konto_all = $konto->result; + $zahlungstyp = new wawi_zahlungstyp(); + $zahlungstyp->getAll(); + + $kostenstelle = new wawi_kostenstelle(); + $oe_berechtigt = new organisationseinheit(); + + $datum = new datum(); + $datum=getdate(); + + if ($datum['mon']<9) + $suchdatum="01.09.".($datum['year']-1); + else + $suchdatum="01.09.".$datum['year']; + + echo "

Bestellung suchen

\n"; + echo "
\n"; + echo ""; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo ""; + echo ""; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + $oe_array = $rechte->getOEkurzbz('wawi/bestellung'); + $oe_berechtigt->loadArray($oe_array,'organisationseinheittyp_kurzbz', false); + + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + $kst_array = $rechte->getKostenstelle('wawi/bestellung'); + $kostenstelle->loadArray($kst_array,'bezeichnung'); + + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + + echo ""; + +/* echo ""; */ + + + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo ""; + echo ""; + echo "\n"; + echo ""; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "
Bestell.- Inventarnummer
Titel
Bestellposition:
Erstelldatumvon bis
Bestelldatumvon bis
Organisationseinheit: \n"; + echo "
Firma: \n"; + echo "\n"; + echo " \n"; + echo "
Kostenstelle: \n"; + echo "
Konto: \n"; + echo "
Zahlungstyp: \n"; + echo "
Tag:
Änderung durch: \n"; + echo " \n"; + echo "
Nur ohne Rechnung
Nur ohne Tags
Nur ohne Freigabe
 
\n"; + echo "
\n"; + } + else + { + // Suchergebnisse anzeigen + if(!$rechte->isberechtigt('wawi/bestellung',null, 's')) + die('Sie haben keine Berechtigung zum Suchen von Bestellungen'); + + $_SESSION['wawi/lastsearch']=$_SERVER['QUERY_STRING']; + + $status = new wawi_bestellstatus(); + $bestellnummer = (isset($_REQUEST['bestellnr'])?$_REQUEST['bestellnr']:''); + $titel = (isset($_REQUEST['titel'])?mb_str_replace("'", "´",$_REQUEST['titel']):''); + $evon = (isset($_REQUEST['evon'])?$_REQUEST['evon']:''); + $ebis = (isset($_REQUEST['ebis'])?$_REQUEST['ebis']:''); + $bvon = (isset($_REQUEST['bvon'])?$_REQUEST['bvon']:''); + $bbis = (isset($_REQUEST['bbis'])?$_REQUEST['bbis']:''); + $tag = (isset($_REQUEST['tag'])?$_REQUEST['tag']:''); + $zahlungstyp = (isset($_REQUEST['filter_zahlungstyp'])?$_REQUEST['filter_zahlungstyp']:''); + $firma_id = (isset($_REQUEST['firma_id'])?$_REQUEST['firma_id']:''); + if(!isset($_REQUEST['filter_oe_kurzbz']) || $_REQUEST['filter_oe_kurzbz'] == 'opt_auswahl') + $oe_kurzbz = ''; + else + $oe_kurzbz = $_REQUEST['filter_oe_kurzbz']; + $filter_kostenstelle = (isset($_REQUEST['filter_kostenstelle'])?$_REQUEST['filter_kostenstelle']:''); + $filter_tag = (isset($_REQUEST['filter_tag'])?$_REQUEST['filter_tag']:''); + $filter_konto = (isset($_REQUEST['filter_konto'])?$_REQUEST['filter_konto']:''); + $mitarbeiter_uid = (isset($_REQUEST['mitarbeiter_uid'])?$_REQUEST['mitarbeiter_uid']:''); + $filter_firma = (isset($_REQUEST['filter_firma'])?$_REQUEST['filter_firma']:''); + $rechnung = (isset ($_REQUEST['rechnung'])?true:false); + $tagsNotExists = (isset ($_REQUEST['tagsvorhanden'])?true:false); + $ohneFreigabe = (isset ($_REQUEST['ohneFreigabe'])?true:false); + + $bestellposition= (isset($_REQUEST['bestellposition'])?mb_str_replace("'", "´", $_REQUEST['bestellposition']):''); + $bestellung = new wawi_bestellung(); + + if($evon != '') + $evon = $date->formatDatum($evon); + if($ebis != '') + $ebis = $date->formatDatum($ebis); + if($bvon != '') + $bvon = $date->formatDatum($bvon); + if($bbis != '') + $bbis = $date->formatDatum($bbis); + + if(($evon || $evon === '') && ($ebis || $ebis === '' ) && ($bvon || $bvon === '') && ($bbis || $bbis === '')) + { + if($bestellnummer=='' && $titel=='' && $evon=='' && $ebis=='' && $bvon=='' && $bbis=='' && $firma_id=='' && $oe_kurzbz=='' && $filter_konto=='' && $mitarbeiter_uid=='' && $filter_firma=='' && $filter_kostenstelle=='' && $tag=='' && $zahlungstyp=='' && $bestellposition=='') + { + echo "Bitte grenzen Sie Ihre Suche weiter ein"; + } + else + { + // Filter firma oder firma id werden angezeigt + if($bestellung->getAllSearch($bestellnummer, $titel, $evon, $ebis, $bvon, $bbis, $firma_id, $oe_kurzbz, $filter_konto, $mitarbeiter_uid, $rechnung, $filter_firma, $filter_kostenstelle, $tag, $zahlungstyp, $tagsNotExists, $bestellposition, $ohneFreigabe)) + { + $brutto = 0; + $gesamtpreis =0; + $firma = new firma(); + $date = new datum(); + + echo "\n"; + echo " + + + + + + + + + + + \n"; + + foreach($bestellung->result as $row) + { + $geliefert = 'nein'; + $brutto = $bestellung->getBrutto($row->bestellung_id); + $gesamtpreis +=$brutto; + if($status->isStatiVorhanden($row->bestellung_id, 'Lieferung')) + $geliefert = 'ja'; + $firmenname = ''; + if(is_numeric($row->firma_id)) + { + $firma->load($row->firma_id); + $firmenname = $firma->name; + } + + // freigegebene oder bestellte Bestellungen können nur vom Zentraleinkauf gelöscht werden + $bestellung_status_help = new wawi_bestellstatus(); + + //Zeilen der Tabelle ausgeben + echo "\n"; + echo ""; + echo '\n"; + echo '\n"; + echo '\n"; + echo '\n"; + echo '\n"; + echo ''; + echo '\n"; + echo '\n"; + echo '\n"; + + echo "\n"; + } + echo "\n"; + echo "
Bestellnr.Bestell_IDFirmaErstellungFreigegebenGeliefertBruttoTitelLetzte Änderung
bestellung_id\" title=\"Bestellung bearbeiten\"> bestellung_id\" onclick='return conf_del()' title='Bestellung löschen' > bestellung_id\" title=\"Neue Rechnung anlegen\"> bestellung_id\" title=\"Bestellung kopieren\"> '.$row->bestell_nr."'.$row->bestellung_id."'.$firmenname."'.$date->formatDatum($row->insertamum, 'd.m.Y')."'.($row->freigegeben?'ja':'nein')."'.$geliefert.''.number_format($brutto, 2, ",",".")."'.$row->titel."'.$date->formatDatum($row->updateamum,'d.m.Y').' '.$row->updatevon ."
Summe:".number_format($gesamtpreis,2, ",",".")." €
\n"; + } + else + echo $bestellung->errormsg; + } + } + else + echo "ungültiges Datumsformat"; + } +} +elseif($aktion == 'new') +{ + // Maske für neue Bestellung anzeigen + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui')) + die('Sie haben keine Berechtigung zum Anlegen von Bestellungen'); + + echo "

Neue Bestellung

"; + echo "
\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "
Titel:"; + echo "
Kostenstelle:
Firma:
Konto: \n"; + echo "\n"; + echo "
 
\n"; + echo "
"; + echo "
Waren im Wert von über € 500,- sind als Investition zu betrachten, darunter als geringwertiges Wirtschaftsgut (GWG). Dienstleistungen, Nahrungsmittel etc. sind Aufwände.
"; + + + echo ' + '; +} +elseif($aktion == 'save') +{ + if(isset($_POST)) + { + // Die Bestellung wird gespeichert und die neue id zurückgegeben + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + + $newBestellung = new wawi_bestellung(); + $newBestellung->titel = mb_str_replace("'", "´", $_POST['titel']); + + if($_POST['filter_kst']=='opt_kostenstelle') + $newBestellung->kostenstelle_id = null; + else + $newBestellung->kostenstelle_id = $_POST['filter_kst']; + + $newBestellung->firma_id = $_POST['firma_id']; + + if($_POST['konto']=='') + $newBestellung->konto_id = null; + else + $newBestellung->konto_id = $_POST['konto']; + + $newBestellung->insertamum = date('Y-m-d H:i:s'); + $newBestellung->insertvon = $user; + $newBestellung->updateamum = date('Y-m-d H:i:s'); + $newBestellung->updatevon = $user; + $newBestellung->besteller_uid = $user; + $newBestellung->new = true; + $newBestellung->freigegeben = false; + // vordefinierte Werte + $newBestellung->zahlungstyp_kurzbz = 'rechnung'; + $newBestellung->lieferadresse = '1'; + $newBestellung->rechnungsadresse = '1'; + $newBestellung->bestell_nr = $newBestellung->createBestellNr($newBestellung->kostenstelle_id); + if (!$bestell_id = $newBestellung->save()) + { + echo $newBestellung->errormsg; + } + else + { + $ausgabemsg.='Bestellung wurde erfolgreich angelegt!
'; + $_GET['method']= 'update'; + $_GET['id'] = $bestell_id; + } + } +} +elseif($_GET['method']=='delete') +{ + // Bestellung löschen + $id = (isset($_GET['id'])?$_GET['id']:null); + $bestellung = new wawi_bestellung(); + $bestellung_status_help = new wawi_bestellstatus(); + $bestellung->load($id); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'suid', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung zum Löschen von Bestellungen'); + + if($bestellung->RechnungVorhanden($id)) + { + echo 'Kann nicht gelöscht werden. Der Bestellung ist eine Rechnung zugeordnet.'; + } + else if(($bestellung_status_help->isStatiVorhanden($id, 'Bestellung') || $bestellung_status_help->isStatiVorhanden($id, 'Freigabe'))&& !$rechte->isBerechtigt('wawi/delete_advanced')) + { + echo 'Bestellte oder Freigegebene Bestellungen können nicht gelöscht werden, wenden Sie sich bitte an den Zentraleinkauf'; + } + else + { + if($bestellung->delete($id)) + echo 'Bestellung erfolgreich gelöscht.
'; + else + echo $bestellung->errormsg; + } +} +elseif($_GET['method']=='deletedetail') +{ + if(!$rechte->isberechtigt('wawi/bestellung',null, 'suid')) + die('Sie haben keine Berechtigung zum Löschen von Bestellungen'); + + // Detail löschen + $id = (isset($_GET['id'])?$_GET['id']:null); + $detail = new wawi_bestelldetail(); + $detail->delete($id); + +} +elseif($_GET['method']=='copy') +{ + $bestellung_id = $_GET['id']; + $bestellung = new wawi_bestellung(); + $bestellung->load($bestellung_id); + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui', $bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung zum Kopieren dieser Bestellung.'); + + if ($bestellung_neu = $bestellung->copyBestellung($bestellung_id, $user)) + { + $_GET['method']='update'; + $_GET['id']=$bestellung_neu; + $ausgabemsg.='Bestellung wurde erfolgreich kopiert.
'; + } + +} +if($_GET['method']=='update') +{ + echo ' '; + + // Bestellung Editieren + if(isset($_GET['bestellung'])) + { + // Update auf Bestellung + $date = new datum(); + $error = false; + $save = false; + $bestellung_id = $_GET['bestellung']; + $bestellung_old = new wawi_bestellung(); + $bestellung_old->load($bestellung_id); + $bestellung_new = new wawi_bestellung(); + $bestellung_new->load($bestellung_id); + $bestellung_new_brutto = $bestellung_new->getBrutto($bestellung_id); + $status = new wawi_bestellstatus(); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 'sui',$bestellung_old->kostenstelle_id) + && !$rechte->isberechtigt('wawi/freigabe',null, 's',$bestellung_old->kostenstelle_id) + && !$rechte->isberechtigt('wawi/freigabe_advanced')) + die('Sie haben keine Berechtigung fuer diese Bestellung'); + + // speichern + if(isset($_POST['btn_abschicken']) || isset($_POST['btn_submit'])) + { + // überprüfen wenn js fehlschlägt, nicht speichern + if(isset($_POST['filter_kst']) || isset($_POST['titel'])) + { + + $aufteilung_anzahl = $_POST['anz_aufteilung']; + $bestellung_detail_anz = $_POST['detail_anz']; + + $bestellung_new->new = false; + $bestellung_new->besteller_uid=$_POST['besteller_uid']; + if(is_numeric($_POST['filter_konto'])) + $bestellung_new->konto_id = $_POST['filter_konto']; + else + $bestellung_new->konto_id = ''; + $bestellung_new->firma_id = $_POST['firma_id']; + $bestellung_new->lieferadresse = $_POST['filter_lieferadresse']; + $bestellung_new->rechnungsadresse = $_POST['filter_rechnungsadresse']; + $bestellung_new->titel = mb_str_replace("'", "´", $_POST['titel']); + $bestellung_new->bemerkung = mb_str_replace("'", "´",$_POST['bemerkung']); + $bestellung_new->liefertermin = $_POST['liefertermin']; + $bestellung_new->updateamum = date('Y-m-d H:i:s'); + $bestellung_new->updatevon = $user; + $bestellung_new->zahlungstyp_kurzbz = $_POST['filter_zahlungstyp']; + $bestellung_new->kostenstelle_id = $_POST['filter_kst']; + + if(isset($_POST['filter_projekt'])) + { + // Projekt zu Bestellung speichern + $bestellung_new->saveProjektToBestellung($bestellung_new->bestellung_id, $_REQUEST['filter_projekt']); + } + + // wenn sich kostenstelle geändert hat, neue bestellnummer generieren + if($bestellung_new->kostenstelle_id != $bestellung_old->kostenstelle_id && !$status->isStatiVorhanden($bestellung_id, 'Bestellung') ) + { + $bestellung_new->bestell_nr = $bestellung_new->createBestellNr($bestellung_new->kostenstelle_id); + } + + $tags = explode(";", $_POST['tags']); + $help_tags = new tags(); + $help_tags->bestellung_id = $bestellung_id; + $help_tags->deleteBestellungTag($tags); + + foreach ($tags as $bestelltags) + { + $tag_bestellung = new tags(); + $tag_bestellung->tag = trim($bestelltags); + $tag_bestellung->bestellung_id = $bestellung_id; + $tag_bestellung->insertvon = $user; + $tag_bestellung->insertamum = date('Y-m-d H:i:s'); + + if(!$tag_bestellung->TagExists()) + { + $tag_bestellung->saveTag(); + $tag_bestellung->saveBestellungTag(); + } + else + { + if(!$tag_bestellung->BestellungTagExists()) + $tag_bestellung->saveBestellungTag(); + } + } + for($i = 1; $i <= $bestellung_detail_anz; $i++) + { + // wenn ein Detail gelöscht wird Durchlauf überspringen + if(!isset($_POST["bestelldetailid_$i"])) + continue; + // wenn letzte zeile leer ist, nicht speichern + if($i == $bestellung_detail_anz && $_POST["ve_$i"] == '' && $_POST["menge_$i"] =='' && $_POST["beschreibung_$i"]=='' && $_POST["artikelnr_$i"] =='') + continue; + $detail_id = $_POST["bestelldetailid_$i"]; + $bestell_detail = new wawi_bestelldetail(); + + // gibt es ein bestelldetail schon + if($detail_id != '') + { + // Update + $bestell_detail->load($detail_id); + $tags_detail = explode(";", $_POST["detail_tag_$i"]); + $help_detailtags = new tags(); + $help_detailtags->bestelldetail_id = $detail_id; + $help_detailtags->deleteBestelldetailTag($tags_detail); + foreach ($tags_detail as $det) + { + $detail_tag = new tags(); + $detail_tag->tag = trim($det); + $detail_tag->bestelldetail_id = $detail_id; + $detail_tag->insertvon = $user; + $detail_tag->insertamum = date('Y-m-d H:i:s'); + + if(!$detail_tag->TagExists()) + { + $detail_tag->saveTag(); + $detail_tag->saveBestelldetailTag(); + } + else + { + if(!$detail_tag->BestelldetailTagExists()) + $detail_tag->saveBestelldetailTag(); + } + } + $menge = $_POST["menge_$i"]; + if($menge == '') + $menge = '0'; + $bestell_detail->position = $_POST["pos_$i"]; + if($_POST["sort_$i"] !='') + $bestell_detail->sort = $_POST["sort_$i"]; + else + $bestell_detail->sort = $_POST["pos_$i"]; + + $bestell_detail->menge = $menge; + $bestell_detail->verpackungseinheit = $_POST["ve_$i"]; + $bestell_detail->beschreibung = $_POST["beschreibung_$i"]; + $bestell_detail->artikelnummer = $_POST["artikelnr_$i"]; + $bestell_detail->preisprove = mb_str_replace(',', '.', $_POST["preis_$i"]); + $bestell_detail->mwst = mb_str_replace(',', '.', $_POST["mwst_$i"]); + $bestell_detail->updateamum = date('Y-m-d H:i:s'); + $bestell_detail->updatevon = $user; + $bestell_detail->new = false; + } + else + { + // Insert + $menge = $_POST["menge_$i"]; + if($menge == '') + $menge = '0'; + + $bestell_detail->mwst = ($_POST["mwst_$i"]=='')?0:mb_str_replace(',', '.', $_POST["mwst_$i"]); + $bestell_detail->bestellung_id = $_GET['bestellung']; + $bestell_detail->position = $_POST["pos_$i"]; + $bestell_detail->menge = $menge; + $bestell_detail->verpackungseinheit = $_POST["ve_$i"]; + $bestell_detail->beschreibung = $_POST["beschreibung_$i"]; + $bestell_detail->artikelnummer = $_POST["artikelnr_$i"]; + $bestell_detail->preisprove =mb_str_replace(',', '.', $_POST["preis_$i"]); + if($bestell_detail->preisprove == '') + $bestell_detail->preisprove=0; + if($_POST["sort_$i"] != '') + $bestell_detail->sort = $_POST["sort_$i"]; + else + $bestell_detail->sort = $_POST["pos_$i"]; + + $bestell_detail->insertamum = date('Y-m-d H:i:s'); + $bestell_detail->insertvon = $user; + $bestell_detail->updateamum = date('Y-m-d H:i:s'); + $bestell_detail->updatevon = $user; + $bestell_detail->new = true; + } + if(!$bestell_detail->save()) + { + echo ''.$bestell_detail->errormsg.''; + $error = true; + } + } + + for($i=0; $i<$aufteilung_anzahl; $i++) + { + $aufteilung = new wawi_aufteilung(); + $aufteilung->bestellung_id = $bestellung_id; + $aufteilung->oe_kurzbz = $_POST['oe_kurzbz_'.$i]; + $aufteilung->anteil = $_POST['aufteilung_'.$i]; + if($aufteilung->AufteilungExists()) + { + // Update + $aufteilung->updateamum = date('Y-m-d H:i:s'); + $aufteilung->updatevon = $user; + $aufteilung->new = false; + } + else + { + // Insert + $aufteilung->updateamum = date('Y-m-d H:i:s'); + $aufteilung->updatevon = $user; + $aufteilung->insertamum = date('Y-m-d H:i:s'); + $aufteilung->insertvon = $user; + $aufteilung->new = true; + } + $aufteilung->saveAufteilung(); + } + if($error == false) + if($bestellung_new->save()) + { + $ausgabemsg.='Bestellung wurde erfolgreich gespeichert!
'; + $save = true; + } + } + } + // Bestellung freigeben wird in gang gesetzt --> durch Abschick Button + if(isset($_POST['btn_abschicken']) ) + { + // wenn status Storno vorhanden ist kann nicht mehr freigegeben werden + if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno')) + { + echo 'Keine Freigabe mehr möglich, da Storniert wurde.
'; + } + else + { + $status_abgeschickt = new wawi_bestellstatus(); + if(!$status_abgeschickt->isStatiVorhanden($bestellung_id, 'Abgeschickt')) + { + $bestellung_new->load($bestellung_id); + + $status_abgeschickt->bestellung_id = $bestellung_id; ; + $status_abgeschickt->bestellstatus_kurzbz ='Abgeschickt'; + $status_abgeschickt->uid = $user; + $status_abgeschickt->oe_kurzbz = ''; + $status_abgeschickt->datum = date('Y-m-d H:i:s'); + $status_abgeschickt->insertvon = $user; + $status_abgeschickt->insertamum = date('Y-m-d H:i:s'); + $status_abgeschickt->updatevon = $user; + $status_abgeschickt->updateamum = date('Y-m-d H:i:s'); + if(!$status_abgeschickt->save()) + echo "Fehler beim Setzen auf Status Abgeschickt."; + + // wer ist freigabeberechtigt auf kostenstelle + $rechte_fg = new benutzerberechtigung(); + $uids = $rechte_fg->getFreigabeBenutzer($bestellung_new->kostenstelle_id, null); + if(empty($uids)) + $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; + else + $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); + } + } + } + // Kostenstelle hat freigegeben + if(isset($_POST['btn_freigabe']) || isset($_POST['btn_freigabe_kst']) ) + { + if(!$rechte->isBerechtigt('wawi/freigabe',null, 'suid', $bestellung_new->kostenstelle_id) + && !$rechte->isBerechtigt('wawi/freigabe_advanced')) + die('Sie haben keine Berechtigung zum Freigeben der Bestellung'); + + if(isset($_POST['btn_freigabe_kst'])) + { + // wenn status Storno vorhanden, soll nicht mehr freigegeben werden. + if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno')) + { + $ausgabemsg.= 'Keine Freigabe mehr möglich, da Storniert wurde.
'; + } + else + { + // Freigabestatus für Kostenstelle + $bestellung_new->load($bestellung_id); + $status = new wawi_bestellstatus(); + $status->bestellung_id = $bestellung_new->bestellung_id; + $status->bestellstatus_kurzbz = 'Freigabe'; + $status->uid = $user; + $status->oe_kurzbz = ''; + $status->datum = date('Y-m-d H:i:s'); + $status->insertvon = $user; + $status->insertamum = date('Y-m-d H:i:s'); + $status->updateamum = date('Y-m-d H:i:s'); + $status->updatevon = $user; + + if(!$status->save()) + { + $ausgabemsg.= 'Fehler beim Setzen auf Status Freigabe.
'; + } + else + { + $ausgabemsg.= 'Bestellung wurde erfolgreich freigegeben
'; + + // wer ist freigabeberechtigt auf nächsthöhere Organisationseinheit + $oes = array(); + $oes = $bestellung_new->FreigabeOe($bestellung_id); + $freigabe= false; + foreach($oes as $o) + { + if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe', $o)) + { + $rechte_fg = new benutzerberechtigung(); + $uids = $rechte_fg->getFreigabeBenutzer(null, $o); + if(empty($uids)) + $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; + else + $freigabe = true; + break; + } + } + if(!$freigabe == false) + { + $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); + } + else + { + //Bestellung komplett freigegeben + //Freigabe setzen und Info an Zentraleinkauf schicken + if(!$bestellung_new->isFreigegeben($bestellung_new->bestellung_id)) + $bestellung_new->SetFreigegeben($bestellung_new->bestellung_id); + + sendZentraleinkaufFreigegeben($bestellung_new); + sendBestellerMail($bestellung_new, 'freigabe'); + } + } + } + } + else + { + // OE hat freigegeben + // wenn status Storno vorhanden, soll nicht mehr freigegeben werden. + if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno')) + { + $ausgabemsg.='Keine Freigabe mehr möglich, da Storniert wurde.
'; + } + else + { + // Freigabestatus für Kostenstelle + $bestellung_new->load($bestellung_id); + $status = new wawi_bestellstatus(); + $status->bestellung_id = $bestellung_new->bestellung_id; + $status->bestellstatus_kurzbz = 'Freigabe'; + $status->uid = $user; + $status->oe_kurzbz = $_POST['freigabe_oe']; + $status->datum = date('Y-m-d H:i:s'); + $status->insertvon = $user; + $status->insertamum = date('Y-m-d H:i:s'); + $status->updateamum = date('Y-m-d H:i:s'); + $status->updatevon = $user; + + if(!$status->save()) + { + $ausgabemsg.= 'Fehler beim Setzen auf Status Freigabe.
'; + } + else + { + $ausgabemsg.= 'Bestellung wurde erfolgreich freigegeben
'; + + // wer ist freigabeberechtigt auf nächsthöhere Organisationseinheit + $oes = array(); + $oes = $bestellung_new->FreigabeOe($bestellung_id); + $freigabe = false; + foreach($oes as $o) + { + if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe', $o)) + { + $rechte_fg = new benutzerberechtigung(); + $uids = $rechte_fg->getFreigabeBenutzer(null, $o); + if(empty($uids)) + $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt. Bitte wenden Sie sich an den Support.
'; + else + $freigabe = true; + break; + } + } + if(!$freigabe == false) + { + // es wurde noch nicht alles Freigegeben + $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); + } + else + { + //Bestellung komplett freigegeben + //Freigabe setzen und Info an Zentraleinkauf schicken + if(!$bestellung_new->isFreigegeben($bestellung_new->bestellung_id)) + $bestellung_new->SetFreigegeben($bestellung_new->bestellung_id); + + sendZentraleinkaufFreigegeben($bestellung_new); + sendBestellerMail($bestellung_new, 'freigabe'); + } + } + } + } + } + + // es soll die freigabenachricht erneut versendet werden, an dem der zum freigeben drann ist + if(isset($_POST['btn_erneut_abschicken'])) + { + if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe')) + { + // KST hat noch nicht freigegeben + $rechte_fg = new benutzerberechtigung(); + $uids = $rechte_fg->getFreigabeBenutzer($bestellung_new->kostenstelle_id, null); + if(empty($uids)) + $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; + else + $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); + } + else + { + $bestellung_new->load($bestellung_id); + + // wer ist freigabeberechtigt auf nächsthöhere Organisationseinheit + $oes = array(); + $oes = $bestellung_new->FreigabeOe($bestellung_id); + $freigabe= false; + foreach($oes as $o) + { + if(!$status->isStatiVorhanden($bestellung_new->bestellung_id, 'Freigabe', $o)) + { + $rechte_fg = new benutzerberechtigung(); + $uids = $rechte_fg->getFreigabeBenutzer(null, $o); + if(empty($uids)) + $ausgabemsg .='Es ist niemand zur Freigabe der Kostenstelle berechtigt.
'; + else + $freigabe = true; + break; + } + } + if(!$freigabe == false) + { + $ausgabemsg.=sendFreigabeMails($uids, $bestellung_new, $user); + // fehlermeldung wenn kein uid gefunden + } + else + { + $ausgabemsg.= 'Die Bestellung wurde komplett freigegeben
'; + } + + } + + } + $_GET['method']='update'; + $_GET['id']=$bestellung_new->bestellung_id; + } + + // Bestellung Editieren + $id = (isset($_GET['id'])?$_GET['id']:null); + + $bestellung = new wawi_bestellung(); + if(!$bestellung->load($id)) + die("Bestellung ist nicht vorhanden."); + + if(!$rechte->isberechtigt('wawi/bestellung',null, 's',$bestellung->kostenstelle_id) + && !$rechte->isberechtigt('wawi/freigabe',null, 's',$bestellung->kostenstelle_id)) + die('Sie haben keine Berechtigung fuer diese Bestellung Zurück'); + + //Session setzen damit von der Firmenanlage wieder zurueckgesprungen werden kann + $_SESSION['wawi/last_bestellung_id']=$id; + + $detail = new wawi_bestelldetail(); + $detail->getAllDetailsFromBestellung($id); + $anz_detail = count($detail->result); + $konto = new wawi_konto(); + $konto->getKontoFromKostenstelle($bestellung->kostenstelle_id); + $konto_bestellung = new wawi_konto(); + $konto_bestellung->load($bestellung->konto_id); + $kostenstelle = new wawi_kostenstelle(); + $kostenstelle->load($bestellung->kostenstelle_id); + $aufteilung = new wawi_aufteilung(); + + // Bei neuer Bestellung Default Aufteilung holen ansonsten von bestehender bestellung + if(isset($_GET['new'])) + $aufteilung->getAufteilungFromKostenstelle($bestellung->kostenstelle_id); + else + $aufteilung->getAufteilungFromBestellung($bestellung->bestellung_id); + + $firma = new firma(); + $firma->load($bestellung->firma_id); + $allStandorte = new standort(); + $allStandorte->getStandorteWithTyp('Intern'); + $status= new wawi_bestellstatus(); + $bestell_tag = new tags(); + $studiengang = new studiengang(); + $studiengang->getAll('typ, kurzbz', null); + + //budget berechnung + $geschaeftsjahr = new geschaeftsjahr(); + $gJahr = $geschaeftsjahr->getSpecific($bestellung->insertamum); + $budget = $kostenstelle->getBudget($bestellung->kostenstelle_id,$gJahr); + $spentBudget = $bestellung->getSpentBudget($bestellung->kostenstelle_id, $gJahr); + $restBudget = $budget - $spentBudget; + $summe= 0; + $konto_vorhanden = false; + $kst_vorhanden =false; + $alert =''; + $besteller = new benutzer(); + $besteller->load($bestellung->besteller_uid); + $besteller_vorname=$besteller->vorname; + $besteller_nachname=$besteller->nachname; + + + + if($restBudget < 0 && $budget != 0) + $ausgabemsg.='Ihr aktuelles Budget ist bereits überzogen.'; + + //Meldungen Ausgeben + echo '
',$ausgabemsg,'
'; + + echo "

Bearbeiten

"; + + echo "
bestellung_id\" method='post' name='editForm' id='editForm' onSubmit='document.getElementById(\"filter_kst\").disabled=false;'>\n"; + echo "

Bestellnummer: ".$bestellung->bestell_nr; + echo ' '; + echo ' '; + + if($rechte->isBerechtigt('system/developer')) + echo ' '; + + echo '

'; + + //tabelle Bestelldetails + echo "\n"; + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "\n"; + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo ""; + echo "\n"; + echo "\n"; + $disabled = ''; + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung') || $status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') || $status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) + $disabled = 'disabled'; + if($rechte->isberechtigt('wawi/bestellung_advanced',null, 'suid', $bestellung->kostenstelle_id) || ($rechte->isBerechtigt('wawi/freigabe', null, 'suid',$bestellung->kostenstelle_id) && $bestellung->freigegeben)) + $disabled = ''; + + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo " \n"; + echo " \n"; + echo "\n"; + echo "\n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + + echo "\n"; + echo"\n"; + $bestell_tag->GetTagsByBestellung($bestellung->bestellung_id); + $tag_help = $bestell_tag->GetStringTags(); + echo "\n"; + echo "\n"; + echo ""; + echo ""; + echo "\n"; + echo "\n"; + + $restBudget = sprintf('%01.2f',$restBudget); + echo ""; + echo "
Titel: Erstellt am:".$date->formatDatum($bestellung->insertamum, 'd.m.Y')."Liefertermin:
Firma: \n"; + echo " Kontaktperson: \n"; + echo " "; + // wenn user projekt zugeordnet ist -> Projekt Drop Down anzeigen + $ProjektUser = new projekt(); + $ProjektUser->getProjektFromBestellung($bestellung->bestellung_id); + $Bestellung_Projekt = false; // Projekt DropDown aus allen Projekten von eingeloggten User und dem der Bestellung -> true wenn Projekt aus Bestellung in User Projekten enthalten ist + if($projektZugeordnet == true) + { + echo " Projekt:"; + echo " "; + } + + echo "
Kostenstelle:Lieferadresse:
Konto: Rechnungsadresse:
Bemerkungen: Status:\n"; + echo ""; + + $new = 0; + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung')) + { + $status_help = new wawi_bestellstatus(); + $status_help->getStatiFromBestellung('Bestellung', $bestellung->bestellung_id); + echo ' Bestellt am: '.$date->formatDatum($status->datum,'d.m.Y').''; + $new++; + } + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Lieferung') ) + { + $status_help = new wawi_bestellstatus(); + $status_help->getStatiFromBestellung('Lieferung', $bestellung->bestellung_id); + echo " insertvon>Geliefert am: ".$date->formatDatum($status->datum, 'd.m.Y').""; + $new++; + } + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') ) + { + echo " Storniert am: ".$date->formatDatum($status->datum, 'd.m.Y').""; + $new++; + } + if($new == 0) + { + echo "Erstellt am: ".$date->formatDatum($bestellung->insertamum, 'd.m.Y').""; + } + echo ""; + echo "\n"; + + $disabled=''; + if(($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung') + ||$status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') + || $rechte->isBerechtigt('wawi/bestellung_advanced',null,'suid') == false)) + { + $disabled ='disabled'; + } + + echo ""; + + $disabled=''; + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Lieferung') + ||$status->isStatiVorhanden($bestellung->bestellung_id, 'Storno')) + { + $disabled ='disabled'; + } + echo ""; + + $disabled = ''; + + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Bestellung') + || $status->isStatiVorhanden($bestellung->bestellung_id, 'Storno')) + { + $disabled ='disabled'; + } + if($rechte->isberechtigt('wawi/storno',null, 'suid', $bestellung->kostenstelle_id)) + { + echo ""; + } + + echo"
Tags:\n"; + + echo ""; + +/* echo ' '; */ + echo "Freigabe:"; + + if(!$status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt') && !$bestellung->freigegeben) + { + echo "Bitte Abschicken zur Freigabe."; + } + + $freigabebutton = true; + // Freigabe Buttons fuer Kostenstelle Anzeigen + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Freigabe')) + { + echo "KST:".$date->formatDatum($status->datum,'d.m.Y')." "; + } + else + { + $disabled = 'disabled'; + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) + { + if($rechte->isberechtigt('wawi/freigabe',null, 'su', $bestellung->kostenstelle_id) + || $rechte->isBerechtigt('wawi/freigabe_advanced')) + { + $disabled = ''; + $freigabebutton=false; + } + + echo ""; + } + } + + // Freigabe Buttons fuer Organisationseinheiten anzeigen + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) + { + $oes = array(); + $oes = $bestellung->FreigabeOe($bestellung->bestellung_id); + $freigabe = false; + foreach($oes as $o) + { + if(!$status->isStatiVorhanden($bestellung->bestellung_id, 'Freigabe', $o)) + { + if($freigabebutton===true && ($rechte->isberechtigt('wawi/freigabe',$o, 'su', null) + || $rechte->isBerechtigt('wawi/freigabe_advanced'))) + { + echo ""; + echo ""; + $freigabebutton=false; + } + else + { + echo ""; + } + $freigabe = true; + } + else + { + echo "".$o.":".$date->formatDatum($status->datum,'d.m.Y')." "; + } + } + /*if($freigabe == false) + { + if(!$bestellung->isFreigegeben($bestellung->bestellung_id)) + $bestellung->SetFreigegeben($bestellung->bestellung_id); + }*/ + } + + echo "
Zahlungstyp:Rest-Budget:$restBudget
\n"; + echo "
"; + //tabelle Details + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + // echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo ""; + echo "\n"; + echo ""; + $i= 1; + foreach($detail->result as $det) + { + + $brutto=($det->menge * ($det->preisprove +($det->preisprove * ($det->mwst/100)))); + $brutto = floor( $brutto * 1000) / 1000; + getDetailRow($i, $det->bestelldetail_id, $det->sort, $det->menge, $det->verpackungseinheit, $det->beschreibung, $det->artikelnummer, $det->preisprove, $det->mwst, sprintf("%01.2f",$brutto), $bestellung->bestellung_id, $det->position); + $summe+=$brutto; + $i++; + } + if(!$bestellung->freigegeben) + getDetailRow($i,null,$i,null,null,null,null,null,null,null,$bestellung->bestellung_id,$i); + + $test = $i; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo""; + echo ""; + echo ""; + echo "
PosSortMengeVEBezeichnungArtikelnr.Preis/VEUSt BruttoTags
"; + + // neue Zeile hinzufügen nur mit Berechtigung + if($rechte->isberechtigt('wawi/bestellung_advanced',null, 'suid', $bestellung->kostenstelle_id)) + echo ""; + echo "Gesamtpreis Netto:
Gesamtpreis Brutto:
\n"; + echo "

\n"; + echo ' + '; + + $disabled=''; + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Storno') || $status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt') || ($bestellung->freigegeben)) + $disabled='disabled'; + + $aktBrutto = $bestellung->getBrutto($bestellung->bestellung_id); + if($aktBrutto =='') + $aktBrutto ="0"; + echo ''; + echo ""; + echo ""; + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt') && !$bestellung->freigegeben) + echo ""; + echo"
"; + echo ""; + echo "

"; + if($disabled!='') + { + //Wenn die Advanced Berechtigung vorhanden ist, werden die Felder nicht gesperrt oder derjenige hat berechtigungen auf die kst oder oe und die bestellung ist noch nicht freigegeben + if(!($rechte->isBerechtigt('wawi/bestellung_advanced',null, 'suid') + || ($rechte->isBerechtigt('wawi/freigabe',null,'suid',$bestellung->kostenstelle_id)) && !$bestellung->freigegeben)) + { + // Felder Sperren + echo ''; + } + } + if(isset($_SESSION['wawi/lastsearch'])) + echo '

'; + + if($status->isStatiVorhanden($bestellung->bestellung_id, 'Abgeschickt')) + echo "Bestellung wurde am ".$date->formatDatum($status->datum,'d.m.Y')." zur Freigabe abgeschickt."; + + if($bestellung->isFreigegeben($bestellung->bestellung_id)) + echo "

Die Bestellung wurde vollständig freigegeben

"; + + // div Aufteilung --> kann ein und ausgeblendet werden + echo "
"; + echo "Aufteilung anzeigen / ausblenden\n"; + echo "
"; + echo "
\n"; + echo ""; + echo "\n"; + $help = 0; + $anteil = 0; + $summe = 0; + // alle studiengänge, auch inaktive + foreach($studiengang->result as $stud) + { + $vorhanden = false; + if($stud->studiengang_kz < 10000) + { + if($help%6 == 0) + { + echo""; + } + foreach($aufteilung->result as $auf) + { + // wenn in aufteilung vorhanden + if(mb_strtoupper($auf->oe_kurzbz) == mb_strtoupper($stud->oe_kurzbz)) + { + $anteil = $auf->anteil; + $vorhanden = true; + } + } + if($stud->aktiv || $vorhanden) + { + $summe += $anteil; + echo "\n"; + $help++; + $anteil = 0; + } + } + } + echo ""; + echo "\n"; + echo ' + + + + + + + + + + + '; + echo ""; + echo ""; + echo "
".mb_strtoupper($stud->oe_kurzbz).": %
Summe:%
"; + echo "
"; + echo "

"; + + echo ' + '; +} + +// ****** FUNKTIONEN ******* // + +/** + * Gibt eine Bestelldetail Zeile aus + */ +function getDetailRow($i, $bestelldetail_id='', $sort='', $menge='', $ve='', $beschreibung='', $artikelnr='', $preisprove='', $mwst='', $brutto='', $bestell_id='', $pos='') +{ + $removeDetail =''; + $checkSave = "checkSave(".$i.");"; + $checkRow = ''; + $replaceKomma = "replaceKomma(".$i.");"; + $user=get_uid(); + $status= new wawi_bestellstatus(); + $rechte = new benutzerberechtigung(); + $rechte->getBerechtigungen($user); + $bestellung = new wawi_bestellung(); + $bestellung->load($bestell_id); + // wenn status Storno oder Abgeschickt, kein löschen der Details mehr möglich + if(!$status->isStatiVorhanden($bestell_id,'Storno')) + { + if(!$status->isStatiVorhanden($bestell_id,'Abgeschickt')) + { + $removeDetail = "removeDetail(".$i.");"; + $checkRow = "setTimeout(\"checkNewRow(".$i.",".$bestell_id.")\",100);"; + } + + if($status->isStatiVorhanden($bestell_id,'Abgeschickt') && ($rechte->isBerechtigt('wawi/bestellung_advanced') || ($rechte->isBerechtigt('wawi/freigabe', null,'suid',$bestellung->kostenstelle_id) && !$bestellung->freigegeben))) + $removeDetail = "removeDetail(".$i.");"; + } + + if($sort == '') + $sort = $i; + $mwst = str_replace('.', ',', $mwst); + + echo "\n"; + echo " \n"; + echo "\n"; + echo " \n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + echo "\n"; + $detail_tag = new tags(); + $detail_tag->GetTagsByBestelldetail($bestelldetail_id); + $help = $detail_tag->GetStringTags(); + + echo ""; + +/* echo " "; */ + + echo ""; + echo ""; + echo "\n"; + echo "\n"; + echo "\n"; + +} + +/** + * Sendet ein FreigabeMail fuer einen Bestellung + * + * @param uids Array mit UIDs an die das Freigabemail gesendet werden soll + * @param bestellung Bestellung Object mit der Bestellung die freigegeben werden soll + */ +function sendFreigabeMails($uids, $bestellung, $user) +{ + global $date; + $tags = new tags(); + $tags->GetTagsByBestellung($bestellung->bestellung_id); + $tagsAusgabe=''; + foreach($tags->result as $res) + { + if($tagsAusgabe!='') + $tagsAusgabe.=', '; + + $tagsAusgabe.=$res->tag; + } + $msg = ''; + + $kst_mail = new wawi_kostenstelle(); + $kst_mail->load($bestellung->kostenstelle_id); + $firma_mail = new firma(); + $firma_mail->load($bestellung->firma_id); + $konto_mail = new wawi_konto(); + $konto_mail->load($bestellung->konto_id); + $besteller = new benutzer(); + $besteller->load($bestellung->besteller_uid); + + // E-Mail an Kostenstellenverantwortliche senden + $email= "Dies ist eine automatisch generierte E-Mail.

"; + $email.="Es wurde eine neue Bestellung auf Kostenstelle '".$kst_mail->bezeichnung."' erstellt bzw. eine bestehende geändert. Bitte geben Sie die Bestellung frei.
"; + $email.="Bestellnummer: ".$bestellung->bestell_nr."
"; + $email.="Titel: ".$bestellung->titel."
"; + $email.="Firma: ".$firma_mail->name."
"; + $email.="Kontaktperson: ".$besteller->titelpre.' '.$besteller->vorname.' '.$besteller->nachname.' '.$besteller->titelpost."
"; + $email.="Erstellt am: ".$date->formatDatum($bestellung->insertamum,'d.m.Y')."
"; + $email.="Kostenstelle: ".$kst_mail->bezeichnung."
Konto: ".$konto_mail->kurzbz."
"; + $email.="Tags: ".$tagsAusgabe."
"; + + $email.="Link: zur Bestellung "; + + foreach($uids as $uid) + { + $mail = new mail($uid.'@'.DOMAIN, $user, 'Freigabe Bestellung '.$bestellung->bestell_nr, 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'); + $mail->setHTMLContent($email); + if(!$mail->send()) + $msg.= 'Fehler beim Senden des Mails
'; + else + $msg.= ' Mail verschickt an '.$uid.'@'.DOMAIN.'!
'; + } + return $msg; +} + +/** + * E-Mail Benachrichtigung ueber vollstaendige Freigabe der Bestellung an + * den Zentraleinkauf senden + * @param $bestellung Bestellung Object der freigegebenen Bestellung + */ +function sendZentraleinkaufFreigegeben($bestellung) +{ + global $date; + $tags = new tags(); + $tags->GetTagsByBestellung($bestellung->bestellung_id); + $tagsAusgabe=''; + foreach($tags->result as $res) + { + if($tagsAusgabe!='') + $tagsAusgabe.=', '; + + $tagsAusgabe.=$res->tag; + } + $msg = ''; + + $kst_mail = new wawi_kostenstelle(); + $kst_mail->load($bestellung->kostenstelle_id); + $firma_mail = new firma(); + $firma_mail->load($bestellung->firma_id); + $konto_mail = new wawi_konto(); + $konto_mail->load($bestellung->konto_id); + $besteller = new benutzer(); + $besteller->load($bestellung->besteller_uid); + + // E-Mail an Kostenstellenverantwortliche senden + $email= "Dies ist eine automatisch generierte E-Mail.

"; + $email.= "Die folgende Bestellung wurde freigegeben und kann bestellt werden:
"; + $email.="Kostenstelle: ".$kst_mail->bezeichnung."
"; + $email.="Bestellnummer: ".$bestellung->bestell_nr."
"; + $email.="Titel: ".$bestellung->titel."
"; + $email.="Firma: ".$firma_mail->name."
"; + $email.="Kontaktperson: ".$besteller->titelpre.' '.$besteller->vorname.' '.$besteller->nachname.' '.$besteller->titelpost."
"; + $email.="Erstellt am: ".$date->formatDatum($bestellung->insertamum,'d.m.Y')."
"; + $email.="Konto: ".$konto_mail->kurzbz."
"; + $email.="Tags: ".$tagsAusgabe."
"; + + $email.="Link: zur Bestellung "; + + $mail = new mail(MAIL_ZENTRALEINKAUF, 'no-reply', 'Freigabe Bestellung', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'); + $mail->setHTMLContent($email); + if(!$mail->send()) + $msg.= 'Fehler beim Senden des Mails
'; + else + $msg.= ' Mail verschickt an '.MAIL_ZENTRALEINKAUF.'!
'; + + return $msg; +} + +/** + * Schickt ein Status-Mail an die Kontaktperson der Bestellung + * + * @param $bestellung Bestellung Object der Bestellung + * @param $status Art der Statusaenderung (bestellt|geliefert|freigabe|storno) + */ +function sendBestellerMail($bestellung, $status) +{ + global $date; + $tags = new tags(); + $tags->GetTagsByBestellung($bestellung->bestellung_id); + $tagsAusgabe=''; + foreach($tags->result as $res) + { + if($tagsAusgabe!='') + $tagsAusgabe.=', '; + + $tagsAusgabe.=$res->tag; + } + $msg = ''; + + $kst_mail = new wawi_kostenstelle(); + $kst_mail->load($bestellung->kostenstelle_id); + $firma_mail = new firma(); + $firma_mail->load($bestellung->firma_id); + $konto_mail = new wawi_konto(); + $konto_mail->load($bestellung->konto_id); + + // E-Mail an Kostenstellenverantwortliche senden + $email= "Dies ist eine automatisch generierte E-Mail.

"; + + switch($status) + { + case 'bestellt': $email.=" Ihre Bestellung wurde bestellt"; break; + case 'geliefert': $email.=" Ihre Bestellung wurde geliefert
Hinweis: Nach erfolgter Lieferung werden Waren ab einem Wert von EUR 400,-- pro Einzelposition inventarisiert.
"; break; + case 'freigabe': $email.=" Ihre Bestellung wurde freigegeben"; break; + case 'storno': $email.=" Ihre Bestellung wurde storniert"; break; + } + + $email.="
"; + $email.="Kostenstelle: ".$kst_mail->bezeichnung."
"; + $email.="Bestellnummer: ".$bestellung->bestell_nr."
"; + $email.="Titel: ".$bestellung->titel."
"; + $email.="Firma: ".$firma_mail->name."
"; + $email.="Erstellt am: ".$date->formatDatum($bestellung->insertamum,'d.m.Y')."
"; + $email.="Kostenstelle: ".$kst_mail->bezeichnung."
Konto: ".$konto_mail->kurzbz."
"; + $email.="Tags: ".$tagsAusgabe."
"; + + $email.="Link: zur Bestellung "; + + $mail = new mail($bestellung->besteller_uid.'@'.DOMAIN, 'no-reply', 'Bestellung '.$bestellung->bestell_nr, 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'); + $mail->setHTMLContent($email); + if(!$mail->send()) + $msg.= 'Fehler beim Senden des Mails
'; + else + $msg.= ' Mail verschickt an '.$bestellung->besteller_uid.'@'.DOMAIN.'!
'; + + return $msg; +} +?> + +