mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 08:22:17 +00:00
Changed: Check if HAS INKLUDIERTE LEHRE now done by AJAX within js file
After moving javascript code from the view to an external js file, the usage of global variable has_inkludierteLehre was causing css issues. Now the check if lector has inkludierte lehre is an extra method in the controller which is called by AJAX in the tabulators render-callback function.
This commit is contained in:
@@ -23,7 +23,8 @@ class LehrauftragAkzeptieren extends Auth_Controller
|
||||
parent::__construct(
|
||||
array(
|
||||
'index' => 'lehre/lehrauftrag_akzeptieren:r',
|
||||
'acceptLehrauftrag' => 'lehre/lehrauftrag_akzeptieren:rw'
|
||||
'acceptLehrauftrag' => 'lehre/lehrauftrag_akzeptieren:rw',
|
||||
'checkInkludierteLehre' => 'lehre/lehrauftrag_akzeptieren:rw'
|
||||
)
|
||||
);
|
||||
|
||||
@@ -65,19 +66,6 @@ class LehrauftragAkzeptieren extends Auth_Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
/**
|
||||
* Check if lectors latest active Verwendung has inkludierte Lehre
|
||||
* - inkludierte_lehre is null: freelancer lector -> has NO inkludierte Lehre
|
||||
* - inkludierte_lehre -1: fix employed lector -> all inclusive Lehre
|
||||
* - inkludierte_lehre > 0: fix employed lector -> given value is inclusive Lehre
|
||||
*/
|
||||
$has_inkludierteLehre = false;
|
||||
$result = $this->BisverwendungModel->getLast($this->_uid);
|
||||
if (hasData($result))
|
||||
{
|
||||
$has_inkludierteLehre = (is_null($result->retval[0]->inkludierte_lehre)) ? false : true;
|
||||
}
|
||||
|
||||
// Set studiensemester selected for studiengang dropdown
|
||||
$studiensemester_kurzbz = $this->input->get('studiensemester'); // if provided by selected studiensemester
|
||||
if (is_null($studiensemester_kurzbz)) // else set next studiensemester as default value
|
||||
@@ -94,8 +82,7 @@ class LehrauftragAkzeptieren extends Auth_Controller
|
||||
}
|
||||
|
||||
$view_data = array(
|
||||
'studiensemester_selected' => $studiensemester_kurzbz,
|
||||
'has_inkludierteLehre' => $has_inkludierteLehre
|
||||
'studiensemester_selected' => $studiensemester_kurzbz
|
||||
);
|
||||
|
||||
$this->load->view('lehre/lehrauftrag/acceptLehrauftrag.php', $view_data);
|
||||
@@ -177,6 +164,26 @@ class LehrauftragAkzeptieren extends Auth_Controller
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if lectors latest active Verwendung has inkludierte Lehre
|
||||
* - inkludierte_lehre is null: freelancer lector -> has NO inkludierte Lehre
|
||||
* - inkludierte_lehre -1: fix employed lector -> all inclusive Lehre
|
||||
* - inkludierte_lehre > 0: fix employed lector -> given value is inclusive Lehre
|
||||
*/
|
||||
public function checkInkludierteLehre()
|
||||
{
|
||||
$result = $this->BisverwendungModel->getLast($this->_uid);
|
||||
|
||||
if (hasData($result))
|
||||
{
|
||||
$this->outputJsonSuccess(!is_null($result->retval[0]->inkludierte_lehre));
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->outputJsonError($result->retval);
|
||||
}
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------------------------------------------------
|
||||
// Private methods
|
||||
|
||||
@@ -1,11 +1,3 @@
|
||||
<script>
|
||||
// -----------------------------------------------------------------------------------------------------------------
|
||||
// Global vars to be known in public/js/lehre/lehrauftrag/acceptLehrauftrag.js
|
||||
// -----------------------------------------------------------------------------------------------------------------
|
||||
// Store boolean has_inkludierteLehre. If true, used to hide column Betrag.
|
||||
var has_inkludierteLehre = new Boolean(<?php echo $has_inkludierteLehre ?>).valueOf();
|
||||
</script>
|
||||
|
||||
<?php
|
||||
$this->load->view(
|
||||
'templates/FHC-Header',
|
||||
|
||||
@@ -4,16 +4,12 @@
|
||||
* Lehrauftraege annehmen - Tabulator: acceptLehrauftragData.php
|
||||
*/
|
||||
|
||||
|
||||
// -----------------------------------------------------------------------------------------------------------------
|
||||
// Global vars
|
||||
// -----------------------------------------------------------------------------------------------------------------
|
||||
|
||||
const COLOR_LIGHTGREY = "#f5f5f5";
|
||||
|
||||
// Store boolean has_inkludierteLehre. If true, used to hide column Betrag.
|
||||
// has_inkludierteLehre is defined in acceptLehrauftrag.php BEFORE loading this js-script (to pass php variable)
|
||||
|
||||
/**
|
||||
* PNG icons used in status- and filter buttons
|
||||
* Setting png icons is a workaround to use font-awsome 5.9.0 icons until system can be updated to newer font awsome version.
|
||||
@@ -237,11 +233,25 @@ function func_rowUpdated(row){
|
||||
// Hide betrag, if lector has inkludierte Lehre
|
||||
function func_renderComplete(table){
|
||||
|
||||
// If the lectors actual Verwendung has inkludierte Lehre, hide the column betrag
|
||||
if (has_inkludierteLehre)
|
||||
{
|
||||
table.hideColumn("betrag");
|
||||
}
|
||||
// Check if the lectors actual Verwendung has inkludierte Lehre
|
||||
FHC_AjaxClient.ajaxCallGet(
|
||||
FHC_JS_DATA_STORAGE_OBJECT.called_path + "/checkInkludierteLehre",
|
||||
null,
|
||||
{
|
||||
successCallback: function (data, textStatus, jqXHR)
|
||||
{
|
||||
// If lector has inkludierte Lehre, hide the column betrag
|
||||
if (data.retval)
|
||||
{
|
||||
table.hideColumn("betrag");
|
||||
}
|
||||
},
|
||||
errorCallback: function (jqXHR, textStatus, errorThrown)
|
||||
{
|
||||
FHC_DialogLib.alertError("Systemfehler<br>Bitte kontaktieren Sie Ihren Administrator.");
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
// Tabulator footer element
|
||||
|
||||
Reference in New Issue
Block a user