diff --git a/cis/private/lehre/anwesenheitsliste.pdf.php b/cis/private/lehre/anwesenheitsliste.pdf.php old mode 100644 new mode 100755 index 063bc9edd..5a352cd18 --- a/cis/private/lehre/anwesenheitsliste.pdf.php +++ b/cis/private/lehre/anwesenheitsliste.pdf.php @@ -129,7 +129,7 @@ $qry = "SELECT tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe, (SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status, tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_student.studiengang_kz AS stg_kz_student, - tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid + tbl_zeugnisnote.note, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr FROM campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student ON(uid=student_uid) @@ -186,6 +186,7 @@ if($result = $db->db_query($qry)) 'vorname'=>$row->vorname, 'nachname'=>$row->nachname, 'personenkennzeichen'=>trim($row->matrikelnr), + 'matr_nr'=>$row->matr_nr, 'semester'=>$row->semester, 'verband'=>trim($row->verband), 'gruppe'=>trim($row->gruppe), diff --git a/cis/private/lehre/anwesenheitsliste_bilder.pdf.php b/cis/private/lehre/anwesenheitsliste_bilder.pdf.php old mode 100644 new mode 100755 index bec92f46f..6a44d8daf --- a/cis/private/lehre/anwesenheitsliste_bilder.pdf.php +++ b/cis/private/lehre/anwesenheitsliste_bilder.pdf.php @@ -99,5 +99,9 @@ function getmax($val1,$val2) return ($val1>$val2)?$val1:$val2; } -require_once('../../../include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php'); +if (file_exists('../../../addons/sfu-milano/include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php')) + require_once('../../../addons/sfu-milano/include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php'); +else + require_once('../../../include/'.EXT_FKT_PATH.'/anwesenheitsliste_bilder.inc.php'); + ?> diff --git a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php index bd95242d3..85126e44a 100755 --- a/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldungen_liste.php @@ -229,6 +229,8 @@ $rechte->getBerechtigungen($uid); t('global/nachname'); ?> t('global/matrikelnummer'); ?> t('global/datum'); ?> + t('benotungstool/note'); ?> + t('global/anmerkung'); ?> @@ -256,8 +258,10 @@ $rechte->getBerechtigungen($uid); echo ''.$anmeldung->reihung.''; echo ''.$student->vorname.''; echo ''.$student->nachname.''; - echo ''.$student->matrikelnr.''; + echo ''.$student->matr_nr.''; echo ''.$date.''; + echo ''; + echo ''; echo ''; } ?> @@ -274,6 +278,19 @@ $rechte->getBerechtigungen($uid); } ?> +
+ + + + + + + + + + + diff --git a/cis/private/profile/studienplan.php b/cis/private/profile/studienplan.php index ed3ed7ada..9b7fb170e 100755 --- a/cis/private/profile/studienplan.php +++ b/cis/private/profile/studienplan.php @@ -365,7 +365,7 @@ function drawTree($tree, $depth) { global $uid, $stsem_arr, $noten_arr, $lvangebot_arr; global $datum_obj, $db, $lv_arr, $p, $note_pruef_arr; - + foreach($tree as $row_tree) { $style=''; @@ -498,7 +498,7 @@ function drawTree($tree, $depth) elseif(!$found) { if($abgeschlossen) - echo ''.$p->t('studienplan/regelabgeschlossen'),''; + echo ''.$p->t('studienplan/regelabgeschlossen'),''; elseif(!$row_tree->stpllv_pflicht) echo ''.$p->t('studienplan/optional').''; else @@ -508,7 +508,7 @@ function drawTree($tree, $depth) else { if($abgeschlossen) - echo ''.$p->t('studienplan/regelabgeschlossen'),''; + echo ''.$p->t('studienplan/regelabgeschlossen'),''; elseif(!$row_tree->stpllv_pflicht) echo ''.$p->t('studienplan/optional').''; else @@ -529,9 +529,10 @@ function drawTree($tree, $depth) // if($semester==$empfohlenesSemester) // $tdclass[]='empfehlung'; // } + + $tdinhalt=''; - // Ist bereits eine Note für diese LV in diesem Stsem vorhanden? if(isset($noten_arr[$row_tree->lehrveranstaltung_id][$stsem])) { @@ -542,16 +543,23 @@ function drawTree($tree, $depth) } elseif(count($kompatibleLVs) > 0) { + $found = false; foreach($kompatibleLVs as $komp) { if(isset($noten_arr[$komp][$stsem])) { - if($note_pruef_arr[$noten_arr[$komp][$stsem]]->positiv) - $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; - else - $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; + $found = true; + if($note_pruef_arr[$noten_arr[$komp][$stsem]]->positiv) + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; + else + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$komp][$stsem]]->anmerkung.''; } } + + if(!$found) + { + $tdinhalt.= '-'; + } } else { diff --git a/include/lehrveranstaltung.class.php b/include/lehrveranstaltung.class.php index 4f76bd440..ec8c272a4 100755 --- a/include/lehrveranstaltung.class.php +++ b/include/lehrveranstaltung.class.php @@ -373,6 +373,7 @@ class lehrveranstaltung extends basis_db $lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag); $lv_obj->bezeichnung_arr['German'] = $row->bezeichnung; + $lv_obj->bezeichnung_arr['Italian'] = $row->bezeichnung; $lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english; if ($lv_obj->bezeichnung_arr['English'] == '') $lv_obj->bezeichnung_arr['English'] = $lv_obj->bezeichnung_arr['German']; diff --git a/include/studiengang.class.php b/include/studiengang.class.php index b5e4b8650..00317acf8 100755 --- a/include/studiengang.class.php +++ b/include/studiengang.class.php @@ -232,18 +232,25 @@ class studiengang extends basis_db return true; } - /** - * Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann - * @return boolean - */ - public function getAllForBewerbung() - { - $qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode, tbl_lgartcode.bezeichnung ' - . 'FROM lehre.vw_studienplan ' - . 'LEFT JOIN bis.tbl_lgartcode USING (lgartcode) ' - . 'WHERE onlinebewerbung IS TRUE ' - . 'AND aktiv IS TRUE ' - . 'ORDER BY typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC'; + /** + * Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann + * @param array $studiensemester_kurzbz default: null Array aus Studiensemestern fuer die man sich onlinebewerben kann + * @return boolean + */ + public function getAllForBewerbung($studiensemester_kurzbz_arr=null) + { + $qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode, tbl_lgartcode.bezeichnung ' + . 'FROM lehre.vw_studienplan ' + . 'LEFT JOIN bis.tbl_lgartcode USING (lgartcode) ' + . 'WHERE onlinebewerbung IS TRUE ' + . 'AND aktiv IS TRUE '; + + /*if (!is_null($studiensemester_kurzbz_arr)) + { + $studiensemester_kurzbz_arr = $this->implode4SQL($studiensemester_kurzbz_arr); + $qry .= ' AND studiensemester_kurzbz IN('.$studiensemester_kurzbz_arr.')'; + }*/ + $qry .= ' ORDER BY typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC'; if(!$result = $this->db_query($qry)) { @@ -257,7 +264,7 @@ class studiengang extends basis_db } return true; - } + } /** * Laedt alle Studientypen in das Attribut studiengang_typ_array diff --git a/include/studienplan.class.php b/include/studienplan.class.php index e73be4b91..9cc117d85 100644 --- a/include/studienplan.class.php +++ b/include/studienplan.class.php @@ -696,35 +696,66 @@ class studienplan extends basis_db /** * Holt die aktiven Studienplaene eines Studiensemester / Ausbildungssemesters - * @param $studiengang_kz - * @param $studiensemester_kurzbz optional - * @param $ausbildungssemester optional - * @param $orgform_kurzbz optional + * @param studiensemester_kurzbz + * @param $ausbuldungssemester + * @param $orgform_kurzbz */ - function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz = '', $ausbildungssemester = '', $orgform_kurzbz = '') + function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester="", $orgform_kurzbz = "") { $qry = "SELECT - tbl_studienplan.*, tbl_studienplan_semester.semester, tbl_studienplan_semester.studiensemester_kurzbz + studienplan_id, + studienordnung_id, + orgform_kurzbz, + tbl_studienplan.version AS version_studienplan, + tbl_studienplan.bezeichnung AS bezeichnung_studienplan, + regelstudiendauer, + sprache, + aktiv, + semesterwochen, + testtool_sprachwahl, + tbl_studienplan.insertamum AS insertamum_studienplan, + tbl_studienplan.insertvon AS insertvon_studienplan, + tbl_studienplan.updateamum AS updateamum_studienplan, + tbl_studienplan.updatevon AS updatevon_studienplan, + ects_stpl, + pflicht_sws, + pflicht_lvs, + studiengang_kz, + tbl_studienordnung.version AS version_studienordnung, + gueltigvon, + gueltigbis, + tbl_studienordnung.bezeichnung AS bezeichnung_studienordnung, + ects, + studiengangbezeichnung, + studiengangbezeichnung_englisch, + studiengangkurzbzlang, + akadgrad_id, + tbl_studienordnung.insertamum AS insertamum_studienordnung, + tbl_studienordnung.insertvon AS insertvon_studienordnung, + tbl_studienordnung.updateamum AS updateamum_studienordnung, + tbl_studienordnung.updatevon AS updatevon_studienordnung, + status_kurzbz, + standort_id, + studienplan_semester_id, + studiensemester_kurzbz, + semester FROM lehre.tbl_studienplan JOIN lehre.tbl_studienordnung USING(studienordnung_id) JOIN lehre.tbl_studienplan_semester USING(studienplan_id) WHERE tbl_studienplan.aktiv - AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER); - - if($studiensemester_kurzbz != '') - $qry .= " AND tbl_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz); + AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." + AND tbl_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz); if($ausbildungssemester!='') - $qry .= " AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester); + $qry.=" AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester); if($orgform_kurzbz!='') { - $qry .= " AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz); + $qry.=" AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz); } - $res = array(); if($result = $this->db_query($qry)) diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index d62eb22e6..58792af76 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -193,6 +193,7 @@ $menu=array 'Firmenwartung'=>array('name'=>'Firmenwartung', 'link'=>'stammdaten/firma_zusammen_uebersicht.php', 'target'=>'main','permissions'=>array('basis/firma')), 'checkStudenten'=>array('name'=>'CheckStudenten', 'link'=>'../system/checkStudenten.php', 'target'=>'main'), 'StudienplanZuteilung'=>array('name'=>'Studienplan Zuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main','permissions'=>array('assistenz')), + 'lv_merge'=>array('name'=>'LVs zusammenlegen', 'link'=>'lehre/lv_merge.php', 'target'=>'main','permissions'=>array('admin','lv-plan')), ), 'Auswertung'=> array ( diff --git a/locale/de-AT/pruefung.php b/locale/de-AT/pruefung.php index be9bb41c7..3deaff762 100755 --- a/locale/de-AT/pruefung.php +++ b/locale/de-AT/pruefung.php @@ -138,6 +138,7 @@ $this->phrasen['pruefung/emailLektorAm'] = 'am'; $this->phrasen['pruefung/emailLektorVon'] = 'von'; $this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; $this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; - +$this->phrasen['pruefung/derLektor'] = 'LektorIn'; +$this->phrasen['pruefung/dieKommission'] = 'Kommission'; ?> diff --git a/locale/en-US/pruefung.php b/locale/en-US/pruefung.php index 9c7eb8343..d41d0c8c6 100755 --- a/locale/en-US/pruefung.php +++ b/locale/en-US/pruefung.php @@ -138,6 +138,9 @@ $this->phrasen['pruefung/emailLektorAm'] = 'am'; $this->phrasen['pruefung/emailLektorVon'] = 'von'; $this->phrasen['pruefung/emailLektorUhrBis'] = 'Uhr bis'; $this->phrasen['pruefung/emailLektorUhrAngemeldet'] = 'Uhr angemeldet.'; +$this->phrasen['pruefung/derLektor'] = 'LektorIn'; +$this->phrasen['pruefung/dieKommission'] = 'Kommission'; + ?> diff --git a/locale/it-IT/benotungstool.php b/locale/it-IT/benotungstool.php index 15afeb510..7b2ee38fe 100755 --- a/locale/it-IT/benotungstool.php +++ b/locale/it-IT/benotungstool.php @@ -106,7 +106,7 @@ $this->phrasen['benotungstool/neueUebungAnlegen']='crea nuova esercitazione'; $this->phrasen['benotungstool/nichtFreigeschaltet']='non attivato'; $this->phrasen['benotungstool/nichtGespeichertKreuzerllisteNichtFreigegeben']='impossibile attivare cambiamenti in quanto la lista con caselle da barrare scelta non è attivata'; $this->phrasen['benotungstool/nichtVorbereitet']='non preparato'; -$this->phrasen['benotungstool/note']='voto'; +$this->phrasen['benotungstool/note']='Voto'; $this->phrasen['benotungstool/noteEingeben']='Inserire un voto tra 1 - 5 ovvero 7 (non valutato), 10 (superato), 14 (non superato) ovvero 16 (frequentato con successo)'; $this->phrasen['benotungstool/noteEingebenOderLeer']='Inserire un voto tra 1 - 5 ovvero 7 (non valutato), 10 (superato), 14 (non superato) ovvero 16 (frequentato con successo) o lasciare libero il campo'; $this->phrasen['benotungstool/noteIstUngueltig']='voto non valido'; diff --git a/locale/it-IT/global.php b/locale/it-IT/global.php index 618c5b83b..e37b79008 100755 --- a/locale/it-IT/global.php +++ b/locale/it-IT/global.php @@ -94,12 +94,12 @@ $this->phrasen['global/loeschen']='cancella'; $this->phrasen['global/löschen']='cancella'; $this->phrasen['global/mail']='messaggio mail'; $this->phrasen['global/mann']='maschio/uomo'; -$this->phrasen['global/matrikelnummer']='numero di matricola'; +$this->phrasen['global/matrikelnummer']='Matricola'; $this->phrasen['global/minute']='minuti'; $this->phrasen['global/mittwoch']='mercoledì'; $this->phrasen['global/montag']='lunedì'; $this->phrasen['global/nachname']='Cognome'; -$this->phrasen['global/name']='nome'; +$this->phrasen['global/name']='Nome'; $this->phrasen['global/nebenwohnsitz']='domicilio'; $this->phrasen['global/nein']='no'; $this->phrasen['global/neu']='nuovo'; diff --git a/locale/it-IT/lvaliste.php b/locale/it-IT/lvaliste.php index d9b6f08e5..992e06726 100755 --- a/locale/it-IT/lvaliste.php +++ b/locale/it-IT/lvaliste.php @@ -14,7 +14,7 @@ $this->phrasen['lvaliste/keineDatensaetze']=''; $this->phrasen['lvaliste/koordination']=''; $this->phrasen['lvaliste/lehrfach']=''; $this->phrasen['lvaliste/lehrfachBezeichnung']=''; -$this->phrasen['lvaliste/lehrform']=''; +$this->phrasen['lvaliste/lehrform']='Forma'; $this->phrasen['lvaliste/lehrveranstaltungen']=''; $this->phrasen['lvaliste/lektor']=''; $this->phrasen['lvaliste/lvBezeichnung']=''; diff --git a/locale/it-IT/pruefung.php b/locale/it-IT/pruefung.php index e61d6c8f4..225986b43 100755 --- a/locale/it-IT/pruefung.php +++ b/locale/it-IT/pruefung.php @@ -137,4 +137,9 @@ $this->phrasen['pruefung/emailLektorAm'] = 'del'; $this->phrasen['pruefung/emailLektorVon'] = 'dalle'; $this->phrasen['pruefung/emailLektorUhrBis'] = 'alle'; $this->phrasen['pruefung/emailLektorUhrAngemeldet'] = '.'; +$this->phrasen['pruefung/derLektor'] = 'Il docente'; +$this->phrasen['pruefung/dieKommission'] = 'La commissione'; + + + ?> diff --git a/rdf/konto.rdf.php b/rdf/konto.rdf.php index f633ad4f6..ce3be694f 100644 --- a/rdf/konto.rdf.php +++ b/rdf/konto.rdf.php @@ -31,6 +31,7 @@ require_once('../config/vilesci.config.inc.php'); require_once('../include/konto.class.php'); require_once('../include/person.class.php'); 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'); @@ -204,13 +205,15 @@ elseif ($xmlformat=='xml') { global $datum, $btyp; $rueckerstattung=false; - + $stg = new studiensemester($row->studiensemester_kurzbz); + echo " buchungsnr."]]> person_id."]]> studiengang_kz."]]> studiensemester_kurzbz."]]> + studienjahr_kurzbz."]]> buchungsnr_verweis."]]> betrag))."]]>"; if($row->buchungsnr_verweis!='') @@ -275,6 +278,7 @@ elseif ($xmlformat=='xml') nachname."]]> vorname."]]> vornamen."]]> + matr_nr."]]> anrede.' '.$pers->titelpre.' '.$pers->vorname.' '.$pers->nachname.' '.$pers->titelpost)."]]> titelpre.' '.$pers->vorname.' '.$pers->nachname.' '.$pers->titelpost)."]]> convertISODate($pers->gebdatum)."]]> @@ -324,4 +328,4 @@ elseif ($xmlformat=='xml') echo "\n"; } -?> \ No newline at end of file +?> diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php index 842a9a36f..1f56ae3e9 100755 --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -823,6 +823,10 @@ else } else $stg_kz = sprintf("%04s", abs($student->studiengang_kz)); + if (($semester % 2) == 0) + $studienjahr = $semester/2; + else + $studienjahr = intval($semester/2)+1; echo ' @@ -834,12 +838,14 @@ else vorname.']]> nachname.']]> matrikelnr.']]> + matr_nr.']]> convertISODate($student->gebdatum).']]> gebdatum.']]> gebort.']]> verband.']]> gruppe.']]> + orgform_kurzbz.']]> bezeichnung.']]> @@ -862,6 +868,7 @@ else convertISODate($studienbeginn).']]> studiensemester_kurzbz.']]> + studienjahr_kurzbz.']]> bezeichnung.']]> convertISODate($stsem->start).']]> diff --git a/submodules/tablesorter b/submodules/tablesorter new file mode 160000 index 000000000..b70ba2498 --- /dev/null +++ b/submodules/tablesorter @@ -0,0 +1 @@ +Subproject commit b70ba2498dd23d9d97605ff386cdd67ff6bd9140 diff --git a/vilesci/lehre/lv_merge.php b/vilesci/lehre/lv_merge.php new file mode 100644 index 000000000..04a143a59 --- /dev/null +++ b/vilesci/lehre/lv_merge.php @@ -0,0 +1,801 @@ + + */ +/** + * Script to merge or transfer courses. + * Two columns are shown with courses that matches the filter. + * Mark the course on the left side, that will be merged with the one on the right side. + */ +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/basis_db.class.php'); +//require_once('../../include/person.class.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/studiengang.class.php'); +require_once('../../include/organisationsform.class.php'); +require_once('../../include/studienplan.class.php'); +require_once('../../include/studiensemester.class.php'); +require_once('../../include/lehrveranstaltung.class.php'); +require_once('../../include/lehrtyp.class.php'); + +if (!$db = new basis_db()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); + +$uid = get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($uid); +if(!$rechte->isBerechtigt('lehre/lehrveranstaltung')) + die($rechte->errormsg); + +$activeAddons = array_filter(explode(";", ACTIVE_ADDONS)); + +$msg=''; + +$input_text_left = isset($_REQUEST['input_text_left'])?$_REQUEST['input_text_left']:''; +$input_text_right = isset($_REQUEST['input_text_right'])?$_REQUEST['input_text_right']:''; +$select_stg_kz_left = isset($_REQUEST['select_stg_kz_left'])?$_REQUEST['select_stg_kz_left']:''; +$select_stg_kz_right = isset($_REQUEST['select_stg_kz_right'])?$_REQUEST['select_stg_kz_right']:''; +$select_semester_left = isset($_REQUEST['select_semester_left'])?$_REQUEST['select_semester_left']:'-1'; +$select_semester_right = isset($_REQUEST['select_semester_right'])?$_REQUEST['select_semester_right']:'-1'; +$select_orgform_left = isset($_REQUEST['select_orgform_left'])?$_REQUEST['select_orgform_left']:''; +$select_orgform_right = isset($_REQUEST['select_orgform_right'])?$_REQUEST['select_orgform_right']:''; +$select_studienplan_left = isset($_REQUEST['select_studienplan_left'])?$_REQUEST['select_studienplan_left']:''; +$select_studienplan_right = isset($_REQUEST['select_studienplan_right'])?$_REQUEST['select_studienplan_right']:''; +$select_lehrtyp_left = isset($_REQUEST['select_lehrtyp_left'])?$_REQUEST['select_lehrtyp_left']:''; +$select_lehrtyp_right = isset($_REQUEST['select_lehrtyp_right'])?$_REQUEST['select_lehrtyp_right']:''; + +$courseLeft = isset($_REQUEST['courseLeft'])?$_REQUEST['courseLeft']:'-1'; +$courseRight = isset($_REQUEST['courseRight'])?$_REQUEST['courseRight']:'-1'; + +$stsem = new studiensemester(); +$stsem_default = $stsem->getakt(); + +$studiensemester_kurzbz = isset($_REQUEST['studiensemester_kurzbz'])?$_REQUEST['studiensemester_kurzbz']:$stsem_default; + +//echo $courseLeft.'
'; +//echo $courseRight.'
'; + +if (isset($_REQUEST['compare'])) +{ + if ($courseLeft!=$courseRight && $courseLeft!='-1' && $courseRight!='-1') + { + // Define an array of attributes, that are NOT to be compared + $deleteValues = array( + 'new' => null, + 'ext_id' => null, + 'insertamum' => null, + 'insertvon' => null, + 'updateamum' => null, + 'updatevon' => null, + 'bezeichnung_arr' => null, + 'lehrveranstaltungen' => null, + 'errormsg' => null + ); + + $lv1 = new lehrveranstaltung(); + $lv1->load($courseLeft); + $lv1_arr = get_object_vars($lv1); + $lv1_arr = array_diff_key($lv1_arr, $deleteValues); + + $lv2 = new lehrveranstaltung(); + $lv2->load($courseRight); + $lv2_arr = get_object_vars($lv2); + $lv2_arr = array_diff_key($lv2_arr, $deleteValues); + + $lv_diff1 = array_diff_assoc($lv1_arr, $lv2_arr); + $lv_diff2 = array_diff_assoc($lv2_arr, $lv1_arr); + + $msg = 'Differences in courses (only columns with differences are shown)'; + $msg .= '
t('pruefung/derLektor'); ?>getFullName(FALSE); ?>
t('pruefung/dieKommission'); ?>
'; + foreach ($lv_diff1 as $key => $value) + { + $msg .= ''; + } + $msg .= ''; + foreach ($lv_diff1 as $key => $value) + { + $msg .= ''; + } + $msg .= ''; + foreach ($lv_diff2 as $key => $value) + { + $msg .= ''; + } + $msg .= '
'.StringCut($key,10,false,'...').'
'.$value.'
'.$value.'
'; + } + else + $msg="Please select 2 different courses"; +} + +if((isset($_REQUEST['transfer']) || isset($_REQUEST['mergeDelete'])) && isset($courseLeft) && isset($courseRight) && $courseLeft>=0 && $courseRight>=0) +{ + if($courseLeft==$courseRight) + { + $msg="The courses may not have the same ID"; + } + else + { + $msg=''; + $update_qry="BEGIN;"; + + if (isset($_REQUEST['transfer'])) + { + $update_qry.="UPDATE campus.tbl_benutzerlvstudiensemester SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE campus.tbl_lvgesamtnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + // Updates for Pruefungsverwaltung + $update_qry.="UPDATE campus.tbl_lehrveranstaltung_pruefung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND pruefung_id IN (SELECT pruefung_id FROM campus.tbl_pruefung WHERE studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).");"; + $update_qry.="UPDATE campus.tbl_pruefungsanmeldung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND pruefungstermin_id IN (SELECT pruefungstermin_id FROM campus.tbl_pruefungstermin JOIN campus.tbl_pruefung USING (pruefung_id) WHERE studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).");"; + + // LV-Infos will be copied if $courseRight has none and $courseLeft has some + $lvinfo_qry_right = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER).";"; + $result_right = $db->db_query($lvinfo_qry_right); + $lvinfo_qry_left = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $result_left = $db->db_query($lvinfo_qry_left); + // Check if $courseRight has lvinfos + if ($db->db_affected_rows($result_right)==0) + { + if ($db->db_affected_rows($result_left)>0) + { + while($row = $db->db_fetch_object($result_left)) + { + $update_qry.=" INSERT INTO campus.tbl_lvinfo (lehrveranstaltung_id, sprache, titel, lehrziele, lehrinhalte, methodik, voraussetzungen, unterlagen, pruefungsordnung, anmerkung, kurzbeschreibung, genehmigt, aktiv, updateamum, updatevon, insertamum, insertvon, anwesenheit) + SELECT ".$db->db_add_param($courseRight, FHC_INTEGER).", ".$db->db_add_param($row->sprache).", titel, lehrziele, lehrinhalte, methodik, voraussetzungen, unterlagen, pruefungsordnung, anmerkung, kurzbeschreibung, genehmigt, aktiv, NULL, NULL, now(), ".$db->db_add_param($uid).", anwesenheit + FROM campus.tbl_lvinfo + WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." + AND sprache=".$db->db_add_param($row->sprache).";"; + } + } + } + $update_qry.="/*
*/"; + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + // If lerhfach_id was the same as the old lehrveranstaltung_id, it will be changed to + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrfach_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrfach_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE lehre.tbl_zeugnisnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE lehre.tbl_moodle SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + $update_qry.="UPDATE lehre.tbl_lvangebot SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + // Notenschluesselzuordnung will be copied if $courseRight has none and $courseLeft has some + $notenschluessel_qry_right = "SELECT * FROM lehre.tbl_notenschluesselzuordnung WHERE lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER).";"; + $result_notenschluessel_right = $db->db_query($notenschluessel_qry_right); + $notenschluessel_qry_left = "SELECT * FROM lehre.tbl_notenschluesselzuordnung WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $result_notenschluessel_left = $db->db_query($notenschluessel_qry_left); + // Check if $courseRight has notenschluesselzuordnung + if ($db->db_affected_rows($result_notenschluessel_right)==0) + { + if ($db->db_affected_rows($result_notenschluessel_left)>0) + { + while($row = $db->db_fetch_object($result_notenschluessel_left)) + { + $update_qry.=" INSERT INTO lehre.tbl_notenschluesselzuordnung (notenschluessel_kurzbz, lehrveranstaltung_id, studienplan_id, oe_kurzbz, studiensemester_kurzbz) + SELECT notenschluessel_kurzbz, ".$db->db_add_param($courseRight, FHC_INTEGER).", studienplan_id, oe_kurzbz, studiensemester_kurzbz + FROM lehre.tbl_notenschluesselzuordnung + WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + } + } + } + $update_qry.="/*
*/"; + $update_qry.="UPDATE public.tbl_preincoming_lehrveranstaltung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
Addons
*/"; + + //addon lvevaluierung + if (in_array('lvevaluierung', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvevaluierung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + } + //addon lvevaluierung + if (in_array('lvinfo', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvinfo SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz).";"; + } + } + + if (isset($_REQUEST['mergeDelete'])) + { + $update_qry.="UPDATE campus.tbl_benutzerlvstudiensemester SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_feedback SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_lehrveranstaltung_pruefung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_lvgesamtnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_lvinfo SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE campus.tbl_pruefungsanmeldung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
*/"; + $update_qry.="UPDATE lehre.tbl_anrechnung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_anrechnung SET lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehreinheit SET lehrfach_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrfach_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehrveranstaltung_kompatibel SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lehrveranstaltung_kompatibel SET lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id_kompatibel=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lvangebot SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lvregel SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_lvregel SET studienplan_lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE studienplan_lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_moodle SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_notenschluesselzuordnung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_studienplan_lehrveranstaltung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_studienplan_lehrveranstaltung SET studienplan_lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE studienplan_lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_studienplan_lehrveranstaltung SET studienplan_lehrveranstaltung_id_parent=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE studienplan_lehrveranstaltung_id_parent=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_vertrag SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="UPDATE lehre.tbl_zeugnisnote SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
*/"; + $update_qry.="UPDATE public.tbl_preincoming_lehrveranstaltung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*
Addons
*/"; + //addon lvevaluierung + if (in_array('lvevaluierung', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvevaluierung SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + } + //addon lvevaluierung + if (in_array('lvinfo', $activeAddons)) + { + $update_qry.="UPDATE addon.tbl_lvinfo SET lehrveranstaltung_id=".$db->db_add_param($courseRight, FHC_INTEGER)." WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + } + $update_qry.="/*
*/"; + $update_qry.="DELETE FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($courseLeft, FHC_INTEGER).";"; + $update_qry.="/*

*/"; + } + + //$msg = "Merged successfully
"; + //$msg .= "
".mb_eregi_replace(';',';
',$update_qry); + + if($db->db_query($update_qry)) + { + $msg = "Merged successfully
"; + $msg_qry = mb_eregi_replace(';',';
',$update_qry); + $msg_qry = str_replace('/*', '', $msg_qry); + $msg_qry = str_replace('*/', '', $msg_qry); + $msg .= "
".$msg_qry; + $db->db_query("COMMIT;"); + } + else + { + $msg = $db->errormsg; + $msg .= "An error occured while updating data. No changes were made
"; + $db->db_query("ROLLBACK;"); + $msg_qry = mb_eregi_replace(';',';
',$update_qry); + $msg_qry = str_replace('/*', '', $msg_qry); + $msg_qry = str_replace('*/', '', $msg_qry); + $msg.= "
".$msg_qry."ROLLBACK"; + } + //$courseLeft=0; + //$courseRight=0; + } +} +/*if((isset($courseLeft) && !isset($courseRight))||(!isset($courseLeft) && isset($courseRight)) || ($courseLeft<0 || $courseRight<0)) +{ + $msg="Please select a radio-button from each table"; +}*/ +?> + + + + + + + + + + + LV-Merge/Transfer + + +

Merge/Transfer courses

+ +'.$msg.'
'; +echo '
'; +echo '
+
'; +////////// +// FILTER LEFT SIDE +////////// + +// Degree Program DropDown +$studiengang = new studiengang(); +$studiengang->getAll('typ, kurzbz'); + +//echo 'Degree Program '; +echo ''; +$typ = ''; +$maxsemester = array(); + +foreach ($studiengang->result as $stg) +{ + if ($typ != $stg->typ || $typ=='') + { + if ($typ!='') + echo ''; + echo ''; + } + + echo ''; + $maxsemester[$stg->studiengang_kz] = $stg->max_semester; + $typ = $stg->typ; +} +echo '
or '; + +// Input text or ID +//echo ''; +echo ''; + +echo '
'; + +// Semester DropDown +echo 'Semester
'; + +// Orgform DropDown +echo ' Orgform
'; + +// Studienplan DropDown +echo ' Studienplan
'; + +// Type DropDown +echo ' Type
'; + +echo ''; +echo '

'; +echo ''; + +echo '
'; + +echo '
+
'; +////////// +// FILTER RIGHT SIDE +////////// + +// Degree Program DropDown +$studiengang = new studiengang(); +$studiengang->getAll('typ, kurzbz'); + +//echo 'Degree Program '; +echo ''; +$typ = ''; +$maxsemester = array(); +foreach ($studiengang->result as $stg) +{ + if ($typ != $stg->typ || $typ=='') + { + if ($typ!='') + echo ''; + echo ''; + } + + echo ''; + $maxsemester[$stg->studiengang_kz] = $stg->max_semester; + $typ = $stg->typ; +} +echo '
or '; + +// Input text or ID +//echo ''; +echo ''; + +echo '
'; + +// Semester DropDown +echo 'Semester
'; + +// Orgform DropDown +echo ' Orgform
'; + +// Studienplan DropDown +echo ' Studienplan
'; + +// Type DropDown +echo ' Type
'; + +echo ''; +echo '

'; +echo ''; + +echo '
'; + +echo '
+
'; +echo '
'; + +$stg_arr = new studiengang(); +$stg_arr->getAll(null,false); +foreach ($stg_arr->result as $row) + $studiengang_arr[$row->studiengang_kz] = $row->kurzbzlang; + +////////// +// COURSES LEFT SIDE +////////// +echo '
'; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; +echo ''; + +echo ' '; + +echo ' | '; + +echo ' | '; + +echo ' '; + +echo '
+
'; + + +// Left table +echo 'Select course to be deleted or copied from'; +echo ''; +echo ""; +echo ""; +echo ""; +if ($select_stg_kz_left=='') + echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; + +//if ((substr($input_text_left,0,1)=='#' || ($input_text_left!='' && strlen($input_text_left)>=3)) || $select_studienplan_left!='' || $select_stg_kz_left!='') +if ((is_numeric($input_text_left) || ($input_text_left!='' && strlen($input_text_left)>=3)) || $select_studienplan_left!='' || $select_stg_kz_left!='') +{ + $qry_left = "SELECT DISTINCT * FROM lehre.tbl_lehrveranstaltung "; + + /*if ($input_text_left!='') + { + if (substr($input_text_left,0,1)=='#') + $qry_left .= " WHERE lehrveranstaltung_id=".$db->db_add_param(substr($input_text_left,1), FHC_INTEGER); + else + $qry_left .= " WHERE lower(bezeichnung) LIKE LOWER('%".$db->db_escape($input_text_left)."%')"; + } + else*/ + { + if ($select_studienplan_left!='') + $qry_left .= " JOIN lehre.tbl_studienplan_lehrveranstaltung USING (lehrveranstaltung_id)"; + + $qry_left .= " WHERE 1=1"; + if ($select_stg_kz_left!='') + $qry_left .= " AND studiengang_kz=".$db->db_add_param($select_stg_kz_left); + if (is_numeric($input_text_left)) + $qry_left .= " AND lehrveranstaltung_id=".$db->db_add_param($input_text_left, FHC_INTEGER); + elseif ($input_text_left!='' && strlen($input_text_left)>=3) + $qry_left .= " AND lower(bezeichnung) LIKE LOWER('%".$db->db_escape($input_text_left)."%')"; + if ($select_studienplan_left!='') + $qry_left .= " AND studienplan_id=".$db->db_add_param($select_studienplan_left, FHC_INTEGER); + if ($select_semester_left!='-1') + $qry_left .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($select_semester_left, FHC_INTEGER); + if ($select_orgform_left!='') + $qry_left .= " AND orgform_kurzbz=".$db->db_add_param($select_orgform_left); + if ($select_lehrtyp_left!='') + $qry_left .= " AND lehrtyp_kurzbz=".$db->db_add_param($select_lehrtyp_left); + } + $qry_left .= " ORDER BY bezeichnung;"; + //echo $qry_left.'
'; + + if($db->db_query($qry_left)) + { + while($row = $db->db_fetch_object()) + { + echo ''; + echo ''; + echo ''; + echo ''; + if ($select_stg_kz_left=='') + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ""; + } + } +} +echo "
IDNameTypeDPSemesterLanguageECTSLVSALVSSWSLVPLS 
'.$row->lehrveranstaltung_id.''.$row->bezeichnung.''.strtoupper($row->lehrtyp_kurzbz).''.$studiengang_arr[$row->studiengang_kz].''.$row->semester.''.$row->sprache.''.$row->ects.''.$row->lvs.''.$row->alvs.''.$row->sws.''.$row->lvps.'lehrveranstaltung_id)?'checked':'').' onclick="enableRadio(\'courseLeft\'); disableRadio(\'courseRight_'.$row->lehrveranstaltung_id.'\')">
"; + +////////// +// COURSES RIGHT SIDE +////////// + +echo '
+
'; + +// Right table +echo 'Select course to remain or transfer to'; +echo ''; +echo ""; +echo ""; +echo ""; +echo ""; +if ($select_stg_kz_right=='') + echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; +echo ""; + +//if ((substr($input_text_right,0,1)=='#' || ($input_text_right!='' && strlen($input_text_right)>=3)) || $select_studienplan_right!='' || $select_stg_kz_right!='') +if ((is_numeric($input_text_right) || ($input_text_right!='' && strlen($input_text_right)>=3)) || $select_studienplan_right!='' || $select_stg_kz_right!='') +{ + $qry_right = "SELECT DISTINCT * FROM lehre.tbl_lehrveranstaltung "; + + /*if ($input_text_right!='') + { + if (substr($input_text_right,0,1)=='#') + $qry_right .= " WHERE lehrveranstaltung_id=".$db->db_add_param(substr($input_text_right,1), FHC_INTEGER); + else + $qry_right .= " WHERE lower(bezeichnung) LIKE LOWER ('%".$db->db_escape($input_text_right)."%')"; + } + else*/ + { + if ($select_studienplan_right!='') + $qry_right .= " JOIN lehre.tbl_studienplan_lehrveranstaltung USING (lehrveranstaltung_id)"; + + $qry_right .= " WHERE 1=1"; + if ($select_stg_kz_right!='') + $qry_right .= " AND studiengang_kz=".$db->db_add_param($select_stg_kz_right); + if (is_numeric($input_text_right)) + $qry_right .= " AND lehrveranstaltung_id=".$db->db_add_param($input_text_right, FHC_INTEGER); + elseif ($input_text_right!='' && strlen($input_text_right)>=3) + $qry_right .= " AND lower(bezeichnung) LIKE LOWER('%".$db->db_escape($input_text_right)."%')"; + if ($select_studienplan_right!='') + $qry_right .= " AND studienplan_id=".$db->db_add_param($select_studienplan_right, FHC_INTEGER); + if ($select_semester_right!='-1') + $qry_right .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($select_semester_right, FHC_INTEGER); + if ($select_orgform_right!='') + $qry_right .= " AND orgform_kurzbz=".$db->db_add_param($select_orgform_right); + if ($select_lehrtyp_right!='') + $qry_right .= " AND lehrtyp_kurzbz=".$db->db_add_param($select_lehrtyp_right); + } + $qry_right .= " ORDER BY bezeichnung;"; + //echo $qry_right.'
'; + + if($db->db_query($qry_right)) + { + while($row = $db->db_fetch_object()) + { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if ($select_stg_kz_right=='') + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ""; + } + } +} +echo "
 IDNameTypeDPSemesterLanguageECTSLVSALVSSWSLVPLS
lehrveranstaltung_id)?'checked':'').' onclick="enableRadio(\'courseRight\'); disableRadio(\'courseLeft_'.$row->lehrveranstaltung_id.'\')">'.$row->lehrveranstaltung_id.''.$row->bezeichnung.''.strtoupper($row->lehrtyp_kurzbz).''.$studiengang_arr[$row->studiengang_kz].''.$row->semester.''.$row->sprache.''.$row->ects.''.$row->lvs.''.$row->alvs.''.$row->sws.''.$row->lvps.'
"; +echo '
+
'; +echo '
'; +exit; + +?> + + + + diff --git a/vilesci/personen/import/interessentenimport.php b/vilesci/personen/import/interessentenimport.php index e6897f8f3..642061a61 100644 --- a/vilesci/personen/import/interessentenimport.php +++ b/vilesci/personen/import/interessentenimport.php @@ -129,41 +129,46 @@ if(isset($_GET['type']) && $_GET['type']=='getortcontent' && isset($_GET['plz']) exit; } -function getStudienplanDropDown($studiengang_kz, $orgform_kurzbz='', $studienplan_id='') +function getStudienplanDropDown($studiengang_kz, $orgform_kurzbz='', $studienplan_id='', $studiensemester_kurzbz, $ausbildungssemester='') { $db = new basis_db(); - $content= ''; $studienplan = new studienplan(); - $studienplan->getStudienplaene($studiengang_kz); - - foreach($studienplan->result as $row) + $studienplan->getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester, $orgform_kurzbz); + //var_dump($studienplan->result); + if (count($studienplan->result)==0) + $content.=""; + else { - if($studienplan_id=='') - $studienplan_id=$row->studienplan_id; - - if($studienplan_id==$row->studienplan_id) - $selected='selected'; - else - $selected=''; - - if($row->aktiv) + $content .= ''; + foreach($studienplan->result as $row) { - if($orgform_kurzbz=='' || $row->orgform_kurzbz=='' || $row->orgform_kurzbz==$orgform_kurzbz) - $content.=""; + if($studienplan_id=='') + $studienplan_id=$row->studienplan_id; + + if($studienplan_id==$row->studienplan_id) + $selected='selected'; + else + $selected=''; + + if($row->aktiv) + { + if($orgform_kurzbz=='' || $row->orgform_kurzbz=='' || $row->orgform_kurzbz==$orgform_kurzbz) + $content.=""; + } } - } + } $content.= ''; return $content; } -if(isset($_GET['type']) && $_GET['type']=='getstudienplancontent' && isset($_GET['studiengang_kz']) && isset($_GET['orgform_kurzbz'])) +if(isset($_GET['type']) && $_GET['type']=='getstudienplancontent' && isset($_GET['studiengang_kz']) && isset($_GET['orgform_kurzbz']) && isset ($_GET['studiensemester_kurzbz']) && isset ($_GET['ausbildungssemester'])) { header('Content-Type: text/html; charset=UTF-8'); - echo getStudienplanDropDown($_GET['studiengang_kz'], $_GET['orgform_kurzbz']); + echo getStudienplanDropDown($_GET['studiengang_kz'], $_GET['orgform_kurzbz'], '', $_GET['studiensemester_kurzbz'], $_GET['ausbildungssemester']); exit; } ?> @@ -389,8 +394,10 @@ function loadStudienplanData() var ts = jetzt.getTime(); var studiengang_kz = document.getElementById('studiengang_kz').value; var orgform_kurzbz = document.getElementById('orgform_kurzbz').value; + var studiensemester_kurzbz = document.getElementById('studiensemester_kurzbz').value; + var ausbildungssemester = document.getElementById('ausbildungssemester').value; var url= ''; - url += '&studiengang_kz='+encodeURIComponent(studiengang_kz)+"&orgform_kurzbz="+encodeURIComponent(orgform_kurzbz)+"&"+ts; + url += '&studiengang_kz='+encodeURIComponent(studiengang_kz)+"&orgform_kurzbz="+encodeURIComponent(orgform_kurzbz)+"&studiensemester_kurzbz="+encodeURIComponent(studiensemester_kurzbz)+"&ausbildungssemester="+encodeURIComponent(ausbildungssemester)+"&"+ts; anfrage.open("GET", url, true); anfrage.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); anfrage.onreadystatechange = setStudienplanData; @@ -1124,14 +1131,14 @@ foreach ($stg_obj->result as $row) } echo ''; echo ''; -echo 'Studiensemester *'; $stsem = new studiensemester(); $stsem->getAll(); foreach ($stsem->studiensemester as $row) echo ''; echo ''; echo ''; -echo 'Ausbildungssemester *'; for ($i=1;$i<9;$i++) echo ''; echo ''; @@ -1150,8 +1157,8 @@ echo ''; echo ''; echo "\n"; echo 'Studienplan
'; -if($studiengang_kz!='') - echo getStudienplanDropDown($studiengang_kz, $orgform_kurzbz, $studienplan_id); +if($studiengang_kz!='' && $studiensemester_kurzbz!='') + echo getStudienplanDropDown($studiengang_kz, $orgform_kurzbz, $studienplan_id, $studiensemester_kurzbz); else echo 'Bitte zuerst einen Studiengang waehlen'; echo '