Merge branch 'master' into udf

This commit is contained in:
Paolo
2017-08-03 15:37:37 +02:00
73 changed files with 1094 additions and 12777 deletions
@@ -1,5 +1,5 @@
<?php
$this->load->view('templates/header', array('title' => 'StudienjahrList', 'tablesort' => true, 'tableid' => 't1', 'headers' => '2:{sorter:false}, 3:{sorter:false}', 'sortList' =>'0,1'));
$this->load->view('templates/header', array('title' => 'StudienjahrList', 'tablesort' => true, 'tableid' => 't1', 'headers' => '2:{sorter:false}, 3:{sorter:false}', 'sortList' => '0,1'));
?>
<body>
<div class="row">
@@ -20,7 +20,7 @@ $this->load->view('templates/header', array('title' => 'StudienjahrList', 'table
<tbody>
<?php foreach ($studienjahr as $jahr):
$escapedstudienjahrkurzbz = str_replace("/", "_", $jahr->studienjahr_kurzbz);
?>
?>
<tr>
<td><?php echo $jahr->studienjahr_kurzbz; ?></td>
<td><?php echo $jahr->bezeichnung; ?></td>
@@ -6,7 +6,7 @@ $this->load->view('templates/header', array('title' => 'StudienjahrEdit', 'jquer
<div class="row">
<div class="row">
<div class="span4">
<h2>Studienjahr bearbeiten: <?php echo $jahr->bezeichnung; ?></h2>
<h2>Studienjahr bearbeiten: <?php echo $jahr->studienjahr_kurzbz; ?></h2>
<form method="post" action="<?php echo APP_ROOT."index.ci.php/organisation/studienjahr/saveStudienjahr" ?>">
<table>
@@ -1,5 +1,5 @@
<?php
$bezeichnung = (isset($jahr->bezeichnung))?$jahr->bezeichnung:(isset($studienjahrkurzbz)?"Studienjahr ".$studienjahrkurzbz:"");
$bezeichnung = (isset($jahr->bezeichnung)) ? $jahr->bezeichnung : (isset($studienjahrkurzbz) ? "Studienjahr ".$studienjahrkurzbz : "");
?>
<tr>
@@ -44,6 +44,6 @@ $bezeichnung = (isset($jahr->bezeichnung))?$jahr->bezeichnung:(isset($studienjah
</table>
<br />
<br/>
<div class="input_ok"><?php if (isset($_GET['saved']) && $_GET['saved']) echo 'Studienjahr wurde gespeichert.'; ?></div>
<div class="input_error" id="errormessage"></div>
@@ -8,7 +8,8 @@ $this->load->view('templates/header', array('title' => 'StudienjahrNew', 'jquery
<div class="span4">
<h2>Neues Studienjahr anlegen</h2>
<form method="post"
action="<?php echo APP_ROOT."index.ci.php/organisation/studienjahr/insStudienjahr"; ?>" id="newStudienjahrForm">
action="<?php echo APP_ROOT."index.ci.php/organisation/studienjahr/insStudienjahr"; ?>"
id="newStudienjahrForm">
<table>
<tr>
<td colspan="2">
@@ -22,6 +23,11 @@ $this->load->view('templates/header', array('title' => 'StudienjahrNew', 'jquery
</div>
</div>
<script>
/**
* prevents submitting the form data if data entered incorrectly
* additional check before php check for user-friendliness (no php die)
* outputs errormessages in case of wrong inputs
*/
$('#newStudienjahrForm').submit(function (event) {
var studienjahrkurzbez = $('input[name=studienjahrkurzbz]').val();
if (checkStudienjahrkurzbez(studienjahrkurzbez))return;
@@ -29,11 +35,18 @@ $this->load->view('templates/header', array('title' => 'StudienjahrNew', 'jquery
event.preventDefault();
});
function checkStudienjahrkurzbez(semesterkurzbez) {
var firstyear = parseInt(semesterkurzbez.substr(2,2));
var secondyear = parseInt(semesterkurzbez.substr(5,2));
/**
* checks correct Studienjahrkurzbezeichnung format with regex
* first check is whether the form ist right: e.g. 2017/18
* second check is whether first year is second year - 1
* @param studienjahrkurzbez
* @returns {boolean} whether the Studienjahrkurzbezeichnung has correct format
*/
function checkStudienjahrkurzbez(studienjahrkurzbez) {
var firstyear = parseInt(studienjahrkurzbez.substr(2, 2));
var secondyear = parseInt(studienjahrkurzbez.substr(5, 2));
var pattern = /^\d{4}\/\d{2}$/;
return pattern.test(semesterkurzbez) && secondyear - firstyear === 1;
return pattern.test(studienjahrkurzbez) && secondyear - firstyear === 1;
}
</script>
</body>
@@ -1,5 +1,5 @@
<?php
$this->load->view('templates/header', array('title' => 'StudiensemesterList', 'tablesort' => true, 'tableid' => 't1', 'headers' => '7:{sorter:false}, 8:{sorter:false}', 'sortList' =>'4,1'));
$this->load->view('templates/header', array('title' => 'StudiensemesterList', 'tablesort' => true, 'tableid' => 't1', 'headers' => '7:{sorter:false}, 8:{sorter:false}', 'sortList' => '4,1],[0,0'));
?>
<body>
<div class="row">
@@ -7,10 +7,11 @@ $this->load->view('templates/header', array('title' => 'StudiensemesterEdit', 'd
<div class="row">
<div class="span4">
<h2>Studiensemester bearbeiten: <?php echo $sem->studiensemester_kurzbz; ?></h2>
<form method="post" action="<?php echo APP_ROOT."index.ci.php/organisation/studiensemester/saveStudiensemester" ?>">
<form method="post"
action="<?php echo APP_ROOT."index.ci.php/organisation/studiensemester/saveStudiensemester" ?>">
<table>
<?php include('studiensemesterForm.php'); ?>
<input type="hidden" name="semkurzbz" value="<?php echo $sem->studiensemester_kurzbz; ?>"/>
<input type="hidden" name="semkurzbz" value="<?php echo $sem->studiensemester_kurzbz; ?>"/>
</form>
</div>
</div>
@@ -38,6 +38,11 @@ $this->load->view('templates/header', array('title' => 'StudiensemesterNew', 'jq
);
});
/**
* prefills all date-associated input fields depending on given Semesterkurzbezeichnung
* fires when value in input field Semesterkurzbezeichnung is changed
* @param semesterkurzbez
*/
function prefillYearFields(semesterkurzbez) {
if (!checkSemesterkurzbez(semesterkurzbez))return;
var semester = semesterkurzbez.substr(0, 2);
@@ -52,7 +57,7 @@ $this->load->view('templates/header', array('title' => 'StudiensemesterNew', 'jq
} else {
wsssbezeichnung = "Sommersemester";
jahrbez = jahr;
studienjahr = jahr + "/" + (parseInt(jahr.substr(2, 4)) - 1);
studienjahr = (parseInt(jahr) - 1) + "/" + (parseInt(jahr.substr(2, 4)));
start = "01.02." + jahr;
ende = "01.08." + jahr;
}
@@ -60,20 +65,55 @@ $this->load->view('templates/header', array('title' => 'StudiensemesterNew', 'jq
$('input[name=sembz]').val(bezeichnung);
$('input[name=semstart]').val(start);
$('input[name=semende]').val(ende);
$('input[name=studienjahrkurzbz]').val(studienjahr);
$('select[name=studienjahrkurzbz]').val(studienjahr);
}
/**
* prevents submitting the form data if data entered incorrectly
* additional check before php check for user-friendliness (no php die)
* outputs errormessages in case of wrong inputs
*/
$('#newSemesterForm').submit(function (event) {
var semesterkurzbez = $('input[name=semkurzbz]').val();
if (checkSemesterkurzbez(semesterkurzbez))return;
$('#errormessage').text("Semesterkurzbezeichnung muss mit WS oder SS beginnen und mit einer Jahreszahl enden, z.B. SS2017");
event.preventDefault();
var startdatum = $('input[name=semstart]').val();
var enddatum = $('input[name=semende]').val();
var errormessage = "";
var error = false;
if (!checkSemesterkurzbez(semesterkurzbez)) {
errormessage = "Semesterkurzbezeichnung muss mit WS oder SS beginnen und mit einer Jahreszahl enden, z.B. SS2017";
error = true;
} else if (!checkDate(startdatum)) {
errormessage = "Startdatum falsch eingegeben. Richtiges Format: dd.mm.yyyy, z.B. 01.01.2017";
error = true;
} else if (!checkDate(enddatum)) {
errormessage = "Enddatum falsch eingegeben. Richtiges Format: dd.mm.yyyy, z.B. 01.01.2017";
error = true;
}
if (error) {
event.preventDefault();
$('#errormessage').text(errormessage);
}
});
/**
* checks correct Semesterkurzbezeichnung format with regex
* @param semesterkurzbez
* @returns {boolean} whether the Semesterkurzbezeichnung has correct format
*/
function checkSemesterkurzbez(semesterkurzbez) {
var pattern = /^(WS|SS)\d{4}$/;
return pattern.test(semesterkurzbez);
}
/**
* checks date for right (german) format
* @param date
* @returns {boolean} whether the Semesterkurzbezeichnung has correct format
*/
function checkDate(date) {
var pattern = /^\d{2}.\d{2}.\d{4}$/;
return pattern.test(date);
}
</script>
</body>
</html>