This commit is contained in:
kindlm
2016-01-25 17:59:33 +01:00
19 changed files with 978 additions and 636 deletions
+2
View File
@@ -485,11 +485,13 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
$ende_vorher = $zeit->ende;
if($data[2] != $data[3])
{
/*
if ($data[1] == 'LehreExtern')
{
$zeit->start = date('Y-m-d H:i:s', strtotime('+2 seconds', strtotime($data[2])));
$zeit->ende = date('Y-m-d H:i:s', strtotime('-2 seconds', strtotime($data[3])));
}
*/
if(!$zeit->save())
{
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': '.$zeit->errormsg.'</b>('.$zeit->start.')</span>';
+3
View File
@@ -111,6 +111,9 @@ define('VORRUECKUNG_STATUS_MAX_SEMESTER',true);
// Bei Statuswechsel auf Bewerber -> soll Reihungstest brücksichtigt werden
define('REIHUNGSTEST_CHECK', true);
// Bei Statuswechsel auf Bewerber bzw. Student -> soll ZGV brücksichtigt werden
define('ZGV_CHECK', true);
/* Schema zur Erstellung der Kurs Kategorien im Moodle
* Leer oder nicht gesetzt: STSEM -> STG -> Ausbsemester (WS2014 -> BEL -> 1)
* DEP-STG-JG-STSEM: Department -> STG -> Jahrgang -> StSem (Informationstechnologie und Informationsmanagement -> BIMK -> Jahrgang 2014 -> WS2014)
+36
View File
@@ -40,6 +40,7 @@ require_once('../include/variable.class.php');
require_once('../include/benutzerfunktion.class.php');
require_once('../include/studiensemester.class.php');
require_once('../include/fotostatus.class.php');
require_once('../include/anwesenheit.class.php');
$user = get_uid();
@@ -653,6 +654,41 @@ if(!$error)
$errormsg = 'Fehlerhafte Parameteruebergabe';
}
}
elseif(isset($_POST['type']) && $_POST['type']=='anwesenheittoggle')
{
if(!$rechte->isBerechtigt('student/anwesenheit'))
{
$return = false;
$errormsg = 'Sie haben keine Berechtigung fuer diese Aktion';
$data = '';
$error = true;
}
else
{
if(isset($_POST['student_uid']) && isset($_POST['lehreinheit_id']) && isset($_POST['datum']))
{
$student_uid = $_POST['student_uid'];
$lehreinheit_id = $_POST['lehreinheit_id'];
$datum = $_POST['datum'];
$anwesenheit = new anwesenheit();
if($anwesenheit->AnwesenheitToggle($lehreinheit_id, $datum, $student_uid))
{
$return = true;
$errormsg = "";
}
else
{
$return = false;
$errormsg = $anwesenheit->errormsg;
}
}
else
{
$return = false;
$errormsg = 'Fehlerhafte Parameteruebergabe';
}
}
}
else
{
$return = false;
+30 -14
View File
@@ -32,6 +32,7 @@
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
require_once('../../include/'.EXT_FKT_PATH.'/generateuid.inc.php');
require_once('../../include/'.EXT_FKT_PATH.'/generatematrikelnr.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/benutzergruppe.class.php');
@@ -67,6 +68,8 @@ require_once('../../include/lehrveranstaltung.class.php');
require_once('../../include/anwesenheit.class.php');
require_once('../../include/benutzerfunktion.class.php');
require_once('../../include/note.class.php');
require_once('../../include/standort.class.php');
require_once('../../include/adresse.class.php');
$user = get_uid();
$db = new basis_db();
@@ -661,21 +664,27 @@ if(!$error)
}
}
if($_POST['status_kurzbz']=='Bewerber' && $prestd->zgv_code=='')
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss die Zugangsvoraussetzung eingetragen sein.";
$anzahl_fehler++;
}
if(!defined("ZGV_CHECK") || ZGV_CHECK)
{
if($_POST['status_kurzbz']=='Bewerber' && $prestd->zgv_code=='')
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss die Zugangsvoraussetzung eingetragen sein.";
$anzahl_fehler++;
}
}
$stg_obj = new studiengang();
$stg_obj->load($prestd->studiengang_kz);
if($_POST['status_kurzbz']=='Bewerber' && $prestd->zgvmas_code=='' && $stg_obj->typ=='m')
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss die Zugangsvoraussetzung Master eingetragen sein.";
$anzahl_fehler++;
}
if(!defined("ZGV_CHECK") || ZGV_CHECK)
{
if($_POST['status_kurzbz']=='Bewerber' && $prestd->zgvmas_code=='' && $stg_obj->typ=='m')
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss die Zugangsvoraussetzung Master eingetragen sein.";
$anzahl_fehler++;
}
}
if(!$error)
{
@@ -1313,12 +1322,12 @@ if(!$error)
if(!$error)
{
if($prestd->zgv_code!='')
if((!defined("ZGV_CHECK") && $prestd->zgv_code!='') || (defined("ZGV_CHECK") && ZGV_CHECK == false) || (defined("ZGV_CHECK") && ZGV_CHECK == true && $prestd->zgv_code!=''))
{
$stg = new studiengang();
$stg->load($prestd->studiengang_kz);
if($stg->typ=='m' && $prestd->zgvmas_code=='')
if((defined("ZGV_CHECK") && ZGV_CHECK == true && $stg->typ=='m' && $prestd->zgvmas_code=='') || (!defined("ZGV_CHECK") && $stg->typ=='m' && $prestd->zgvmas_code==''))
{
$return = false;
$errormsg .= "\n$prestd->vorname $prestd->nachname: ZGV Master muss eingegeben werden";
@@ -1360,6 +1369,13 @@ if(!$error)
$stg_obj = new studiengang();
$stg_obj->load(ltrim($stg,'0'));
$uid = generateUID($stg_obj->kurzbz,$jahr,$stg_obj->typ,$matrikelnr);
$matrikelnummer = generateMatrikelnr($stg_obj->oe_kurzbz);
if($matrikelnummer != null)
{
$qry = "UPDATE public.tbl_person SET matr_nr=".$db->db_add_param($matrikelnummer)." WHERE person_id=".$db->db_add_param($prestd->person_id, FHC_INTEGER).' AND matr_nr is null';
$db->db_query($qry);
}
if(defined('SET_UID_AS_PERSONENKENNZEICHEN') && SET_UID_AS_PERSONENKENNZEICHEN)
{
@@ -168,7 +168,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<row>
<label value="Lehreinheit" control="student-pruefung-menulist-lehreinheit"/>
<menulist id="student-pruefung-menulist-lehreinheit" disabled="true"
datasources="rdf:null" flex="1"
datasources="rdf:null" flex="1" style="max-width: 600px"
ref="http://www.technikum-wien.at/lehreinheit/liste" >
<template>
<menupopup>
+49
View File
@@ -118,3 +118,52 @@ function TermineExport()
var url = 'statistik/termine.xls.php?lehreinheit_id='+TermineLehreinheitID+'&lehrveranstaltung_id='+TermineLehrveranstaltungID+'&mitarbeiter_uid='+TermineMitarbeiterUID+'&student_uid='+TermineStudentUID+'&db_stpl_table='+TermineStundenplanTable;
window.open(url);
}
function TermineToggleAnwesenheit()
{
if(TermineStudentUID=='')
{
alert('Anwesenheit kann nur in der Studierendenansicht geaendert werden');
return;
}
if(TermineStundenplanTable!='stundenplan')
{
alert('Bitte wechseln Sie auf die Stundenplan Tabelle. Anhand der StundenplanDEV duerfen keine Anwesenheiten geaendert werden.');
return;
}
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('termine-tree');
if (tree.currentIndex==-1) return;
//Ausgewaehlte Nr holen
var datum = getTreeCellText(tree, 'termine-treecol-datum_iso', tree.currentIndex);
var lehreinheit_id = getTreeCellText(tree, 'termine-treecol-lehreinheit_id', tree.currentIndex);
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'anwesenheittoggle');
req.add('datum', datum);
req.add('lehreinheit_id', lehreinheit_id);
req.add('student_uid', TermineStudentUID);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
else
{
TermineLoadTree();
SetStatusBarText('Daten wurden gespeichert');
}
}
+12
View File
@@ -47,6 +47,11 @@ $student_uid = filter_input(INPUT_GET,'student_uid');
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<vbox flex="1">
<popupset>
<menupopup id="termine-tree-popup">
<menuitem label="Anwesenheit umschalten" oncommand="TermineToggleAnwesenheit();" id="termine-tree-popup-toggle-anwesenheit" hidden="false"/>
</menupopup>
</popupset>
<groupbox id="termine-groupbox-termine" flex="1">
<caption label="Termine" />
<vbox flex="1">
@@ -57,6 +62,7 @@ $student_uid = filter_input(INPUT_GET,'student_uid');
<tree id="termine-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/termine"
persist="hidden, height"
context="termine-tree-popup"
>
<treecols>
<treecol id="termine-treecol-datum" label="Datum" flex="1" hidden="false"
@@ -103,6 +109,11 @@ $student_uid = filter_input(INPUT_GET,'student_uid');
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/termine/rdf#datum_iso" onclick="termineTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="termine-treecol-lehreinheit_id" label="LehreinheitID" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/termine/rdf#lehreinheit_id" onclick="termineTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
@@ -121,6 +132,7 @@ $student_uid = filter_input(INPUT_GET,'student_uid');
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#lehrfach" />
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#anwesend" />
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#datum_iso" />
<treecell label="rdf:http://www.technikum-wien.at/termine/rdf#lehreinheit_id" />
</treerow>
</treeitem>
</treechildren>
+163 -159
View File
@@ -1,159 +1,163 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class akadgrad extends basis_db
{
public $new;
public $result = array();
//Tabellenspalten
public $akadgrad_id;
public $akadgrad_kurzbz;
public $studiengang_kz;
public $titel;
public $geschlecht;
/**
* Konstruktor
* @param akadgrad_id ID des zu ladenden Datensatzes
*/
public function __construct($akadgrad_id=null)
{
parent::__construct();
if(!is_null($akadgrad_id))
$this->load($akadgrad_id);
}
/**
* Laedt einen Datensatz
* @param akadgrad_id ID des zu ladenden Datensatzes
*/
public function load($akadgrad_id)
{
//akadgrad_id auf gueltigkeit pruefen
if(!is_numeric($akadgrad_id) || $akadgrad_id == '')
{
$this->errormsg = 'akadgrad_id muss eine gültige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM lehre.tbl_akadgrad WHERE akadgrad_id=".$this->db_add_param($akadgrad_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akadgrad_id = $row->akadgrad_id;
$this->akadgrad_kurzbz = $row->akadgrad_kurzbz;
$this->studiengang_kz = $row->studiengang_kz;
$this->titel = $row->titel;
$this->geschlecht = $row->geschlecht;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
/**
* Laedt alle Eintraege
*/
public function getAll()
{
//laden des Datensatzes
$qry = "SELECT * FROM lehre.tbl_akadgrad";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new akadgrad();
$obj->akadgrad_id = $row->akadgrad_id;
$obj->akadgrad_kurzbz = $row->akadgrad_kurzbz;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->titel = $row->titel;
$obj->geschlecht = $row->geschlecht;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
/**
* Liefert den Akademischen Grad eines Studenten aus der Tabelle Akadgrad
* @param student_uid
*/
public function getAkadgradStudent($student_uid)
{
//laden des Datensatzes
$qry = "SELECT * FROM lehre.tbl_akadgrad WHERE
studiengang_kz = ( SELECT studiengang_kz FROM public.tbl_student WHERE student_uid=".$this->db_add_param($student_uid).") AND
( geschlecht = ( SELECT geschlecht FROM public.tbl_student
JOIN public.tbl_benutzer ON (student_uid=uid)
JOIN public.tbl_person USING (person_id)
WHERE student_uid=".$this->db_add_param($student_uid).")
OR geschlecht IS NULL)
LIMIT 1";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akadgrad_id = $row->akadgrad_id;
$this->akadgrad_kurzbz = $row->akadgrad_kurzbz;
$this->studiengang_kz = $row->studiengang_kz;
$this->titel = $row->titel;
$this->geschlecht = $row->geschlecht;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
}
?>
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
class akadgrad extends basis_db
{
public $new;
public $result = array();
//Tabellenspalten
public $akadgrad_id;
public $akadgrad_kurzbz;
public $studiengang_kz;
public $titel;
public $geschlecht;
/**
* Konstruktor
* @param akadgrad_id ID des zu ladenden Datensatzes
*/
public function __construct($akadgrad_id=null)
{
parent::__construct();
if(!is_null($akadgrad_id))
$this->load($akadgrad_id);
}
/**
* Laedt einen Datensatz
* @param akadgrad_id ID des zu ladenden Datensatzes
*/
public function load($akadgrad_id)
{
//akadgrad_id auf gueltigkeit pruefen
if(!is_numeric($akadgrad_id) || $akadgrad_id == '')
{
$this->errormsg = 'akadgrad_id muss eine gültige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM lehre.tbl_akadgrad WHERE akadgrad_id=".$this->db_add_param($akadgrad_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akadgrad_id = $row->akadgrad_id;
$this->akadgrad_kurzbz = $row->akadgrad_kurzbz;
$this->studiengang_kz = $row->studiengang_kz;
$this->titel = $row->titel;
$this->geschlecht = $row->geschlecht;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
/**
* Laedt alle Eintraege
*/
public function getAll()
{
//laden des Datensatzes
$qry = "SELECT * FROM lehre.tbl_akadgrad";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new akadgrad();
$obj->akadgrad_id = $row->akadgrad_id;
$obj->akadgrad_kurzbz = $row->akadgrad_kurzbz;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->titel = $row->titel;
$obj->geschlecht = $row->geschlecht;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
/**
* Liefert den Akademischen Grad eines Studenten aus der Tabelle Akadgrad
* @param student_uid
*/
public function getAkadgradStudent($student_uid)
{
//laden des Datensatzes
$qry = "SELECT * FROM lehre.tbl_akadgrad WHERE
studiengang_kz = ( SELECT studiengang_kz FROM public.tbl_student WHERE student_uid=".$this->db_add_param($student_uid).") AND
( geschlecht = ( SELECT geschlecht FROM public.tbl_student
JOIN public.tbl_benutzer ON (student_uid=uid)
JOIN public.tbl_person USING (person_id)
WHERE student_uid=".$this->db_add_param($student_uid).")
OR geschlecht IS NULL)
LIMIT 1";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->akadgrad_id = $row->akadgrad_id;
$this->akadgrad_kurzbz = $row->akadgrad_kurzbz;
$this->studiengang_kz = $row->studiengang_kz;
$this->titel = $row->titel;
$this->geschlecht = $row->geschlecht;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
public function __toString(){
return $this->akadgrad_kurzbz;
}
}
?>
+112
View File
@@ -435,6 +435,38 @@ class anwesenheit extends basis_db
}
}
/**
* Prueft ob Anwesenheiten erfasst wurden
* @param $lehreinheit_id ID der Lehreinheit
* @param $datum Datum
* @param $uid UID des Studierenden
* @return boolean true wenn vorhanden, sonst false
*/
public function AnwesenheitEntryExists($lehreinheit_id, $datum, $uid=null)
{
$qry = "SELECT
1
FROM
campus.tbl_anwesenheit
WHERE
lehreinheit_id=".$this->db_add_param($lehreinheit_id)."
AND datum=".$this->db_add_param($datum)."
AND uid=".$this->db_add_param($uid);
if($result = $this->db_query($qry))
{
if($this->db_num_rows($result)>0)
return true;
else
return false;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Laedt die Anwesenheiten in Prozent von Studierenden bei Lehrveranstaltungen
* Wenn die StudentUID uebergeben wird, werden alle Lehrveranstaltungen zu denen der Studierenden zugeteilt ist inkl Prozent der Anwesenheit
@@ -524,4 +556,84 @@ class anwesenheit extends basis_db
return false;
}
}
/**
* Aendert die bestehende Anwesenheit
* @param $lehreinheit_id ID der Lehreinheit
* @param $datum Datum
* @param $uid UID des Studierenden
* @return boolean true ok, sonst false
*/
public function AnwesenheitToggle($lehreinheit_id, $datum, $uid)
{
if($this->AnwesenheitEntryExists($lehreinheit_id, $datum, $uid))
{
$qry = "UPDATE
campus.tbl_anwesenheit
SET anwesend= NOT anwesend
WHERE
lehreinheit_id=".$this->db_add_param($lehreinheit_id)."
AND datum=".$this->db_add_param($datum)."
AND uid=".$this->db_add_param($uid);
if($result = $this->db_query($qry))
{
if($this->db_affected_rows($result)>0)
return true;
else
{
$this->errormsg='Anwesenheitsliste wurde noch nicht erfasst';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
else
{
// Anwesenheitsliste wurde noch nicht erfasst. Eintrag neu anlegen
// Einheiten ermitteln
$qry = "SELECT
distinct stunde
FROM
lehre.tbl_stundenplan
WHERE
lehreinheit_id=".$this->db_add_param($lehreinheit_id)."
AND datum=".$this->db_add_param($datum);
if($result = $this->db_query($qry))
{
if($anzahl = $this->db_num_rows($result))
{
$einheiten = $anzahl;
}
}
if($einheiten>0)
{
$this->lehreinheit_id=$lehreinheit_id;
$this->datum = $datum;
$this->uid = $uid;
$this->anwesend=true;
$this->new=true;
$this->einheiten=$einheiten;
if($this->save())
return true;
else
{
$this->errormsg = 'Fehler beim Speichern der Daten';
return true;
}
}
else
{
$this->errormsg = 'Anzahl der Einheiten fuer diesen Tag konnte nicht ermittelt werden';
return false;
}
}
}
}
+53 -3
View File
@@ -78,6 +78,9 @@ class lehrveranstaltung extends basis_db
public $alvs;
public $lvps;
public $las;
public $benotung=false;
public $lvinfo=false;
/**
* Konstruktor
@@ -154,6 +157,9 @@ class lehrveranstaltung extends basis_db
$this->alvs = $row->alvs;
$this->lvps = $row->lvps;
$this->las = $row->las;
$this->benotung = $this->db_parse_bool($row->benotung);
$this->lvinfo = $this->db_parse_bool($row->lvinfo);
$this->bezeichnung_arr['German'] = $this->bezeichnung;
$this->bezeichnung_arr['English'] = $this->bezeichnung_english;
@@ -219,6 +225,9 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -351,6 +360,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -478,6 +489,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -556,6 +569,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -714,7 +729,7 @@ class lehrveranstaltung extends basis_db
semester, ects, semesterstunden, anmerkung, lehre, lehreverzeichnis, aktiv, insertamum,
insertvon, planfaktor, planlektoren, planpersonalkosten, plankostenprolektor, updateamum, updatevon, sort,
zeugnis, projektarbeit, sprache, koordinator, bezeichnung_english, orgform_kurzbz, incoming, lehrtyp_kurzbz, oe_kurzbz,
raumtyp_kurzbz, anzahlsemester, semesterwochen, lvnr, semester_alternativ, farbe,sws,lvs,alvs,lvps,las) VALUES (' .
raumtyp_kurzbz, anzahlsemester, semesterwochen, lvnr, semester_alternativ, farbe,sws,lvs,alvs,lvps,las,benotung,lvinfo) VALUES (' .
$this->db_add_param($this->studiengang_kz) . ', ' .
$this->db_add_param($this->bezeichnung) . ', ' .
$this->db_add_param($this->kurzbz) . ', ' .
@@ -754,7 +769,10 @@ class lehrveranstaltung extends basis_db
$this->db_add_param($this->lvs).','.
$this->db_add_param($this->alvs).','.
$this->db_add_param($this->lvps).','.
$this->db_add_param($this->las).');';
$this->db_add_param($this->las).','.
$this->db_add_param($this->benotung, FHC_BOOLEAN).','.
$this->db_add_param($this->lvinfo, FHC_BOOLEAN)
.');';
}
else
{
@@ -804,7 +822,9 @@ class lehrveranstaltung extends basis_db
'lvs = '.$this->db_add_param($this->lvs).', '.
'alvs = '.$this->db_add_param($this->alvs).', '.
'lvps = '.$this->db_add_param($this->lvps).', '.
'las = '.$this->db_add_param($this->las).' '.
'las = '.$this->db_add_param($this->las).', '.
'benotung = '.$this->db_add_param($this->benotung, FHC_BOOLEAN).', '.
'lvinfo = '.$this->db_add_param($this->lvinfo, FHC_BOOLEAN).' '.
'WHERE lehrveranstaltung_id = ' . $this->db_add_param($this->lehrveranstaltung_id, FHC_INTEGER, false) . ';';
}
@@ -910,6 +930,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1000,6 +1022,8 @@ class lehrveranstaltung extends basis_db
$l->lvnr = $row->lvnr;
$l->semester_alternativ = $row->semester_alternativ;
$l->farbe = $row->farbe;
$l->benotung = $this->db_parse_bool($row->benotung);
$l->lvinfo = $this->db_parse_bool($row->lvinfo);
$l->bezeichnung_arr['German'] = $row->bezeichnung;
$l->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1115,6 +1139,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1204,6 +1230,8 @@ class lehrveranstaltung extends basis_db
$obj->semester_alternativ = $row->semester_alternativ;
$obj->farbe = $row->farbe;
$obj->stpllv_sort = $row->stpllv_sort;
$obj->benotung = $this->db_parse_bool($row->benotung);
$obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$obj->bezeichnung_arr['German'] = $row->bezeichnung;
$obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1288,6 +1316,9 @@ class lehrveranstaltung extends basis_db
$obj->stpllv_koordinator = $lv->stpllv_koordinator;
$obj->oe_kurzbz = $lv->oe_kurzbz;
$obj->lvnr = $lv->lvnr;
$obj->benotung = $this->db_parse_bool($lv->benotung);
$obj->lvinfo =$this->db_parse_bool( $lv->lvinfo);
$obj->zeugnis = $this->db_parse_bool($lv->zeugnis);
$values[] = $obj;
@@ -1309,6 +1340,9 @@ class lehrveranstaltung extends basis_db
$obj->stpllv_koordinator = $this->stpllv_koordinator;
$obj->oe_kurzbz = $this->oe_kurzbz;
$obj->lvnr = $this->lvnr;
$obj->benotung = $this->db_parse_bool($this->benotung);
$obj->lvinfo =$this->db_parse_bool( $this->lvinfo);
$obj->zeugnis = $this->db_parse_bool($this->zeugnis);
$values[] = $obj;
}
@@ -1354,6 +1388,9 @@ class lehrveranstaltung extends basis_db
$obj->orgform_kurzbz = $lv->orgform_kurzbz;
$obj->incoming = $lv->incoming;
$obj->sprache = $lv->sprache;
$obj->benotung = $lv->benotung;
$obj->lvinfo = $lv->lvinfo;
$obj->zeugnis = $lv->zeugnis;
$obj->children = array();
if(count($lv->childs) > 0)
@@ -1379,6 +1416,9 @@ class lehrveranstaltung extends basis_db
$obj->stpllv_pflicht = $this->stpllv_pflicht;
$obj->stpllv_koordinator = $this->stpllv_koordinator;
$obj->lvnr = $this->lvnr;
$obj->benotung = $this->db_parse_bool($this->benotung);
$obj->lvinfo =$this->db_parse_bool( $this->lvinfo);
$obj->zeugnis = $this->db_parse_bool($this->zeugnis);
$values[] = $obj;
}
@@ -1478,6 +1518,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->orgform_kurzbz = $row->orgform_kurzbz;
$lv_obj->lehrtyp_kurzbz = $row->lehrtyp_kurzbz;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1641,6 +1683,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->oe_kurzbz = $row->oe_kurzbz;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -1766,6 +1810,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->studiengang_kurzbzlang = $row->studiengang_kurzbzlang;
@@ -1889,6 +1935,8 @@ class lehrveranstaltung extends basis_db
$lv_obj->lvnr = $row->lvnr;
$lv_obj->semester_alternativ = $row->semester_alternativ;
$lv_obj->farbe = $row->farbe;
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$lv_obj->bezeichnung_arr['German'] = $row->bezeichnung;
$lv_obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
@@ -2147,6 +2195,8 @@ class lehrveranstaltung extends basis_db
$obj->lvnr = $row->lvnr;
$obj->semester_alternativ = $row->semester_alternativ;
$obj->farbe = $row->farbe;
$obj->benotung = $this->db_parse_bool($row->benotung);
$obj->lvinfo = $this->db_parse_bool($row->lvinfo);
$obj->bezeichnung_arr['German'] = $row->bezeichnung;
$obj->bezeichnung_arr['English'] = $row->bezeichnung_english;
+2 -1
View File
@@ -21,7 +21,8 @@
$dr = DOC_ROOT;
$dr = str_replace($_SERVER["DOCUMENT_ROOT"], "", $dr);
if($dr=='')
$dr='/';
//Originaldateien des Herstellers
echo '<link rel="stylesheet" type="text/css" href="'.$dr.'vendor/FHC-vendor/easyui/themes/icon.css">';
+2 -1
View File
@@ -21,7 +21,8 @@
$dr = DOC_ROOT;
$dr = str_replace($_SERVER["DOCUMENT_ROOT"], "", $dr);
if($dr=='')
$dr='/';
//Originaldateien des Herstellers
echo '<link rel="stylesheet" type="text/css" href="'.$dr.'vendor/FHC-vendor/jquery-tablesorter/css/theme.default.css">';
+2
View File
@@ -21,6 +21,8 @@
$dr = DOC_ROOT;
$dr = str_replace($_SERVER["DOCUMENT_ROOT"], "", $dr);
if($dr=='')
$dr='/';
//Originaldateien des Herstellers
echo '<script src="'.$dr.'vendor/components/jquery/jquery.min.js"></script>';
+2
View File
@@ -42,6 +42,7 @@ class organisationseinheit extends basis_db
public $aktiv=true;
public $lehre=true;
public $mailverteiler=false;
public $standort_id;
public $oe_kurzbz_orig;
public $beschreibung;
@@ -133,6 +134,7 @@ class organisationseinheit extends basis_db
$this->aktiv = $this->db_parse_bool($row->aktiv);
$this->mailverteiler = $this->db_parse_bool($row->mailverteiler);
$this->lehre = $this->db_parse_bool($row->lehre);
$this->standort_id = $row->standort_id;
}
else
{
File diff suppressed because it is too large Load Diff
+53
View File
@@ -0,0 +1,53 @@
<?php
/* Copyright (C) 2016 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Nikolaus Krondraf <nikolaus.krondraf@technikum-wien.at>
*/
/**
* Funktion zur Generierung der Matrikelnummer
* Default: es wird keine Matrikelnummer generiert
*/
require_once(dirname(__FILE__).'/../addon.class.php');
// die aktiven Addons werden durchsucht, ob eines davon eine eigene Matrikelnummern-Generierung vorsieht
// falls ja, wird die Version des Addons genommen, ansonsten die Default Generierung
$generateuid_addon_found=false;
$generateuid_addons = new addon();
foreach($generateuid_addons->aktive_addons as $addon)
{
$generateuid_addon_filename = dirname(__FILE__).'/../../addons/'.$addon.'/vilesci/generatematrikelnr.inc.php';
if(file_exists($generateuid_addon_filename))
{
include($generateuid_addon_filename);
$generateuid_addon_found=true;
break;
}
}
if(!$generateuid_addon_found)
{
function generateMatrikelnr($oe_kurzbz)
{
return null;
}
}
+22
View File
@@ -92,6 +92,28 @@ if(!@$db->db_query("SELECT bewerbung_abgeschicktamum FROM public.tbl_prestudents
echo '<br>Spalte bewerbung_abgeschicktamum in public.tbl_prestudentstatus hinzugefügt';
}
//Spalte benotung in lehre.tbl_lehrveranstaltung
if (!$result = @$db->db_query("SELECT benotung FROM lehre.tbl_lehrveranstaltung LIMIT 1;"))
{
$qry = "ALTER TABLE lehre.tbl_lehrveranstaltung ADD COLUMN benotung boolean NOT NULL DEFAULT FALSE;";
if (!$db->db_query($qry))
echo '<strong>lehre.tbl_lehrveranstaltung: ' . $db->db_last_error() . '</strong><br>';
else
echo ' lehre.tbl_lehrveranstaltung: Spalte benotung hinzugefügt.<br>';
}
//Spalte lvinfo in lehre.tbl_lehrveranstaltung
if (!$result = @$db->db_query("SELECT lvinfo FROM lehre.tbl_lehrveranstaltung LIMIT 1;"))
{
$qry = "ALTER TABLE lehre.tbl_lehrveranstaltung ADD COLUMN lvinfo boolean NOT NULL DEFAULT FALSE;";
if (!$db->db_query($qry))
echo '<strong>lehre.tbl_lehrveranstaltung: ' . $db->db_last_error() . '</strong><br>';
else
echo ' lehre.tbl_lehrveranstaltung: Spalte lvinfo hinzugefügt.<br>';
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
+12 -2
View File
@@ -131,6 +131,8 @@ $worksheet->write($zeile,++$spalte,'Anschaffungsdatum',$format_bold);
$maxlength[$spalte]=17;
$worksheet->write($zeile,++$spalte,'Anschaffungswert',$format_bold);
$maxlength[$spalte]=16;
$worksheet->write($zeile,++$spalte,'Person',$format_bold);
$maxlength[$spalte]=20;
for ($pos=0;$pos<count($resultBetriebsmittel);$pos++)
{
@@ -148,8 +150,9 @@ for ($pos=0;$pos<count($resultBetriebsmittel);$pos++)
$resultBetriebsmittel[$pos]->oe_kurzbz=$oBetriebsmittelOrganisationseinheit->errormsg;
}
$oOrganisationseinheit->bezeichnung='';
$oOrganisationseinheit = new organisationseinheit($resultBetriebsmittel[$pos]->oe_kurzbz);
//$oOrganisationseinheit->bezeichnung='';
// String - Daten Leerzeichen am Ende entfernen
$resultBetriebsmittel[$pos]->bestellnr=trim($resultBetriebsmittel[$pos]->bestellnr);
@@ -173,6 +176,13 @@ for ($pos=0;$pos<count($resultBetriebsmittel);$pos++)
InsertCell($zeile,++$spalte,$datum_obj->formatDatum($resultBetriebsmittel[$pos]->anschaffungsdatum,'d.m.Y'),$format_date);
InsertCell($zeile,++$spalte,$resultBetriebsmittel[$pos]->anschaffungswert, $format_number);
$bmp = new betriebsmittelperson();
$bmp->load_betriebsmittelpersonen($resultBetriebsmittel[$pos]->betriebsmittel_id);
$person = new person();
$person->load($bmp->person_id);
$person_name=$person->vorname.' '.$person->nachname;
InsertCell($zeile,++$spalte,$person_name, $format_number);
}
$maxlength[1]=30;
$maxlength[2]=30;
@@ -198,4 +208,4 @@ function InsertCell($zeile, $spalte, $value, $format=null)
if(mb_strlen($value)>$maxlength[$spalte])
$maxlength[$spalte]=mb_strlen($value);
}
?>
?>
+13 -1
View File
@@ -196,7 +196,19 @@ if($work=='save')
if($anwesenheit_id!='')
{
$anwesenheit->load($anwesenheit_id);
if(!$anwesenheit->load($anwesenheit_id))
die('Es ist ein Fehler beim Laden der Daten aufgetreten: '.$anwesenheit->errormsg.' Bitte versuchen Sie es erneut');
}
else
{
// Wenn der Eintrag bereits exisitiert aber kein Update durchgefuehrt wird, dann wird der Eintrag uebersprungen
// da der Eintrag sonst doppelt vorhanden ist.
// zB bei Reload der Seite oder schliessen und erneuten oeffnen des Browsers und Absenden der POST Daten
if($anwesenheit->AnwesenheitEntryExists($_POST['lehreinheit_id'], $_POST['datum'], $user))
{
echo $anwesenheit->convert_html_chars($user)." wird übersprungen da der Eintrag bereits erfasst wurde<br>";
continue;
}
}
$anwesenheit->uid = $user;