mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Merge master into HEAD
Conflicts: include/dokument_export.class.php include/studiengang.class.php vilesci/stammdaten/reihungstestverwaltung.php
This commit is contained in:
@@ -129,6 +129,7 @@ class adresse extends basis_db
|
||||
|
||||
//Lesen der Daten aus der Datenbank
|
||||
$qry = "SELECT * FROM public.tbl_adresse WHERE person_id=".$this->db_add_param($pers_id, FHC_INTEGER, false);
|
||||
$qry.=" ORDER BY zustelladresse DESC";
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
|
||||
@@ -166,9 +166,9 @@ class anrechnung extends basis_db
|
||||
. 'genehmigt_von = ' . $this->db_add_param($this->genehmigt_von) . ', '
|
||||
. 'updateamum = NOW(), '
|
||||
. 'updatevon = ' . $this->db_add_param($this->updatevon) . ' '
|
||||
. 'WHERE anrechnung_id = ' . $this->db_add_param($this->anrechnung_id);
|
||||
. 'WHERE anrechnung_id = ' . $this->db_add_param($this->anrechnung_id). ' RETURNING anrechnung_id;';
|
||||
}
|
||||
|
||||
|
||||
if ($this->db_query($qry))
|
||||
{
|
||||
$this->anrechnung_id = $this->db_fetch_object()->anrechnung_id;
|
||||
|
||||
@@ -144,7 +144,7 @@ class authentication extends auth
|
||||
{
|
||||
header('WWW-Authenticate: Basic realm="'.AUTH_NAME.'"');
|
||||
header('HTTP/1.0 401 Unauthorized');
|
||||
echo "Ihre Zugangsdaten sind ungueltig!";
|
||||
echo "Invalid Credentials";
|
||||
exit;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -450,19 +450,22 @@ class dokument extends basis_db
|
||||
|
||||
/**
|
||||
* Liefert alle Dokumenttypen
|
||||
* @param string $not_in Kommagetrennter String von dokument_kurzbz. Optional. Um bestimmte Dokumente (zB Zeugnis, welcher fix im Core vorhanden sein muss) auszuschließen.
|
||||
* @param string $not_in Kommagetrennter String von dokument_kurzbz. Optional. Um bestimmte Dokumente (zB Zeugnis, welcher fix im Core vorhanden sein muss) auszuschließen.
|
||||
* @return true wenn ok false im Fehlerfall
|
||||
*/
|
||||
public function getAllDokumente($not_in='')
|
||||
{
|
||||
$qry = "SELECT * FROM public.tbl_dokument ";
|
||||
|
||||
$sprache = new sprache();
|
||||
$bezeichnung_mehrsprachig = $sprache->getSprachQuery('bezeichnung_mehrsprachig');
|
||||
$dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig');
|
||||
$qry = "SELECT dokument_kurzbz, bezeichnung, $bezeichnung_mehrsprachig, $dokumentbeschreibung_mehrsprachig FROM public.tbl_dokument ";
|
||||
|
||||
if($not_in!='')
|
||||
{
|
||||
$qry .= " WHERE dokument_kurzbz NOT IN (".$this->implode4SQL(explode(',', $not_in)).")";
|
||||
}
|
||||
$qry .= " ORDER BY bezeichnung;";
|
||||
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
@@ -471,6 +474,8 @@ class dokument extends basis_db
|
||||
|
||||
$dok->dokument_kurzbz = $row->dokument_kurzbz;
|
||||
$dok->bezeichnung = $row->bezeichnung;
|
||||
$dok->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig', $row);
|
||||
$dok->dokumentbeschreibung_mehrsprachig = $sprache->parseSprachResult('dokumentbeschreibung_mehrsprachig', $row);
|
||||
|
||||
$this->result[] = $dok;
|
||||
}
|
||||
@@ -691,6 +696,8 @@ class dokument extends basis_db
|
||||
*/
|
||||
public function getBeschreibungenDokumente($studiengangs_kz, $dokument_kurzbz)
|
||||
{
|
||||
if(count($studiengangs_kz)==0)
|
||||
return true;
|
||||
$sprache = new sprache();
|
||||
$dokumentbeschreibung_mehrsprachig = $sprache->getSprachQuery('dokumentbeschreibung_mehrsprachig');
|
||||
$beschreibung_mehrsprachig = $sprache->getSprachQuery('beschreibung_mehrsprachig');
|
||||
@@ -773,7 +780,7 @@ class dokument extends basis_db
|
||||
AND tbl_prestudent.person_id=".$this->db_add_param($person_id);
|
||||
if ($studiengang_kz!='')
|
||||
$qry .= " AND studiengang_kz IN (".$studiengang_kz.")";
|
||||
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($this->db_num_rows($result)>0)
|
||||
|
||||
@@ -298,6 +298,9 @@ class dokument_export
|
||||
|
||||
if($download)
|
||||
{
|
||||
if(headers_sent())
|
||||
exit('Header wurden bereits gesendet -> Abbruch');
|
||||
|
||||
switch($this->outputformat)
|
||||
{
|
||||
case 'pdf':
|
||||
@@ -317,6 +320,8 @@ class dokument_export
|
||||
header('Content-Disposition: attachment; filename="'.$this->filename.'.odt"');
|
||||
header('Content-Length: '.$fsize);
|
||||
break;
|
||||
default:
|
||||
exit('Outputformat is not defined');
|
||||
}
|
||||
|
||||
while (!feof($handle))
|
||||
|
||||
+159
-12
@@ -36,6 +36,7 @@ class firma extends basis_db
|
||||
public $firma_id; // integer
|
||||
public $name; // string
|
||||
public $anmerkung; // string
|
||||
public $lieferbedingungen; // string
|
||||
public $ext_id; // integer
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // bigint
|
||||
@@ -56,7 +57,7 @@ class firma extends basis_db
|
||||
|
||||
public $bezeichnung; // string
|
||||
public $kundennummer; // integer
|
||||
public $oe_aktiv; // boolean
|
||||
public $oe_aktiv; // boolean
|
||||
public $mailverteiler; // string
|
||||
public $tags = array();
|
||||
|
||||
@@ -95,6 +96,7 @@ class firma extends basis_db
|
||||
$this->firma_id = $row->firma_id;
|
||||
$this->name = $row->name;
|
||||
$this->anmerkung = $row->anmerkung;
|
||||
$this->lieferbedingungen = $row->lieferbedingungen;
|
||||
$this->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
@@ -147,7 +149,11 @@ class firma extends basis_db
|
||||
$this->errormsg = 'Anmerkung darf nicht länger als 256 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
if(mb_strlen($this->lieferbedingungen)>256)
|
||||
{
|
||||
$this->errormsg = 'Lieferbedingungen darf nicht länger als 256 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
$this->errormsg = '';
|
||||
return true;
|
||||
}
|
||||
@@ -167,11 +173,12 @@ class firma extends basis_db
|
||||
if($this->new)
|
||||
{
|
||||
//Neuen Datensatz einfuegen
|
||||
$qry='INSERT INTO public.tbl_firma (name, anmerkung,
|
||||
$qry='INSERT INTO public.tbl_firma (name, anmerkung, lieferbedingungen,
|
||||
firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon, schule,steuernummer,
|
||||
gesperrt,aktiv,finanzamt) VALUES('.
|
||||
$this->db_add_param($this->name).', '.
|
||||
$this->db_add_param($this->anmerkung).', '.
|
||||
$this->db_add_param($this->lieferbedingungen).', '.
|
||||
$this->db_add_param($this->firmentyp_kurzbz).', '.
|
||||
$this->db_add_param($this->updateamum).', '.
|
||||
$this->db_add_param($this->updatevon).', '.
|
||||
@@ -197,6 +204,7 @@ class firma extends basis_db
|
||||
'firma_id='.$this->db_add_param($this->firma_id).', '.
|
||||
'name='.$this->db_add_param($this->name).', '.
|
||||
'anmerkung='.$this->db_add_param($this->anmerkung).', '.
|
||||
'lieferbedingungen='.$this->db_add_param($this->lieferbedingungen).', '.
|
||||
'updateamum= now(), '.
|
||||
'updatevon='.$this->db_add_param($this->updatevon).', '.
|
||||
'firmentyp_kurzbz='.$this->db_add_param($this->firmentyp_kurzbz).', '.
|
||||
@@ -368,14 +376,14 @@ class firma extends basis_db
|
||||
$qry = "
|
||||
|
||||
SELECT
|
||||
firma_id, name, anmerkung, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon,
|
||||
firma_id, name, anmerkung, lieferbedingungen, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon,
|
||||
ext_id, schule, steuernummer, gesperrt, aktiv, finanzamt, '1' as sort
|
||||
FROM public.tbl_firma
|
||||
WHERE
|
||||
UPPER(trim(public.tbl_firma.name)) like '".$this->db_escape($matchcode)."%'
|
||||
UNION
|
||||
SELECT
|
||||
firma_id, name, anmerkung, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon,
|
||||
firma_id, name, anmerkung, lieferbedingungen, firmentyp_kurzbz, updateamum, updatevon, insertamum, insertvon,
|
||||
ext_id, schule, steuernummer, gesperrt, aktiv, finanzamt, '2' as sort
|
||||
FROM public.tbl_firma
|
||||
WHERE
|
||||
@@ -398,6 +406,7 @@ class firma extends basis_db
|
||||
$fa->firma_id = $row->firma_id;
|
||||
$fa->name = $row->name;
|
||||
$fa->anmerkung = $row->anmerkung;
|
||||
$fa->lieferbedingungen = $row->lieferbedingungen;
|
||||
$fa->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$fa->updateamum = $row->updateamum;
|
||||
$fa->updatevon = $row->updatevon;
|
||||
@@ -459,10 +468,10 @@ class firma extends basis_db
|
||||
|
||||
if($firmentyp_kurzbz!='')
|
||||
$qry.=" WHERE firmentyp_kurzbz=".$this->db_add_param($firmentyp_kurzbz);
|
||||
|
||||
|
||||
if(!is_null($aktiv))
|
||||
$qry.=" AND aktiv=".$this->db_add_param($aktiv, FHC_BOOLEAN);
|
||||
|
||||
|
||||
$qry.=" ORDER BY name;";
|
||||
|
||||
if($this->db_query($qry))
|
||||
@@ -474,6 +483,7 @@ class firma extends basis_db
|
||||
$fa->firma_id = $row->firma_id;
|
||||
$fa->name = $row->name;
|
||||
$fa->anmerkung = $row->anmerkung;
|
||||
$fa->lieferbedingungen = $row->lieferbedingungen;
|
||||
$fa->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$fa->updateamum = $row->updateamum;
|
||||
$fa->updatevon = $row->updatevon;
|
||||
@@ -497,6 +507,144 @@ class firma extends basis_db
|
||||
}
|
||||
}
|
||||
|
||||
public function getLatestChanges($tage = 7) {
|
||||
$this->result = array();
|
||||
$this->errormsg = '';
|
||||
|
||||
$qry ="SELECT * FROM (SElECT ";
|
||||
$qry.=" distinct on(firma_id)";
|
||||
$qry.=" tbl_firma.firma_id,tbl_firma.* ,tbl_standort.kurzbz,tbl_standort.adresse_id,tbl_standort.standort_id,tbl_standort.bezeichnung ";
|
||||
$qry.=" ,person_id, tbl_adresse.name as adress_name, strasse, plz, ort, gemeinde,nation,typ,heimatadresse,zustelladresse ";
|
||||
$qry.=" FROM public.tbl_firma";
|
||||
$qry.=" LEFT JOIN public.tbl_standort USING(firma_id) ";
|
||||
$qry.=" LEFT JOIN public.tbl_adresse on ( tbl_adresse.adresse_id=tbl_standort.adresse_id ) ";
|
||||
$qry.=" WHERE 1=1";
|
||||
$qry.=") as a WHERE (updateamum is not null and updateamum > (now()::date - $tage)) or insertamum > (now()::date - $tage) ORDER BY name;";
|
||||
//echo $qry;
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$fa = new firma();
|
||||
|
||||
$fa->firma_id = $row->firma_id;
|
||||
$fa->name = $row->name;
|
||||
$fa->anmerkung = $row->anmerkung;
|
||||
$fa->lieferbedingungen = $row->lieferbedingungen;
|
||||
$fa->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$fa->updateamum = $row->updateamum;
|
||||
$fa->updatevon = $row->updatevon;
|
||||
$fa->insertamum = $row->insertamum;
|
||||
$fa->insertvon = $row->insertvon;
|
||||
$fa->ext_id = $row->ext_id;
|
||||
$fa->schule = $this->db_parse_bool($row->schule);
|
||||
$fa->steuernummer = $row->steuernummer;
|
||||
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
|
||||
$fa->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$fa->finanzamt = $row->finanzamt;
|
||||
$fa->kurzbz = $row->kurzbz;
|
||||
$fa->adresse_id = $row->adresse_id;
|
||||
$fa->standort_id = $row->standort_id;
|
||||
$fa->bezeichnung = $row->bezeichnung;
|
||||
$fa->person_id = $row->person_id;
|
||||
$fa->adresse_id = $row->adresse_id;
|
||||
$fa->strasse = $row->strasse;
|
||||
$fa->plz = $row->plz;
|
||||
$fa->ort = $row->ort;
|
||||
$fa->gemeinde = $row->gemeinde;
|
||||
$fa->nation = $row->nation;
|
||||
$fa->typ = $row->typ;
|
||||
$fa->adress_name = $row->adress_name;
|
||||
$fa->heimatadresse = $this->db_parse_bool($row->heimatadresse);
|
||||
$fa->zustelladresse = $this->db_parse_bool($row->zustelladresse);
|
||||
|
||||
$this->result[] = $fa;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden des Datensatzes';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Suche nur nach Firmennamen für die abgespeckte Firmenverwaltung
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function searchByName($filter)
|
||||
{
|
||||
$this->result = array();
|
||||
$this->errormsg = '';
|
||||
|
||||
$qry ="SELECT * FROM (SElECT ";
|
||||
$qry.=" distinct on(firma_id)";
|
||||
$qry.=" tbl_firma.firma_id,tbl_firma.* ,tbl_standort.kurzbz,tbl_standort.adresse_id,tbl_standort.standort_id,tbl_standort.bezeichnung ";
|
||||
$qry.=" ,person_id, tbl_adresse.name as adress_name, strasse, plz, ort, gemeinde,nation,typ,heimatadresse,zustelladresse ";
|
||||
$qry.=" FROM public.tbl_firma";
|
||||
$qry.=" LEFT JOIN public.tbl_standort USING(firma_id) ";
|
||||
$qry.=" LEFT JOIN public.tbl_adresse on ( tbl_adresse.adresse_id=tbl_standort.adresse_id ) ";
|
||||
$qry.=" WHERE 1=1";
|
||||
|
||||
if($filter!='')
|
||||
$qry.= " and ( lower(tbl_firma.name) like lower('%".$this->db_escape($filter)."%')
|
||||
|
||||
) ";
|
||||
|
||||
//if($filter=='' && $firmentyp_kurzbz=='')
|
||||
// $qry.=" limit 500 ";
|
||||
$qry.=") as a ORDER BY name;";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$fa = new firma();
|
||||
|
||||
$fa->firma_id = $row->firma_id;
|
||||
$fa->name = $row->name;
|
||||
$fa->anmerkung = $row->anmerkung;
|
||||
$fa->lieferbedingungen = $row->lieferbedingungen;
|
||||
$fa->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$fa->updateamum = $row->updateamum;
|
||||
$fa->updatevon = $row->updatevon;
|
||||
$fa->insertamum = $row->insertamum;
|
||||
$fa->insertvon = $row->insertvon;
|
||||
$fa->ext_id = $row->ext_id;
|
||||
$fa->schule = $this->db_parse_bool($row->schule);
|
||||
$fa->steuernummer = $row->steuernummer;
|
||||
$fa->gesperrt = $this->db_parse_bool($row->gesperrt);
|
||||
$fa->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$fa->finanzamt = $row->finanzamt;
|
||||
$fa->kurzbz = $row->kurzbz;
|
||||
$fa->adresse_id = $row->adresse_id;
|
||||
$fa->standort_id = $row->standort_id;
|
||||
$fa->bezeichnung = $row->bezeichnung;
|
||||
$fa->person_id = $row->person_id;
|
||||
$fa->adresse_id = $row->adresse_id;
|
||||
$fa->strasse = $row->strasse;
|
||||
$fa->plz = $row->plz;
|
||||
$fa->ort = $row->ort;
|
||||
$fa->gemeinde = $row->gemeinde;
|
||||
$fa->nation = $row->nation;
|
||||
$fa->typ = $row->typ;
|
||||
$fa->adress_name = $row->adress_name;
|
||||
$fa->heimatadresse = $this->db_parse_bool($row->heimatadresse);
|
||||
$fa->zustelladresse = $this->db_parse_bool($row->zustelladresse);
|
||||
|
||||
$this->result[] = $fa;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden des Datensatzes';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Firmen Standorte, und Adressen nach Suchstring und/oder eines bestimmen Firmentyps
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
@@ -548,6 +696,7 @@ class firma extends basis_db
|
||||
$fa->firma_id = $row->firma_id;
|
||||
$fa->name = $row->name;
|
||||
$fa->anmerkung = $row->anmerkung;
|
||||
$fa->lieferbedingungen = $row->lieferbedingungen;
|
||||
$fa->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$fa->updateamum = $row->updateamum;
|
||||
$fa->updatevon = $row->updatevon;
|
||||
@@ -662,6 +811,7 @@ class firma extends basis_db
|
||||
$fa->firma_id = $row->firma_id;
|
||||
$fa->name = $row->name;
|
||||
$fa->anmerkung = $row->anmerkung;
|
||||
$fa->lieferbedingungen = $row->lieferbedingungen;
|
||||
$fa->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$fa->updateamum = $row->updateamum;
|
||||
$fa->updatevon = $row->updatevon;
|
||||
@@ -747,11 +897,7 @@ class firma extends basis_db
|
||||
$this->errormsg = 'Organisationseinheit/Firma_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
$qry = "delete from public.tbl_firma_organisationseinheit WHERE firma_organisationseinheit_id>0";
|
||||
if ($firma_organisationseinheit_id)
|
||||
$qry.=" and firma_organisationseinheit_id=".$this->db_add_param($firma_organisationseinheit_id, FHC_INTEGER);
|
||||
|
||||
$qry.=';';
|
||||
$qry = "DELETE FROM public.tbl_firma_organisationseinheit WHERE firma_organisationseinheit_id=".$this->db_add_param($firma_organisationseinheit_id, FHC_INTEGER);
|
||||
|
||||
if($this->db_query($qry))
|
||||
return true;
|
||||
@@ -931,6 +1077,7 @@ class firma extends basis_db
|
||||
$fi->firma_id = $row->firma_id;
|
||||
$fi->name = $row->name;
|
||||
$fi->anmerkung = $row->anmerkung;
|
||||
$fi->lieferbedingungen = $row->lieferbedingungen;
|
||||
$fi->firmentyp_kurzbz = $row->firmentyp_kurzbz;
|
||||
$fi->updateamum = $row->updateamum;
|
||||
$fi->updatevon = $row->updatevon;
|
||||
|
||||
@@ -366,7 +366,7 @@ function getStudiensemesterFromDatum($datum, $naechstes=true)
|
||||
$qry = "SELECT studiensemester_kurzbz FROM public.tbl_studiensemester WHERE";
|
||||
|
||||
if($naechstes)
|
||||
$qry.= " ende>".$db->db_add_param($datum)." ORDER BY ende ASC ";
|
||||
$qry.= " ende>=".$db->db_add_param($datum)." ORDER BY ende ASC ";
|
||||
else
|
||||
$qry.= " start<".$db->db_add_param($datum)." ORDER BY ende DESC ";
|
||||
|
||||
|
||||
@@ -548,8 +548,10 @@ class jahresplan extends basis_db
|
||||
$qry.=", to_char(tbl_veranstaltung.start, 'Q') as \"start_quartal\" ";
|
||||
$qry.=", to_char(tbl_veranstaltung.ende, 'Q') as \"ende_quartal\" ";
|
||||
|
||||
$qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.start) as \"start_timestamp\" ";
|
||||
$qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.ende) as \"ende_timestamp\" ";
|
||||
$qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.start::TIMESTAMP WITHOUT TIME
|
||||
ZONE at time zone 'CEST' ) as \"start_timestamp\" ";
|
||||
$qry.=", EXTRACT(EPOCH FROM tbl_veranstaltung.ende::TIMESTAMP WITHOUT TIME
|
||||
ZONE at time zone 'CEST' ) as \"ende_timestamp\" ";
|
||||
|
||||
|
||||
$qry.=", to_char(tbl_veranstaltung.start, 'DD.MM.YYYY') as \"start_datum\" ";
|
||||
|
||||
@@ -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'];
|
||||
@@ -1176,7 +1177,7 @@ class lehrveranstaltung extends basis_db
|
||||
* @param $semeser Semester optional
|
||||
* @return boolean true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function loadLehrveranstaltungStudienplan($studienplan_id, $semester = null)
|
||||
public function loadLehrveranstaltungStudienplan($studienplan_id, $semester = null, $order=null)
|
||||
{
|
||||
if (!is_numeric($studienplan_id) || $studienplan_id === '')
|
||||
{
|
||||
@@ -1203,7 +1204,10 @@ class lehrveranstaltung extends basis_db
|
||||
{
|
||||
$qry.=" AND tbl_studienplan_lehrveranstaltung.semester=" . $this->db_add_param($semester, FHC_INTEGER);
|
||||
}
|
||||
$qry.=" ORDER BY stpllv_sort, semester, sort";
|
||||
if(is_null($order))
|
||||
$qry.=" ORDER BY stpllv_sort, semester, sort";
|
||||
else
|
||||
$qry.=' ORDER BY '.$order;
|
||||
$this->lehrveranstaltungen = array();
|
||||
if ($result = $this->db_query($qry))
|
||||
{
|
||||
|
||||
@@ -778,7 +778,7 @@ class lvregel extends basis_db
|
||||
$lv->load($stpllv->lehrveranstaltung_id);
|
||||
|
||||
$this->debug('Abgeschlossen:'.$retval.' ECTS:'.$ects,1);
|
||||
if($ects>=$lv->ects)
|
||||
if($retval && ($ects>=$lv->ects))
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
|
||||
@@ -734,6 +734,15 @@ class moodle24_course extends basis_db
|
||||
$data = array($mdl_course_id);
|
||||
|
||||
$response = $client->core_course_delete_courses(array($mdl_course_id));
|
||||
|
||||
if(is_object($response))
|
||||
{
|
||||
$response_obj = $response;
|
||||
unset($response);
|
||||
if(isset($response_obj->warnings) && isset($response_obj->warnings->message))
|
||||
$response[0] = $response_obj->warnings->message;
|
||||
}
|
||||
|
||||
if(isset($response[0]))
|
||||
{
|
||||
$this->errormsg = $response[0];
|
||||
|
||||
@@ -63,6 +63,13 @@ class moodle24_user extends basis_db
|
||||
$client = new SoapClient($this->serverurl);
|
||||
$response = $client->fhcomplete_user_get_users(array(array('key'=>'username', 'value'=>$uid)));
|
||||
|
||||
if(is_object($response))
|
||||
{
|
||||
$response_obj = $response;
|
||||
unset($response);
|
||||
$response['users']=$response_obj->users;
|
||||
}
|
||||
|
||||
if(isset($response['users'][0]))
|
||||
{
|
||||
$this->mdl_user_id = $response['users'][0]['id'];
|
||||
|
||||
@@ -114,7 +114,7 @@ class pruefungsanmeldung extends basis_db {
|
||||
. 'wuensche='.$this->db_add_param($this->wuensche).', '
|
||||
. 'reihung='.$this->db_add_param($this->reihung).', '
|
||||
. 'kommentar='.$this->db_add_param($this->kommentar).', '
|
||||
. 'anrechnung_id='.$this->db_add_param($this->anrechnung_id)
|
||||
. 'anrechnung_id='.$this->db_add_param($this->anrechnung_id).', '
|
||||
. 'pruefungstyp_kurzbz='.$this->db_add_param($this->pruefungstyp_kurzbz)
|
||||
. ' WHERE pruefungsanmeldung_id='.$this->db_add_param($this->pruefungsanmeldung_id).';';
|
||||
}
|
||||
|
||||
+133
-63
@@ -16,15 +16,15 @@
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at>.
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
||||
* Gerald Raab <gerald.raab@technikum-wien.at>.
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class studiengang extends basis_db
|
||||
{
|
||||
public $new; // boolean
|
||||
public $new; // boolean
|
||||
public $result = array(); // studiengang Objekt
|
||||
|
||||
public $studiengang_kz; // integer
|
||||
@@ -76,13 +76,6 @@ class studiengang extends basis_db
|
||||
|
||||
if(!is_null($studiengang_kz))
|
||||
$this->load($studiengang_kz);
|
||||
|
||||
//$this->getAllTypes();
|
||||
/* $this->studiengang_typ_arr["b"] = "Bachelor";
|
||||
$this->studiengang_typ_arr["d"] = "Diplom";
|
||||
$this->studiengang_typ_arr["m"] = "Master";
|
||||
$this->studiengang_typ_arr["l"] = "LLL";
|
||||
$this->studiengang_typ_arr["e"] = "Erhalter"; */
|
||||
}
|
||||
|
||||
public function __get($value)
|
||||
@@ -258,7 +251,7 @@ class studiengang extends basis_db
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Studientypen in das Attribut studiengang_typ_array
|
||||
@@ -687,56 +680,62 @@ class studiengang extends basis_db
|
||||
return $result;
|
||||
}
|
||||
|
||||
public function getStudiengangTyp($typ)
|
||||
{
|
||||
$qry = "SELECT * FROM public.tbl_studiengangstyp WHERE typ =".$this->db_add_param($typ,FHC_STRING).";";
|
||||
/**
|
||||
* Laedt einen Studiengangstyp
|
||||
*
|
||||
* @param $typ Studiengangstyp
|
||||
* @return boolean true wenn erfolgreich geladen, false im Fehlerfall
|
||||
*/
|
||||
public function getStudiengangTyp($typ)
|
||||
{
|
||||
$qry = "SELECT * FROM public.tbl_studiengangstyp WHERE typ =".$this->db_add_param($typ,FHC_STRING).";";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->typ = $row->typ;
|
||||
$this->bezeichnung = $row->bezeichnung;
|
||||
$this->beschreibung = $row->beschreibung;
|
||||
}
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->typ = $row->typ;
|
||||
$this->bezeichnung = $row->bezeichnung;
|
||||
$this->beschreibung = $row->beschreibung;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $studiengaenge array
|
||||
* @return array|bool
|
||||
*/
|
||||
public function getTypes($studiengaenge) {
|
||||
/**
|
||||
* @param $studiengaenge array
|
||||
* @return array|bool
|
||||
*/
|
||||
public function getTypes($studiengaenge) {
|
||||
|
||||
$qry = 'SELECT distinct typ ' .
|
||||
'FROM public.tbl_studiengang ' .
|
||||
'WHERE studiengang_kz IN (' . implode(',', $studiengaenge) . ')';
|
||||
$qry = 'SELECT distinct typ ' .
|
||||
'FROM public.tbl_studiengang ' .
|
||||
'WHERE studiengang_kz IN (' . implode(',', $studiengaenge) . ')';
|
||||
|
||||
$types = array();
|
||||
$types = array();
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result)) {
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result)) {
|
||||
|
||||
$types[] = $row->typ;
|
||||
$types[] = $row->typ;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return $types;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return $types;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sucht nach einem Studiengang
|
||||
@@ -745,13 +744,13 @@ class studiengang extends basis_db
|
||||
*/
|
||||
public function search($searchItem)
|
||||
{
|
||||
$qry = 'SELECT * FROM public.tbl_studiengang WHERE
|
||||
LOWER(bezeichnung) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\') OR
|
||||
LOWER(english) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\')
|
||||
ORDER BY typ,bezeichnung;';
|
||||
$qry = 'SELECT * FROM public.tbl_studiengang WHERE
|
||||
LOWER(bezeichnung) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\') OR
|
||||
LOWER(english) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\')
|
||||
ORDER BY typ,bezeichnung;';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new studiengang();
|
||||
@@ -793,12 +792,12 @@ class studiengang extends basis_db
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden des Studiengangs';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -905,4 +904,75 @@ class studiengang extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Studiengänge die innerhalb eines Studiensemesters gültig sind
|
||||
* @param $studiensemester_kurzbz
|
||||
*/
|
||||
public function loadStudiengangFromStudiensemester($studiensemester_kurzbz)
|
||||
{
|
||||
$qry = "SELECT
|
||||
distinct tbl_studiengang.*
|
||||
FROM
|
||||
public.tbl_studiengang
|
||||
JOIN lehre.tbl_studienordnung USING(studiengang_kz)
|
||||
JOIN lehre.tbl_studienplan USING(studienordnung_id)
|
||||
JOIN lehre.tbl_studienplan_semester USING(studienplan_id)
|
||||
WHERE
|
||||
tbl_studienplan_semester.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
||||
ORDER BY
|
||||
typ, kurzbz";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new studiengang();
|
||||
|
||||
$obj->studiengang_kz = $row->studiengang_kz;
|
||||
$obj->kurzbz = $row->kurzbz;
|
||||
$obj->kurzbzlang = $row->kurzbzlang;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$obj->english = $row->english;
|
||||
$obj->typ = $row->typ;
|
||||
$obj->farbe = $row->farbe;
|
||||
$obj->email = $row->email;
|
||||
$obj->max_semester = $row->max_semester;
|
||||
$obj->max_verband = $row->max_verband;
|
||||
$obj->max_gruppe = $row->max_gruppe;
|
||||
$obj->erhalter_kz = $row->erhalter_kz;
|
||||
$obj->bescheid = $row->bescheid;
|
||||
$obj->bescheidbgbl1 = $row->bescheidbgbl1;
|
||||
$obj->bescheidbgbl2 = $row->bescheidbgbl2;
|
||||
$obj->bescheidgz = $row->bescheidgz;
|
||||
$obj->bescheidvom = $row->bescheidvom;
|
||||
$obj->ext_id = $row->ext_id;
|
||||
$obj->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
||||
$obj->orgform_kurzbz = $row->orgform_kurzbz;
|
||||
$obj->zusatzinfo_html = $row->zusatzinfo_html;
|
||||
$obj->sprache = $row->sprache;
|
||||
$obj->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
||||
$obj->studienplaetze = $row->studienplaetze;
|
||||
$obj->oe_kurzbz = $row->oe_kurzbz;
|
||||
$obj->lgartcode = $row->lgartcode;
|
||||
$obj->telefon = $row->telefon;
|
||||
$obj->titelbescheidvom = $row->titelbescheidvom;
|
||||
$obj->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
||||
$obj->moodle = $this->db_parse_bool($row->moodle);
|
||||
$obj->mischform = $this->db_parse_bool($row->mischform);
|
||||
$obj->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
||||
|
||||
$obj->bezeichnung_arr['German'] = $obj->bezeichnung;
|
||||
$obj->bezeichnung_arr['English'] = $obj->english;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = "Fehler bei der Datenbankabfrage aufgetreten.";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -149,24 +149,30 @@ class studienordnung extends basis_db
|
||||
|
||||
if(is_null($studiensemester_kurzbz))
|
||||
{
|
||||
$qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung FROM lehre.tbl_studienordnung sto
|
||||
$qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung, tbl_studiensemester.start as gueltig_startdatum
|
||||
FROM lehre.tbl_studienordnung sto
|
||||
LEFT JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
|
||||
LEFT JOIN public.tbl_studiensemester ON(sto.gueltigvon=tbl_studiensemester.studiensemester_kurzbz)
|
||||
WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = 'SELECT distinct sto.*, s.bezeichnung as status_bezeichnung, sem.* FROM lehre.tbl_studienordnung sto
|
||||
$qry = 'SELECT distinct sto.*, s.bezeichnung as status_bezeichnung, sem.*, tbl_studiensemester.start as gueltig_startdatum
|
||||
FROM lehre.tbl_studienordnung sto
|
||||
JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
|
||||
LEFT JOIN lehre.tbl_studienplan USING(studienordnung_id)
|
||||
LEFT JOIN lehre.tbl_studienplan_semester sem USING (studienplan_id)
|
||||
LEFT JOIN public.tbl_studiensemester ON(sto.gueltigvon=tbl_studiensemester.studiensemester_kurzbz)
|
||||
WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
|
||||
|
||||
if (!is_null($studiensemester_kurzbz))
|
||||
$qry.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz, FHC_STRING,false);
|
||||
$qry.=" AND sem.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz, FHC_STRING,false);
|
||||
if (!is_null($semester))
|
||||
$qry.=" AND semester=".$this->db_add_param($semester, FHC_INTEGER,false);
|
||||
}
|
||||
|
||||
$qry.=" ORDER BY gueltig_startdatum desc";
|
||||
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
|
||||
|
||||
@@ -155,6 +155,7 @@ class studienplan extends basis_db
|
||||
|
||||
if(!is_null($orgform_kurzbz))
|
||||
$qry.=" AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz);
|
||||
$qry.=" ORDER BY bezeichnung";
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
@@ -754,7 +755,6 @@ class studienplan extends basis_db
|
||||
$qry.=" AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz);
|
||||
}
|
||||
|
||||
|
||||
$res = array();
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
@@ -893,7 +893,7 @@ class studienplan extends basis_db
|
||||
WHERE
|
||||
tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER)."
|
||||
AND EXISTS (
|
||||
SELECT 1 FROM lehre.tbl_studienordnung_semester
|
||||
SELECT 1 FROM lehre.tbl_studienplan_semester
|
||||
WHERE studienordnung_id=tbl_studienplan.studienordnung_id
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
||||
AND semester = tbl_studienplan_lehrveranstaltung.semester)
|
||||
@@ -1192,4 +1192,4 @@ class studienplan extends basis_db
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
?>
|
||||
|
||||
@@ -33,6 +33,7 @@ require_once('../../include/datum.class.php');
|
||||
require_once('../../include/person.class.php');
|
||||
require_once('../../include/benutzer.class.php');
|
||||
require_once('../../include/mitarbeiter.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
@@ -44,6 +45,20 @@ require_once('../../include/pdf/fpdf.php');
|
||||
require_once('../../include/pdf.inc.php');
|
||||
|
||||
$getuid=get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($getuid);
|
||||
|
||||
if (isset($_GET['user']))
|
||||
{
|
||||
if ($rechte->isBerechtigt('admin',null,'suid'))
|
||||
$getuid = $_GET['user'];
|
||||
else
|
||||
$getuid=get_uid();
|
||||
}
|
||||
else
|
||||
$getuid=get_uid();
|
||||
|
||||
$datum_obj = new datum();
|
||||
$htmlstr = "";
|
||||
$qualitaet='';
|
||||
@@ -153,7 +168,7 @@ else
|
||||
$pdf->SetXY(30,30);
|
||||
|
||||
//Logo
|
||||
$pdf->Image("../../skin/images/logo.jpg","400","25","160","54","jpg","");
|
||||
$pdf->Image("../../skin/styles/tw/logo.jpg","400","25","150","78","jpg","");
|
||||
|
||||
$pdf->SetFont('Arial','',12);
|
||||
$pdf->SetFillColor(190,190,190);
|
||||
|
||||
@@ -439,17 +439,20 @@ function checkZeilenUmbruch()
|
||||
}
|
||||
}
|
||||
}
|
||||
$menu[]=array
|
||||
(
|
||||
'id'=>'core_menu_moodle',
|
||||
'position'=>'70',
|
||||
'name'=>$p->t('lehre/moodle'),
|
||||
'icon'=>'../../../skin/images/button_moodle.png',
|
||||
'link'=>$link,
|
||||
'link_target'=>$link_target,
|
||||
'link_onclick'=>$link_onclick,
|
||||
'text'=>$text
|
||||
);
|
||||
if (MOODLE)
|
||||
{
|
||||
$menu[]=array
|
||||
(
|
||||
'id'=>'core_menu_moodle',
|
||||
'position'=>'70',
|
||||
'name'=>$p->t('lehre/moodle'),
|
||||
'icon'=>'../../../skin/images/button_moodle.png',
|
||||
'link'=>$link,
|
||||
'link_target'=>$link_target,
|
||||
'link_onclick'=>$link_onclick,
|
||||
'text'=>$text
|
||||
);
|
||||
}
|
||||
|
||||
//Gesamtnote
|
||||
if($is_lector && ((!defined('CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN) && $angemeldet))
|
||||
|
||||
@@ -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
|
||||
(
|
||||
|
||||
@@ -1616,7 +1616,7 @@ class wochenplan extends basis_db
|
||||
{
|
||||
if($anzahl<=$max_kollision)
|
||||
{
|
||||
echo '<label value="'.$f_ort.($anzahl>0?'('.$anzahl.')':'').'"
|
||||
echo '<label value="'.$f_ort.($anzahl>0?' ('.$anzahl.')':'').'"
|
||||
styleOrig=""
|
||||
ondragenter="nsDragAndDrop.dragEnter(event,boardObserver)"
|
||||
ondragexit="nsDragAndDrop.dragExit(event,boardObserver)"
|
||||
|
||||
Reference in New Issue
Block a user