diff --git a/include/person.class.php b/include/person.class.php index 4c1b370d7..f94150df8 100644 --- a/include/person.class.php +++ b/include/person.class.php @@ -476,23 +476,22 @@ class person * $order Sortierkriterium * @return array mit LPersonen oder false=fehler */ - function getTab($nn=null,$vn=null, $order='person_id') + function getTab($filter, $order='person_id') { - $sql_query = "SELECT * FROM public.tbl_person"; - - if($nn!=null || $vn!=null) - $sql_query .= " WHERE true"; - - if($nn!=null) - $sql_query .= " AND nachname='$nn'"; - - if($vn!=null) - $sql_query .= " AND vorname='$vn'"; + $sql_query = "SELECT * FROM public.tbl_person WHERE true "; + + if($filter!='') + { + $sql_query.=" AND nachname ~* '".addslashes($filter)."' OR + vorname ~* '".addslashes($filter)."' OR + (nachname || ' ' || vorname) ~* '".addslashes($filter)."' OR + (vorname || ' ' || nachname) ~* '".addslashes($filter)."'"; + } $sql_query .= " ORDER BY $order"; - if($nn==null || $nn==null) + if($filter=='') $sql_query .= " LIMIT 30"; - + if($result=pg_query($this->conn,$sql_query)) { while($row=pg_fetch_object($result)) diff --git a/include/preinteressent.class.php b/include/preinteressent.class.php index 903c138e8..5dc21ab2c 100644 --- a/include/preinteressent.class.php +++ b/include/preinteressent.class.php @@ -46,6 +46,7 @@ class preinteressent var $studiengang_kz; var $prioritaet; // smallint + var $prioritaet_arr = array('1'=>'niedrg', '2'=>'mittel', '3'=>'hoch'); var $freigabedatum; // timestamp var $uebernahmedatum; // timestamp @@ -429,12 +430,12 @@ class preinteressent $qry = "SELECT distinct tbl_preinteressent.* FROM public.tbl_preinteressent JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_preinteressentstudiengang USING(preinteressent_id) LEFT JOIN public.tbl_kontakt USING(person_id) WHERE true"; if($studiengang_kz!='') - $qry.="tbl_preinteressentstudiengang.studiengang_kz='$studiengang_kz'"; + $qry.=" AND tbl_preinteressentstudiengang.studiengang_kz='$studiengang_kz'"; if($studiensemester_kurzbz!='') $qry.=" AND tbl_preinteressent.studiensemester_kurzbz='$studiensemester_kurzbz'"; if($filter!='') - $qry.=" AND lower(nachname) like '%$filter%' OR lower(vorname) like '%$filter%' OR erfassungsdatum like '$filter' OR lower(kontakt) like '%$filter%'"; + $qry.=" AND lower(nachname) like '%".addslashes($filter)."%' OR lower(vorname) like '%".addslashes($filter)."%' OR erfassungsdatum like '".addslashes($filter)."' OR lower(kontakt) like '%".addslashes($filter)."%'"; if($result = pg_query($this->conn, $qry)) { @@ -631,5 +632,52 @@ class preinteressent return false; } } + + // ****************************************** + // * Laedt alle Preinteressenten einer Person + // * @return true wenn ok, false wenn Fehler + // ****************************************** + function getPreinteressenten($person_id) + { + if(!is_numeric($person_id) || $person_id=='') + { + $this->errormsg = 'ID ist ungueltig'; + return false; + } + + $qry = "SELECT * FROM public.tbl_preinteressent WHERE person_id='$person_id'"; + + if($result = pg_query($this->conn, $qry)) + { + while($row = pg_fetch_object($result)) + { + $obj = new preinteressent($this->conn, null, null); + + $obj->preinteressent_id = $row->preinteressent_id; + $obj->studiensemester_kurzbz = $row->studiensemester_kurzbz; + $obj->aufmerksamdurch_kurzbz = $row->aufmerksamdurch_kurzbz; + $obj->firma_id = $row->firma_id; + $obj->anmerkung = $row->anmerkung; + $obj->erfassungsdatum = $row->erfassungsdatum; + $obj->einverstaendnis = ($row->einverstaendnis=='t'?true:false); + $obj->maturajahr = $row->maturajahr; + $obj->infozusendung = $row->infozusendung; + $obj->absagedatum = $row->absagedatum; + $obj->person_id = $row->person_id; + $obj->updateamum = $row->updateamum; + $obj->updatevon = $row->updatevon; + $obj->insertamum = $row->insertamum; + $obj->insertvon = $row->insertvon; + + $this->result[] = $obj; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden der Zuordnung'; + return false; + } + } } ?> \ No newline at end of file diff --git a/include/prestudent.class.php b/include/prestudent.class.php index 220577a5f..21aabd477 100644 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -771,5 +771,57 @@ class prestudent extends person return false; } } + + // ********************************************** + // * Laedt alle Prestudenten der Person + // * @return true wenn ok, false wenn Fehler + // ********************************************** + function getPrestudenten($person_id) + { + if(!is_numeric($person_id) || $person_id=='') + { + $this->errormsg='ID ist ungueltig'; + return false; + } + + $qry = "SELECT * FROM public.tbl_prestudent WHERE person_id='$person_id'"; + + if($result = pg_query($this->conn, $qry)) + { + while($row = pg_fetch_object($result)) + { + $obj = new prestudent($this->conn, null, null); + + $obj->prestudent_id = $row->prestudent_id; + $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->zgvmas_code = $row->zgvmas_code; + $obj->zgvmaort = $row->zgvmaort; + $obj->zgvmadatum = $row->zgvmadatum; + $obj->aufnahmeschluessel = $row->aufnahmeschluessel; + $obj->facheinschlberuf = ($row->facheinschlberuf=='t'?true:false); + $obj->anmeldungreihungstest = $row->anmeldungreihungstest; + $obj->reihungstestangetreten = ($row->reihungstestangetreten=='t'?true:false); + $obj->reihungstest_id = $row->reihungstest_id; + $obj->punkte = $row->punkte; + $obj->bismelden = ($row->bismelden=='t'?true:false); + $obj->person_id = $row->person_id; + $obj->anmerkung = $row->anmerkung; + $obj->ext_id_prestudent = $row->ext_id; + + $this->result[] = $obj; + } + } + else + { + $this->errormsg = "Fehler beim Laden: $qry"; + return false; + } + } } ?> \ No newline at end of file diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index 970596760..dcbd875c6 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -124,7 +124,7 @@ $menu=array 'ImExport'=>array ( 'name'=>'ImExport', - 'Zuttritskarten'=>array('name'=>'Zuttritskarten', 'link'=>'stammdaten/imexport/zutrittskarten/index.html', 'target'=>'main') + 'Zutrittskarten'=>array('name'=>'Zutrittskarten', 'link'=>'stammdaten/imexport/zutrittskarten/index.html', 'target'=>'main') ) ), 'Vorrueckung'=> array diff --git a/vilesci/lehre/einheit_det.php b/vilesci/lehre/einheit_det.php index d13a39d11..ffca1aa1f 100644 --- a/vilesci/lehre/einheit_det.php +++ b/vilesci/lehre/einheit_det.php @@ -6,6 +6,7 @@ require_once('../../include/benutzergruppe.class.php'); require_once('../../include/person.class.php'); require_once('../../include/benutzer.class.php'); require_once('../../include/student.class.php'); +require_once('../../include/gruppe.class.php'); if(!$conn=pg_pconnect(CONN_STRING)) die('Fehler beim Aufbau der Datenbankconnection'); @@ -30,6 +31,9 @@ else if (isset($_GET['type']) && $_GET['type']=='delete') $e=new benutzergruppe($conn); $e->delete($_GET['uid'], $kurzbz); } +$gruppe = new gruppe($conn); +if(!$gruppe->load($kurzbz)) + die('Gruppe wurde nicht gefunden'); ?> @@ -40,29 +44,32 @@ else if (isset($_GET['type']) && $_GET['type']=='delete')

Gruppe

- -
- - - - - - -
-
- generiert) +{ + echo ' +
+ + + + + + +
+
'; +} $qry = "SELECT * FROM public.tbl_benutzergruppe, public.tbl_benutzer, public.tbl_person WHERE". " tbl_benutzergruppe.gruppe_kurzbz='".addslashes($kurzbz)."' AND". " tbl_benutzergruppe.uid = tbl_benutzer.uid AND tbl_benutzer.person_id=tbl_person.person_id ORDER BY nachname, vorname"; @@ -80,7 +87,8 @@ else if (isset($_GET['type']) && $_GET['type']=='delete') echo "".$row->uid.""; echo "".$row->vorname.""; echo "".$row->nachname.""; - echo 'Delete'; + if(!$gruppe->generiert) + echo 'Delete'; echo "\n"; } } diff --git a/vilesci/personen/institutsliste.php b/vilesci/personen/institutsliste.php index 3358d11d4..5e55a2d9f 100644 --- a/vilesci/personen/institutsliste.php +++ b/vilesci/personen/institutsliste.php @@ -130,8 +130,8 @@ if($result = pg_query($conn, $qry)) Vorname Fix / Frei Kompetenzen - $ws - $ss + $ws + $ss Studiengang Hauptzuteilung Sonstige diff --git a/vilesci/personen/personendetails.php b/vilesci/personen/personendetails.php new file mode 100644 index 000000000..73518452c --- /dev/null +++ b/vilesci/personen/personendetails.php @@ -0,0 +1,191 @@ +, + * Andreas Oesterreicher , + * Rudolf Hangl and + * Gerald Raab . + */ +require_once('../config.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/studiengang.class.php'); +require_once('../../include/preinteressent.class.php'); +require_once('../../include/person.class.php'); +require_once('../../include/prestudent.class.php'); +require_once('../../include/datum.class.php'); + +if(!$conn=pg_pconnect(CONN_STRING)) + die("Konnte Verbindung zur Datenbank nicht herstellen"); + +$user = get_uid(); + +$rechte = new benutzerberechtigung($conn); +$rechte->getBerechtigungen($user); + +$datum_obj = new datum(); + +$studiengang = new studiengang($conn); +$studiengang->getAll('typ, kurzbz', false); + +echo ' + + PreInteressenten + + + + + + + '; + +if(!$rechte->isBerechtigt('admin') && + !$rechte->isBerechtigt('preinteressent') && + !$rechte->isBerechtigt('assistenz')) + die('Sie haben keine Berechtigung fuer diese Seite'); + +if(isset($_GET['id']) && is_numeric($_GET['id'])) + $id = $_GET['id']; +else + die('der Parameter id mit der Person_id muss uebergeben werden'); + +$person = new person($conn); + +if(!$person->load($id)) + die('Person wurde nicht gefunden'); + +//PERSON +echo '

Person

'; +echo "ID: $person->person_id
"; +echo "Name: $person->titelpre $person->nachname $person->vorname $person->titelpost
"; +echo "Geburtsdatum: ".$datum_obj->formatDatum($person->gebdatum,'d.m.Y')."
"; + +//PREINTERESSENT + +$preinteressent = new preinteressent($conn); +$preinteressent->getPreinteressenten($person->person_id); +if(count($preinteressent->result)>0) +{ + echo '

Preinteressent

'; + echo ''; + foreach ($preinteressent->result as $row) + { + echo ''; + echo ""; + echo ""; + echo ""; + echo ""; + echo ''; + echo ''; + } + echo '
IDStudiensemesterErfassungsdatumAnmerkungStudiengänge
$row->preinteressent_id$row->studiensemester_kurzbz".$datum_obj->formatDatum($row->erfassungsdatum, 'd.m.Y')."$row->anmerkung'; + $preinteressent1 = new preinteressent($conn); + $preinteressent1->loadZuordnungen($row->preinteressent_id); + + $stgs=''; + foreach ($preinteressent1->result as $row_zuordnung) + { + if($stgs!='') + $stgs.=', '; + $stgs.= $studiengang->kuerzel_arr[$row_zuordnung->studiengang_kz]."(".$preinteressent1->prioritaet_arr[$row_zuordnung->prioritaet].")"; + } + echo $stgs; + echo '
'; +} + +$prestudent = new prestudent($conn); +$prestudent->getPrestudenten($person->person_id); +if(count($prestudent->result)>0) +{ + echo '

Pre-/Studenten

'; + echo ' + + + + + + + + + + '; + foreach ($prestudent->result as $row) + { + echo ''; + echo ""; + echo ""; + echo ""; + $uid=''; + $gruppe=''; + $qry ="SELECT * FROM public.tbl_student WHERE prestudent_id='$row->prestudent_id'"; + if($result = pg_query($conn, $qry)) + { + if(pg_num_rows($result)>1) + { + $uid='ACHTUNG: Es gibt mehrere Studenteneinträge die auf diesen Prestudenten zeigen!'; + } + else + { + if($row_std = pg_fetch_object($result)) + { + $uid = $row_std->student_uid; + $gruppe = $row_std->semester.$row_std->verband.$row_std->gruppe; + } + } + } + echo ""; + echo ""; + $prestudent1 = new prestudent($conn); + $prestudent1->getLastStatus($row->prestudent_id); + echo ""; + echo ''; + } + echo '
IDStudiengangReihungstestUIDGruppeStatus
$row->prestudent_id".$studiengang->kuerzel_arr[$row->studiengang_kz]."".($row->reihungstestangetreten?'Ja':'Nein')."$uid$gruppe$prestudent1->rolle_kurzbz ".($prestudent1->ausbildungssemester!=''?"($prestudent1->ausbildungssemester. Semester)":'')."
'; +} + +$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE person_id='$person->person_id'"; +if($result = pg_query($conn, $qry)) +{ + if(pg_num_rows($result)>0) + { + echo '

Mitarbeiter

'; + echo ' + + + + + + + + + '; + while($row = pg_fetch_object($result)) + { + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + } + echo '
UIDKurzbzLektorFixangestelltTelefonklappe
$row->uid$row->kurzbz".($row->lektor=='t'?'Ja':'Nein')."".($row->fixangestellt=='t'?'Ja':'Nein')."$row->telefonklappe
'; + } +} +echo ''; +echo ''; +?> \ No newline at end of file diff --git a/vilesci/personen/preinteressent_anlegen.php b/vilesci/personen/preinteressent_anlegen.php new file mode 100644 index 000000000..8f9676af9 --- /dev/null +++ b/vilesci/personen/preinteressent_anlegen.php @@ -0,0 +1,468 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +require_once('../config.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/person.class.php'); +require_once('../../include/datum.class.php'); +require_once('../../include/kontakt.class.php'); +require_once('../../include/adresse.class.php'); +require_once('../../include/studiensemester.class.php'); +require_once('../../include/preinteressent.class.php'); + +if(!$conn=pg_pconnect(CONN_STRING)) + die('Fehler beim Herstellen der DB Connection'); + +$user=get_uid(); +$datum_obj = new datum(); + +loadVariables($conn, $user); + +?> + + + + + + + + +

Preinteressent Anlegen

+getBerechtigungen($user); + +if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('preinteressent')) + die('Sie haben keine Berechtigung fuer diese Seite'); + +$where = ''; +$error = false; +//Parameter +$titel = (isset($_POST['titel'])?$_POST['titel']:''); +$titelpost = (isset($_POST['titelpost'])?$_POST['titelpost']:''); +$nachname = (isset($_POST['nachname'])?$_POST['nachname']:''); +$vorname = (isset($_POST['vorname'])?$_POST['vorname']:''); +$geschlecht = (isset($_POST['geschlecht'])?$_POST['geschlecht']:''); +$geburtsdatum = (isset($_POST['geburtsdatum'])?$_POST['geburtsdatum']:''); +$adresse = (isset($_POST['adresse'])?$_POST['adresse']:''); +$plz = (isset($_POST['plz'])?$_POST['plz']:''); +$ort = (isset($_POST['ort'])?$_POST['ort']:''); +$email = (isset($_POST['email'])?$_POST['email']:''); +$telefon = (isset($_POST['telefon'])?$_POST['telefon']:''); +$mobil = (isset($_POST['mobil'])?$_POST['mobil']:''); +$person_id = (isset($_POST['person_id'])?$_POST['person_id']:''); +$svnr = (isset($_POST['svnr'])?$_POST['svnr']:''); +$ersatzkennzeichen = (isset($_POST['ersatzkennzeichen'])?$_POST['ersatzkennzeichen']:''); +$ueberschreiben = (isset($_REQUEST['ueberschreiben'])?$_REQUEST['ueberschreiben']:''); +$studiensemester_kurzbz = (isset($_POST['studiensemester_kurzbz'])?$_POST['studiensemester_kurzbz']:''); +//end Parameter +$geburtsdatum_error=false; + +// *** Speichern der Daten *** +if(isset($_POST['save'])) +{ + //echo "Saving Data: Geburtsdatum: $geburtsdatum | Titel: $titel | Nachname: $nachname | Vorname: $vorname | + // Geschlecht: $geschlecht | Adresse: $adresse | Plz: $plz | Ort: $ort | + // Email: $email | Telefon: $telefon | Mobil: $mobil | Letzteausbildung: $letzteausbildung | ausbildungsart: $ausbildungsart | + // anmerkungen: $anmerkungen | studiengang_kz: $studiengang_kz | person_id: $person_id

"; + $person = new person($conn); + pg_query($conn, 'BEGIN'); + //Wenn die person_id=0 dann wird eine neue Person angelegt + //Sonst nicht + if($person_id=='0') + { + $person->new = true; + $person->titelpre = $titel; + $person->nachname = $nachname; + $person->vorname = $vorname; + $person->titelpost = $titelpost; + $person->geschlecht = $geschlecht; + $person->gebdatum = $geburtsdatum; + $person->svnr = $svnr; + $person->ersatzkennzeichen = $ersatzkennzeichen; + $person->aktiv = true; + if($person->save()) + { + $error=false; + } + else + { + $error=true; + $errormsg = "Person konnte nicht gespeichert werden: $person->errormsg"; + } + } + + //Adresse anlegen + if($ueberschreiben!='' && !($plz=='' && $adresse=='' && $ort=='')) + { + if($person_id=='0') + $ueberschreiben='Nein'; + + $adr = new adresse($conn); + //Adresse neu anlegen + if($ueberschreiben=='Nein') + { + $adr->new = true; + $adr->insertamum = date('Y-m-d H:i:s'); + $adr->insertvon = $user; + } + else + { + //Bestehende Adresse Ueberschreiben + + //Adressen der Peron laden + $adr->load_pers($person->person_id); + if(isset($adr->result[0])) + { + //Erste Adresse laden + if($adr->load($adr->result[0]->adresse_id)) + { + $adr->new = false; + $adr->updateamum = date('Y-m-d H:i:s'); + $adr->updatevon = $user; + } + else + { + $error = true; + $errormsg = 'Fehler beim Laden der Adresse'; + } + } + else + { + //Wenn keine Adrese vorhanden ist dann eine neue Anlegen + $adr->new = true; + $adr->insertamum = date('Y-m-d H:i:s'); + $adr->insertvon = $user; + } + } + + if(!$error) + { + //Adressdaten zuweisen und speichern + $adr->person_id = $person->person_id; + $adr->strasse = $adresse; + $adr->plz = $plz; + $adr->ort = $ort; + $adr->typ = 'h'; + $adr->heimatadresse = true; + $adr->zustelladresse = true; + if(!$adr->save()) + { + $error = true; + $errormsg = $adr->errormsg; + } + } + } + + //Kontaktdaten anlegen + if(!$error) + { + //EMail Adresse speichern + if($email!='') + { + $kontakt = new kontakt($conn); + $kontakt->person_id = $person->person_id; + $kontakt->kontakttyp = 'email'; + $kontakt->kontakt = $email; + $kontakt->zustellung = true; + $kontakt->insertamum = date('Y-m-d H:i:s'); + $kontakt->insertvon = $user; + $kontakt->new = true; + + if(!$kontakt->save()) + { + $error = true; + $errormsg = 'Fehler beim Speichern der Email Adresse'; + } + } + //Telefonnummer speichern + if($telefon!='') + { + $kontakt = new kontakt($conn); + $kontakt->person_id = $person->person_id; + $kontakt->kontakttyp = 'telefon'; + $kontakt->kontakt = $telefon; + $kontakt->zustellung = true; + $kontakt->insertamum = date('Y-m-d H:i:s'); + $kontakt->insertvon = $user; + $kontakt->new = true; + + if(!$kontakt->save()) + { + $error = true; + $errormsg = 'Fehler beim Speichern der Telefonnummer'; + } + } + //Mobiltelefonnummer speichern + if($mobil!='') + { + $kontakt = new kontakt($conn); + $kontakt->person_id = $person->person_id; + $kontakt->kontakttyp = 'mobil'; + $kontakt->kontakt = $mobil; + $kontakt->zustellung = true; + $kontakt->insertamum = date('Y-m-d H:i:s'); + $kontakt->insertvon = $user; + $kontakt->new = true; + + if(!$kontakt->save()) + { + $error = true; + $errormsg = 'Fehler beim Speichern der Mobiltelefonnummer'; + } + } + } + + if(!$error) + { + $preinteressent = new preinteressent($conn); + + $preinteressent->person_id = $person->person_id; + $preinteressent->studiensemester_kurzbz = $studiensemester_kurzbz; + $preinteressent->aufmerksamdurch_kurzbz = 'k.A.'; + $preinteressent->firma_id = 1; //TW + if(!$preinteressent->save(true)) + { + $error = true; + $errormsg = "Fehler beim Anlegen des Preinteressenten: $preinteressent->errormsg"; + } + } + if(!$error) + { + pg_query($conn, 'COMMIT'); + die(" + Person $vorname $nachname wurde erfolgreich angelegt

'.$errormsg.''; + } +} +// *** SAVE ENDE *** +if($geburtsdatum!='') +{ + //Wenn das Datum im Format d.m.Y ist dann in Y-m-d umwandeln + if(strpos($geburtsdatum,'.')) + { + if($datum_obj->mktime_datum($geburtsdatum)) + { + $geburtsdatum = date('Y-m-d',$datum_obj->mktime_datum($geburtsdatum)); + } + else + { + $geburtsdatum_error=true; + } + } + else + { + if(!ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$geburtsdatum)) + $geburtsdatum_error=true; + } + + if($geburtsdatum_error) + echo "Format des Geburtsdatums ist ungueltig!"; +} +?> +
+ + + +'; +echo ' + +
+ + +'; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +//Preinteressentdaten +echo ''; +echo ''; +echo '
Titel(Pre)
Vorname
Nachname *
Titel(Post)
Geschlecht *'; +echo '
SVNR
Ersatzkennzeichen
Geburtsdatum (Format dd.mm.JJJJ)
Adresse'; +echo ''; +echo ''; +echo ''; +echo '
Adresse
Postleitzahl
Ort
'; +echo ''; +echo ''; +echo ''; +echo '
EMail
Telefon
Mobil
Studiensemester:
'; + +if(($geburtsdatum=='' && $vorname=='' && $nachname=='') || $geburtsdatum_error) + echo ''; +else + echo ''; + +echo '
'; +echo ' +

+Felder die mit einem * gekennzeichnet sind müssen ausgefüllt werden! +'; +echo '
'; + +//Vorschlaege + +//Vorschlaege laden +if($geburtsdatum!='') +{ + if(ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$geburtsdatum)) + { + $where = " gebdatum='".$geburtsdatum."'"; + } +} + +if($vorname!='' && $nachname!='') +{ + if($where!='') + $where.=' OR'; + $where.=" (LOWER(vorname)=LOWER('".$vorname."') AND LOWER(nachname)=LOWER('".$nachname."'))"; +} + +if($where!='') +{ + $qry = "SELECT * FROM public.tbl_person WHERE $where ORDER BY nachname, vorname, gebdatum"; + + if($result = pg_query($conn, $qry)) + { + echo ''; + while($row = pg_fetch_object($result)) + { + $status = ''; + $qry_ma = "SELECT * FROM campus.vw_mitarbeiter WHERE person_id='$row->person_id'"; + if($result_ma = pg_query($conn, $qry_ma)) + if($row_ma=pg_fetch_object($result_ma)) + $status.=' Mitarbeiter'; + $qry_ma = "SELECT * FROM campus.vw_student WHERE person_id='$row->person_id'"; + if($result_ma = pg_query($conn, $qry_ma)) + if($row_ma=pg_fetch_object($result_ma)) + $status.=' Student'; + echo '"; + echo ""; + } + echo ''; + echo '
NachnameVornameGebDatumSVNRGeschlechtAdresseStatus
'."$row->nachname$row->vorname$row->gebdatum$row->svnr".($row->geschlecht=='m'?'männlich':'weiblich').""; + $qry_adr = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id'"; + if($result_adr = pg_query($conn, $qry_adr)) + while($row_adr=pg_fetch_object($result_adr)) + echo "$row_adr->plz $row_adr->ort, $row_adr->strasse
"; + echo "
$status
Neue Person anlegen
'; + } +} +//else +// echo 'Zum Erstellen des Vorschlags bitte Geburtsdatum oder Vorname und Nachname eingeben'; + +?> +
+
+ + \ No newline at end of file diff --git a/vilesci/personen/preinteressent_detail.php b/vilesci/personen/preinteressent_detail.php index 892ff7729..4600e6500 100644 --- a/vilesci/personen/preinteressent_detail.php +++ b/vilesci/personen/preinteressent_detail.php @@ -31,6 +31,7 @@ require_once('../../include/prestudent.class.php'); require_once('../../include/studiensemester.class.php'); require_once('../../include/aufmerksamdurch.class.php'); require_once('../../include/firma.class.php'); +require_once('../../include/nation.class.php'); if(!$conn=pg_pconnect(CONN_STRING)) die("Konnte Verbindung zur Datenbank nicht herstellen"); @@ -119,6 +120,8 @@ echo "

Details - $person->nachname $person->vorname

"; if(isset($_POST['save_preinteressent'])) { + //Speichern der Preinteressentdaten + $preinteressent->studiensemester_kurzbz = $_POST['studiensemester_kurzbz']; $preinteressent->aufmerksamdurch_kurzbz = $_POST['aufmerksamdurch_kurzbz']; $preinteressent->firma_id = $_POST['firma']; @@ -140,9 +143,46 @@ if(isset($_POST['save_preinteressent'])) echo "Daten wurden gespeichert"; } +if(isset($_POST['saveperson'])) +{ + //Speichern der Personendaten + + $person->staatsbuergerschaft = $_POST['staatsbuergerschaft']; + $person->geburtsnation = $_POST['geburtsnation']; + $person->sprache = $_POST['sprache']; + $person->anrede = $_POST['anrede']; + $person->titelpost = $_POST['titelpost']; + $person->titelpre = $_POST['titelpre']; + $person->nachname = $_POST['nachname']; + $person->vorname = $_POST['vorname']; + $person->vornamen = $_POST['vornamen']; + $person->gebdatum = $_POST['gebdatum']; + $person->gebort = $_POST['gebort']; + $person->gebzeit = $_POST['gebzeit']; + $person->anmerkungen = $_POST['anmerkungen']; + $person->homepage = $_POST['homepage']; + $person->svnr = $_POST['svnr']; + $person->ersatzkennzeichen = $_POST['ersatzkennzeichen']; + $person->familienstand = $_POST['familienstand']; + $person->geschlecht = $_POST['geschlecht']; + $person->anzahlkinder = $_POST['anzahlkinder']; + $person->aktiv = isset($_POST['aktiv']); + $person->updateamum = date('Y-m-d H:i:s'); + $person->updatevon = $user; + + if($person->save(false)) + { + echo 'Daten wurden erfolgreich gespeichert'; + } + else + { + echo "Fehler beim Speichern der Daten: $person->errormsg"; + } + +} if(isset($_GET['action']) && $_GET['action']=='neuezuordnung') { - //Speichern eine neue Studiengangszuordnung + //speichern einer neue Studiengangszuordnung $zuordnung = new preinteressent($conn); if(!$zuordnung->loadZuordnung($preinteressent->preinteressent_id, $_POST['studiengang_kz'])) @@ -162,7 +202,7 @@ if(isset($_GET['action']) && $_GET['action']=='neuezuordnung') if(isset($_POST['savezuordnung'])) { - //Zuordnung Speichern + //bestehende Zuordnung speichern $zuordnung = new preinteressent($conn); if($zuordnung->loadZuordnung($preinteressent->preinteressent_id, $_GET['studiengang_kz'])) @@ -180,6 +220,7 @@ if(isset($_POST['savezuordnung'])) if(isset($_POST['freigabe'])) { + //freigabe einer zuordnung $zuordnung = new preinteressent($conn); if($zuordnung->loadZuordnung($preinteressent->preinteressent_id, $_GET['studiengang_kz'])) { @@ -202,6 +243,7 @@ if(isset($_POST['freigabe'])) } if(isset($_POST['freigabe_rueckgaengig'])) { + //studiengangsfreigabe zurueckziehen $zuordnung = new preinteressent($conn); if($zuordnung->loadZuordnung($preinteressent->preinteressent_id, $_GET['studiengang_kz'])) { @@ -231,6 +273,7 @@ if(isset($_POST['freigabe_rueckgaengig'])) } if(isset($_POST['zuordnungloeschen'])) { + //zuordnung zu einem studiengang loeschen $zuordnung = new preinteressent($conn); if($zuordnung->loadZuordnung($preinteressent->preinteressent_id, $_GET['studiengang_kz'])) { @@ -255,7 +298,132 @@ echo '
"; -echo "Kontaktdaten bearbeiten"; + +$disabled=true; +$qry = "SELECT count(*) as anzahl FROM ( + SELECT 1 FROM public.tbl_prestudent WHERE person_id='$person->person_id' UNION + SELECT 1 FROM public.tbl_benutzer WHERE person_id='$person->person_id') as foo"; +if($result = pg_query($conn, $qry)) +{ + if($row = pg_fetch_object($result)) + { + if($row->anzahl==0) + $disabled=false; + } +} + +echo "
preinteressent_id&selection=personendaten' method='POST'>"; +echo ""; + +//Anrede +echo ""; +//Titelpre +echo ""; +//Titelpost +echo ""; +echo ''; +echo ''; +//Nachname +echo ""; +//Vorname +echo ""; +//Vornamen +echo ""; +echo ''; +echo ''; +//Geburtsdatum +echo ""; +//Geburtsort +echo ""; +//Geburtszeit +echo ""; +echo ''; +//Staatsbuergerschaft +echo ""; +//Geburtsnation +echo ""; +//Sprache +echo "'; +echo ''; +//SVNR +echo ""; +//Ersatzkennzeichen +echo ""; +//Geschlecht +echo "'; +echo ''; + +//Anzahlkinder +echo ""; +//Aktiv +echo ""; +echo ''; +//Anmerkung +echo ""; +//Homepage +echo ""; +//Familienstand +echo "'; +echo ""; +echo "
Anrede:Titelpre:Titelpost:Gesamtübersicht über diese Person
Nachname:Vorname:2. Vorname:'; +if(!$disabled) + echo "Kontaktdaten bearbeiten"; +else + echo "Kontaktdaten bearbeiten"; +echo '
Geburtsdatum:Geburtsort:Geburtszeit:
Staatsbürgerschaft:Geburtsnation:Sprache:
SVNR:ErsatzkennzeichenGeschlecht
Anzahl der KinderAktiv:aktiv==false?'':'checked').">
Anmerkung:Homepage:Familienstand:
"; echo ""; // ----- PREINTERESSENT ----- @@ -381,7 +549,22 @@ foreach ($zuordnung->result as $row) //Wenn noch nicht freigegeben - Freigabe Button anzeigen if($row->freigabedatum=='') { - echo ''; + $qry = "SELECT count(*) as anzahl FROM public.tbl_prestudent WHERE person_id='$person->person_id' AND studiengang_kz='$row->studiengang_kz'"; + if($result_check = pg_query($conn, $qry)) + { + if($row_check = pg_fetch_object($result_check)) + { + if($row_check->anzahl==0) + { + echo ''; + } + else + { + echo 'ist bereits im Studiengang erfasst'; + } + } + } + } else { diff --git a/vilesci/personen/preinteressent_uebernahme.php b/vilesci/personen/preinteressent_uebernahme.php index 1b08c8aec..25e98c02f 100644 --- a/vilesci/personen/preinteressent_uebernahme.php +++ b/vilesci/personen/preinteressent_uebernahme.php @@ -98,7 +98,7 @@ if($result = pg_query($conn, $qry)) echo ""; } } -echo ''; +echo ''; if(!$rechte->isBerechtigt('admin', $studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $studiengang_kz, 'suid')) die('Sie haben keine Berechtigung fuer diese Seite'); @@ -107,14 +107,13 @@ if(isset($_POST['uebertragen'])) { $anzahl_fehler=0; $anzahl_uebernommen=0; - - foreach ($_POST as $param) + foreach ($_POST as $param=>$val) { if(strstr($param, 'chk_')) { pg_query($conn, 'BEGIN;'); - $id = substr($param, 3); + $id = substr($param, 4); $preinteressent = new preinteressent($conn); if($preinteressent->load($id)) { @@ -134,8 +133,8 @@ if(isset($_POST['uebertragen'])) //Rolle anlegen $prestudent->studiensemester_kurzbz = $preinteressent->studiensemester_kurzbz; - $preinteressent1 = new preinteressent($conn); - $preinteressent1->loadStudiengangszuteilung($preinteressent_id, $studiengang_kz); + //$preinteressent1 = new preinteressent($conn); + //$preinteressent1->loadStudiengangszuteilung($preinteressent_id, $studiengang_kz); $prestudent->ausbildungssemester = 1; $prestudent->rolle_kurzbz = 'Interessent'; @@ -150,7 +149,7 @@ if(isset($_POST['uebertragen'])) uebernahmedatum='".date('Y-m-d H:i:s')."', updateamum='".date('Y-m-d H:i:s')."', updatevon='".$user."' - WHERE studiengang_kz='$studiengang_kz' AND preinteressent_id='$preinteressent_id'"; + WHERE studiengang_kz='$studiengang_kz' AND preinteressent_id='$id'"; if(pg_query($conn, $qry)) { $anzahl_uebernommen++; @@ -185,7 +184,7 @@ if(isset($_POST['uebertragen'])) } } } - echo "
Es wurden $anzahl_uebernommen Personen uebernommen"; + echo "
Es wurde(n) $anzahl_uebernommen Person(en) uebernommen"; if($anzahl_fehler>0) echo "
Es sind $anzahl_fehler Fehler aufgetreten"; } @@ -214,9 +213,9 @@ foreach ($preinteressent->result as $row) echo "$person->nachname"; echo "$person->vorname"; echo "$person->gebdatum"; - echo "$preinteressent->studiensemester_kurzbz"; - echo "$preinteressent->anmerkung"; - echo ""; + echo "$row->studiensemester_kurzbz"; + echo "$row->anmerkung"; + echo ""; echo ''; } echo '
'; diff --git a/vilesci/personen/preinteressent_uebersicht.php b/vilesci/personen/preinteressent_uebersicht.php index d8f57dc50..036ef80ad 100644 --- a/vilesci/personen/preinteressent_uebersicht.php +++ b/vilesci/personen/preinteressent_uebersicht.php @@ -118,10 +118,10 @@ echo ''; echo '   '; echo ''; echo "
"; -echo " "; +echo " "; echo ""; echo '
'; -echo 'NEU'; +echo 'neuen Preinteressenten anlegen'; //FREIGEBEN / LOESCHEN if(isset($_GET['action'])) diff --git a/vilesci/stammdaten/lv_wartung.php b/vilesci/stammdaten/lv_wartung.php index 671a0a5d7..37291ec80 100644 --- a/vilesci/stammdaten/lv_wartung.php +++ b/vilesci/stammdaten/lv_wartung.php @@ -200,7 +200,7 @@ if((isset($radio_1) && !isset($radio_2))||(!isset($radio_1) && isset($radio_2)) -

