diff --git a/skin/images/split-arrows.png b/skin/images/split-arrows.png
new file mode 100644
index 000000000..7daf400d6
Binary files /dev/null and b/skin/images/split-arrows.png differ
diff --git a/soap/studienordnung.json.php b/soap/studienordnung.json.php
index 444fb026e..c7a230a30 100644
--- a/soap/studienordnung.json.php
+++ b/soap/studienordnung.json.php
@@ -57,6 +57,53 @@ switch($method)
$data['errormsg']=$studienordnung->errormsg;
}
break;
+ case 'saveSemesterSTPLZuordnung':
+ $studienplan_id=$_REQUEST['studienplan_id'];
+ $studiensemester_kurzbz=$_REQUEST['studiensemester_kurzbz'];
+ $ausbildungssemester=$_REQUEST['ausbildungssemester'];
+
+ $studienplan = new studienplan();
+ $studienplan->loadStudienplan($studienplan_id);
+ $saveArr = array(array("studienplan_id"=>$studienplan_id, "studiensemester_kurzbz"=>$studiensemester_kurzbz, "ausbildungssemester"=>$ausbildungssemester));
+ if($result = $studienplan->saveSemesterZuordnung($saveArr))
+ {
+ $data['result']=$result;
+ $data['error']='false';
+ $data['errormsg']='';
+ }
+ else
+ {
+ $data['error']='true';
+ $data['errormsg']=$studienplan->errormsg;
+ }
+ break;
+ case 'deleteSemesterSTPLZuordnung':
+ $studienplan_id=$_REQUEST['studienplan_id'];
+ $ausbildungssemester_kurzbz=$_REQUEST['ausbildungssemester_kurzbz'];
+ $studienplan = new studienplan();
+ $studienplan->loadStudienplan($studienplan_id);
+
+ if(!isset($_REQUEST["studiensemester"]))
+ {
+ $result = $studienplan->deleteSemesterZuordnung($studienplan_id, $ausbildungssemester_kurzbz);
+ }
+ else
+ {
+ $studiensemester = $_REQUEST["studiensemester"];
+ $result = $studienplan->deleteSemesterZuordnung($studienplan_id, $ausbildungssemester_kurzbz, $studiensemester);
+ }
+
+ if($result)
+ {
+ $data['error']='false';
+ $data['errormsg']='';
+ }
+ else
+ {
+ $data['error']='true';
+ $data['errormsg']=$studienplan->errormsg;
+ }
+ break;
case 'copyStudienordnung':
$studienordnung_id=$_REQUEST['studienordnung_id'];
diff --git a/soap/test_client.php b/soap/test_client.php
index be66e0bd7..fe2cfda20 100644
--- a/soap/test_client.php
+++ b/soap/test_client.php
@@ -1,84 +1,84 @@
-
-
-
-
-
-
-
-
- Test-Client
-
-
-
-
- Testclient für Webservices
-
-
-
-
';
- try
- {
- $response = $client->myTest('foo');
- var_dump($response);
- }
- catch(SoapFault $fault)
- {
- echo "SOAP Fault: (faultcode: ".$fault->faultcode.", faultstring: ".$fault->faultstring.")", E_USER_ERROR;
- }
-
-}
-
-?>
-
-
+
+
+
+
+
+
+
+
+ Test-Client
+
+
+
+
+ Testclient für Webservices
+
+
+
+
';
+ try
+ {
+ $response = $client->myTest('foo');
+ var_dump($response);
+ }
+ catch(SoapFault $fault)
+ {
+ echo "SOAP Fault: (faultcode: ".$fault->faultcode.", faultstring: ".$fault->faultstring.")", E_USER_ERROR;
+ }
+
+}
+
+?>
+
+
diff --git a/vilesci/lehre/studienordnung.inc.php b/vilesci/lehre/studienordnung.inc.php
index 91448abc4..5ece67a8d 100644
--- a/vilesci/lehre/studienordnung.inc.php
+++ b/vilesci/lehre/studienordnung.inc.php
@@ -259,7 +259,7 @@ switch($method)
$studienordnung = new studienordnung();
$studienordnung->loadStudienordnung($studienordnung_id);
-
+
$studienSemesterResult = $studienordnung->loadStudiensemesterFromStudienordnung($studienordnung_id);
foreach ($studienSemesterResult as $studienSem)
{
@@ -332,6 +332,88 @@ switch($method)
';
break;
+
+ case 'semesterSTPLZuordnung':
+ $studienplan_id = $_GET["studienplan_id"];
+
+ $studienplan = new studienplan();
+ $studienplan->loadStudienplan($studienplan_id);
+ $studienSemesterResult = $studienplan->loadStudiensemesterFromStudienplan($studienplan_id);
+
+ $studiensemester = new studiensemester();
+ $studiensemester->getAll();
+
+ $ausbildungssemesterResult = array();
+/*
+ $studienSemesterResult = $studienordnung->loadStudiensemesterFromStudienordnung($studienordnung_id);*/
+ foreach ($studienSemesterResult as $studienSem)
+ {
+ $obj = new stdClass();
+ $obj->studiensemester = $studienSem;
+ $obj->ausbildungssemester = $studienplan->loadAusbildungsemesterFromStudiensemester($studienplan_id, $studienSem);
+ $ausbildungssemesterResult[] = $obj;
+ }
+
+ $studiengang = new studiengang();
+ //$studiengang->load($studienordnung->studiengang_kz);
+// $ausbildungssemester = $studiengang->getSemesterFromStudiengang($studienordnung->studiengang_kz)
+ $ausbildungssemester = $studienplan->regelstudiendauer;
+
+ echo '
+
+ ';
+ break;
+
default:
echo 'Unknown Method'.$method;
break;
diff --git a/vilesci/lehre/studienordnung.js b/vilesci/lehre/studienordnung.js
index 7617d33e5..5f601b142 100755
--- a/vilesci/lehre/studienordnung.js
+++ b/vilesci/lehre/studienordnung.js
@@ -16,12 +16,13 @@
*
* Authors: Andreas Oesterreicher ,
* Stefan Puraner
+ * Andreas Moik
*/
-var studiengang_kz='';
-var studiengang_bezeichnung='';
-var studienordnung_id='';
-var studienordnung_bezeichnung='';
-var studienplan_id='';
+var global_studiengang_kz='';
+var global_studiengang_bezeichnung='';
+var global_studienordnung_id='';
+var global_studienordnung_bezeichnung='';
+var global_studienplan_id='';
var lehrveranstaltungen='';
// Speichert die Parameter des aktuell angezeigten Studienplans fuer Refresh des Trees
@@ -63,10 +64,10 @@ function drawHeader(text)
if(text===undefined)
{
text = '';
- if(studiengang_bezeichnung!='')
- text=text+studiengang_bezeichnung;
- if(studienordnung_bezeichnung!='')
- text=text+' > '+studienordnung_bezeichnung;
+ if(global_studiengang_bezeichnung!='')
+ text=text+global_studiengang_bezeichnung;
+ if(global_studienordnung_bezeichnung!='')
+ text=text+' > '+global_studienordnung_bezeichnung;
if(studienplan_bezeichnung!='')
text=text+' > '+studienplan_bezeichnung;
@@ -89,13 +90,13 @@ function loadStudienordnung()
method = 'loadStudienordnungSTG';
}
// Ausgewaehlten Studiengang holen
- studiengang_kz = $('#studiengang').val();
- studiengang_bezeichnung = $( "#studiengang option:selected" ).text();
+ global_studiengang_kz = $('#studiengang').val();
+ global_studiengang_bezeichnung = $( "#studiengang option:selected" ).text();
// Globale Variablen resetten
- studienordnung_id='';
- studienordnung_bezeichnung='';
- studienplan_id='';
+ global_studienordnung_id='';
+ global_studienordnung_bezeichnung='';
+ global_studienplan_id='';
studienplan_bezeichnung='';
drawHeader();
@@ -109,7 +110,7 @@ function loadStudienordnung()
"typ": "json",
"class": "studienordnung",
"method": method,
- "parameter_0": studiengang_kz
+ "parameter_0": global_studiengang_kz
},
error: loadError
}).success(function(data)
@@ -139,7 +140,7 @@ function drawStudienordnungen(data)
{
if(data[i].studienordnung_id !== null)
{
- obj=obj+'
'+data[i].bezeichnung+''
+ obj=obj+''+data[i].bezeichnung+''
+'
'
+'
'
+'
'
@@ -155,10 +156,12 @@ function drawStudienordnungen(data)
/**
* Laedt die Studienplaene zu einer Studienordnung
*/
-function loadStudienplanSTO(neue_studienordnung_id,bezeichnung)
+function loadStudienplanSTO(neue_studienordnung_id, studienplan_id,bezeichnung, callback)
{
- studienordnung_bezeichnung=bezeichnung;
- studienordnung_id=neue_studienordnung_id;
+ global_studienordnung_bezeichnung=bezeichnung;
+ global_studienordnung_id=neue_studienordnung_id;
+ global_studienplan_id = studienplan_id;
+
drawHeader();
$.ajax(
{
@@ -168,7 +171,7 @@ function loadStudienplanSTO(neue_studienordnung_id,bezeichnung)
"typ": "json",
"class": "studienplan",
"method": "loadStudienplanSTO",
- "parameter_0": studienordnung_id
+ "parameter_0": global_studienordnung_id
},
error: loadError
}).success(function(data)
@@ -182,7 +185,7 @@ function loadStudienplanSTO(neue_studienordnung_id,bezeichnung)
drawStudienplan(data.result);
//jqUi( "#menueLinks" ).accordion("option","active",2);
}
- semesterStoZuordnung();
+ callback();
});
$.ajax({
dataType: "json",
@@ -191,7 +194,7 @@ function loadStudienplanSTO(neue_studienordnung_id,bezeichnung)
"typ" : "json",
"class": "studienordnung",
"method": "loadStudienordnung",
- "parameter_0": studienordnung_id
+ "parameter_0": global_studienordnung_id
},
error: loadError
}).success(function(data){
@@ -203,19 +206,23 @@ function loadStudienplanSTO(neue_studienordnung_id,bezeichnung)
});
}
+
/**
* Erstellt die Links zu den Studienplaenen
*/
function drawStudienplan(data)
{
- var obj='Neuer Studienplan';
+ var obj ='Neuer Studienplan';
@@ -223,6 +230,7 @@ function drawStudienplan(data)
$('#studienplan').html(obj);
}
+
/**
* Konvertiert den Tree fuer den Studienplan damit dieser mit jstree angezeigt werden kann
*/
@@ -254,7 +262,7 @@ function loadLehrveranstaltungSTPL(studienplan_id, bezeichnung, max_semester)
loadLehrveranstaltungSTPLBezeichnung = bezeichnung;
loadLehrveranstaltungSTPLSemester = max_semester;
- //studienplan_id = studienplan_id;
+ global_studienplan_id = studienplan_id;
studienplan_bezeichnung=bezeichnung;
drawHeader();
@@ -267,7 +275,7 @@ function loadLehrveranstaltungSTPL(studienplan_id, bezeichnung, max_semester)
"typ": "json",
"class": "lehrveranstaltung",
"method": "getLvTree",
- "parameter_0": studienplan_id,
+ "parameter_0": global_studienplan_id,
},
error: loadError
}).success(function(data)
@@ -495,7 +503,7 @@ function loadLehrveranstaltungSTPL(studienplan_id, bezeichnung, max_semester)
}
// Aenderung speichern
- saveJsondataFromTree(data.rslt.o[0].id, studienplan_id, studienplan_lehrveranstaltung_id);
+ saveJsondataFromTree(data.rslt.o[0].id, global_studienplan_id, studienplan_lehrveranstaltung_id);
// ECTS Summen neu berechnen
var root = data.inst.get_container_ul();
@@ -769,7 +777,7 @@ function neueStudienordnung()
{
$("#tabs").hide();
drawHeader('Neue Studienordnung');
- $("#data").load('studienordnung.inc.php?method=neueStudienordnung&studiengang_kz='+studiengang_kz);
+ $("#data").load('studienordnung.inc.php?method=neueStudienordnung&studiengang_kz='+global_studiengang_kz);
}
/**
@@ -779,7 +787,7 @@ function neuerStudienplan()
{
$("#tabs").hide();
drawHeader('Neuer Studienplan');
- $("#data").load('studienordnung.inc.php?method=neuerStudienplan&studiengang_kz='+studiengang_kz);
+ $("#data").load('studienordnung.inc.php?method=neuerStudienplan&studiengang_kz='+global_studiengang_kz);
}
/**
@@ -789,7 +797,7 @@ function editStudienordnung(studienordnung_id)
{
$("#tabs").hide();
drawHeader('Studienordnung bearbeiten');
- $("#data").load('studienordnung.inc.php?method=neueStudienordnung&studiengang_kz='+studiengang_kz+'&studienordnung_id='+studienordnung_id);
+ $("#data").load('studienordnung.inc.php?method=neueStudienordnung&studiengang_kz='+global_studiengang_kz+'&studienordnung_id='+studienordnung_id);
}
/**
@@ -799,7 +807,7 @@ function editStudienplan(studienplan_id)
{
$("#tabs").hide();
drawHeader('Studienplan bearbeiten');
- $("#data").load('studienordnung.inc.php?method=neuerStudienplan&studiengang_kz='+studiengang_kz+'&studienplan_id='+studienplan_id);
+ $("#data").load('studienordnung.inc.php?method=neuerStudienplan&studiengang_kz='+global_studiengang_kz+'&studienplan_id='+studienplan_id);
}
/*
@@ -818,7 +826,7 @@ function loadFilteredLehrveranstaltungen()
"typ": "json",
"class": "lehrveranstaltung",
"method": "load_lva",
- "parameter_0": studiengang_kz, //Studiengangskennzahl
+ "parameter_0": global_studiengang_kz, //Studiengangskennzahl
"parameter_1": $("#semesterDropdown").val(), //Semester
"parameter_2": "null", //Lehrverzeichnis
"parameter_3": "null", //Lehre // sollte TRUE sein
@@ -961,7 +969,7 @@ function showLVTree(data)
}
// Aenderung speichern
- saveJsondataFromTree(data.rslt.o[0].id, studienplan_id, studienplan_lehrveranstaltung_id);
+ saveJsondataFromTree(data.rslt.o[0].id, global_studienplan_id, studienplan_lehrveranstaltung_id);
// ECTS Summen neu berechnen
@@ -1029,7 +1037,7 @@ function loadSemester()
url: "../../soap/studienplan.json.php",
data: {
"method": "getSemesterFromStudiengang",
- "studiengang_kz": studiengang_kz
+ "studiengang_kz": global_studiengang_kz
},
error: loadError
}).success(function(data)
@@ -1060,7 +1068,7 @@ function loadSemester()
if($("#neueLV").length === 0)
$("#lehrveranstaltung").append("");
- $("#neueLV").html("
");
+ $("#neueLV").html("
");
isLVFilterLoaded=true;
loadFilteredLehrveranstaltungen();
});
@@ -1287,7 +1295,7 @@ function saveStudienordnung()
"studiengangbezeichnung_englisch":studiengangbezeichnungenglisch,
"studiengangkurzbzlang":studiengangkurzbzlang,
"akadgrad_id":akadgrad_id,
- "studiengang_kz":studiengang_kz
+ "studiengang_kz":global_studiengang_kz
};
@@ -1330,13 +1338,13 @@ function saveStudienplan()
semesterwochen = $("#semesterwochen").val();
testtool_sprachwahl = $("#testtool_sprachwahl").prop("checked");
aktiv = $("#aktiv").prop("checked");
- mystudienplan_id = $("#studienplan_id").val();
+ var studienplan_id = $("#studienplan_id").val();
- if(mystudienplan_id!='')
+ if(studienplan_id!='')
{
loaddata = {
"method": "loadStudienplan",
- "parameter_0": mystudienplan_id
+ "parameter_0": studienplan_id
};
}
else
@@ -1351,7 +1359,7 @@ function saveStudienplan()
"semesterwochen":semesterwochen,
"testtool_sprachwahl":testtool_sprachwahl,
"aktiv":aktiv,
- "studienordnung_id":studienordnung_id
+ "studienordnung_id":global_studienordnung_id
};
@@ -1374,7 +1382,7 @@ function saveStudienplan()
{
$("#submsg").css("visibility", "visible");
window.setTimeout(function(){$("#submsg").css("visibility", "hidden");}, 1500);
- loadStudienplanSTO(studienordnung_id,studienordnung_bezeichnung);
+ loadStudienplanSTO(global_studienordnung_id, studienplan_id, global_studienordnung_bezeichnung, semesterStoZuordnung);
}
},
error: loadError
@@ -1435,7 +1443,16 @@ function writeOverallSum(root)
function semesterStoZuordnung()
{
drawHeader('Neue Semester Zuordnung');
- $("#data").load('studienordnung.inc.php?method=semesterStoZuordnung&studienordnung_id='+studienordnung_id);
+ $("#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');
+ $("#data").load('studienordnung.inc.php?method=semesterSTPLZuordnung&studienplan_id='+global_studienplan_id);
}
/**
@@ -1467,7 +1484,7 @@ function saveSemesterStoZuordnung(studiensemester, ausbildungssemester)
type: "POST",
data: {
"method": "saveSemesterZuordnung",
- "studienordnung_id": studienordnung_id,
+ "studienordnung_id": global_studienordnung_id,
"studiensemester_kurzbz" : studiensemester,
"ausbildungssemester": j+1
}
@@ -1490,7 +1507,7 @@ function saveSemesterStoZuordnung(studiensemester, ausbildungssemester)
type: "POST",
data: {
"method": "saveSemesterZuordnung",
- "studienordnung_id": studienordnung_id,
+ "studienordnung_id": global_studienordnung_id,
"studiensemester_kurzbz" : studiensemester,
"ausbildungssemester": ausbildungssemester
}
@@ -1503,9 +1520,79 @@ function saveSemesterStoZuordnung(studiensemester, ausbildungssemester)
semesterStoZuordnung();
});
}
-
}
+
+/**
+ * Speichert die Studienplan/Semester zuordnung
+ */
+function saveSemesterSTPLZuordnung(studiensemester, ausbildungssemester)
+{
+ //new
+ 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
* Stefan Puraner
+ * Andreas Moik
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/studienordnung.class.php');