This commit is contained in:
kindlm
2015-11-02 20:16:04 +01:00
21 changed files with 4795 additions and 697 deletions
@@ -132,8 +132,17 @@ function savenote($db,$lvid, $student_uid, $note, $punkte=null)
// Wenn punkte vorhanden sind, dann die note dazu ermitteln
if($punkte!='' && $note=='')
{
$notenschluessel = new notenschluessel();
$note = $notenschluessel->getNote($punkte, $lvid, $stsem);
if(is_numeric($punkte))
{
$notenschluessel = new notenschluessel();
$note = $notenschluessel->getNote($punkte, $lvid, $stsem);
}
else
{
// Wenn Punkte nicht numerisch ist, dann kann es eine der Spezailnoten sein (ar, met, ...)
$note = $punkte;
$punkte='';
}
}
if(!is_numeric($note))
+1 -1
View File
@@ -240,7 +240,7 @@ else
if($elem->note==6) //angerechnet
{
$inc.=' (ar)';
$note='6';
$note='ar';
}
else
$note='';
+4
View File
@@ -191,4 +191,8 @@ define('KOLLISIONSFREIE_USER',serialize(array('_DummyLektor')));
// Soll der Lageplan am Infoterminal angezeigt werden (true|false)
define('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN', true);
//PHANTOM
define('PHANTOM_SERVER','http://phantomjs.example.com:3003');
?>
+123 -64
View File
@@ -65,9 +65,9 @@ if(!$error)
//in der Variable type wird die auszufuehrende Aktion mituebergeben
if(isset($_POST['type']) && $_POST['type']=='adressesave') // ***** ADRESSEN ***** //
{
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
@@ -79,19 +79,19 @@ if(!$error)
{
//Speichert die Adressdaten in die Datenbank
$adresse = new adresse();
if($_POST['neu']=='false')
{
$adresse->load($_POST['adresse_id']);
$adresse->new = false;
}
else
else
{
$adresse->insertamum = date('Y-m-d H:i:s');
$adresse->insertvon = $user;
$adresse->new = true;
}
$adresse->adresse_id = $_POST['adresse_id'];
$adresse->person_id = $_POST['person_id'];
$adresse->name = $_POST['name'];
@@ -106,19 +106,19 @@ if(!$error)
$adresse->firma_id = $_POST['firma_id'];
$adresse->updateamum = date('Y-m-d H:i:s');
$adresse->updatevon = $user;
//Wenn die Nation Oesterreich ist, dann muss die Gemeinde in der Tabelle Gemeinde vorkommen
if($_POST['nation']=='A')
{
if(is_numeric($_POST['plz']) && $_POST['plz']<32000)
{
$qry = "SELECT * FROM bis.tbl_gemeinde WHERE lower(name)=lower(".$db->db_add_param($_POST['gemeinde']).")
$qry = "SELECT * FROM bis.tbl_gemeinde WHERE lower(name)=lower(".$db->db_add_param($_POST['gemeinde']).")
AND plz=".$db->db_add_param($_POST['plz']);
if($db->db_query($qry))
{
if($row = $db->db_fetch_object())
{
$adresse->gemeinde = $row->name;
$adresse->gemeinde = $row->name;
}
else
{
@@ -134,14 +134,14 @@ if(!$error)
$return = false;
}
}
else
else
{
$error = true;
$errormsg = 'Postleitzahl ist fuer diese Nation ungueltig';
$return = false;
}
}
if(!$error)
{
if($adresse->save())
@@ -159,9 +159,9 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='adressedelete')
{
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
@@ -169,7 +169,7 @@ if(!$error)
$data = '';
$error = true;
}
else
else
{
//Loescht Adressen aus der DB
$adresse = new adresse();
@@ -178,7 +178,7 @@ if(!$error)
$return = false;
$errormsg = $adresse->errormsg;
}
else
else
{
if($adresse->heimatadresse)
{
@@ -187,7 +187,7 @@ if(!$error)
$return = false;
$errormsg = 'Heimatadressen dürfen nicht gelöscht werden, da diese für die BIS-Meldung relevant sind. Um die Adresse dennoch zu löschen, entfernen sie das Hackerl bei Heimatadresse!';
}
else
else
{
if($adresse->delete($_POST['adresse_id']))
{
@@ -204,9 +204,9 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='kontaktsave') // ***** KONTAKT ***** //
{
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
@@ -214,11 +214,11 @@ if(!$error)
$data = '';
$error = true;
}
else
else
{
//Speichert die Kontaktdaten in die Datenbank
$kontakt = new kontakt();
if($_POST['neu']=='false')
{
$kontakt->load($_POST['kontakt_id']);
@@ -230,7 +230,7 @@ if(!$error)
$kontakt->insertvon = $user;
$kontakt->new = true;
}
$kontakt->kontakt_id = $_POST['kontakt_id'];
$kontakt->person_id = $_POST['person_id'];
$kontakt->anmerkung = $_POST['anmerkung'];
@@ -240,7 +240,7 @@ if(!$error)
$kontakt->standort_id = $_POST['standort_id'];
$kontakt->updateamum = date('Y-m-d H:i:s');
$kontakt->updatevon = $user;
if($kontakt->save())
{
$return = true;
@@ -255,9 +255,9 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='kontaktdelete')
{
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
@@ -265,16 +265,16 @@ if(!$error)
$data = '';
$error = true;
}
else
else
{
//Loescht Kontaktdaten aus der Datenbank
$kontakt = new kontakt();
if($kontakt->delete($_POST['kontakt_id']))
{
$return = true;
}
else
else
{
$return = false;
$errormsg = $kontakt->errormsg;
@@ -290,23 +290,23 @@ if(!$error)
$data = '';
$error = true;
}
else
else
{
//Speichert die Kontaktdaten in die Datenbank
$bankverbindung = new bankverbindung();
if($_POST['neu']=='false')
{
$bankverbindung->load($_POST['bankverbindung_id']);
$bankverbindung->new = false;
}
else
else
{
$bankverbindung->insertamum = date('Y-m-d H:i:s');
$bankverbindung->insertvon = $user;
$bankverbindung->new = true;
}
$bankverbindung->bankverbindung_id = $_POST['bankverbindung_id'];
$bankverbindung->person_id = $_POST['person_id'];
$bankverbindung->name = $_POST['name'];
@@ -319,13 +319,13 @@ if(!$error)
$bankverbindung->verrechnung = ($_POST['verrechnung']=='true'?true:false);
$bankverbindung->updateamum = date('Y-m-d H:i:s');
$bankverbindung->updatevon = $user;
if($bankverbindung->save())
{
$return = true;
$data = $bankverbindung->bankverbindung_id;
}
else
else
{
$return = false;
$errormsg = $bankverbindung->errormsg;
@@ -342,26 +342,26 @@ if(!$error)
$error = true;
}
else
{
{
//Loescht Bankverbindungen aus der Datenbank
$bankverbindung = new bankverbindung();
if($bankverbindung->delete($_POST['bankverbindung_id']))
{
$return = true;
}
else
else
{
$return = false;
$errormsg = $bankverbindung->errormsg;
}
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='funktionsave') // ****************** BENUTZERFUNKTION **************** //
{
if(($_POST['studiengang_kz_berecht']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz_berecht'],'suid') &&
if(($_POST['studiengang_kz_berecht']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz_berecht'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz_berecht'], 'suid')) ||
($_POST['studiengang_kz_berecht']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
($_POST['studiengang_kz_berecht']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
@@ -370,7 +370,7 @@ if(!$error)
$error = true;
}
else
{
{
$benutzerfunktion = new benutzerfunktion();
if(isset($_POST['neu']) && $_POST['neu']=='true')
{
@@ -378,7 +378,7 @@ if(!$error)
$benutzerfunktion->insertamum=date('Y-m-d H:i:s');
$benutzerfunktion->insertvon = $user;
}
else
else
{
if(isset($_POST['benutzerfunktion_id']))
{
@@ -386,14 +386,14 @@ if(!$error)
{
$benutzerfunktion->new = false;
}
else
else
{
$error = true;
$errormsg = 'Fehler beim Laden der Funktion: '.$benutzerfunktion->errormsg;
$return = false;
}
}
else
else
{
$error = true;
$errormsg = 'Benutzerfunktion_id wurde nicht uebergeben';
@@ -420,13 +420,13 @@ if(!$error)
$benutzerfunktion->datum_bis = $_POST['datum_bis'];
$benutzerfunktion->bezeichnung = $_POST['bezeichnung'];
$benutzerfunktion->wochenstunden = str_replace(',','.',$_POST['wochenstunden']);
if($benutzerfunktion->save())
{
$return = true;
$data = $benutzerfunktion->benutzerfunktion_id;
}
else
else
{
$return = false;
$errormsg = 'Fehler beim Speichern:'.$benutzerfunktion->errormsg;
@@ -436,9 +436,9 @@ if(!$error)
}
elseif(isset($_POST['type']) && $_POST['type']=='funktiondelete')
{
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
@@ -447,15 +447,15 @@ if(!$error)
$error = true;
}
else
{
{
if(isset($_POST['benutzerfunktion_id']) && is_numeric($_POST['benutzerfunktion_id']))
{
$benutzerfunktion = new benutzerfunktion();
if($benutzerfunktion->delete($_POST['benutzerfunktion_id']))
{
$return = true;
$return = true;
}
else
else
{
$return = false;
$errormsg = 'Fehler beim Loeschen:'.$benutzerfunktion->errormsg;
@@ -466,10 +466,10 @@ if(!$error)
elseif(isset($_POST['type']) && $_POST['type']=='variablechange') /**********************SONSTIGES*****************/
{
$variable = new variable();
$variable->uid = $user;
// Aendert die Variable Studiensemester
// Aendert die Variable Studiensemester
if(isset($_POST['stsem']))
{
if(isset($_POST['wert']) && $_POST['wert']!=0)
@@ -477,9 +477,9 @@ if(!$error)
$stsem = new studiensemester();
$studiensemester_kurzbz = $stsem->jump($_POST['stsem'], $_POST['wert']);
}
else
else
$studiensemester_kurzbz = $_POST['stsem'];
$variable->name = 'semester_aktuell';
$variable->wert = $studiensemester_kurzbz;
}
@@ -497,7 +497,7 @@ if(!$error)
{
$error = true;
}
if(!$error)
{
if($variable->save())
@@ -521,9 +521,9 @@ if(!$error)
{
if(isset($_POST['person_id']) && is_numeric($_POST['person_id']))
{
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
{
$return = false;
@@ -549,23 +549,23 @@ if(!$error)
$fs->updateamum = date('Y-m-d H:i:s');
$fs->updatevon = $user;
$fs->save(true);
$return = true;
}
else
else
{
$return = false;
$errormsg = 'Fehler beim Loeschen des grossen Bildes';
}
}
else
else
{
$return = false;
$errormsg = 'Fehler beim Loeschen des Bildes';
}
}
}
else
else
{
$return = false;
$errormsg = 'Falsche Parameteruebergabe'.$_POST['person_id'].'x';
@@ -574,13 +574,13 @@ if(!$error)
elseif(isset($_POST['type']) && $_POST['type']=='getvariable')
{
$variable = new variable();
if($variable->load($user, $_POST['name']))
{
{
$return = true;
$data = $variable->wert;
}
else
else
{
if($variable->errormsg=='')
{
@@ -594,6 +594,65 @@ if(!$error)
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='getprivatemailadressUID')
{
$variable = new variable();
$variable->loadVariables($user);
if(isset($_POST['uids']))
{
$pers_arr = explode(';',$_POST['uids']);
$data='';
$anz_error=0;
foreach ($pers_arr as $uid)
{
if($uid!='')
{
$qry = "SELECT kontakt
FROM
public.tbl_kontakt
JOIN public.tbl_benutzer USING(person_id)
WHERE kontakttyp='email'
AND uid=".$db->db_add_param($uid)." AND zustellung=true LIMIT 1";
if($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
{
if($data!='')
$data.=$variable->variable->emailadressentrennzeichen.$row->kontakt;
else
$data = $row->kontakt;
}
else
{
$anz_error++;
}
}
}
}
if($data!='')
{
if($anz_error==0)
$return = true;
else
{
$return = false;
$errormsg = "Bei $anz_error Personen wurde keine Emailadresse gefunden!";
}
}
else
{
$return = false;
$errormsg = 'Es wurde keine Privatadresse gefunden';
}
}
else
{
$return = false;
$errormsg = 'Fehlerhafte Parameteruebergabe';
}
}
else
{
$return = false;
+91 -37
View File
@@ -56,7 +56,7 @@ function initLektorTree()
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = LektorTree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
@@ -223,6 +223,60 @@ function LektorFunktionMail()
window.location.href=mailempfaenger;
}
// ****
// * Sendet ein Mail an die Mitarbeiter die im Lektor Tree
// * markiert wurden.
// ****
function LektorFunktionMailPrivat()
{
uids='';
var tree=document.getElementById('tree-lektor');
var numRanges = tree.view.selection.getRangeCount();
var start = new Object();
var end = new Object();
var anzfault=0;
//Markierte Datensaetze holen
for (var t=0; t<numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (v=start.value; v<=end.value; v++)
{
var col = tree.columns ? tree.columns["uid"] : "uid";
if(tree.view.getCellText(v,col).length>1)
{
uids=uids+';'+tree.view.getCellText(v,col);
}
}
}
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'getprivatemailadressUID');
req.add('uids', uids);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
{
alert(val.dbdml_errormsg)
if(val.dbdml_data!='')
splitmailto(val.dbdml_data,'to');
}
}
else
{
if(val.dbdml_data!='')
splitmailto(val.dbdml_data,'bcc');
}
}
function auswahlValues()
{
this.stg_kz=null;
@@ -364,7 +418,7 @@ function onVerbandSelect(event)
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = treeLV.database.GetDataSources();
while(oldDatasources.hasMoreElements())
@@ -409,7 +463,7 @@ function onVerbandSelect(event)
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = treeInt.database.GetDataSources();
while(oldDatasources.hasMoreElements())
@@ -471,7 +525,7 @@ function onFachbereichSelect(event)
col = tree.columns ? tree.columns["fachbereich-treecol-uid"] : "fachbereich-treecol-uid";
var uid=tree.view.getCellText(tree.currentIndex,col);
//Wenn auf einen Mitarbeiter geklickt wird, dann die kurzbz vom uebergeordneten
//Fachbereich holen
if(uid!='')
@@ -495,7 +549,7 @@ function onFachbereichSelect(event)
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = treeLV.database.GetDataSources();
while(oldDatasources.hasMoreElements())
@@ -519,7 +573,7 @@ function onFachbereichSelect(event)
}
/*
* Wird bei einer Auswahl der Organisationseinheit aufgerufen und laedt die Lehrveranstaltungen der
* Wird bei einer Auswahl der Organisationseinheit aufgerufen und laedt die Lehrveranstaltungen der
* markierten Organisationseinheit
*/
function onOrganisationseinheitSelect(event)
@@ -550,7 +604,7 @@ function onOrganisationseinheitSelect(event)
col = tree.columns ? tree.columns["organisationseinheit-treecol-oe_kurzbz"] : "organisationseinheit-treecol-oe_kurzbz";
var kurzbz=tree.view.getCellText(tree.currentIndex,col);
// Lehrveranstaltung
document.getElementById('statusbar-progressmeter').setAttribute('mode','undetermined');
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
@@ -567,7 +621,7 @@ function onOrganisationseinheitSelect(event)
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = treeLV.database.GetDataSources();
while(oldDatasources.hasMoreElements())
@@ -628,14 +682,14 @@ function onLektorSelect(event)
return;
col = tree.columns ? tree.columns["uid"] : "uid";
var uid=tree.view.getCellText(tree.currentIndex,col);
var stg_idx = tree.view.getParentIndex(tree.currentIndex);
//wenn direkt ein studiengang markiert wurde dann abbrechen
if(stg_idx==-1)
return;
var col = tree.columns ? tree.columns["studiengang_kz"] : "studiengang_kz";
var stg_kz=tree.view.getCellText(stg_idx,col);
@@ -659,7 +713,7 @@ function onLektorSelect(event)
}
catch(e)
{}
while(oldDatasources.hasMoreElements())
{
treeLV.database.RemoveDataSource(oldDatasources.getNext());
@@ -702,7 +756,7 @@ function StatistikPrintKoordinatorstunden()
var col;
col = tree.columns ? tree.columns["organisationseinheit-treecol-oe_kurzbz"] : "organisationseinheit-treecol-oe_kurzbz";
var oe_kurzbz=tree.view.getCellText(tree.currentIndex,col);
window.open('<?php echo APP_ROOT ?>content/statistik/koordinatorstunden.php?oe_kurzbz='+oe_kurzbz,'Koordinatorstunden');
}
catch(e)
@@ -792,7 +846,7 @@ function StatistikPrintLVPlanung()
var uid=tree.view.getCellText(tree.currentIndex,col);
var url = '<?php echo APP_ROOT ?>content/statistik/lvplanung.php?uid='+uid;
}
if(typeof(url)!='undefined')
window.open(url,'LV-Planung');
else
@@ -806,7 +860,7 @@ function StatistikPrintLVPlanung()
function StatistikPrintLVPlanungExcel()
{
var studiensemester=getStudiensemester();
if(document.getElementById('menu-content-tabs').selectedItem == document.getElementById('tab-verband'))
{
tree = document.getElementById('tree-verband');
@@ -857,7 +911,7 @@ function StatistikPrintLVPlanungExcel()
var uid=tree.view.getCellText(tree.currentIndex,col);
var url = '<?php echo APP_ROOT ?>content/statistik/lvplanung.xls.php?uid='+uid+'&studiensemester_kurzbz='+studiensemester;
}
if(typeof(url)!='undefined')
window.open(url,'LV-Planung');
else
@@ -1098,7 +1152,7 @@ function StatistikPrintStudentExportExtended()
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
else
return false;
for (var v=0; v < items; v++)
{
prestudent_id = getTreeCellText(tree, 'student-treecol-prestudent_id', v);
@@ -1106,13 +1160,13 @@ function StatistikPrintStudentExportExtended()
}
}
else
{
{
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
//alle markierten personen holen
for (var t = 0; t < numRanges; t++)
{
@@ -1124,7 +1178,7 @@ function StatistikPrintStudentExportExtended()
}
}
}
stsem = getStudiensemester();
action = '<?php echo APP_ROOT; ?>content/statistik/studentenexportextended.xls.php?studiensemester_kurzbz='+stsem;
OpenWindowPost(action, data);
@@ -1161,7 +1215,7 @@ function ExtrasShowLVverwaltung()
var studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["sem"] : "sem";
var semester=tree.view.getCellText(tree.currentIndex,col);
var url = '<?php echo APP_ROOT ?>vilesci/lehre/lehrveranstaltung.php?stg_kz='+studiengang_kz+'&semester='+semester;
}
else if(document.getElementById('menu-content-tabs').selectedItem == document.getElementById('tab-fachbereich'))
@@ -1184,7 +1238,7 @@ function ExtrasShowLVverwaltung()
{
var url = '<?php echo APP_ROOT ?>vilesci/lehre/lehrveranstaltung.php';
}
window.open(url,'Lehrveranstaltungen','');
}
@@ -1221,7 +1275,7 @@ function ExtrasShowProjektarbeitsBenotung()
var col;
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
var studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
window.open('<?php echo APP_ROOT ?>vilesci/lehre/projektarbeitsbenotung.php?stg_kz='+studiengang_kz,'Projektarbeitsbenotung','');
}
@@ -1242,7 +1296,7 @@ function ExtrasShowProjektarbeitsabgaben()
var col;
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
var studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
window.open('<?php echo APP_ROOT ?>vilesci/lehre/abgabe_assistenz_frameset.php?stg_kz='+studiengang_kz,'Projektarbeitsabgaben','');
}
@@ -1585,10 +1639,10 @@ function PrintAccountInfoBlatt(event)
var output = 'pdf';
if(typeof(event)!=='undefined')
{
if (event.shiftKey)
if (event.shiftKey)
{
var output = 'odt';
}
}
else if (event.ctrlKey)
{
var output = 'doc';
@@ -1709,7 +1763,7 @@ function PrintStudienblatt(event)
if (check == false)
return false;
}
if(document.getElementById('main-content-tabs').selectedItem==document.getElementById('tab-studenten'))
{
//STUDENTEN
@@ -1746,10 +1800,10 @@ function PrintStudienblatt(event)
var output = 'pdf';
if(typeof(event)!=='undefined')
{
if (event.shiftKey)
if (event.shiftKey)
{
var output = 'odt';
}
}
else if (event.ctrlKey)
{
var output = 'doc';
@@ -1796,7 +1850,7 @@ function PrintStudienblattEnglisch(event)
if (check == false)
return false;
}
if(document.getElementById('main-content-tabs').selectedItem==document.getElementById('tab-studenten'))
{
//STUDENTEN
@@ -1833,10 +1887,10 @@ function PrintStudienblattEnglisch(event)
var output = 'pdf';
if(typeof(event)!=='undefined')
{
if (event.shiftKey)
if (event.shiftKey)
{
var output = 'odt';
}
}
else if (event.ctrlKey)
{
var output = 'doc';
@@ -1866,14 +1920,14 @@ function FachbereichTreeRefresh()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
tree = document.getElementById('tree-fachbereich');
var oldDatasources = tree.database.GetDataSources();
var oldDatasources = tree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
tree.database.RemoveDataSource(oldDatasources.getNext());
}
tree.builder.rebuild();
url = '<?php echo APP_ROOT; ?>rdf/fachbereich_menue.rdf.php?'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var fb_datasource = rdfService.GetDataSource(url);
@@ -1889,14 +1943,14 @@ function OrganisationseinheitTreeRefresh()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
tree = document.getElementById('tree-organisationseinheit');
var oldDatasources = tree.database.GetDataSources();
var oldDatasources = tree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
tree.database.RemoveDataSource(oldDatasources.getNext());
}
tree.builder.rebuild();
url = '<?php echo APP_ROOT; ?>rdf/organisationseinheit_menue.rdf.php?'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var oe_datasource = rdfService.GetDataSource(url);
+2 -1
View File
@@ -309,7 +309,8 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiteroverlay.xul
<vbox id="vbox-main">
<popupset>
<menupopup id="fasoverlay-lektor-tree-popup">
<menuitem label="Mail senden" oncommand="LektorFunktionMail();" />
<menuitem label="EMail senden (intern)" oncommand="LektorFunktionMail();" />
<menuitem label="EMail senden (privat)" oncommand="LektorFunktionMailPrivat();" />
<menuseparator />
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
</menupopup>
@@ -1022,6 +1022,54 @@ function MitarbeiterSendMail()
window.location.href=mailempfaenger;
}
/**
* Mail an Private EMailadresse senden
*/
function MitarbeiterSendMailPrivat()
{
var treeMitarbeiter=document.getElementById('mitarbeiter-tree');
var numRanges = treeMitarbeiter.view.selection.getRangeCount();
var start = new Object();
var end = new Object();
var uids='';
//Markierte Datensaetze holen
for (var t=0; t<numRanges; t++)
{
treeMitarbeiter.view.selection.getRangeAt(t,start,end);
for (v=start.value; v<=end.value; v++)
{
var col = treeMitarbeiter.columns ? treeMitarbeiter.columns["mitarbeiter-treecol-uid"] : "mitarbeiter-treecol-uid";
uids=uids+';'+treeMitarbeiter.view.getCellText(v,col);
}
}
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'getprivatemailadressUID');
req.add('uids', uids);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
{
alert(val.dbdml_errormsg)
if(val.dbdml_data!='')
splitmailto(val.dbdml_data,'to');
}
}
else
{
if(val.dbdml_data!='')
splitmailto(val.dbdml_data,'bcc');
}
}
// ***************** VERWENDUNG ********************** //
// ****
+11 -10
View File
@@ -56,7 +56,8 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
<vbox id="MitarbeiterEditor" persist="height" flex="1">
<popupset>
<menupopup id="mitarbeiter-tree-popup">
<menuitem label="EMail versenden" oncommand="MitarbeiterSendMail();" id="mitarbeiter-tree-popup-mail" hidden="false"/>
<menuitem label="EMail senden (intern)" oncommand="MitarbeiterSendMail();" id="mitarbeiter-tree-popup-mail" hidden="false"/>
<menuitem label="EMail senden (privat)" oncommand="MitarbeiterSendMailPrivat();" id="mitarbeiter-tree-popup-mail" hidden="false"/>
<menuitem label="Personendetails anzeigen" oncommand="MitarbeiterShowPersonendetails()" id="mitarbeiter-tree-popup-personendetails" hidden="false"/>
</menupopup>
</popupset>
@@ -83,7 +84,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
flags="dont-build-content"
enableColumnDrag="true"
persist="hidden, height"
context="mitarbeiter-tree-popup"
context="mitarbeiter-tree-popup"
>
<treecols>
<treecol id="mitarbeiter-treecol-uid" label="UID" flex="1" persist="hidden, width, ordinal" hidden="false"
@@ -116,7 +117,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpost" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<?php
<?php
if($rechte->isBerechtigt('mitarbeiter/persoenlich'))
echo '
<treecol id="mitarbeiter-treecol-geburtsdatum" label="Geburtsdatum" flex="1" persist="hidden, width, ordinal" hidden="false"
@@ -129,7 +130,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-svnr" label="SVNR" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#svnr" onclick="MitarbeiterTreeSort()"/>
sort="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#svnr" onclick="MitarbeiterTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ersatzkennzeichen" label="Ersatzkennzeichen" flex="1" persist="hidden, width, ordinal" hidden="false"
class="sortDirectionIndicator"
@@ -205,9 +206,9 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpost" />
<?php
<?php
if($rechte->isBerechtigt('mitarbeiter/persoenlich'))
echo '
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#geburtsdatum" />
@@ -251,7 +252,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
<tab id="mitarbeiter-tab-bis" label="BIS-Daten" />
<tab id="mitarbeiter-tab-betriebsmittel" label="Betriebsmittel" />
<tab id="mitarbeiter-tab-funktionen" label="Funktionen" oncommand="MitarbeiterFunktionIFrameLoad()"/>
<?php
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<tab id="mitarbeiter-tab-buchung" label="Buchungen" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
@@ -266,15 +267,15 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragover
<vbox id="mitarbeiter-detail-funktionen" style="margin-top:10px;" />
<iframe id="mitarbeiter-betriebsmittel" src="" style="margin-top:10px;" />
<iframe id="mitarbeiter-funktionen" src="" style="margin-top:10px;"/>
<?php
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<vbox id="mitarbeiter-buchung" style="margin-top:10px;" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
echo '<vbox id="mitarbeiter-vertrag" style="margin-top:10px;" />';
?>
?>
<iframe id="mitarbeiter-termine" src="" style="margin-top:10px;" />
</tabpanels>
</tabbox>
</tabbox>
</vbox>
</vbox>
</overlay>
+3 -5
View File
@@ -546,7 +546,7 @@ if(!$error)
public.tbl_reihungstest
WHERE
reihungstest_id=".$db->db_add_param($_POST['reihungstest_id'], FHC_INTEGER);
if($result = $db->db_query($qry))
{
//$warning.= "Hinweis: Diese Person hat bereits Reihungstestzuordnungen in anderen Studiengängen:\n\n";
@@ -2323,10 +2323,8 @@ if(!$error)
$betriebsmittel_id = $_POST['betriebsmittel_id'];
$bm = new betriebsmittel();
//Nur Zutrittskarten und Schluessel koennen neu angelegt werden
//Das andere Inventar wird vom Zentraleinkauf inventarisiert
//Es kann nur ausgewaehlt, aber nicht neu angelegt werden
if($_POST['betriebsmitteltyp']=='Zutrittskarte' || $_POST['betriebsmitteltyp']=='Schluessel')
// Wenn es kein vorhandenes Inventar ist, dann neu anlegen
if($_POST['betriebsmitteltyp']!='Inventar')
{
if($_POST['betriebsmitteltyp']=='Zutrittskarte')
$_POST['nummer']=$bm->transform_kartennummer($_POST['nummer']);
+7 -1
View File
@@ -24,6 +24,7 @@
* @create 02-01-2007
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
require_once(dirname(__FILE__).'/sprache.class.php');
class aufmerksamdurch extends basis_db
{
@@ -33,7 +34,9 @@ class aufmerksamdurch extends basis_db
//Tabellenspalten
public $aufmerksamdurch_kurzbz;
public $beschreibung;
public $bezeichnung;
public $ext_id;
public $aktiv;
/**
@@ -65,7 +68,8 @@ class aufmerksamdurch extends basis_db
*/
public function getAll($orderby='aufmerksamdurch_kurzbz')
{
$qry = "SELECT * FROM public.tbl_aufmerksamdurch";
$sprache = new sprache();
$qry = 'SELECT *,'.$sprache->getSprachQuery('bezeichnung').' FROM public.tbl_aufmerksamdurch';
if($orderby!='')
$qry .= " ORDER BY ".($orderby);
@@ -77,6 +81,8 @@ class aufmerksamdurch extends basis_db
$obj->aufmerksamdurch_kurzbz = $row->aufmerksamdurch_kurzbz;
$obj->beschreibung = $row->beschreibung;
$obj->bezeichnung=$sprache->parseSprachResult('bezeichnung',$row);
$obj->aktiv = $this->db_parse_bool($row->aktiv);
$this->result[] = $obj;
}
+36 -34
View File
@@ -3,22 +3,22 @@
* filter.class.php
*
* Copyright 2014 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., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Christian Paminger <pam@technikum-wien.at
* Robert Hofer <robert.hofer@technikum-wien.at>
@@ -29,7 +29,7 @@ class filter extends basis_db
{
private $new = true; // boolean
public $result = array(); // Objekte
//Tabellenspalten
protected $filter_id; // integer (PK)
protected $kurzbz; // varchar(32) unique
@@ -42,9 +42,9 @@ class filter extends basis_db
protected $updatevon; // varchar
protected $insertamum; // timestamp
protected $insertvon; // varchar
protected $values=array();
/**
* Konstruktor
*/
@@ -52,7 +52,7 @@ class filter extends basis_db
{
parent::__construct();
}
public function __set($name,$value)
{
$this->$name=$value;
@@ -62,8 +62,8 @@ class filter extends basis_db
{
return $this->$name;
}
/**
* Laden eines Filters
* @param filter_id ID des Datensatzes, der geladen werden soll
@@ -106,7 +106,7 @@ class filter extends basis_db
return true;
}
/**
* Laden eines Filters
* @param filter_id ID des Datensatzes, der geladen werden soll
@@ -114,7 +114,7 @@ class filter extends basis_db
*/
public function loadAll()
{
$qry = "SELECT * FROM public.tbl_filter;";
if($this->db_query($qry))
@@ -122,21 +122,21 @@ class filter extends basis_db
while($row = $this->db_fetch_object())
{
$obj = new filter();
$obj->filter_id=$row->filter_id;
$obj->kurzbz=$row->kurzbz;
$obj->sql=$row->sql;
$obj->valuename=$row->valuename;
$obj->showvalue = $this->db_parse_bool($row->showvalue);
$obj->type=$row->type;
$obj->htmlattr=$row->htmlattr;
$obj->htmlattr=$row->htmlattr;
$obj->insertamum=$row->insertamum;
$obj->insertvon=$row->insertvon;
$obj->updateamum=$row->updateamum;
$obj->updatevon=$row->updatevon;
$obj->new = false;
$this->result[] = $obj;
$this->result[] = $obj;
}
}
else
@@ -147,7 +147,7 @@ class filter extends basis_db
return true;
}
/**
* Suchen ob Filter vorhanden
* @param kurzbz des Datensatzes, der gefunden werden soll
@@ -160,12 +160,12 @@ class filter extends basis_db
if ($filter->kurzbz==$kurzbz)
return true;
}
return false;
}
/**
* Ausgabe des HTML Widgets
* Ausgabe des HTML Widgets
* @param kurzbz des Datensatzes, der gefunden werden soll
* @return boolean true wenn ok, false im Fehlerfall
*/
@@ -183,7 +183,9 @@ class filter extends basis_db
$html.='<select id="' . $filter->kurzbz . '" class="form-control" name="'.$filter->kurzbz.'[]" ';
$html.=$filter->htmlattr;
$html.=' >';
$this->loadValues($filter->sql, $filter->valuename, $filter->showvalue);
$user = get_uid();
$sql = str_replace('$user', $this->db_add_param($user), $filter->sql);
$this->loadValues($sql, $filter->valuename, $filter->showvalue);
foreach ($this->values as $value)
$html.="\n\t\t\t\t".'<option value="'.$value->value.'">'.$value->text.'</option>';
$html.="\n\t\t\t</select>";
@@ -198,10 +200,10 @@ class filter extends basis_db
return $html;
}
}
return $this->errormsg;
}
/**
* Laden eines Filters
* @param filter_id ID des Datensatzes, der geladen werden soll
@@ -237,7 +239,7 @@ class filter extends basis_db
$obj->text.=' - '.$row[$i];
}
//$obj->text = mb_substr($obj->text,1);
$this->values[] = $obj;
$this->values[] = $obj;
}
//var_dump($this);
}
@@ -249,8 +251,8 @@ class filter extends basis_db
return true;
}
/**
* Prueft die Variablen auf Gueltigkeit
@@ -272,7 +274,7 @@ class filter extends basis_db
$this->errormsg = 'Kurzbz darf nicht länger als 32 Zeichen sein';
return false;
}
//Boleanfelder prüfen
if(!is_bool($this->showvalue))
{
@@ -283,7 +285,7 @@ class filter extends basis_db
$this->errormsg = '';
return true;
}
/**
* Speichert den aktuellen Datensatz in die Datenbank
* @param neueVersion boolean default false; wenn gesetzt, dann
@@ -296,9 +298,9 @@ class filter extends basis_db
//Variablen pruefen
if(!$this->validate())
return false;
$this->db_query('BEGIN'); //Starting Transaction
if($this->new)
{
//Neuen Datensatz einfuegen
@@ -320,8 +322,8 @@ class filter extends basis_db
{
$this->errormsg = 'filter_id muss eine gueltige Zahl sein';
return false;
}
}
$qry='UPDATE public.tbl_filter SET'.
' kurzbz='.$this->db_add_param($this->kurzbz).', '.
' sql='.$this->db_add_param($this->sql).', '.
@@ -333,7 +335,7 @@ class filter extends basis_db
' updatevon='.$this->db_add_param($this->updatevon).' '.
' WHERE filter_id='.$this->db_add_param($this->filter_id, FHC_INTEGER, false).';';
}
if($this->db_query($qry))
{
if($this->new)
@@ -401,7 +403,7 @@ class filter extends basis_db
return false;
}
}
/**
* Ermittelt alle POST/GET-Variablen
* @return Zeichenkette fuer eine GET-Methode, false im Fehlerfall
@@ -422,5 +424,5 @@ class filter extends basis_db
//$vars.='&statistik_kurzbz='.$_REQUEST['statistik_kurzbz'];
return $vars;
}
}
+1 -1
View File
@@ -400,7 +400,7 @@ class lehrstunde extends basis_db
$sql_query_stdplan
)
SELECT
$stpl_view_ohneschema.*
distinct $stpl_view_ohneschema.*
FROM
".$stpl_view.", lvplan
WHERE
+2
View File
@@ -590,6 +590,7 @@ class moodle24_user extends basis_db
catch (SoapFault $E)
{
$this->errormsg.="SOAP Fehler beim Anlegen der Gruppe: ".$E->faultstring;
return false;
}
}
@@ -742,6 +743,7 @@ class moodle24_user extends basis_db
catch (SoapFault $E)
{
$this->errormsg.="SOAP Fehler beim Zuordnen der User: ".$E->faultstring.' '.(isset($E->detail)?$E->detail:'');
return false;
}
return true;
+1
View File
@@ -528,6 +528,7 @@ class prestudent extends person
$this->studienplan_id = $row->studienplan_id;
$this->bestaetigtam = $row->bestaetigtam;
$this->bestaetigtvon = $row->bestaetigtvon;
$this->anmerkung_status = $row->anmerkung;
return true;
}
+2 -2
View File
@@ -734,8 +734,8 @@ class studiensemester extends basis_db
$this->begin=new stdclass();
$this->begin->start=mktime(0,0,0,mb_substr($row->start,5,2),mb_substr($row->start,8,2),mb_substr($row->start,0,4));
if(!isset($this->end))
$this->end=new stdclass();
$this->end->ende=mktime(0,0,0,mb_substr($row->ende,5,2),mb_substr($row->ende,8,2),mb_substr($row->ende,0,4));
$this->ende=new stdclass();
$this->ende->ende=mktime(0,0,0,mb_substr($row->ende,5,2),mb_substr($row->ende,8,2),mb_substr($row->ende,0,4));
return true;
}
else
+7 -2
View File
@@ -1416,8 +1416,11 @@ class wochenplan extends basis_db
}
else
{
$paramList.='&amp;stundenplan_id'.$z++.'='.$lehrstunde->stundenplan_id;
$stundenplan_ids[]=$lehrstunde->stundenplan_id;
if(!in_array($lehrstunde->stundenplan_id, $stundenplan_ids))
{
$paramList.='&amp;stundenplan_id'.$z++.'='.$lehrstunde->stundenplan_id;
$stundenplan_ids[]=$lehrstunde->stundenplan_id;
}
}
if(isset($lehrstunde->farbe) && $farbe=='')
$farbe=$lehrstunde->farbe;
@@ -2122,6 +2125,8 @@ class wochenplan extends basis_db
$month=mb_substr($row->datum, 5,2);
$jahr=mb_substr($row->datum, 0,4);
$tag=date("w",mktime(12,0,0,$month,$mtag,$jahr));
if(!isset($raster[$tag][$row->stunde]))
$raster[$tag][$row->stunde]=new stdClass();
$raster[$tag][$row->stunde]->kollision=true;
}
+1 -1
View File
@@ -64,7 +64,7 @@ if(isset($anwesenheit->result) && is_array($anwesenheit->result))
{
$i=$oRdf->newObjekt($i);
$oRdf->obj[$i]->setAttribut('lehrveranstaltung_bezeichnung',$row->bezeichnung,true);
$oRdf->obj[$i]->setAttribut('prozent',$row->prozent,true,'Integer');
$oRdf->obj[$i]->setAttribut('prozent',$row->prozent,true);
$oRdf->obj[$i]->setAttribut('anwesend',$row->anwesend,true);
$oRdf->obj[$i]->setAttribut('nichtanwesend',$row->nichtanwesend,true);
$oRdf->obj[$i]->setAttribut('vorname',$row->vorname,true);
+2 -1
View File
@@ -116,6 +116,7 @@ else
<inventarnummer><![CDATA['.$bmp->inventarnummer.']]></inventarnummer>
<kaution><![CDATA['.$bmp->kaution.']]></kaution>
<ausgegebenam><![CDATA['.$datum->convertISODate($bmp->ausgegebenam).']]></ausgegebenam>
<retouram><![CDATA['.$datum->convertISODate($bmp->retouram).']]></retouram>
<organisationseinheit><![CDATA['.$organisationseinheit.']]></organisationseinheit>
<titelpre><![CDATA['.$person->titelpre.']]></titelpre>
<vorname><![CDATA['.$person->vorname.']]></vorname>
@@ -159,4 +160,4 @@ function draw_content($row)
}
?>
+4261 -529
View File
File diff suppressed because it is too large Load Diff
+172 -1
View File
@@ -3587,6 +3587,176 @@ if(!$result = @$db->db_query("SELECT code FROM public.tbl_standort LIMIT 1"))
echo '<br>Standort: Spalte code hinzugefügt';
}
// Bezeichnung der ZGV auf 128 Zeichen verlaengert
if($result = @$db->db_query("SELECT * FROM pg_class, pg_attribute WHERE pg_class.relkind = 'r' AND pg_attribute.attrelid = pg_class.oid and pg_class.relname = 'tbl_zgv' and pg_attribute.attname = 'bezeichnung' and pg_attribute.atttypmod=64+4;"))
{
if($db->db_num_rows($result)==1)
{
$qry = "ALTER TABLE bis.tbl_zgv ALTER COLUMN bezeichnung TYPE varchar(128)[];
ALTER TABLE bis.tbl_zgvmaster ALTER COLUMN bezeichnung TYPE varchar(128)[];
ALTER TABLE bis.tbl_zgvdoktor ALTER COLUMN bezeichnung TYPE varchar(128)[];
";
if(!$db->db_query($qry))
echo '<strong>ZGV Bezeichnung verlaengert: '.$db->db_last_error().'</strong><br>';
else
echo '<br>ZGV: Spalte bezeichnung verlaengert';
}
}
// Mehrsprachigkeit fuer Aufmerksamdurch
if(!@$db->db_query("SELECT bezeichnung FROM public.tbl_aufmerksamdurch LIMIT 1"))
{
$qry = "
ALTER TABLE public.tbl_aufmerksamdurch ADD COLUMN bezeichnung varchar(128)[];
ALTER TABLE public.tbl_aufmerksamdurch ADD COLUMN aktiv boolean NOT NULL DEFAULT true;
UPDATE public.tbl_aufmerksamdurch SET bezeichnung[1]=beschreibung;
UPDATE public.tbl_aufmerksamdurch SET bezeichnung[2]=beschreibung;
";
if(!$db->db_query($qry))
echo '<strong>public.tbl_aufmerksamdurch '.$db->db_last_error().'</strong><br>';
else
echo '<br>Mehrsprachige Bezeichnung für Aufmerksamdurch hinzugefügt';
}
// View fuer Berechtigungen
if($result = @$db->db_query("SELECT * FROM information_schema.tables WHERE table_schema='system' AND table_name='vw_berechtigung'"))
{
if($db->db_num_rows($result)==0)
{
$qry = "
CREATE OR REPLACE VIEW system.vw_berechtigung_nichtrekursiv AS
SELECT
uid, berechtigung_kurzbz,
-- art zusammenfassung und nur die nehmen die gleich sind
CASE WHEN length(art)>length(art1) THEN art1 ELSE art END as art,
oe_kurzbz, kostenstelle_id
FROM
(
-- Normal
SELECT
benutzerberechtigung_id, tbl_benutzerrolle.uid, tbl_benutzerrolle.funktion_kurzbz,
tbl_benutzerrolle.rolle_kurzbz, tbl_benutzerrolle.berechtigung_kurzbz, tbl_benutzerrolle.art, tbl_benutzerrolle.art art1,
tbl_benutzerrolle.oe_kurzbz, tbl_benutzerrolle.studiensemester_kurzbz, tbl_benutzerrolle.start,
tbl_benutzerrolle.ende, tbl_benutzerrolle.negativ, tbl_benutzerrolle.updateamum, tbl_benutzerrolle.updatevon,
tbl_benutzerrolle.insertamum, tbl_benutzerrolle.insertvon,tbl_benutzerrolle.kostenstelle_id,tbl_benutzerrolle.anmerkung
FROM
system.tbl_benutzerrolle JOIN system.tbl_berechtigung USING(berechtigung_kurzbz)
-- Rollen
UNION
SELECT
benutzerberechtigung_id, tbl_benutzerrolle.uid, tbl_benutzerrolle.funktion_kurzbz,
tbl_benutzerrolle.rolle_kurzbz, tbl_berechtigung.berechtigung_kurzbz, tbl_benutzerrolle.art, tbl_rolleberechtigung.art art1,
tbl_benutzerrolle.oe_kurzbz, tbl_benutzerrolle.studiensemester_kurzbz, tbl_benutzerrolle.start,
tbl_benutzerrolle.ende, tbl_benutzerrolle.negativ, tbl_benutzerrolle.updateamum, tbl_benutzerrolle.updatevon,
tbl_benutzerrolle.insertamum, tbl_benutzerrolle.insertvon,tbl_benutzerrolle.kostenstelle_id,tbl_benutzerrolle.anmerkung
FROM
system.tbl_benutzerrolle JOIN system.tbl_rolle USING(rolle_kurzbz)
JOIN system.tbl_rolleberechtigung USING(rolle_kurzbz)
JOIN system.tbl_berechtigung ON(tbl_rolleberechtigung.berechtigung_kurzbz=tbl_berechtigung.berechtigung_kurzbz)
-- Funktionen
UNION
SELECT
benutzerberechtigung_id, tbl_benutzerfunktion.uid, tbl_benutzerrolle.funktion_kurzbz,
tbl_benutzerrolle.rolle_kurzbz, tbl_benutzerrolle.berechtigung_kurzbz, tbl_benutzerrolle.art, tbl_benutzerrolle.art art1,
tbl_benutzerfunktion.oe_kurzbz, tbl_benutzerrolle.studiensemester_kurzbz, tbl_benutzerrolle.start,
tbl_benutzerrolle.ende, tbl_benutzerrolle.negativ, tbl_benutzerrolle.updateamum, tbl_benutzerrolle.updatevon,
tbl_benutzerrolle.insertamum, tbl_benutzerrolle.insertvon,tbl_benutzerrolle.kostenstelle_id,tbl_benutzerrolle.anmerkung
FROM
system.tbl_benutzerrolle JOIN public.tbl_benutzerfunktion USING(funktion_kurzbz)
WHERE
(tbl_benutzerfunktion.datum_von IS NULL OR tbl_benutzerfunktion.datum_von<=now())
AND (tbl_benutzerfunktion.datum_bis IS NULL OR tbl_benutzerfunktion.datum_bis>=now())
-- Funktion Mitarbeiter
UNION
SELECT
benutzerberechtigung_id, vw_mitarbeiter.uid, tbl_benutzerrolle.funktion_kurzbz,
tbl_benutzerrolle.rolle_kurzbz, tbl_benutzerrolle.berechtigung_kurzbz, tbl_benutzerrolle.art, tbl_benutzerrolle.art art1,
tbl_benutzerrolle.oe_kurzbz, tbl_benutzerrolle.studiensemester_kurzbz, tbl_benutzerrolle.start,
tbl_benutzerrolle.ende, tbl_benutzerrolle.negativ, tbl_benutzerrolle.updateamum, tbl_benutzerrolle.updatevon,
tbl_benutzerrolle.insertamum, tbl_benutzerrolle.insertvon,tbl_benutzerrolle.kostenstelle_id,tbl_benutzerrolle.anmerkung
FROM
system.tbl_benutzerrolle, campus.vw_mitarbeiter
WHERE
tbl_benutzerrolle.funktion_kurzbz='Mitarbeiter' and vw_mitarbeiter.aktiv
-- Funktion Student
UNION
SELECT
benutzerberechtigung_id, vw_student.uid, tbl_benutzerrolle.funktion_kurzbz,
tbl_benutzerrolle.rolle_kurzbz, tbl_benutzerrolle.berechtigung_kurzbz, tbl_benutzerrolle.art, tbl_benutzerrolle.art art1,
tbl_benutzerrolle.oe_kurzbz, tbl_benutzerrolle.studiensemester_kurzbz, tbl_benutzerrolle.start,
tbl_benutzerrolle.ende, tbl_benutzerrolle.negativ, tbl_benutzerrolle.updateamum, tbl_benutzerrolle.updatevon,
tbl_benutzerrolle.insertamum, tbl_benutzerrolle.insertvon,tbl_benutzerrolle.kostenstelle_id,tbl_benutzerrolle.anmerkung
FROM
system.tbl_benutzerrolle, campus.vw_student
WHERE
tbl_benutzerrolle.funktion_kurzbz='Student' and vw_student.aktiv
) as a
WHERE
-- Datumsgrenzen beruecksichtigen
(a.start<=now() OR a.start is null)
AND (a.ende>=now() OR a.ende is null)
-- Neagtiv Rechte entfernen
AND not negativ
AND NOT EXISTS(SELECT
1
FROM
system.tbl_benutzerrolle JOIN system.tbl_berechtigung USING(berechtigung_kurzbz) WHERE uid=a.uid AND berechtigung_kurzbz=a.berechtigung_kurzbz AND negativ);
CREATE OR REPLACE VIEW system.vw_berechtigung AS
WITH RECURSIVE oes(oe_kurzbz, pfad) as
(
SELECT
oe_kurzbz, '/' || oe_kurzbz::text as pfad FROM public.tbl_organisationseinheit
WHERE
oe_parent_kurzbz is null AND aktiv = true
UNION ALL
SELECT
o.oe_kurzbz, COALESCE(oes.pfad,'') || '/' || COALESCE(o.oe_kurzbz,'') as pfad
FROM
public.tbl_organisationseinheit o, oes
WHERE
o.oe_parent_kurzbz=oes.oe_kurzbz and aktiv = true
)
SELECT
uid, berechtigung_kurzbz, art, oes.oe_kurzbz, kostenstelle_id
FROM
system.vw_berechtigung_nichtrekursiv, oes
WHERE
(oes.pfad || '/' like '%/' || vw_berechtigung_nichtrekursiv.oe_kurzbz || '/%'
OR (vw_berechtigung_nichtrekursiv.oe_kurzbz is null AND kostenstelle_id is null))
UNION
SELECT
uid, berechtigung_kurzbz, art, null::varchar(32), kostenstelle_id
FROM
system.vw_berechtigung_nichtrekursiv
WHERE
kostenstelle_id is not null;
GRANT SELECT ON system.vw_berechtigung_nichtrekursiv TO web;
GRANT SELECT ON system.vw_berechtigung_nichtrekursiv TO vilesci;
GRANT SELECT ON system.vw_berechtigung TO web;
GRANT SELECT ON system.vw_berechtigung TO vilesci;
";
if(!$db->db_query($qry))
echo '<strong>system.vw_berechtigung:'.$db->db_last_error().'</strong><br>';
else
echo '<br>Neue View (system.vw_berechtigung) hinzugefügt';
}
}
echo '<br><br><br>';
$tabellen=array(
@@ -3732,7 +3902,7 @@ $tabellen=array(
"public.tbl_akte" => array("akte_id","person_id","dokument_kurzbz","uid","inhalt","mimetype","erstelltam","gedruckt","titel","bezeichnung","updateamum","updatevon","insertamum","insertvon","ext_id","dms_id","nachgereicht","anmerkung","titel_intern","anmerkung_intern"),
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon","email"),
"public.tbl_ampel_benutzer_bestaetigt" => array("ampel_benutzer_bestaetigt_id","ampel_id","uid","insertamum","insertvon"),
"public.tbl_aufmerksamdurch" => array("aufmerksamdurch_kurzbz","beschreibung","ext_id"),
"public.tbl_aufmerksamdurch" => array("aufmerksamdurch_kurzbz","beschreibung","ext_id","bezeichnung", "aktiv"),
"public.tbl_aufnahmeschluessel" => array("aufnahmeschluessel"),
"public.tbl_aufnahmetermin" => array("aufnahmetermin_id","aufnahmetermintyp_kurzbz","prestudent_id","termin","teilgenommen","bewertung","protokoll","insertamum","insertvon","updateamum","updatevon","ext_id"),
"public.tbl_aufnahmetermintyp" => array("aufnahmetermintyp_kurzbz","bezeichnung"),
@@ -4116,6 +4286,7 @@ $webservicerecht = array(
array('soap/studienordnung','save','studienordnung'),
array('soap/studienordnung','loadStudienplanSTO','studienplan'),
array('soap/studienordnung','loadStudienordnungSTG','studienordnung'),
array('soap/studienordnung','loadStudienordnungSTGInaktiv','studienordnung'),
array('soap/studienordnung','loadStudienplan','studienplan'),
array('soap/studienordnung','saveSemesterZuordnung','studienordnung'),
array('soap/studienordnung','deleteSemesterZuordnung','studienordnung'),
+9 -5
View File
@@ -1197,10 +1197,9 @@ function getStandort($firma_id,$standort_id,$adresse_id,$adresstyp_arr,$user,$re
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>Bezeichnung: </td>";
$htmlstr.="<td><input type='text' name='bezeichnung' value='".$standort_obj->bezeichnung."' size='40' maxlength='256' /></td>\n";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>Zustelladresse:</td>";
$htmlstr.="<td><input type='checkbox' name='zustelladresse' ".($adresse_obj->zustelladresse?'checked':'')."> </td>";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>Name: </td>";
$htmlstr.="<td><input type='text' name='name' value='".$adresse_obj->name."' size='40' maxlength='256' /></td>\n";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="</tr></table></td>";
@@ -1265,6 +1264,11 @@ function getStandort($firma_id,$standort_id,$adresse_id,$adresstyp_arr,$user,$re
$htmlstr.="<td>Strasse:</td>";
$htmlstr.="<td><input type='text' name='strasse' value='".$adresse_obj->strasse."' size='80' maxlength='256' /></td>\n";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="<td>Zustelladresse:</td>";
$htmlstr.="<td><input type='checkbox' name='zustelladresse' ".($adresse_obj->zustelladresse?'checked':'')."> </td>";
$htmlstr.="<td>&nbsp;</td>";
$htmlstr.="</tr></table></td>";
$htmlstr.="</tr>\n";
@@ -1394,4 +1398,4 @@ function saveStandort($firma_id,$standort_id,$adresse_id,$adresstyp_arr,$user,$r
return 'Standort wurde erfolgreich gespeichert ';
}
?>
?>