Zusammenlegen von Lehreinheiten (kurzbz.' - '.$semester; ?>)

+

Zusammenlegen von Lehrveranstaltungen (kurzbz.' - '.$semester; ?>)

max_sem; echo "Kurzbz"; echo "Bezeichnung"; echo "ECTS"; - echo "SWS"; + echo "SS"; echo " "; $lf = new lehrveranstaltung($conn); @@ -253,7 +253,7 @@ $smax=$s[$stg_kz]->max_sem; echo "Kurzbz"; echo "Bezeichnung"; echo "ECTS"; - echo "SWS"; + echo "SS"; $lf = new lehrveranstaltung($conn); $lf->getTab($stg_kz,$semester, $order_2); diff --git a/vilesci/stammdaten/personen_wartung.php b/vilesci/stammdaten/personen_wartung.php index c7183869c..5583e6a7b 100644 --- a/vilesci/stammdaten/personen_wartung.php +++ b/vilesci/stammdaten/personen_wartung.php @@ -18,22 +18,9 @@ if (!$conn = @pg_pconnect(CONN_STRING)) $msg=''; $outp=''; -if (isset($_GET['nn']) || isset($_POST['nn'])) -{ - $nn=(isset($_GET['nn'])?$_GET['nn']:$_POST['nn']); -} -else -{ - $nn=NULL; -} -if (isset($_GET['vn']) || isset($_POST['vn'])) -{ - $vn=(isset($_GET['vn'])?$_GET['vn']:$_POST['vn']); -} -else -{ - $vn=NULL; -} + +$filter = isset($_REQUEST['filter'])?$_REQUEST['filter']:''; + if (isset($_GET['person_id']) || isset($_POST['person_id'])) { $person_id=(isset($_GET['person_id'])?$_GET['person_id']:$_POST['person_id']); @@ -165,13 +152,9 @@ if((isset($radio_1) && !isset($radio_2))||(!isset($radio_1) && isset($radio_2)) "; -echo ""; -echo ""; -echo ""; -echo ""; -echo ""; -echo ""; -echo "
NachnameVorname 
"; +echo ""; +echo ""; +echo ""; //aufruf ?> @@ -180,7 +163,7 @@ echo "";
"; + echo "
"; echo ""; echo ""; @@ -188,17 +171,17 @@ echo "
"; //Tabelle 1 echo ""; - echo ""; - echo ""; - echo ""; + echo ""; + echo ""; + echo ""; echo ""; - echo ""; - echo ""; + echo ""; + echo ""; echo ""; echo ""; $lf = new person($conn); - $lf->getTab($nn,$vn, $order_1); + $lf->getTab($filter, $order_1); $i=0; foreach($lf->personen as $l) { @@ -222,17 +205,17 @@ echo "
IDNachnameVornameIDNachnameVornameGeburtsdatumSVNrErsatzkennz.SVNrErsatzkennz.Ext-ID 
"; //Tabelle 2 echo ""; echo ""; - echo ""; - echo ""; - echo ""; + echo ""; + echo ""; + echo ""; echo ""; - echo ""; - echo ""; + echo ""; + echo ""; echo ""; echo ""; $lf = new person($conn); - $lf->getTab($nn, $vn, $order_2); + $lf->getTab($filter, $order_2); $i=0; foreach($lf->personen as $l) {
 IDNachnameVornameIDNachnameVornameGeburtsdatumSVNrErsatzkennz.SVNrErsatzkennz.Ext-ID