VILESCI: Studienordnung modified / REMOVE tbl_studienordnung_semester

. All affected files are adapted to work without tbl_studienordnung_semester
--> functions modified to use tbl_studienplan_semester INSTEAD OF tbl_studienordnung_semester
--> unnececary functions deleted
. VILESCI GUI in Lehre -> Studienordnung is modified
--> Extended Dropdown
--> No Matrix Studienordnung/Semester anymore
--> studienordnung- and studienplan-ICONS now presented correctly
This commit is contained in:
cris-technikum
2017-10-30 16:20:06 +01:00
parent 9c83ee6b06
commit 1c12d72318
7 changed files with 70 additions and 507 deletions
+6 -202
View File
@@ -22,6 +22,7 @@
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>
* Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
* Cristina Hainberger <hainberg@technikum-wien.at>
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
@@ -413,7 +414,7 @@ class studienordnung extends basis_db
{
$obj = new stdClass();
$obj->studienordnung_id= $row->studienordnung_id;
$obj->studienordnung_id = $row->studienordnung_id;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->version = $row->version;
$obj->bezeichnung = $row->bezeichnung;
@@ -460,113 +461,6 @@ class studienordnung extends basis_db
return $data;
}
/**
* speichert die Semesterzuordnung für die Studieordnung
* @param int $studienordnung_id Die ID der Studienordnung
* @param string $studiensemester_kurzbz Kurzbezeichnung des Studiensemesters
* @param int $ausbildungssemester Ausbildungssemester als Zahl
*/
public function saveSemesterZuordnung($studienordnung_id, $studiensemester_kurzbz, $ausbildungssemester)
{
if(!is_numeric($studienordnung_id))
{
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_string($studiensemester_kurzbz) || strlen($studiensemester_kurzbz)!=6)
{
$this->errormsg = 'studiensemester_kurzbz muss ein String mit 6 Zeichen sein';
return false;
}
if(!is_numeric($ausbildungssemester))
{
$this->errormsg = 'ausbildungssemester muss eine gueltige Zahl sein';
return false;
}
//lvar_dump($this->isZuordnungGuelitg($studiensemester_kurzbz));
//Prüfung ob Zuordnung im Gültigkeitszeitraum der Studienordnung
//if(($studiensemester_kurzbz >= $this->gueltigvon && $studiensemester_kurzbz <= $this->gueltigbis) || ($studiensemester_kurzbz >= $this->gueltigvon && $this->gueltigbis == null))
if($this->isZuordnungGuelitg($studiensemester_kurzbz))
{
//im gültigen Bereich
//Prüfung ob Semester schon zugeordnet wurde
if(!$this->isSemesterZugeordnet($studienordnung_id, $studiensemester_kurzbz, $ausbildungssemester))
{
$qry = 'INSERT INTO lehre.tbl_studienordnung_semester (studienordnung_id, studiensemester_kurzbz, semester) VALUES ('.
$this->db_add_param($studienordnung_id).', '.
$this->db_add_param($studiensemester_kurzbz).', '.
$this->db_add_param($ausbildungssemester).');';
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
return false;
}
}
else {
$this->errormsg = $ausbildungssemester.'. Semester ist bereits zurgeordnet!';
return false;
}
}
else
{
//im ungültigen Bereich
$this->errormsg = 'Studiensemester ist nicht im Gültigkeitsbereich der Studienordnung!';
return false;
}
return true;
}
/**
* prüft ob die Semesterzuordnung für die Studieordnung bereits vorhanden ist
* @param int $studienordnung_id Die ID der Studienordnung
* @param string $studiensemester_kurzbz Kurzbezeichnung des Studiensemesters
* @param int $ausbildungssemester Ausbildungssemester als Zahl
*/
protected function isSemesterZugeordnet($studienordnung_id, $studiensemester_kurzbz, $ausbildungssemester)
{
if(!is_numeric($studienordnung_id))
{
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_string($studiensemester_kurzbz) || strlen($studiensemester_kurzbz)!=6)
{
$this->errormsg = 'studiensemester_kurzbz muss ein String mit 6 Zeichen sein';
return false;
}
if(!is_numeric($ausbildungssemester))
{
$this->errormsg = 'ausbildungssemester muss eine gueltige Zahl sein';
return false;
}
$qry = 'SELECT * FROM lehre.tbl_studienordnung_semester WHERE
studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).' AND
semester='.$this->db_add_param($ausbildungssemester).';';
if($this->db_query($qry))
{
if($this->db_num_rows() == 1)
{
return true;
}
if($this->db_num_rows() == 0)
{
return false;
}
return false;
}
return false;
}
/**
* prüft ob die Studienordnung aktiv ist
* @param int $studienordnung_id Die ID der Studienordnung
@@ -581,8 +475,10 @@ class studienordnung extends basis_db
return false;
}
$qry = 'SELECT * FROM lehre.tbl_studienordnung_semester WHERE
studienordnung_id='.$this->db_add_param($studienordnung_id).';';
$qry = 'SELECT 1 FROM lehre.tbl_studienplan_semester
WHERE studienplan_id
IN (SELECT studienplan_id FROM lehre.tbl_studienplan
WHERE studienordnung_id ='.$this->db_add_param($studienordnung_id).';';
if($this->db_query($qry))
{
@@ -595,98 +491,6 @@ class studienordnung extends basis_db
return false;
}
/**
* lädt alle zugeordneten Semester einer Studienordnung
* @param int $studienordnung_id ID der Studienordnung
*/
public function loadStudiensemesterFromStudienordnung($studienordnung_id)
{
if(!is_numeric($studienordnung_id))
{
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
/* $qry = 'SELECT DISTINCT studiensemester_kurzbz, MAX(semester)
FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' GROUP BY studiensemester_kurzbz ORDER BY MAX(semester);';
*/
$qry = 'SELECT DISTINCT studiensemester_kurzbz, tbl_studiensemester.start
FROM
lehre.tbl_studienordnung_semester
JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).'
ORDER BY tbl_studiensemester.start, studiensemester_kurzbz';
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
$data = array();
while($row = $this->db_fetch_object())
{
$obj = new stdClass();
$data[] = $row->studiensemester_kurzbz;
}
return $data;
}
public function loadAusbildungsemesterFromStudiensemester($studienordnung_id, $studiensemester_kurzbz)
{
$qry = 'SELECT semester
FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).'
ORDER BY semester;';
if(!$this->db_query($qry))
{
return false;
}
$data = array();
while($row = $this->db_fetch_object())
{
$data[] = $row->semester;
}
return $data;
}
public function deleteSemesterZuordnung($studienordnung_id, $studiensemester_kurzbz, $studiensemester=NULL)
{
if(!is_numeric($studienordnung_id))
{
$this->errormsg = 'studienordnung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_string($studiensemester_kurzbz) || strlen($studiensemester_kurzbz)!=6)
{
$this->errormsg = 'studiensemester_kurzbz muss ein String mit 6 Zeichen sein';
return false;
}
$qry = 'DELETE FROM lehre.tbl_studienordnung_semester
WHERE studienordnung_id='.$this->db_add_param($studienordnung_id).' AND
studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).'';
if($studiensemester !== null)
$qry.=' AND semester='.$this->db_add_param ($studiensemester).'';
$qry.=';';
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen der Daten'."\n";
return false;
}
}
protected function isZuordnungGuelitg($studiensemester_kurzbz)
{
$studiensemester = new studiensemester();
+4 -37
View File
@@ -23,6 +23,7 @@
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
* Stefan Puraner <puraner@technikum-wien.at>
* Andreas Moik <moik@technikum-wien.at>
* Cristina Hainberger <hainberg@technikum-wien.at>
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
@@ -792,12 +793,12 @@ class studienplan extends basis_db
FROM
lehre.tbl_studienplan
JOIN lehre.tbl_studienordnung USING(studienordnung_id)
JOIN lehre.tbl_studienordnung_semester USING(studienordnung_id)
JOIN lehre.tbl_studienplan_semester USING (studienplan_id)
WHERE
tbl_studienplan.aktiv
AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)."
AND tbl_studienordnung_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)."
AND tbl_studienordnung_semester.semester=".$this->db_add_param($ausbildungssemester);
AND tbl_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)."
AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester);
if($orgform_kurzbz!='')
{
@@ -1096,40 +1097,6 @@ class studienplan extends basis_db
return false;
}
public function deleteSemesterZuordnung($studienplan_id, $studiensemester_kurzbz, $ausbildungssemester = NULL)
{
if (!is_numeric($studienplan_id))
{
$this->errormsg = 'studienplan_id muss eine gueltige Zahl sein';
return false;
}
if (!is_string($studiensemester_kurzbz) || strlen($studiensemester_kurzbz) != 6)
{
$this->errormsg = 'studiensemester_kurzbz muss ein String mit 6 Zeichen sein';
return false;
}
$qry = 'DELETE FROM lehre.tbl_studienplan_semester
WHERE studienplan_id=' . $this->db_add_param($studienplan_id) . ' AND
studiensemester_kurzbz=' . $this->db_add_param($studiensemester_kurzbz) . '';
if ($ausbildungssemester !== null)
$qry.=' AND semester=' . $this->db_add_param($ausbildungssemester) . '';
$qry.=';';
if ($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen der Zuordnung' . "\n";
return false;
}
}
/**
* prüft ob dem Studienplan Semester zugeordnet sind (Gültigkeit)
* @param int $studienplan_id Die ID des Studienplans
-19
View File
@@ -38,25 +38,6 @@ switch($method)
$data['errormsg']=$studienordnung->errormsg;
}
break;
case 'saveSemesterZuordnung':
$studienordnung_id=$_REQUEST['studienordnung_id'];
$studiensemester_kurzbz=$_REQUEST['studiensemester_kurzbz'];
$ausbildungssemester=$_REQUEST['ausbildungssemester'];
$studienordnung = new studienordnung();
$studienordnung->loadStudienordnung($studienordnung_id);
if($result = $studienordnung->saveSemesterZuordnung($studienordnung_id, $studiensemester_kurzbz, $ausbildungssemester))
{
$data['result']=$result;
$data['error']='false';
$data['errormsg']='';
}
else
{
$data['error']='true';
$data['errormsg']=$studienordnung->errormsg;
}
break;
case 'copyStudienordnung':
$studienordnung_id=$_REQUEST['studienordnung_id'];
-2
View File
@@ -77,7 +77,6 @@ $error=false;
// Bei Save Funktionen werden alle Parameter zugewiesen
if(mb_stristr($method,'save'))
{
$loaddata=json_decode($_REQUEST['loaddata'], true);
$savedata=json_decode($_REQUEST['savedata'], true);
if(!$rechte->isBerechtigt('lehre/studienordnung'))
@@ -158,7 +157,6 @@ elseif(mb_stristr($method,'delete'))
$studienplan->loadStudienplanLehrveranstaltung($_REQUEST['parameter_0']);
$studienordnung = new studienordnung();
$studienordnung->getStudienordnungFromStudienplan($studienplan->studienplan_id);
if($studienordnung->isAktiv($studienordnung->studienordnung_id))
die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.');
}
+2 -82
View File
@@ -312,88 +312,8 @@ switch($method)
</table>
';
break;
case 'semesterStoZuordnung':
$studienordnung_id = $_GET["studienordnung_id"];
// $studiensemester_kurzbz = isset($_GET["studiensemester_kurzbz"]) ? $_GET["studiensemester_kurzbz"] : "";
// $semester = isset($_GET["semester"]) ? $_GET["semester"] : "";
$studienordnung = new studienordnung();
$studienordnung->loadStudienordnung($studienordnung_id);
$studienSemesterResult = $studienordnung->loadStudiensemesterFromStudienordnung($studienordnung_id);
foreach ($studienSemesterResult as $studienSem)
{
$obj = new stdClass();
$obj->studiensemester = $studienSem;
$obj->ausbildungssemester = $studienordnung->loadAusbildungsemesterFromStudiensemester($studienordnung_id, $studienSem);
$ausbildungssemesterResult[] = $obj;
}
$studiengang = new studiengang();
$studiengang->load($studienordnung->studiengang_kz);
// $ausbildungssemester = $studiengang->getSemesterFromStudiengang($studienordnung->studiengang_kz)
$ausbildungssemester = $studiengang->max_semester;
$studiensemester = new studiensemester();
$studiensemester->getAll();
echo '
<table width="100%" rules="rows">
<thead>
<tr>
<th style="font-size: 1.1em;">Studiensemester</th>
';
for($i = 1; $i<=$ausbildungssemester; $i++)
{
echo '<th style="font-size: 1.1em">'.$i.". Semester</th>";
}
echo '<th>&nbsp;</th>';
echo '</tr>
</thead>
<tbody>';
if($studienSemesterResult != null)
{
foreach($ausbildungssemesterResult as $row)
{
echo '<tr id="row_'.$row->studiensemester.'" style="font-size: 1em !important;"><td style="font-size: 1em; padding: 0.5em 0.5em 0.5em 0.5em;" align="center">'.$row->studiensemester.'</td>';
for($i = 1; $i<=$ausbildungssemester; $i++)
{
if(in_array($i, $row->ausbildungssemester))
{
echo '<td style="font-size: 1.2em; color: green;" align="center"><a href="#" onclick="javascript:deleteSemesterZuordnung(\''.$row->studiensemester.'\',\''.$i.'\')"><img id='.$row->studiensemester.$i.' width="30px" src="../../skin/images/true.png"></a></td>';
}
else
{
echo '<td style="font-size: 1em; color: red;" align="center"><a href="#" onclick="javascript:saveSemesterStoZuordnung(\''.$row->studiensemester.'\', \''.$i.'\');"><img width="20px" src="../../skin/images/false.png"></a></td>';
}
}
echo '<td><a href="#" onclick="javascript:deleteSemesterZuordnung(\''.$row->studiensemester.'\');">Löschen</a></td></tr>';
}
}
echo '<tr>
<td align="center"><select id="studiensemester">';
$length = count($studiensemester->studiensemester)-1;
for($i = $length; $i>0; $i--)
{
echo '<option value='.$studiensemester->studiensemester[$i]->studiensemester_kurzbz.'>'.$studiensemester->studiensemester[$i]->studiensemester_kurzbz.'</option>';
}
echo '</select></td>';
for($j=1; $j<=$ausbildungssemester; $j++)
{
echo '<td align="center"><input type="checkbox" semester='.$j.'></td>';
}
echo '
<td><input style="margin: 0.5em 0 0.5em 0" type="button" value="Zuordnen" onclick="javascript:saveSemesterStoZuordnung();"></td>
</tr>
<tr>
</tr>
';
echo '</tbody>
</table>
';
break;
case 'semesterSTPLZuordnung':
case 'semesterSTPLZuordnung':
$studienplan_id = $_GET["studienplan_id"];
$studienplan = new studienplan();
+20 -134
View File
@@ -17,6 +17,7 @@
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
* Stefan Puraner <puraner@technikum-wien.at>
* Andreas Moik <moik@technikum-wien.at>
* Cristina Hainberger <hainberg@technikum-wien.at>
*/
var global_studiengang_kz='';
var global_studiengang_bezeichnung='';
@@ -124,7 +125,8 @@ function loadStudienordnung()
$("#studienplan").html("Bitte wählen Sie zuerst eine Studienordnung aus!");
drawStudienordnungen(data.result);
//jqUi( "#menueLinks" ).accordion("option","active",1);
}
}
neueStudienordnung();
});
}
@@ -140,11 +142,13 @@ function drawStudienordnungen(data)
{
if(data[i].studienordnung_id !== null)
{
obj=obj+'<li><a style="white-space:nowrap" href="#Load'+data[i].studienordnung_id+'" onclick="loadStudienplanSTO('+data[i].studienordnung_id+','+data[i].studienplan_id+',\''+data[i].bezeichnung+'\', semesterStoZuordnung);return false;">'+data[i].bezeichnung+'</a>'
+' <a href="#Edit'+data[i].studienordnung_id+'" onclick="editStudienordnung('+data[i].studienordnung_id+');return false;"><img title="Bearbeiten" src="../../skin/images/edit.png"></a>'
+' <a href="#Copy'+data[i].studienordnung_id+'" onclick="copyStudienordnung('+data[i].studienordnung_id+');return false;"><img title="Studienordnung kopieren" src="../../skin/images/copy.png"></a>&nbsp;&nbsp;&nbsp;'
+' <a href="../../content/pdfExport.php?xml=studienordnung.rdf.php&xsl=Studienordnung&studienordnung_id='+data[i].studienordnung_id+'&stg_kz=0&output=doc"><img style="cursor:pointer; height: 16px;" title="Studienordnung als Word-Dokument exportieren" src="../../skin/images/doc_icon.png"></a>'
+' <a href="../../content/pdfExport.php?xml=studienordnung.rdf.php&xsl=Studienordnung&studienordnung_id='+data[i].studienordnung_id+'&stg_kz=0&output=pdf"><img style="cursor:pointer; height: 16px;" title="Studienordnung als PDF-Dokument exportieren" src="../../skin/images/pdf_icon.png"></a></li>';
obj = obj + '<li>'
+' <a style="white-space:nowrap" href="#Load'+data[i].studienordnung_id+'" onclick="loadStudienplanSTO('+data[i].studienordnung_id+','+data[i].studienplan_id+',\''+data[i].bezeichnung+'\',);return false;">'+data[i].bezeichnung+'</a>'
+' <a href="#Edit'+data[i].studienordnung_id+'" onclick="editStudienordnung('+data[i].studienordnung_id+');return false;"><img title="Bearbeiten" src="../../skin/images/edit.png"></a>'
+' <a href="#Copy'+data[i].studienordnung_id+'" onclick="copyStudienordnung('+data[i].studienordnung_id+');return false;"><img title="Studienordnung kopieren" src="../../skin/images/copy.png"></a>&nbsp;&nbsp;&nbsp;'
+' <a href="../../content/pdfExport.php?xml=studienordnung.rdf.php&xsl=Studienordnung&studienordnung_id='+data[i].studienordnung_id+'&stg_kz=0&output=doc"><img style="cursor:pointer; height: 16px;" title="Studienordnung als Word-Dokument exportieren" src="../../skin/images/doc_icon.png"></a>'
+' <a href="../../content/pdfExport.php?xml=studienordnung.rdf.php&xsl=Studienordnung&studienordnung_id='+data[i].studienordnung_id+'&stg_kz=0&output=pdf"><img style="cursor:pointer; height: 16px;" title="Studienordnung als PDF-Dokument exportieren" src="../../skin/images/pdf_icon.png"></a>'
+' </li>';
}
}
obj=obj+'</ul>';
@@ -156,7 +160,7 @@ function drawStudienordnungen(data)
/**
* Laedt die Studienplaene zu einer Studienordnung
*/
function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung, callback)
function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung)
{
global_studienordnung_bezeichnung=bezeichnung;
global_studienordnung_id=neue_studienordnung_id;
@@ -171,7 +175,7 @@ function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung,
"typ": "json",
"class": "studienplan",
"method": "loadStudienplanSTO",
"parameter_0": global_studienordnung_id
"parameter_0": global_studienordnung_id
},
error: loadError
}).success(function(data)
@@ -185,7 +189,7 @@ function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung,
drawStudienplan(data.result);
//jqUi( "#menueLinks" ).accordion("option","active",2);
}
callback();
editStudienordnung(global_studienordnung_id);
});
$.ajax({
dataType: "json",
@@ -212,16 +216,18 @@ function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung,
*/
function drawStudienplan(data)
{
var obj ='<a href="#Neu" onclick="neuerStudienplan();return false;">Neuer Studienplan</a><ul style="padding-left: 15px">';
var obj ='<a href="#Neu" onclick="neuerStudienplan();return false;">Neuer Studienplan</a>\n\
<ul style="padding-left: 15px">';
for(i in data)
{
if(data[i].studienplan_id !== null)
{
global_studienplan_id = data[i].studienplan_id;
obj=obj+'<li>'
+' <a href="#Load'+data[i].studienplan_id+'" onclick="loadLehrveranstaltungSTPL('+data[i].studienplan_id+',\''+data[i].bezeichnung+'\',\''+data[i].regelstudiendauer+'\');return false;">'+data[i].bezeichnung+'</a>'
+' <a href="#Edit'+data[i].studienplan_id+'" onclick="editStudienplan('+data[i].studienplan_id+');return false;"><img title="edit" src="../../skin/images/edit.png"></a>'
+' <a href="#Load'+data[i].studienordnung_id+'" onclick="loadStudienplanSTO('+data[i].studienordnung_id+','+data[i].studienplan_id+',\''+data[i].bezeichnung+'\',semesterSTPLZuordnung);return false;"><img title="Semesterzuordnung" src="../../skin/images/split-arrows.png"></a>'
+' <a href="#Load'+data[i].studienplan_id+'" onclick="semesterSTPLZuordnung();return false;"><img title="Semesterzuordnung" src="../../skin/images/split-arrows.png"></a>'
+'</li>';
}
}
@@ -1296,7 +1302,6 @@ function saveStudienordnung()
"standort_id":standort_id
};
$.ajax(
{
dataType: "json",
@@ -1316,7 +1321,7 @@ function saveStudienordnung()
{
$("#submsg").css("visibility", "visible");
window.setTimeout(function(){$("#submsg").css("visibility", "hidden");}, 1500);
loadStudienordnung();
loadStudienordnung();
}
},
error: loadError
@@ -1388,7 +1393,7 @@ function saveStudienplan()
{
$("#submsg").css("visibility", "visible");
window.setTimeout(function(){$("#submsg").css("visibility", "hidden");}, 1500);
loadStudienplanSTO(global_studienordnung_id, studienplan_id, global_studienordnung_bezeichnung, semesterStoZuordnung);
loadStudienplanSTO(global_studienordnung_id, studienplan_id, global_studienordnung_bezeichnung);
}
},
error: loadError
@@ -1445,91 +1450,16 @@ function writeOverallSum(root)
$("#stplDetails").show();
}
/**
* Laedt die Daten zum Eintragen der Studienordnung/Semester zuordnung
*/
function semesterStoZuordnung()
{
drawHeader('Neue Semester Zuordnung');
$("#data").load('studienordnung.inc.php?method=semesterStoZuordnung&studienordnung_id='+global_studienordnung_id);
}
/**
* Laedt die Daten zum Eintragen der Studienplan/Semester zuordnung
*/
function semesterSTPLZuordnung()
{
drawHeader('Neue Studienplan Zuordnung');
drawHeader('Neue Studienplan Zuordnung');
$("#data").load('studienordnung.inc.php?method=semesterSTPLZuordnung&studienplan_id='+global_studienplan_id);
}
/**
* Speichert die Studienordnung/Semester zuordnung
*/
function saveSemesterStoZuordnung(studiensemester, ausbildungssemester)
{
if(studiensemester == undefined && ausbildungssemester == undefined)
{
var sem = $("#studiensemester").val();
var cells = $("#studiensemester").parents().closest("tr").find("input[type=checkbox]");
var semester = new Array();
var semesterKurzbz = "";
for(var i = 0; i < cells.length; i++)
{
//semester[cells[i].getAttribute("semester")] = cells[i].checked;
semester.push(cells[i].checked);
}
var studiensemester = $("#studiensemester").val();
for(var j=0; j<semester.length; j++)
{
if(semester[j] === true)
{
$.ajax({
dataType: "json",
url: "../../soap/studienordnung.json.php",
type: "POST",
data: {
"method": "saveSemesterZuordnung",
"studienordnung_id": global_studienordnung_id,
"studiensemester_kurzbz" : studiensemester,
"ausbildungssemester": j+1
}
}).success(function(data)
{
if(data.error === "true")
{
alert(data.errormsg);
}
semesterStoZuordnung();
});
}
}
}
else
{
$.ajax({
dataType: "json",
url: "../../soap/studienordnung.json.php",
type: "POST",
data: {
"method": "saveSemesterZuordnung",
"studienordnung_id": global_studienordnung_id,
"studiensemester_kurzbz" : studiensemester,
"ausbildungssemester": ausbildungssemester
}
}).success(function(data)
{
if(data.error === "true")
{
alert(data.errormsg);
}
semesterStoZuordnung();
});
}
}
/**
* Speichert die Studienplan/Semester zuordnung
@@ -1601,50 +1531,6 @@ function saveSemesterSTPLZuordnung(studiensemester, ausbildungssemester)
}
function deleteSemesterZuordnung(ausbildungssemester_kurzbz, studiensemester)
{
if(studiensemester == undefined)
{
var row = $("#row_"+ausbildungssemester_kurzbz);
$.ajax({
dataType: "json",
url: "./saveStudienordnung.php",
type: "POST",
data: {
"typ": "json",
"class" : "studienordnung",
"method": "deleteSemesterZuordnung",
"parameter_0": global_studienordnung_id,
"parameter_1" : ausbildungssemester_kurzbz
}
}).success(function(data)
{
semesterStoZuordnung();
});
}
else
{
$.ajax({
dataType: "json",
url: "./saveStudienordnung.php",
type: "POST",
data: {
"typ": "json",
"class" : "studienordnung",
"method": "deleteSemesterZuordnung",
"parameter_0": global_studienordnung_id,
"parameter_1" : ausbildungssemester_kurzbz,
"parameter_2" : studiensemester
}
}).success(function(data)
{
semesterStoZuordnung();
});
}
}
function deleteSemesterSTPLZuordnung(ausbildungssemester_kurzbz, studiensemester)
{
//new
+38 -31
View File
@@ -159,11 +159,16 @@ if((!$rechte->isBerechtigt('lehre/studienordnung')) && (!$rechte->isBerechtigt('
if(($rechte->isBerechtigt('lehre/studienordnungInaktiv')) && (!$rechte->isBerechtigt('lehre/studienordnung')))
echo "<script type='text/javascript'>var initSTOs = 'inaktiv';</script>";
$stg_arr = $rechte->getStgKz('lehre/studienordnung');
if(empty($stg_arr))
$stg_arr = $rechte->getStgKz('lehre/studienordnungInaktiv');
$studiengang = new studiengang();
$studiengang->loadArray($stg_arr,'typ,kurzbz');
$types = new studiengang();
$types->getAllTypes();
$typ = '';
echo '
<table id="layoutTable" width="100%">
@@ -173,38 +178,40 @@ echo '
<h3>Studiengang</h3>
<div style="margin:0px;padding:5px;">
<p>
<select id="studiengang" name="studiengang_kz" onchange="loadStudienordnung()">
<option value="">-- Bitte auswählen --</option>';
<SELECT id="studiengang" name="studiengang_kz" onchange="loadStudienordnung()" style="width: 100%;">
<OPTION value="">-- Bitte auswählen --</option>';
foreach($studiengang->result as $row)
{
if ($typ != $row->typ || $typ == '')
{
if ($typ != '')
echo '</optgroup>';
echo '<optgroup label = "'.($types->studiengang_typ_arr[$row->typ] != '' ? $types->studiengang_typ_arr[$row->typ] : $row->typ).'">';
}
echo '<OPTION value="'.$row->studiengang_kz.'"'.($studiengang_kz==$row->studiengang_kz?'selected':'').'>'.$row->kuerzel.' - '.$row->bezeichnung.'</OPTION>';
$typ = $row->typ;
}
echo '</SELECT><br>
<input type="button" value="Daten laden" onclick="loadStudienordnung()" style="margin-top: 5px" />
</p>
</div>
<h3>Studienordnung</h3>
<div style="margin:0px;padding:5px;">
<p id="studienordnung" >
Bitte wählen Sie einen Studiengang aus!
</p>
</div>
foreach($studiengang->result as $row)
{
if($studiengang_kz==$row->studiengang_kz)
$selected='selected';
else
$selected='';
echo '<option value="'.$row->studiengang_kz.'" '.$selected.'>'.$db->convert_html_chars($row->kuerzel.' - '.$row->kurzbzlang).'</option>';
}
echo '
</select>
<br><input type="button" value="Daten laden" onclick="loadStudienordnung()" style="margin-top: 5px" />
</p>
</div>
<h3>Studienordnung</h3>
<div style="margin:0px;padding:5px;">
<p id="studienordnung" >
Bitte wählen Sie einen Studiengang aus!
</p>
</div>
<h3>Studienplan</h3>
<div style="margin:0px;padding:5px;">
<p id="studienplan" style="margin:0;padding:0;">
Bitte wählen Sie zuerst eine Studienordnung aus!
</p>
</div>
</div>
</td>
<h3>Studienplan</h3>
<div style="margin:0px;padding:5px;">
<p id="studienplan" style="margin:0;padding:0;">
Bitte wählen Sie zuerst eine Studienordnung aus!
</p>
</div>
</div>
</td>
<td valign="top" style="max-width:900px">
<div id="header">
&nbsp;