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
+5 -201
View File
@@ -22,6 +22,7 @@
* *
* Authors: Christian Paminger <[email protected]> * Authors: Christian Paminger <[email protected]>
* Andreas Österreicher <[email protected]> * Andreas Österreicher <[email protected]>
* Cristina Hainberger <[email protected]>
*/ */
require_once(dirname(__FILE__).'/basis_db.class.php'); require_once(dirname(__FILE__).'/basis_db.class.php');
@@ -460,113 +461,6 @@ class studienordnung extends basis_db
return $data; 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 * prüft ob die Studienordnung aktiv ist
* @param int $studienordnung_id Die ID der Studienordnung * @param int $studienordnung_id Die ID der Studienordnung
@@ -581,8 +475,10 @@ class studienordnung extends basis_db
return false; return false;
} }
$qry = 'SELECT * FROM lehre.tbl_studienordnung_semester WHERE $qry = 'SELECT 1 FROM lehre.tbl_studienplan_semester
studienordnung_id='.$this->db_add_param($studienordnung_id).';'; 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)) if($this->db_query($qry))
{ {
@@ -595,98 +491,6 @@ class studienordnung extends basis_db
return false; 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) protected function isZuordnungGuelitg($studiensemester_kurzbz)
{ {
$studiensemester = new studiensemester(); $studiensemester = new studiensemester();
+4 -37
View File
@@ -23,6 +23,7 @@
* Authors: Andreas Österreicher <[email protected]> * Authors: Andreas Österreicher <[email protected]>
* Stefan Puraner <[email protected]> * Stefan Puraner <[email protected]>
* Andreas Moik <[email protected]> * Andreas Moik <[email protected]>
* Cristina Hainberger <[email protected]>
*/ */
require_once(dirname(__FILE__).'/basis_db.class.php'); require_once(dirname(__FILE__).'/basis_db.class.php');
@@ -792,12 +793,12 @@ class studienplan extends basis_db
FROM FROM
lehre.tbl_studienplan lehre.tbl_studienplan
JOIN lehre.tbl_studienordnung USING(studienordnung_id) JOIN lehre.tbl_studienordnung USING(studienordnung_id)
JOIN lehre.tbl_studienordnung_semester USING(studienordnung_id) JOIN lehre.tbl_studienplan_semester USING (studienplan_id)
WHERE WHERE
tbl_studienplan.aktiv tbl_studienplan.aktiv
AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." 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_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)."
AND tbl_studienordnung_semester.semester=".$this->db_add_param($ausbildungssemester); AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester);
if($orgform_kurzbz!='') if($orgform_kurzbz!='')
{ {
@@ -1096,40 +1097,6 @@ class studienplan extends basis_db
return false; 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) * prüft ob dem Studienplan Semester zugeordnet sind (Gültigkeit)
* @param int $studienplan_id Die ID des Studienplans * @param int $studienplan_id Die ID des Studienplans
-19
View File
@@ -38,25 +38,6 @@ switch($method)
$data['errormsg']=$studienordnung->errormsg; $data['errormsg']=$studienordnung->errormsg;
} }
break; 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': case 'copyStudienordnung':
$studienordnung_id=$_REQUEST['studienordnung_id']; $studienordnung_id=$_REQUEST['studienordnung_id'];
-2
View File
@@ -77,7 +77,6 @@ $error=false;
// Bei Save Funktionen werden alle Parameter zugewiesen // Bei Save Funktionen werden alle Parameter zugewiesen
if(mb_stristr($method,'save')) if(mb_stristr($method,'save'))
{ {
$loaddata=json_decode($_REQUEST['loaddata'], true); $loaddata=json_decode($_REQUEST['loaddata'], true);
$savedata=json_decode($_REQUEST['savedata'], true); $savedata=json_decode($_REQUEST['savedata'], true);
if(!$rechte->isBerechtigt('lehre/studienordnung')) if(!$rechte->isBerechtigt('lehre/studienordnung'))
@@ -158,7 +157,6 @@ elseif(mb_stristr($method,'delete'))
$studienplan->loadStudienplanLehrveranstaltung($_REQUEST['parameter_0']); $studienplan->loadStudienplanLehrveranstaltung($_REQUEST['parameter_0']);
$studienordnung = new studienordnung(); $studienordnung = new studienordnung();
$studienordnung->getStudienordnungFromStudienplan($studienplan->studienplan_id); $studienordnung->getStudienordnungFromStudienplan($studienplan->studienplan_id);
if($studienordnung->isAktiv($studienordnung->studienordnung_id)) if($studienordnung->isAktiv($studienordnung->studienordnung_id))
die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.'); die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.');
} }
-80
View File
@@ -312,86 +312,6 @@ switch($method)
</table> </table>
'; ';
break; 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_id = $_GET["studienplan_id"];
+13 -127
View File
@@ -17,6 +17,7 @@
* Authors: Andreas Oesterreicher <[email protected]>, * Authors: Andreas Oesterreicher <[email protected]>,
* Stefan Puraner <[email protected]> * Stefan Puraner <[email protected]>
* Andreas Moik <[email protected]> * Andreas Moik <[email protected]>
* Cristina Hainberger <[email protected]>
*/ */
var global_studiengang_kz=''; var global_studiengang_kz='';
var global_studiengang_bezeichnung=''; var global_studiengang_bezeichnung='';
@@ -125,6 +126,7 @@ function loadStudienordnung()
drawStudienordnungen(data.result); drawStudienordnungen(data.result);
//jqUi( "#menueLinks" ).accordion("option","active",1); //jqUi( "#menueLinks" ).accordion("option","active",1);
} }
neueStudienordnung();
}); });
} }
@@ -140,11 +142,13 @@ function drawStudienordnungen(data)
{ {
if(data[i].studienordnung_id !== null) 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>' 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="#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="#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=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>'; +' <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>'; obj=obj+'</ul>';
@@ -156,7 +160,7 @@ function drawStudienordnungen(data)
/** /**
* Laedt die Studienplaene zu einer Studienordnung * 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_bezeichnung=bezeichnung;
global_studienordnung_id=neue_studienordnung_id; global_studienordnung_id=neue_studienordnung_id;
@@ -185,7 +189,7 @@ function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung,
drawStudienplan(data.result); drawStudienplan(data.result);
//jqUi( "#menueLinks" ).accordion("option","active",2); //jqUi( "#menueLinks" ).accordion("option","active",2);
} }
callback(); editStudienordnung(global_studienordnung_id);
}); });
$.ajax({ $.ajax({
dataType: "json", dataType: "json",
@@ -212,16 +216,18 @@ function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung,
*/ */
function drawStudienplan(data) 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) for(i in data)
{ {
if(data[i].studienplan_id !== null) if(data[i].studienplan_id !== null)
{ {
global_studienplan_id = data[i].studienplan_id;
obj=obj+'<li>' 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="#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="#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>'; +'</li>';
} }
} }
@@ -1296,7 +1302,6 @@ function saveStudienordnung()
"standort_id":standort_id "standort_id":standort_id
}; };
$.ajax( $.ajax(
{ {
dataType: "json", dataType: "json",
@@ -1388,7 +1393,7 @@ function saveStudienplan()
{ {
$("#submsg").css("visibility", "visible"); $("#submsg").css("visibility", "visible");
window.setTimeout(function(){$("#submsg").css("visibility", "hidden");}, 1500); 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 error: loadError
@@ -1445,14 +1450,6 @@ function writeOverallSum(root)
$("#stplDetails").show(); $("#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 * Laedt die Daten zum Eintragen der Studienplan/Semester zuordnung
@@ -1463,73 +1460,6 @@ function semesterSTPLZuordnung()
$("#data").load('studienordnung.inc.php?method=semesterSTPLZuordnung&studienplan_id='+global_studienplan_id); $("#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 * 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) function deleteSemesterSTPLZuordnung(ausbildungssemester_kurzbz, studiensemester)
{ {
//new //new
+18 -11
View File
@@ -159,11 +159,16 @@ if((!$rechte->isBerechtigt('lehre/studienordnung')) && (!$rechte->isBerechtigt('
if(($rechte->isBerechtigt('lehre/studienordnungInaktiv')) && (!$rechte->isBerechtigt('lehre/studienordnung'))) if(($rechte->isBerechtigt('lehre/studienordnungInaktiv')) && (!$rechte->isBerechtigt('lehre/studienordnung')))
echo "<script type='text/javascript'>var initSTOs = 'inaktiv';</script>"; echo "<script type='text/javascript'>var initSTOs = 'inaktiv';</script>";
$stg_arr = $rechte->getStgKz('lehre/studienordnung'); $stg_arr = $rechte->getStgKz('lehre/studienordnung');
if(empty($stg_arr)) if(empty($stg_arr))
$stg_arr = $rechte->getStgKz('lehre/studienordnungInaktiv'); $stg_arr = $rechte->getStgKz('lehre/studienordnungInaktiv');
$studiengang = new studiengang(); $studiengang = new studiengang();
$studiengang->loadArray($stg_arr,'typ,kurzbz'); $studiengang->loadArray($stg_arr,'typ,kurzbz');
$types = new studiengang();
$types->getAllTypes();
$typ = '';
echo ' echo '
<table id="layoutTable" width="100%"> <table id="layoutTable" width="100%">
@@ -173,23 +178,25 @@ echo '
<h3>Studiengang</h3> <h3>Studiengang</h3>
<div style="margin:0px;padding:5px;"> <div style="margin:0px;padding:5px;">
<p> <p>
<select id="studiengang" name="studiengang_kz" onchange="loadStudienordnung()"> <SELECT id="studiengang" name="studiengang_kz" onchange="loadStudienordnung()" style="width: 100%;">
<option value="">-- Bitte auswählen --</option>'; <OPTION value="">-- Bitte auswählen --</option>';
foreach($studiengang->result as $row) foreach($studiengang->result as $row)
{ {
if($studiengang_kz==$row->studiengang_kz) if ($typ != $row->typ || $typ == '')
$selected='selected'; {
else if ($typ != '')
$selected=''; echo '</optgroup>';
echo '<option value="'.$row->studiengang_kz.'" '.$selected.'>'.$db->convert_html_chars($row->kuerzel.' - '.$row->kurzbzlang).'</option>'; echo '<optgroup label = "'.($types->studiengang_typ_arr[$row->typ] != '' ? $types->studiengang_typ_arr[$row->typ] : $row->typ).'">';
} }
echo ' echo '<OPTION value="'.$row->studiengang_kz.'"'.($studiengang_kz==$row->studiengang_kz?'selected':'').'>'.$row->kuerzel.' - '.$row->bezeichnung.'</OPTION>';
</select> $typ = $row->typ;
<br><input type="button" value="Daten laden" onclick="loadStudienordnung()" style="margin-top: 5px" /> }
echo '</SELECT><br>
<input type="button" value="Daten laden" onclick="loadStudienordnung()" style="margin-top: 5px" />
</p> </p>
</div> </div>
<h3>Studienordnung</h3> <h3>Studienordnung</h3>
<div style="margin:0px;padding:5px;"> <div style="margin:0px;padding:5px;">
<p id="studienordnung" > <p id="studienordnung" >