diff --git a/application/controllers/jobs/AnrechnungJob.php b/application/controllers/jobs/AnrechnungJob.php index f92410dbc..f32a8268a 100644 --- a/application/controllers/jobs/AnrechnungJob.php +++ b/application/controllers/jobs/AnrechnungJob.php @@ -188,7 +188,7 @@ class AnrechnungJob extends JOB_Controller $studiengang_bezeichnung = $this->StudiengangModel->load($studiengang_kz)->retval[0]->stg_bezeichnung; // Get STGL mail address - list ($to, $vorname) = self::_getSTGLMailAddress($studiengang_kz); + $stglMailReceiver_arr = self::_getSTGLMailAddress($studiengang_kz); // Get HTML table with new Anrechnungen of that STG plus amount of them list ($anrechnungen_amount, $anrechnungen_table) = self::_getSTGLMailDataTable($studiengang_kz, $anrechnungen); @@ -199,22 +199,25 @@ class AnrechnungJob extends JOB_Controller CIS_ROOT. 'cis/menu.php?content_id=&content='. CIS_ROOT. index_page(). self::APPROVE_ANRECHNUNG_URI; + foreach ($stglMailReceiver_arr as $stgl) + { // Prepare mail content - $body_fields = array( - 'vorname' => $vorname, - 'studiengang' => $studiengang_bezeichnung, - 'anzahl' => $anrechnungen_amount, - 'datentabelle' => $anrechnungen_table, - 'link' => anchor($url, 'Anrechnungsanträge Übersicht') - ); - - // Send mail - sendSanchoMail( - 'AnrechnungAntragStellen', - $body_fields, - $to, - 'Anerkennung nachgewiesener Kenntnisse: Neuer Antrag wurde gestellt' - ); + $body_fields = array( + 'vorname' => $stgl['vorname'], + 'studiengang' => $studiengang_bezeichnung, + 'anzahl' => $anrechnungen_amount, + 'datentabelle' => $anrechnungen_table, + 'link' => anchor($url, 'Anrechnungsanträge Übersicht') + ); + + // Send mail + sendSanchoMail( + 'AnrechnungAntragStellen', + $body_fields, + $stgl['to'], + 'Anerkennung nachgewiesener Kenntnisse: Neuer Antrag wurde gestellt' + ); + } } $this->logInfo('SUCCEDED: Sending emails to STGL about yesterdays new Anrechnungen succeded.'); @@ -342,15 +345,21 @@ html; // Get STGL mail address private function _getSTGLMailAddress($studiengang_kz) { + $stglMailAdress_arr = array(); $result = $this->StudiengangModel->getLeitung($studiengang_kz); // Get STGL mail address if (hasData($result)) { - return array( - $result->retval[0]->uid. '@'. DOMAIN, - $result->retval[0]->vorname - ); + foreach (getData($result) as $stgl) + { + $stglMailAdress_arr[]= array( + 'to' => $stgl->uid. '@'. DOMAIN, + 'vorname' => $stgl->vorname + ); + } + + return $stglMailAdress_arr; } // If not available, get assistance mail address else diff --git a/application/controllers/lehre/anrechnung/ApproveAnrechnungDetail.php b/application/controllers/lehre/anrechnung/ApproveAnrechnungDetail.php index 8982b9970..8e1b601aa 100644 --- a/application/controllers/lehre/anrechnung/ApproveAnrechnungDetail.php +++ b/application/controllers/lehre/anrechnung/ApproveAnrechnungDetail.php @@ -412,28 +412,31 @@ class approveAnrechnungDetail extends Auth_Controller { $result = $this->AnrechnungModel->load($anrechnung_id); - if(!$result = getData($result)[0]) + if(!hasData($result)) { show_error('Failed loading Anrechnung'); } - + $result = $this->LehrveranstaltungModel->loadWhere(array( - 'lehrveranstaltung_id' => $result->lehrveranstaltung_id + 'lehrveranstaltung_id' => getData($result)[0]->lehrveranstaltung_id )); - if(!$result = getData($result)[0]) + if(!hasData($result)) { show_error('Failed loading Lehrveranstaltung'); } // Get STGL - $result = $this->StudiengangModel->getLeitung($result->studiengang_kz); - - if($result = getData($result)[0]) + $result = $this->StudiengangModel->getLeitung(getData($result)[0]->studiengang_kz); + + if (hasData($result)) { - if ($result->uid == $this->_uid) + foreach (getData($result) as $stgl) { - return; + if ($stgl->uid == $this->_uid) + { + return; + } } } diff --git a/application/controllers/lehre/anrechnung/ApproveAnrechnungUebersicht.php b/application/controllers/lehre/anrechnung/ApproveAnrechnungUebersicht.php index d59d97514..25c802caf 100644 --- a/application/controllers/lehre/anrechnung/ApproveAnrechnungUebersicht.php +++ b/application/controllers/lehre/anrechnung/ApproveAnrechnungUebersicht.php @@ -285,11 +285,14 @@ class approveAnrechnungUebersicht extends Auth_Controller // Get STGL $result = $this->StudiengangModel->getLeitung($result->studiengang_kz); - if($result = getData($result)[0]) + if (hasData($result)) { - if ($result->uid == $this->_uid) + foreach (getData($result) as $stgl) { - return; + if ($stgl->uid == $this->_uid) + { + return; + } } } @@ -376,23 +379,24 @@ class approveAnrechnungUebersicht extends Auth_Controller $this->load->model('education/Lehrveranstaltung_model', 'LehrveranstaltungModel'); $result = $this->LehrveranstaltungModel->getLecturersByLv($anrechnung['studiensemester_kurzbz'], $anrechnung['lehrveranstaltung_id']); - if (!$result = getData($result)) + if (!hasData($result)) { show_error('Failed retrieving lectors of Lehrveranstaltung'); } + $lecturersByLv = getData($result); + // Check if lv has LV-Leitung - $key = array_search(true, array_column($result, 'lvleiter')); - + $key = array_search(true, array_column($lecturersByLv, 'lvleiter')); // If lv has LV-Leitung, keep only the one if ($key !== false) { - $lector_arr[]= $result[$key]; + $lector_arr[]= $lecturersByLv[$key]; } // ...otherwise keep all lectors else { - $lector_arr = array_merge($lector_arr, $result); + $lector_arr = array_merge($lector_arr, $lecturersByLv); } } diff --git a/application/controllers/lehre/anrechnung/RequestAnrechnung.php b/application/controllers/lehre/anrechnung/RequestAnrechnung.php index 45a770cf5..bc886a876 100644 --- a/application/controllers/lehre/anrechnung/RequestAnrechnung.php +++ b/application/controllers/lehre/anrechnung/RequestAnrechnung.php @@ -80,7 +80,7 @@ class requestAnrechnung extends Auth_Controller $prestudent_id = getData($result)[0]->prestudent_id; // Check if application deadline is expired - $is_expired = self::_checkAntragDeadline( + $is_expired = self::_isExpired( $this->config->item('submit_application_start'), $this->config->item('submit_application_end'), $studiensemester_kurzbz @@ -226,10 +226,10 @@ class requestAnrechnung extends Auth_Controller * @param $start Start date for application submission. * @param $ende End date for application submission. * @param $studiensemester_kurzbz - * @return bool True if today is not during the start- and ending deadlines (= if is expired) + * @return bool True if deadline is expired * @throws Exception */ - private function _checkAntragDeadline($start, $ende, $studiensemester_kurzbz) + private function _isExpired($start, $ende, $studiensemester_kurzbz) { $this->load->model('organisation/Studiensemester_model', 'StudiensemesterModel'); @@ -253,8 +253,8 @@ class requestAnrechnung extends Auth_Controller $start = new DateTime($start); $ende = new DateTime($ende); - // True if today is not during the start- and ending deadlines (= if is expired) - return ($today <= $start || $today >= $ende); + // True if expired + return ($today < $start || $today > $ende); } /** @@ -324,8 +324,8 @@ class requestAnrechnung extends Auth_Controller private function _LVhasBlockingGrades($studiensemester_kurzbz, $lehrveranstaltung_id) { // Get Note of Lehrveranstaltung - $this->load->model('education/Lvgesamtnote_model', 'LvgesamtnoteModel'); - $result = $this->LvgesamtnoteModel->load(array( + $this->load->model('education/Zeugnisnote_model', 'ZeugnisnoteModel'); + $result = $this->ZeugnisnoteModel->load(array( 'student_uid' => $this->_uid, 'studiensemester_kurzbz' => $studiensemester_kurzbz, 'lehrveranstaltung_id' => $lehrveranstaltung_id diff --git a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php index 70d15d801..080c6032e 100644 --- a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php +++ b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php @@ -736,6 +736,7 @@ else die($p->t('global/fehleraufgetreten')); // Kopfzeile + echo ' @@ -1144,7 +1145,7 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG $eintrag = ''; foreach ($output as $k) { - if($k->mobilitaetstyp_kurzbz == 'GS') + if(($k->mobilitaetstyp_kurzbz == 'GS') && ($k->studiensemester_kurzbz == $stsem)) $eintrag = ' (d.d.)'; } $grades[$row_stud->uid]['mobility'] = $eintrag; diff --git a/cis/private/lehre/notenliste.xls.php b/cis/private/lehre/notenliste.xls.php index 9866a6299..7853600de 100644 --- a/cis/private/lehre/notenliste.xls.php +++ b/cis/private/lehre/notenliste.xls.php @@ -19,6 +19,7 @@ * Andreas Oesterreicher * Rudolf Hangl < rudolf.hangl@technikum-wien.at > * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > + * Manuela Thamer */ /* * Erstellt Notenliste im Excel Format @@ -207,9 +208,9 @@ else 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.bis, tbl_bisio.von, - tbl_zeugnisnote.note,tbl_mobilitaet.mobilitaetstyp_kurzbz - FROM - campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) + tbl_zeugnisnote.note,tbl_mobilitaet.mobilitaetstyp_kurzbz, + (CASE WHEN bis.tbl_mobilitaet.studiensemester_kurzbz = vw_student_lehrveranstaltung.studiensemester_kurzbz THEN '1' ELSE '' END) as doubledegree + FROM campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid) LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz) LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id @@ -224,7 +225,7 @@ else if($lehreinheit_id!='') $qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER); - $qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC'; + $qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis, doubledegree DESC'; if($result = $db->db_query($qry)) { @@ -232,6 +233,7 @@ else $lines++; while($elem = $db->db_fetch_object($result)) { + $note=''; if(!preg_match('*dummy*',$elem->uid) && $elem->semester!=10) { if($elem->status!='Abbrecher' && $elem->status!='Unterbrecher') @@ -249,12 +251,12 @@ else $inc.=' (ar)'; $note='ar'; } - if($elem->mobilitaetstyp_kurzbz !='') //dd-Program + + if ($elem->mobilitaetstyp_kurzbz !='' && $elem->doubledegree == 1) //dd-Program { - $inc.=' (dd)'; + $inc.=' (d.d.)'; } - else - $note=''; + $worksheet->write($lines,1,$elem->uid); $worksheet->write($lines,2,$elem->nachname.$inc); $worksheet->write($lines,3,$elem->vorname); @@ -305,7 +307,8 @@ else $worksheet->write(++$lines,0,'(i) ... Incoming'); $worksheet->write(++$lines,0,'(o) ... Outgoing'); $worksheet->write(++$lines,0,'(ar) ... '.$p->t('anwesenheitsliste/angerechnet')); - $worksheet->write(++$lines,0,'(dd) ... Double Degree Program'); + $worksheet->write(++$lines,0,'(iar) ... '.$p->t('anwesenheitsliste/internangerechnet')); + $worksheet->write(++$lines,0,'(d.d.) ... Double Degree Program'); $worksheet->setColumn(0, 0, 5); $worksheet->setColumn(0, 1, 16); diff --git a/content/betriebsmitteloverlay.xul.php b/content/betriebsmitteloverlay.xul.php index ec0e9f0d5..d9da9269b 100644 --- a/content/betriebsmitteloverlay.xul.php +++ b/content/betriebsmitteloverlay.xul.php @@ -204,7 +204,7 @@ else diff --git a/include/betriebsmittel.class.php b/include/betriebsmittel.class.php index d3e208076..220cdfea0 100644 --- a/include/betriebsmittel.class.php +++ b/include/betriebsmittel.class.php @@ -1186,7 +1186,22 @@ class betriebsmittel extends basis_db //Kartennummern die im Hex-Format sind werden umgewandelt if (!is_numeric($kartennummer)) { - $kartennummer=substr($kartennummer,strlen($kartennummer)-2,2).substr($kartennummer,strlen($kartennummer)-4,2). substr($kartennummer,strlen($kartennummer)-6,2).substr($kartennummer,0,2); + $tmp_kn_str = null; + for ($i=0; strlen($kartennummer) > $i; $i+=2) { + + #wenn die strlen($kartennummer) gerade ist (TW hat 8 Stellen, FHB 14 Stellen) + $tmp_kn_str .= substr($kartennummer,strlen($kartennummer)-($i+2),2); + + //#wenn ich ungerade und der letzte Durchgang ist dann nur mehr die eine Nummer nach vorne + //if ((strlen($kartennummer)%2 != 0) && ($i+2 > strlen($kartennummer))) { + // $tmp_kn_str .= substr($kartennummer,strlen($kartennummer)-($i+1),1); + //#sonst normal immer 2 stellen nach vorne ruecken + //} else { + // $tmp_kn_str .= substr($kartennummer,strlen($kartennummer)-($i+2),2); + //} + } + $kartennummer = $tmp_kn_str; + $kartennummer=hexdec( $kartennummer); } diff --git a/include/lehrelisthelper.class.php b/include/lehrelisthelper.class.php index 631d6fb86..e78792732 100644 --- a/include/lehrelisthelper.class.php +++ b/include/lehrelisthelper.class.php @@ -41,16 +41,16 @@ class LehreListHelper protected $lv; protected $lehreinheit; protected $stg; - + protected $arr_lehrende; protected $studentuids; protected $data; - + protected $gruppen_string; protected $lehrende_string; protected $raum_string; - public function __construct(basis_db $db, $studiensemester, $lvid, + public function __construct(basis_db $db, $studiensemester, $lvid, lehrveranstaltung $lv, studiengang $stg, $lehreinheit='') { $this->db = $db; @@ -63,39 +63,39 @@ class LehreListHelper $this->arr_lehrende = array(); $this->studentuids = array(); $this->data = array(); - + $this->gruppen_string = ''; $this->lehrende_string = ''; $this->raum_string = ''; - + $this->loadMemberGroups(); $this->loadPlannedRooms(); $this->initData(); $this->loadLehrende(); $this->loadStudierende(); } - - public function getData() + + public function getData() { return $this->data; } - - public function getStudentUids() + + public function getStudentUids() { return $this->studentuids; } - - public function getArr_Lehrende() + + public function getArr_Lehrende() { return $this->arr_lehrende; } - + public function getLehrende_String() { return $this->lehrende_string; } - - protected function loadMemberGroups() + + protected function loadMemberGroups() { // Teilnehmende Gruppen laden $qry = "SELECT DISTINCT ON(kuerzel, semester, verband, gruppe, gruppe_kurzbz) @@ -124,7 +124,7 @@ class LehreListHelper } } } - + protected function loadPlannedRooms() { // Verplante Räume laden @@ -153,7 +153,7 @@ class LehreListHelper } } } - + protected function initData() { $studiengang_bezeichnung=$this->stg->bezeichnung; @@ -175,8 +175,8 @@ class LehreListHelper 'raum'=>$this->raum_string, ); } - - protected function loadLehrende() + + protected function loadLehrende() { //Lehrende der LV laden und in ein Array schreiben $lehrende = new lehreinheitmitarbeiter(); @@ -187,24 +187,25 @@ class LehreListHelper foreach($lehrende->result AS $row) { $this->data[]=array('lehrende'=>array('uid'=>$row->uid,'name'=>$row->vorname.' '.$row->nachname)); - $this->arr_lehrende[]=mb_strtoupper($row->uid); - $this->lehrende_string .= (strlen($this->lehrende_string) > 0) - ? ', ' . $row->vorname . ' ' . $row->nachname + $this->arr_lehrende[]=mb_strtoupper($row->uid); + $this->lehrende_string .= (strlen($this->lehrende_string) > 0) + ? ', ' . $row->vorname . ' ' . $row->nachname : $row->vorname . ' ' . $row->nachname; } } } - - protected function loadStudierende() + + protected function loadStudierende() { //Studierende der LV laden und in ein Array schreiben $qry = 'SELECT - distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, public.tbl_student.student_uid, + distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, public.tbl_student.student_uid, 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_note.lkt_ueberschreibbar, tbl_note.anmerkung, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_studiengang.kurzbzlang, tbl_mobilitaet.mobilitaetstyp_kurzbz + tbl_note.lkt_ueberschreibbar, tbl_note.anmerkung, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_studiengang.kurzbzlang, tbl_mobilitaet.mobilitaetstyp_kurzbz, + (CASE WHEN bis.tbl_mobilitaet.studiensemester_kurzbz = vw_student_lehrveranstaltung.studiensemester_kurzbz THEN 1 ELSE 0 END) as doubledegree FROM campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) @@ -224,7 +225,7 @@ class LehreListHelper if($this->lehreinheit!='') $qry.=' AND vw_student_lehrveranstaltung.lehreinheit_id='.$this->db->db_add_param($this->lehreinheit, FHC_INTEGER); - $qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC'; + $qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis, doubledegree DESC'; $stsem_obj = new studiensemester(); $stsem_obj->load($this->studiensemester); @@ -265,14 +266,12 @@ class LehreListHelper if($row->stg_kz_student==$a_o_kz) //Außerordentliche Studierende $zusatz.='(a.o.)'; - if($row->mobilitaetstyp_kurzbz !='') //Double Degree Student - $zusatz.='(d.d.)'; + if(($row->mobilitaetstyp_kurzbz != '') && ($row->doubledegree == 1)) //Double Degree Student + $zusatz .= '(d.d.)'; - //$zusatz.='test'; - $this->studentuids[] = $row->student_uid; $this->data[]=array('student'=>array( - 'uid' => $row->student_uid, + 'uid' => $row->student_uid, 'vorname'=>$row->vorname, 'nachname'=>$row->nachname, 'personenkennzeichen'=>trim($row->matrikelnr), diff --git a/include/pruefling.class.php b/include/pruefling.class.php index 764900b0b..17fe48789 100644 --- a/include/pruefling.class.php +++ b/include/pruefling.class.php @@ -361,13 +361,13 @@ class pruefling extends basis_db $qry = " SELECT DISTINCT ON (vw_auswertung_ablauf.gebiet_id) gebiet_id, - vw_auswertung_ablauf.*, + vw_auswertung_ablauf.*, tbl_studiengang.typ - FROM + FROM testtool.vw_auswertung_ablauf - JOIN + JOIN public.tbl_studiengang USING (studiengang_kz) - WHERE + WHERE reihungstest_id = ".$this->db_add_param($reihungstest_id, FHC_INTEGER); // Ggf. die Basis-Fragengebiete ermitteln (ohne Quereinsteigergebiete) @@ -387,8 +387,8 @@ class pruefling extends basis_db if (!empty($basis_gebiet_id_toString)) { $qry .= " - AND - gebiet_id IN (". $basis_gebiet_id_toString. ") + AND + gebiet_id IN (". $basis_gebiet_id_toString. ") "; } } @@ -400,13 +400,16 @@ class pruefling extends basis_db { $excluded_gebiete = unserialize(FAS_REIHUNGSTEST_EXCLUDE_GEBIETE); $exclude_gebiet_id_arr = $excluded_gebiete; - $exclude_gebiet_id_toString = implode(', ', $exclude_gebiet_id_arr); - $qry .= " - AND - gebiet_id NOT IN (". $exclude_gebiet_id_toString. ") - AND - typ = 'b' - "; + if (is_array($exclude_gebiet_id_arr) && count($exclude_gebiet_id_arr) > 0) + { + $exclude_gebiet_id_toString = implode(', ', $exclude_gebiet_id_arr); + $qry .= " + AND + gebiet_id NOT IN (". $exclude_gebiet_id_toString. ") + AND + typ = 'b' + "; + } } } @@ -421,21 +424,21 @@ class pruefling extends basis_db prestudent_id FROM public.tbl_rt_person - JOIN + JOIN public.tbl_prestudent USING(person_id) JOIN public.tbl_prestudentstatus USING (prestudent_id, studienplan_id) - JOIN + JOIN tbl_reihungstest ON ( - tbl_rt_person.rt_id = tbl_reihungstest.reihungstest_id + tbl_rt_person.rt_id = tbl_reihungstest.reihungstest_id ) WHERE tbl_rt_person.person_id = ".$this->db_add_param($person_id, FHC_INTEGER)." - AND + AND tbl_rt_person.rt_id = ".$this->db_add_param($reihungstest_id, FHC_INTEGER)." - AND + AND tbl_prestudentstatus.status_kurzbz='Interessent' - AND + AND tbl_prestudentstatus.studiensemester_kurzbz = tbl_reihungstest.studiensemester_kurzbz ORDER BY tbl_reihungstest.datum DESC, tbl_prestudent.priorisierung ASC LIMIT 1 ) diff --git a/locale/de-AT/anwesenheitsliste.php b/locale/de-AT/anwesenheitsliste.php index 7b73c15e5..a162578a6 100644 --- a/locale/de-AT/anwesenheitsliste.php +++ b/locale/de-AT/anwesenheitsliste.php @@ -1,5 +1,5 @@ phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='Studiensemester ist ungueltig'; +$this->phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='Studiensemester ist ungueltig'; $this->phrasen['anwesenheitsliste/anwesenheitslisten']='Anwesenheitslisten'; $this->phrasen['anwesenheitsliste/covidstatuslisten']='Nachweislisten'; $this->phrasen['anwesenheitsliste/notenlisten']='Notenlisten'; @@ -19,4 +19,5 @@ $this->phrasen['anwesenheitsliste/keineStundenvorhanden']='Derzeit sind keine St $this->phrasen['anwesenheitsliste/keineEintraegeGefunden']='Es wurden keine Einträge gefunden'; $this->phrasen['anwesenheitsliste/anleitungImportFunktion']='Kopieren Sie diese Zellen in die Zwischenablage, um damit die Import-Spalte des Gesamtnotenformulars zu befüllen'; $this->phrasen['anwesenheitsliste/angerechnet']='Angerechnet'; +$this->phrasen['anwesenheitsliste/internangerechnet']='Intern angerechnet'; ?> diff --git a/locale/en-US/anwesenheitsliste.php b/locale/en-US/anwesenheitsliste.php index c1f42fe37..d0ea79b30 100644 --- a/locale/en-US/anwesenheitsliste.php +++ b/locale/en-US/anwesenheitsliste.php @@ -1,5 +1,5 @@ phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='No valid semester'; +$this->phrasen['anwesenheitsliste/studiensemesterIstUngueltig']='No valid semester'; $this->phrasen['anwesenheitsliste/anwesenheitslisten']='Attendance lists'; $this->phrasen['anwesenheitsliste/covidstatuslisten']='verification lists'; $this->phrasen['anwesenheitsliste/notenlisten']='Grade lists'; @@ -19,4 +19,5 @@ $this->phrasen['anwesenheitsliste/keineStundenvorhanden']='Currently no lessons $this->phrasen['anwesenheitsliste/keineEintraegeGefunden']='No entries have been found'; $this->phrasen['anwesenheitsliste/anleitungImportFunktion']='Copy these cells to the clipboard to fill the subject grade import of the final grade form'; $this->phrasen['anwesenheitsliste/angerechnet']='Accredited'; +$this->phrasen['anwesenheitsliste/internangerechnet']='Internally accredited'; ?> diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index f3bf8f50a..50f5098c8 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -4758,21 +4758,24 @@ if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants // Add column dms_id, studiensemester_kurzbz, anmerkung_student und empfehlung_anrechnung // Change genehmigt_von and begruendung_id to be NULLABLE -if(!$result = @$db->db_query("SELECT dms_id FROM lehre.tbl_anrechnung")) +if(!$result = @$db->db_query("SELECT dms_id FROM lehre.tbl_anrechnung LIMIT 1")) { - $qry = " - ALTER TABLE lehre.tbl_anrechnung ADD COLUMN dms_id bigint; - ALTER TABLE lehre.tbl_anrechnung ADD COLUMN studiensemester_kurzbz varchar(6); - ALTER TABLE lehre.tbl_anrechnung ADD COLUMN anmerkung_student text; - ALTER TABLE lehre.tbl_anrechnung ADD COLUMN empfehlung_anrechnung boolean; + if($db->db_num_rows($result) == 0) + { + $qry = " + ALTER TABLE lehre.tbl_anrechnung ADD COLUMN dms_id bigint; + ALTER TABLE lehre.tbl_anrechnung ADD COLUMN studiensemester_kurzbz varchar(6); + ALTER TABLE lehre.tbl_anrechnung ADD COLUMN anmerkung_student text; + ALTER TABLE lehre.tbl_anrechnung ADD COLUMN empfehlung_anrechnung boolean; - ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_studiensemester FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester(studiensemester_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE; - ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_dms FOREIGN KEY (dms_id) REFERENCES campus.tbl_dms(dms_id) ON DELETE RESTRICT ON UPDATE CASCADE; + ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_studiensemester FOREIGN KEY (studiensemester_kurzbz) REFERENCES public.tbl_studiensemester(studiensemester_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE; + ALTER TABLE lehre.tbl_anrechnung ADD CONSTRAINT fk_anrechnung_dms FOREIGN KEY (dms_id) REFERENCES campus.tbl_dms(dms_id) ON DELETE RESTRICT ON UPDATE CASCADE; - ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN genehmigt_von DROP NOT NULL; - ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN begruendung_id DROP NOT NULL; - ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN insertamum SET DEFAULT NOW(); - "; + ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN genehmigt_von DROP NOT NULL; + ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN begruendung_id DROP NOT NULL; + ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN insertamum SET DEFAULT NOW(); + "; + } if(!$db->db_query($qry)) @@ -5821,7 +5824,9 @@ $tabellen=array( "lehre.tbl_abschlusspruefung" => array("abschlusspruefung_id","student_uid","vorsitz","pruefer1","pruefer2","pruefer3","abschlussbeurteilung_kurzbz","akadgrad_id","pruefungstyp_kurzbz","datum","uhrzeit","sponsion","anmerkung","updateamum","updatevon","insertamum","insertvon","ext_id","note","protokoll","endezeit","pruefungsantritt_kurzbz","freigabedatum"), "lehre.tbl_abschlusspruefung_antritt" => array("pruefungsantritt_kurzbz","bezeichnung","bezeichnung_english","sort"), "lehre.tbl_akadgrad" => array("akadgrad_id","akadgrad_kurzbz","studiengang_kz","titel","geschlecht"), - "lehre.tbl_anrechnung" => array("anrechnung_id","prestudent_id","lehrveranstaltung_id","begruendung_id","lehrveranstaltung_id_kompatibel","genehmigt_von","insertamum","insertvon","updateamum","updatevon","ext_id"), + "lehre.tbl_anrechnung" => array("anrechnung_id","prestudent_id","lehrveranstaltung_id","begruendung_id","lehrveranstaltung_id_kompatibel","genehmigt_von","insertamum","insertvon","updateamum","updatevon","ext_id", "dms_id", "studiensemester_kurzbz", "anmerkung_student", "empfehlung_anrechnung"), + "lehre.tbl_anrechnungstatus" => array("status_kurzbz", "bezeichnung_mehrsprachig"), + "lehre.tbl_anrechnung_anrechnungstatus" => array("anrechnungstatus_id", "anrechnung_id", "status_kurzbz", "datum", "insertamum", "insertvon"), "lehre.tbl_anrechnung_begruendung" => array("begruendung_id","bezeichnung"), "lehre.tbl_betreuerart" => array("betreuerart_kurzbz","beschreibung","aktiv"), "lehre.tbl_ferien" => array("bezeichnung","studiengang_kz","vondatum","bisdatum"), diff --git a/system/phrasesupdate.php b/system/phrasesupdate.php index b3518c79f..e05ee6086 100644 --- a/system/phrasesupdate.php +++ b/system/phrasesupdate.php @@ -1562,13 +1562,13 @@ $phrases = array( 'phrases' => array( array( 'sprache' => 'German', - 'text' => 'Benotung der Lehrveranstaltung', + 'text' => ' Lehrveranstaltung bereits benotet', 'description' => '', 'insertvon' => 'system' ), array( 'sprache' => 'English', - 'text' => 'Grading of the course', + 'text' => 'Course already graded', 'description' => '', 'insertvon' => 'system' )