mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
- Löschen von Reservierungen im Tempus
- Bugfix beim löschen von Noten - Bugfix bei der Anzeige des Fachbereichkoordinators - Bilder von Mitarbeitern können jetzt übers FAS gelöscht werden
This commit is contained in:
@@ -419,6 +419,17 @@ Duplizierter Wert, etc.)<br>
|
||||
<hr>
|
||||
<h2>Erledigte Anforderungen</h2>
|
||||
<ul>
|
||||
<li>Das Löschen von Noten von LVs zu denen der Student nicht
|
||||
zugeordnet ist führt jetzt nicht mehr zu einem einfrieren des
|
||||
Programms<br>
|
||||
10.03.2008 oesi<br>
|
||||
<br>
|
||||
</li>
|
||||
<li>Hochgeladene Bilder können jetzt auch wieder gelöscht
|
||||
werden.<br>
|
||||
10.03.2008 oesi<br>
|
||||
<br>
|
||||
</li>
|
||||
<li>Neue Filter beim Mitarbeitermodul: "Inaktive Personen mit
|
||||
Verwendung", "Aktive Personen ohne Verwendung", der "Karenziert" Filter
|
||||
liefert jetzt nur noch aktive karenzierte Mitarbeiter, Der Filter
|
||||
|
||||
@@ -162,7 +162,7 @@ if(isset($_POST['submitbild']))
|
||||
$person->foto = $content;
|
||||
$person->new = false;
|
||||
if($person->save())
|
||||
echo "<b>Bild wurde erfolgreich gespeichert</b><script language='Javascript'>opener.StudentAuswahl(); window.close();</script><br />";
|
||||
echo "<b>Bild wurde erfolgreich gespeichert</b><script language='Javascript'>opener.StudentAuswahl(); opener.MitarbeiterAuswahl(); window.close();</script><br />";
|
||||
else
|
||||
echo '<b>'.$person->errormsg.'</b><br />';
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ include('../../include/berechtigung.class.php');
|
||||
include('../../include/lehreinheit.class.php');
|
||||
include('../../include/zeitwunsch.class.php');
|
||||
include('../../include/wochenplan.class.php');
|
||||
include('../../include/reservierung.class.php');
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
echo '<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>';
|
||||
@@ -173,6 +174,15 @@ if ($aktion=='stpl_move' || $aktion=='stpl_single_search' || $aktion=='stpl_set'
|
||||
}
|
||||
$name_stpl_idx='x'.++$j.'stundenplan_id0';
|
||||
}
|
||||
|
||||
//ReservierungsIDs
|
||||
$i=0;
|
||||
$name_res_id='reservierung_id'.$i;
|
||||
while ($i<100 && isset($_GET[$name_res_id]))
|
||||
{
|
||||
$res_id[]=$_GET[$name_res_id];
|
||||
$name_res_id='reservierung_id'.++$i;
|
||||
}
|
||||
}
|
||||
|
||||
// ****************************************************************************
|
||||
@@ -232,6 +242,13 @@ elseif ($aktion=='stpl_delete_single' || $aktion=='stpl_delete_block')
|
||||
$lehrstunde->delete($stundenplan_id,$db_stpl_table);
|
||||
$error_msg.=$lehrstunde->errormsg;
|
||||
}
|
||||
|
||||
$reservierung=new reservierung($conn);
|
||||
foreach ($res_id as $reservierung_id)
|
||||
{
|
||||
$reservierung->delete($reservierung_id);
|
||||
$error_msg.=$reservierung->errormsg;
|
||||
}
|
||||
}
|
||||
// ******************** Lehrveranstaltung setzen ******************************
|
||||
elseif ($aktion=='lva_single_set')
|
||||
|
||||
@@ -49,6 +49,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<grid align="end" flex="1"
|
||||
flags="dont-build-content"
|
||||
enableColumnDrag="true"
|
||||
style="margin:4px;"
|
||||
>
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
@@ -163,11 +164,12 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<label value="Foto" />
|
||||
<hbox>
|
||||
<button id="mitarbeiter-detail-button-image-upload" label="Upload" oncommand="MitarbeiterImageUpload();" disabled="true"/>
|
||||
<button id="mitarbeiter-detail-button-image-delete" label="Delete" oncommand="MitarbeiterImageDelete();" disabled="true"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</vbox>
|
||||
<hbox>
|
||||
<image src='' id="mitarbeiter-detail-image" width="60" height="60" style="margin-left:5px;"/>
|
||||
<image src='' id="mitarbeiter-detail-image" style="margin-left:5px;"/> <!-- width="60" height="60" -->
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
<label value="Anmerkung" control="mitarbeiter-detail-textbox-anmerkung"/>
|
||||
|
||||
@@ -411,6 +411,7 @@ function MitarbeiterDetailDisableFields(val)
|
||||
document.getElementById('mitarbeiter-detail-menulist-familienstand').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-textbox-anzahlderkinder').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-button-image-upload').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-button-image-delete').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-textbox-anmerkung').disabled=val;
|
||||
document.getElementById('mitarbeiter-detail-textbox-homepage').disabled=val;
|
||||
|
||||
@@ -687,6 +688,45 @@ function MitarbeiterImageUpload()
|
||||
alert('Es wurde keine Person ausgewaehlt');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Loescht das Bild aus der DB
|
||||
// ****
|
||||
function MitarbeiterImageDelete()
|
||||
{
|
||||
person_id = document.getElementById('mitarbeiter-detail-textbox-person_id').value;
|
||||
if(person_id!='')
|
||||
{
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'imagedelete');
|
||||
req.add('person_id', person_id);
|
||||
req.add('studiengang_kz', '');
|
||||
|
||||
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
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
uid = document.getElementById('mitarbeiter-detail-textbox-uid').value;
|
||||
MitarbeiterSelectUid=uid;
|
||||
MitarbeiterTreeDatasource.Refresh(false); //non blocking
|
||||
SetStatusBarText('Bild wurde geloescht');
|
||||
}
|
||||
}
|
||||
else
|
||||
alert('Es wurde keine Person ausgewaehlt');
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Speichert die Mitarbeiterdaten
|
||||
// ****
|
||||
|
||||
@@ -185,13 +185,15 @@ var StudentIOTreeListener =
|
||||
// ****
|
||||
var StudentNotenTreeSinkObserver =
|
||||
{
|
||||
onBeginLoad : function(pSink) {},
|
||||
onBeginLoad : function(pSink)
|
||||
{
|
||||
StudentNotenTreeloaded=false;
|
||||
},
|
||||
onInterrupt : function(pSink) {},
|
||||
onResume : function(pSink) {},
|
||||
onError : function(pSink, pStatus, pError) {},
|
||||
onEndLoad : function(pSink)
|
||||
{
|
||||
StudentNotenTreeloaded=false;
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
document.getElementById('student-noten-tree').builder.rebuild();
|
||||
}
|
||||
@@ -3081,6 +3083,13 @@ function StudentNoteDetailDisableFields(val)
|
||||
// ***
|
||||
function StudentNotenAuswahl()
|
||||
{
|
||||
//Beim Refresh des Trees wird das onselect event ausgeloest wenn der
|
||||
//vorher markierte Eintrag nach dem Refresh nicht mehr in der Liste ist
|
||||
//daher soll die funktion nur ausgefuehrt werden, wenn der tree
|
||||
//tatsaechlich fertig geladen wurde
|
||||
if(!StudentNotenTreeloaded)
|
||||
return false;
|
||||
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-noten-tree');
|
||||
|
||||
@@ -3096,6 +3105,14 @@ function StudentNotenAuswahl()
|
||||
var col = tree.columns ? tree.columns["student-noten-tree-studiensemester_kurzbz"] : "student-noten-tree-studiensemester_kurzbz";
|
||||
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
//Falls einer der Parameter leer ist wird abgebrochen da sonst ein sehr grosses rdf geladen wird
|
||||
//Sollte eigentlich nie eintreffen, tut es aber trotzdem
|
||||
if(lehrveranstaltung_id=='' || student_uid=='' || studiensemester_kurzbz=='')
|
||||
{
|
||||
debug('unerwarteter Fehler in StudentNotenAuswahl() in studentoverlay.js.php');
|
||||
return false;
|
||||
}
|
||||
|
||||
//Daten holen
|
||||
var url = '<?php echo APP_ROOT ?>rdf/zeugnisnote.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+'&uid='+student_uid+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&'+gettimestamp();
|
||||
|
||||
|
||||
@@ -159,5 +159,55 @@ class datum
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Liefert ein Datum im angegeben Format
|
||||
* ToDo: Liefert aktuellen Timestamp wenn Sonderzeichen uebergeben werden
|
||||
* zB '---'
|
||||
* @param $datum
|
||||
* @param $format
|
||||
* @return Formatierten Timestamp wenn ok, false im Fehlerfall
|
||||
*/
|
||||
function formatDatum($datum, $format='Y-m-d H:i:s')
|
||||
{
|
||||
if(trim($datum)=='')
|
||||
return '';
|
||||
|
||||
$ts='';
|
||||
|
||||
//2008-12-31
|
||||
if(ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$datum, $regs))
|
||||
$ts = mktime(0,0,0,$regs[2],$regs[3],$regs[1]);
|
||||
|
||||
//2008-12-31 12:30
|
||||
if(ereg("([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2})",$datum, $regs))
|
||||
$ts = mktime($regs[4],$regs[5],0,$regs[2],$regs[3],$regs[1]);
|
||||
|
||||
//2008-12-31 12:30:15
|
||||
if(ereg("([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})",$datum, $regs))
|
||||
$ts = mktime($regs[4],$regs[5],$regs[6],$regs[2],$regs[3],$regs[1]);
|
||||
|
||||
//1.12.2008
|
||||
if(ereg("([0-9]{1,2}).([0-9]{1,2}).([0-9]{4})",$datum, $regs))
|
||||
$ts = mktime(0,0,0,$regs[2],$regs[1],$regs[3]);
|
||||
|
||||
//1.12.2008 12:30
|
||||
if(ereg("([0-9]{1,2}).([0-9]{1,2}).([0-9]{4}) ([0-9]{2}):([0-9]{2})",$datum, $regs))
|
||||
$ts = mktime($regs[4],$regs[5],0,$regs[2],$regs[1],$regs[3]);
|
||||
|
||||
//1.12.2008 12:30:15
|
||||
if(ereg("([0-9]{1,2}).([0-9]{1,2}).([0-9]{4}) ([0-9]{2}):([0-9]{2}):([0-9]{2})",$datum, $regs))
|
||||
$ts = mktime($regs[4],$regs[5],$regs[6],$regs[2],$regs[1],$regs[3]);
|
||||
|
||||
if($ts=='')
|
||||
{
|
||||
$ts = strtotime($datum);
|
||||
}
|
||||
|
||||
if($ts!='' && $ts>0)
|
||||
return date($format, $ts);
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -403,8 +403,8 @@ class person
|
||||
' familienstand='.$this->addslashes($this->familienstand).','.
|
||||
' anzahlkinder='.$this->addslashes($this->anzahlkinder).','.
|
||||
' aktiv='.($this->aktiv?'true':'false').','.
|
||||
' insertamum=now(),'.
|
||||
' insertvon='.$this->addslashes($this->insertvon).','.
|
||||
//' insertamum='.$this->addslashes($this->insertamum).','.
|
||||
//' insertvon='.$this->addslashes($this->insertvon).','.
|
||||
' updateamum=now(),'.
|
||||
' updatevon='.$this->addslashes($this->updatevon).','.
|
||||
' geschlecht='.$this->addslashes($this->geschlecht).','.
|
||||
|
||||
@@ -212,5 +212,29 @@ class reservierung
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************
|
||||
// * Loescht eine Reservierung
|
||||
// * @param reservierung_id ID der zu leoschenden Reservierung
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// ************************************************************
|
||||
function delete($reservierung_id)
|
||||
{
|
||||
if(!is_numeric($reservierung_id))
|
||||
{
|
||||
$this->errormsg = 'Reservierung_id muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "DELETE FROM campus.tbl_reservierung WHERE reservierung_id='$reservierung_id'";
|
||||
|
||||
if(pg_query($this->conn, $qry))
|
||||
return true;
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Loeschen der Reservierung';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -292,8 +292,8 @@ class wochenplan
|
||||
$mtag=substr($this->wochenplan->lehrstunden[$i]->datum, 8,2);
|
||||
$month=substr($this->wochenplan->lehrstunden[$i]->datum, 5,2);
|
||||
$jahr=substr($this->wochenplan->lehrstunden[$i]->datum, 0,4);
|
||||
$tag=date("w",mktime(12,0,0,$month,$mtag,$jahr));
|
||||
if ($tag==0)
|
||||
$tag=date("w",mktime(12,0,0,$month,$mtag,$jahr));
|
||||
if ($tag==0)
|
||||
$tag=7; //Sonntag
|
||||
//echo $tag.':'.$this->wochenplan->lehrstunden[$i]->datum.'<BR>';
|
||||
$stunde=$this->wochenplan->lehrstunden[$i]->stunde;
|
||||
@@ -924,7 +924,7 @@ class wochenplan
|
||||
echo '<button id="buttonSTPL'.$count++.'"
|
||||
tooltiptext="'.$titel.' - '.$anmerkung.' ('.$updatevonam.')"
|
||||
style="border-width:1px;'.((isset($farbe) && $farbe!='')?'background-color:#'.$farbe:'').';"
|
||||
styleOrig="border-width:1px;background-color:#'.$farbe.';" ';
|
||||
styleOrig="border-width:1px;'.((isset($farbe) && $farbe!='')?'background-color:#'.$farbe:'').'" ';
|
||||
if ($berechtigung->isBerechtigt('lv-plan',$stg_kz,'uid') || $berechtigung->isBerechtigt('lv-plan',0,'uid') || $berechtigung->isBerechtigt('admin',0,'uid') || $berechtigung->isBerechtigt('admin',$stg_kz,'uid'))
|
||||
echo ' context="stplPopupMenue" ';
|
||||
if ($berechtigung->isBerechtigt('lv-plan',$stg_kz,'u') || $berechtigung->isBerechtigt('lv-plan',0,'u') || $berechtigung->isBerechtigt('admin',0,'u') || $berechtigung->isBerechtigt('admin',$stg_kz,'u'))
|
||||
|
||||
@@ -146,14 +146,15 @@ if(!$result = pg_query($conn, $qry))
|
||||
SELECT
|
||||
COALESCE(koordinator, uid) as koordinator
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach, public.tbl_benutzerfunktion
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach, public.tbl_benutzerfunktion, public.tbl_studiensemester
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id='$row_lva->lehrveranstaltung_id' AND
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
|
||||
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND
|
||||
tbl_lehrfach.fachbereich_kurzbz=tbl_benutzerfunktion.fachbereich_kurzbz AND
|
||||
tbl_benutzerfunktion.funktion_kurzbz='fbk' AND
|
||||
tbl_benutzerfunktion.studiengang_kz=tbl_lehrveranstaltung.studiengang_kz LIMIT 1 ) ";
|
||||
tbl_lehreinheit.studiensemester_kurzbz=tbl_studiensemester.studiensemester_kurzbz AND
|
||||
tbl_benutzerfunktion.studiengang_kz=tbl_lehrveranstaltung.studiengang_kz ORDER BY tbl_studiensemester.ende DESC LIMIT 1 ) ";
|
||||
|
||||
$result_fbk = pg_query($conn, $qry_fbk);
|
||||
$fbk='';
|
||||
|
||||
Reference in New Issue
Block a user