mehrmaliges zuordnen einer LV in Studienplan möglich

This commit is contained in:
Stefan Puraner
2013-12-19 07:43:49 +00:00
parent 1a0fcd2a11
commit 99a2ea643e
2 changed files with 45 additions and 37 deletions
+2 -1
View File
@@ -1244,8 +1244,9 @@ class lehrveranstaltung extends basis_db
$obj->semesterstunden = $lv->semesterstunden; $obj->semesterstunden = $lv->semesterstunden;
$data->metadata = $obj; $data->metadata = $obj;
$data->attr = array(); $data->attr = array();
$data->attr["id"]=$lv->lehrveranstaltung_id; $data->attr["id"]=$lv->studienplan_lehrveranstaltung_id;
$data->attr["rel"] = $lv->lehrtyp_kurzbz; $data->attr["rel"] = $lv->lehrtyp_kurzbz;
$data->attr["lvID"] = $lv->lehrveranstaltung_id;
$data->attr["studienplan_lehrveranstaltung_id"] = $lv->studienplan_lehrveranstaltung_id; $data->attr["studienplan_lehrveranstaltung_id"] = $lv->studienplan_lehrveranstaltung_id;
$data->children = array(); $data->children = array();
if(count($lv->childs) > 0) if(count($lv->childs) > 0)
+43 -36
View File
@@ -389,11 +389,15 @@ function loadLehrveranstaltungSTPL(studienplan_id, bezeichnung, max_semester)
{ {
// Bei einem Klick auf eine LV werden die Details geladen // Bei einem Klick auf eine LV werden die Details geladen
stpllvid = data.rslt.obj.attr("studienplan_lehrveranstaltung_id"); stpllvid = data.rslt.obj.attr("studienplan_lehrveranstaltung_id");
lvid = data.rslt.obj.attr("id"); lvid = data.rslt.obj.attr("lvID");
if(lvid.substring(0,5)==="copy_") if(lvid !== undefined)
{ {
lvid = lvid.substring(5); if(lvid.substring(0,5)==="copy_")
{
lvid = lvid.substring(5);
}
} }
// Lehrveranstaltungsdetails laden // Lehrveranstaltungsdetails laden
if(data.rslt.obj.attr("rel") !== "semester") if(data.rslt.obj.attr("rel") !== "semester")
@@ -752,7 +756,7 @@ function showLVTree(data)
], ],
resizable: true resizable: true
}, },
plugins: ["themes", "ui", "dnd", "grid", "json_data", "crrm", "types"] plugins: ["themes", "ui", "dnd", "grid", "json_data", "crrm", "types", "sort"]
}).bind("loaded.jstree", function(event, data) }).bind("loaded.jstree", function(event, data)
{ {
hideAllTreeColumns(); hideAllTreeColumns();
@@ -865,13 +869,13 @@ function saveJsondataFromTree(nodeId, studienplan_id, studienplan_lehrveranstalt
{ {
var jsonData = $("#treeData").jstree("get_json", $("#treeData").find("li[id="+nodeId+"]")); var jsonData = $("#treeData").jstree("get_json", $("#treeData").find("li[id="+nodeId+"]"));
var copy = false; var copy = false;
if(jsonData.length !== 1) if(jsonData.length !== 1)
{ {
jsonData = $("#treeData").jstree("get_json", $("#copy_"+nodeId)); jsonData = $("#treeData").jstree("get_json", $("#copy_"+nodeId));
copy = true; copy = true;
} }
loaddata = { loaddata = {
"method" : "loadLehrveranstaltungStudienplanByLvId", "method" : "loadLehrveranstaltungStudienplanByLvId",
"parameter_0" : studienplan_id, "parameter_0" : studienplan_id,
@@ -885,9 +889,9 @@ function saveJsondataFromTree(nodeId, studienplan_id, studienplan_lehrveranstalt
} }
else else
{ {
node = $("#"+jsonData[0]["metadata"]["lehrveranstaltung_id"]); node = $("#"+studienplan_lehrveranstaltung_id);
} }
var lehrveranstaltung_id = jsonData[0]["metadata"]["lehrveranstaltung_id"]; var lehrveranstaltung_id = jsonData[0]["metadata"]["lehrveranstaltung_id"];
var semester = node.closest("li[rel=semester]").attr("id"); var semester = node.closest("li[rel=semester]").attr("id");
if(semester === undefined) if(semester === undefined)
@@ -899,29 +903,31 @@ function saveJsondataFromTree(nodeId, studienplan_id, studienplan_lehrveranstalt
if(node.parent().parent().attr("studienplan_lehrveranstaltung_id")) if(node.parent().parent().attr("studienplan_lehrveranstaltung_id"))
parent_id = node.parent().parent().attr("studienplan_lehrveranstaltung_id"); parent_id = node.parent().parent().attr("studienplan_lehrveranstaltung_id");
var neu =''; var neu = true;
if(studienplan_lehrveranstaltung_id !== undefined)
neu = false;
// Pruefen ob diese Zuordnung bereits vorhanden ist // Pruefen ob diese Zuordnung bereits vorhanden ist
$.ajax( // $.ajax(
{ // {
dataType: "json", // dataType: "json",
url: "../../soap/fhcomplete.php", // url: "../../soap/fhcomplete.php",
type: "POST", // type: "POST",
async: false, // async: false,
data: { // data: {
"typ": "json", // "typ": "json",
"class": "studienplan", // "class": "studienplan",
"method": "containsLehrveranstaltung", // "method": "containsLehrveranstaltung",
"parameter_0": studienplan_id, // "parameter_0": studienplan_id,
"parameter_1": lehrveranstaltung_id // "parameter_1": lehrveranstaltung_id
} // }
}).success(function(data) // }).success(function(data)
{ // {
if(data.return==false) // if(data.return==false)
neu = true; // neu = true;
else // else
neu = false; // neu = false;
}); // });
// Bei neuen Eintraegen kein Load noetig // Bei neuen Eintraegen kein Load noetig
if(neu) if(neu)
@@ -929,12 +935,13 @@ function saveJsondataFromTree(nodeId, studienplan_id, studienplan_lehrveranstalt
// Wenn der Eintrag keine Verschiebung im Tree ist, und die Lehrveranstaltung bereits im // Wenn der Eintrag keine Verschiebung im Tree ist, und die Lehrveranstaltung bereits im
// Studienplan vorhanden ist -> Abbruch // Studienplan vorhanden ist -> Abbruch
if(studienplan_lehrveranstaltung_id=='' && neu==false)
{ // if(studienplan_lehrveranstaltung_id=='' && neu==false)
alert("Die Lehrveranstaltung ist bereits in diesem Studienplan vorhanden!"); // {
$("#treeData").jstree("remove", $("#copy_"+nodeId)); // alert("Die Lehrveranstaltung ist bereits in diesem Studienplan vorhanden!");
return; // $("#treeData").jstree("remove", $("#copy_"+nodeId));
} // return;
// }
savedata = { savedata = {
"studienplan_id": studienplan_id, "studienplan_id": studienplan_id,