mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-19 16:02:15 +00:00
Merge branch 'master' into lvgruppen
This commit is contained in:
@@ -78,6 +78,7 @@ class InfoCenter extends Auth_Controller
|
||||
'showDetails' => 'infocenter:r',
|
||||
'unlockPerson' => 'infocenter:rw',
|
||||
'saveFormalGeprueft' => 'infocenter:rw',
|
||||
'getPrestudentData' => 'infocenter:r',
|
||||
'getLastPrestudentWithZgvJson' => 'infocenter:r',
|
||||
'getZgvInfoForPrestudent' => 'infocenter:r',
|
||||
'saveBewPriorisierung' => 'infocenter:rw',
|
||||
@@ -263,6 +264,17 @@ class InfoCenter extends Auth_Controller
|
||||
$this->output->set_content_type('application/json')->set_output(json_encode($json));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets prestudent data for a person in json format
|
||||
* @param $person_id
|
||||
*/
|
||||
public function getPrestudentData($person_id)
|
||||
{
|
||||
$prestudentdata = $this->_loadPrestudentData($person_id);
|
||||
|
||||
$this->output->set_content_type('application/json')->set_output(json_encode($prestudentdata['zgvpruefungen']));
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets prestudent that was last modified in json format, for ZGV übernehmen
|
||||
* @param $person_id
|
||||
|
||||
@@ -98,9 +98,6 @@
|
||||
<form method="post"
|
||||
action="#" class="zgvform">
|
||||
<input type="hidden" name="prestudentid" value="<?php echo $zgvpruefung->prestudent_id ?>" class="prestudentidinput">
|
||||
<input type="hidden" name="studiensemester" value="<?php echo $studiensemester ?>" id="studiensemester_<?php echo $zgvpruefung->prestudent_id ?>">
|
||||
<input type="hidden" name="isfreigegeben" class="isfreigegeben"
|
||||
value="<?php echo isset($zgvpruefung->prestudentstatus->bestaetigtam) && $zgvpruefung->prestudentstatus->status_kurzbz === 'Interessent' && $zgvpruefung->studiengangtyp === 'b' ? 1 : 0 ?>" id="isfreigegeben_<?php echo $zgvpruefung->prestudent_id ?>">
|
||||
<div class="row">
|
||||
<div class="col-lg-<?php echo $columns[0] ?>">
|
||||
<div class="form-group">
|
||||
|
||||
@@ -176,10 +176,17 @@ function NotePruefungAnlegen($studiensemester_kurzbz, $student_uid, $lehrveranst
|
||||
|
||||
// Lehreinheit ermitteln
|
||||
$error = false;
|
||||
$qry = "SELECT lehreinheit_id FROM campus.vw_student_lehrveranstaltung "
|
||||
. "WHERE uid=".$db->db_add_param($student_uid)." AND lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id)." "
|
||||
. "ORDER BY lehreinheit_id ASC "
|
||||
. "LIMIT 1";
|
||||
$qry = "
|
||||
SELECT
|
||||
lehreinheit_id
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
WHERE
|
||||
uid=".$db->db_add_param($student_uid)."
|
||||
AND lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id)."
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
|
||||
ORDER BY lehreinheit_id ASC
|
||||
LIMIT 1";
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
@@ -1209,7 +1216,7 @@ if(!$error)
|
||||
$rolle->bestaetigtam = $_POST['bestaetigtam'];
|
||||
if($_POST['bestaetigtam']=='')
|
||||
$rolle->bestaetigtvon = null;
|
||||
|
||||
|
||||
$rolle->bewerbung_abgeschicktamum = $_POST['bewerbung_abgeschicktamum'];
|
||||
$rolle->orgform_kurzbz = $_POST['orgform_kurzbz'];
|
||||
$rolle->studienplan_id = $_POST['studienplan_id'];
|
||||
|
||||
@@ -4,6 +4,7 @@ const CALLED_PATH = FHC_JS_DATA_STORAGE_OBJECT.called_path;
|
||||
const CONTROLLER_URL = BASE_URL + "/"+CALLED_PATH;
|
||||
const RTFREIGABE_MESSAGE_VORLAGE = "InfocenterRTfreigegeben";
|
||||
const RTFREIGABE_MESSAGE_VORLAGE_QUER = "InfocenterRTfreigegQuer";
|
||||
const RTFREIGABE_MESSAGE_VORLAGE_QUER_KURZ = "InfocenterRTfreigegQuerKurz";
|
||||
const STGFREIGABE_MESSAGE_VORLAGE = "InfocenterSTGfreigegeben";
|
||||
|
||||
/**
|
||||
@@ -277,6 +278,9 @@ var InfocenterDetails = {
|
||||
{
|
||||
FHC_AjaxClient.showVeil();
|
||||
InfocenterDetails.initFrgMessageSend(data.retval.prestudent_id, rtfreigabe);
|
||||
InfocenterDetails._refreshZgv();
|
||||
FHC_AjaxClient.hideVeil();
|
||||
InfocenterDetails._refreshLog();
|
||||
}
|
||||
else if (data.error === 2 && parseInt(data.retval.prestudent_id, 10))
|
||||
{
|
||||
@@ -460,48 +464,98 @@ var InfocenterDetails = {
|
||||
}
|
||||
);
|
||||
},
|
||||
getPrestudentData: function(personid, callback)
|
||||
{
|
||||
FHC_AjaxClient.ajaxCallGet(
|
||||
CALLED_PATH + "/getPrestudentData/"+encodeURIComponent(personid),
|
||||
null,
|
||||
{
|
||||
successCallback: callback,
|
||||
veilTimeout: 0
|
||||
}
|
||||
);
|
||||
},
|
||||
initFrgMessageSend: function(prestudentid, rtfreigabe)
|
||||
{
|
||||
var callback = function ()
|
||||
var callback = function (data)
|
||||
{
|
||||
if (data == null)
|
||||
return;
|
||||
|
||||
// check if a prestudent in same semester is already freigegeben - then not send message again
|
||||
var freigegeben = false;
|
||||
var prestudentids = $(".prestudentidinput");
|
||||
var receiverPrestudentstatus = null;
|
||||
|
||||
if (prestudentids.length > 1)
|
||||
//get prestudentstatus of message receiver
|
||||
for(var i = 0; i < data.length; i++)
|
||||
{
|
||||
prestudentids.each(function()
|
||||
{
|
||||
var id = $(this).val();
|
||||
|
||||
if (parseInt(id) !== parseInt(prestudentid))
|
||||
{
|
||||
if ($("#studiensemester_"+id).val() === $("#studiensemester_"+prestudentid).val() && $("#isfreigegeben_"+id).val() === "1")
|
||||
{
|
||||
freigegeben = true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
if (data[i].prestudentstatus.prestudent_id === prestudentid)
|
||||
{
|
||||
receiverPrestudentstatus = data[i].prestudentstatus;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (receiverPrestudentstatus == null)
|
||||
return;
|
||||
|
||||
//check other prestudentstati wether already freigegeben
|
||||
for(var j = 0; j < data.length; j++)
|
||||
{
|
||||
var prestudent = data[j];
|
||||
var prestudentstatus = prestudent.prestudentstatus;
|
||||
var id = prestudentstatus.prestudent_id;
|
||||
|
||||
if (id !== prestudentid)
|
||||
{
|
||||
if (receiverPrestudentstatus.studiensemester_kurzbz === prestudentstatus.studiensemester_kurzbz
|
||||
&& prestudentstatus.bestaetigtam !== null && prestudentstatus.status_kurzbz === "Interessent"
|
||||
&& prestudent.studiengangtyp === "b")
|
||||
{
|
||||
freigegeben = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var ausbildungssemester = receiverPrestudentstatus.ausbildungssemester;
|
||||
var studiengangbezeichnung = receiverPrestudentstatus.studiengangbezeichnung;
|
||||
var studiengangbezeichnung_englisch = receiverPrestudentstatus.studiengangbezeichnung_englisch;
|
||||
var msgvars = {};
|
||||
|
||||
if (freigegeben)
|
||||
{
|
||||
InfocenterDetails._refreshLog();
|
||||
//if already freigegeben, still send (shorter) message if Quereinsteiger
|
||||
if (ausbildungssemester > 1)
|
||||
{
|
||||
msgvars = {
|
||||
'ausbildungssemester': ausbildungssemester,
|
||||
'studiengangbezeichnung': studiengangbezeichnung,
|
||||
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch
|
||||
};
|
||||
InfocenterDetails.sendFreigabeMessage(prestudentid, RTFREIGABE_MESSAGE_VORLAGE_QUER_KURZ, msgvars);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var ausbildungssem = $("#ausbildungssem_" + prestudentid).val();
|
||||
var vorlage_kurzbz = null;
|
||||
var msgvars = {};
|
||||
|
||||
if (rtfreigabe)
|
||||
{
|
||||
vorlage_kurzbz = isNaN(ausbildungssem) || parseInt(ausbildungssem) === 1 ? RTFREIGABE_MESSAGE_VORLAGE : RTFREIGABE_MESSAGE_VORLAGE_QUER;
|
||||
msgvars = {
|
||||
'rtlink': FHC_JS_DATA_STORAGE_OBJECT.app_root + 'addons/bewerbung/cis/registration.php?active=aufnahme',
|
||||
'ausbildungssemester': ausbildungssem
|
||||
if (ausbildungssemester > 1)
|
||||
{
|
||||
vorlage_kurzbz = RTFREIGABE_MESSAGE_VORLAGE_QUER;
|
||||
msgvars = {
|
||||
/*'rtlink': FHC_JS_DATA_STORAGE_OBJECT.app_root + 'addons/bewerbung/cis/registration.php?active=aufnahme',*/
|
||||
'ausbildungssemester': ausbildungssemester,
|
||||
'studiengangbezeichnung': studiengangbezeichnung,
|
||||
'studiengangbezeichnung_englisch': studiengangbezeichnung_englisch
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
vorlage_kurzbz = RTFREIGABE_MESSAGE_VORLAGE;
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -510,18 +564,16 @@ var InfocenterDetails = {
|
||||
}
|
||||
InfocenterDetails.sendFreigabeMessage(prestudentid, vorlage_kurzbz, msgvars);
|
||||
}
|
||||
FHC_AjaxClient.hideVeil();
|
||||
};
|
||||
|
||||
InfocenterDetails._refreshZgv(
|
||||
false,
|
||||
//send message only after refresh to have current Ausbildungssemester
|
||||
callback
|
||||
);
|
||||
var personid = $("#hiddenpersonid").val();
|
||||
|
||||
InfocenterDetails.getPrestudentData(
|
||||
personid, callback
|
||||
)
|
||||
},
|
||||
sendFreigabeMessage: function(prestudentid, vorlage_kurzbz, msgvars)
|
||||
{
|
||||
|
||||
FHC_AjaxClient.ajaxCallPost(
|
||||
'system/Messages/sendJson',
|
||||
{
|
||||
@@ -668,7 +720,7 @@ var InfocenterDetails = {
|
||||
$(".freigabeModal").modal("hide");
|
||||
var prestudent_id = this.id.substr(this.id.indexOf("_") + 1);
|
||||
var data = {"prestudent_id": prestudent_id};
|
||||
InfocenterDetails.saveFreigabe(data, true);
|
||||
InfocenterDetails.saveFreigabe(data, true);//Reihungstestfreigabe
|
||||
}
|
||||
);
|
||||
|
||||
@@ -678,17 +730,17 @@ var InfocenterDetails = {
|
||||
var prestudent_id = this.id.substr(this.id.indexOf("_") + 1);
|
||||
var statusgrund_id = $("#frgstatusgrselect_" + prestudent_id + " select[name=frgstatusgrund]").val();
|
||||
var data = {"prestudent_id": prestudent_id, "statusgrund_id": statusgrund_id};
|
||||
InfocenterDetails.saveFreigabe(data);
|
||||
InfocenterDetails.saveFreigabe(data);//Studiengangfreigabe
|
||||
}
|
||||
)
|
||||
},
|
||||
_refreshZgv: function(preserveCollapseState, callback)
|
||||
_refreshZgv: function(preserveCollapseState)
|
||||
{
|
||||
var personid = $("#hiddenpersonid").val();
|
||||
|
||||
var collapsed = {};
|
||||
|
||||
//save if panel is collapsed to preserve collapse state
|
||||
//check if panel is collapsed to preserve collapse state
|
||||
if (preserveCollapseState)
|
||||
{
|
||||
$("#zgvpruefungen").find(".panel-collapse").each(
|
||||
@@ -715,10 +767,6 @@ var InfocenterDetails = {
|
||||
$("#"+i).addClass("in");
|
||||
}
|
||||
}
|
||||
|
||||
// variable callback executed after refresh
|
||||
if (callback)
|
||||
callback();
|
||||
}
|
||||
);
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user