mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Preparation for change in Pruefungsanmeldung
This commit is contained in:
@@ -425,6 +425,27 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
|
||||
$("#terminHidden").val(termin_id);
|
||||
$("#lehrveranstaltung").html(lvBezeichnung);
|
||||
|
||||
$.ajax({
|
||||
dataType: 'json',
|
||||
url: "./pruefungsanmeldung.json.php",
|
||||
type: "POST",
|
||||
data: {
|
||||
method: "getLvKompatibel",
|
||||
lehrveranstaltung_id: lehrveranstaltung_id
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
var html = "";
|
||||
data.result.forEach(function(v, i){
|
||||
console.log(i);
|
||||
console.log(v);
|
||||
html += '<option id="'+v.lehrveranstaltung_id+'" value="'+v.lehrveranstaltung_id+'">';
|
||||
html += v.bezeichnung;
|
||||
html += "</option>";
|
||||
});
|
||||
$("#studienverpflichtung").html(html);
|
||||
});
|
||||
|
||||
var start = terminVon;
|
||||
var ende = terminBis;
|
||||
start = start.split(' ');
|
||||
@@ -462,6 +483,9 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
if(bemerkungen === undefined)
|
||||
bemerkungen = "von Lektor hinzugefügt";
|
||||
|
||||
var studienverpflichtung_id = $("#studienverpflichtung option:selected").val();
|
||||
console.log(studienverpflichtung_id);
|
||||
|
||||
$.ajax({
|
||||
dataType: 'json',
|
||||
url: "./pruefungsanmeldung.json.php",
|
||||
@@ -471,7 +495,8 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
termin_id: termin_id,
|
||||
lehrveranstaltung_id: lehrveranstaltung_id,
|
||||
bemerkung: bemerkungen,
|
||||
uid: uid
|
||||
uid: uid,
|
||||
studienverpflichtung_id: studienverpflichtung_id
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
@@ -894,7 +919,6 @@ function loadPruefungStudiengang(studiengang_kz, studiensemester)
|
||||
{
|
||||
var liste = "";
|
||||
data.result.forEach(function(e){
|
||||
console.log(e);
|
||||
liste += "<ul><li>"+e.bezeichnung+"<ul>";
|
||||
e.pruefung[0].termine.forEach(function(d){
|
||||
liste += "<li> <a onclick='showAnmeldungen(\""+d.pruefungstermin_id+"\", \""+e.lehrveranstaltung_id+"\");'>"+convertDateTime(d.von)+" "+convertDateTime(d.von, "time")+" - "+convertDateTime(d.bis, "time")+"</a></li>";
|
||||
|
||||
@@ -28,8 +28,13 @@ require_once('../../../../include/pruefungsfenster.class.php');
|
||||
require_once('../../../../include/note.class.php');
|
||||
require_once('../../../../include/addon.class.php');
|
||||
require_once('../../../../include/mail.class.php');
|
||||
require_once('../../../../include/anrechnung.class.php');
|
||||
require_once('../../../../include/prestudent.class.php');
|
||||
require_once('../../../../include/person.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
//TODO
|
||||
$uid = "p20132443";
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
@@ -106,6 +111,10 @@ switch($method)
|
||||
$ort_kurzbz = $_REQUEST["ort_kurzbz"];
|
||||
$data = saveRaum($terminId, $ort_kurzbz, $uid);
|
||||
break;
|
||||
case 'getLvKompatibel':
|
||||
$lvid = filter_input(INPUT_POST, "lehrveranstaltung_id");
|
||||
$data = getLvKompatibel($lvid);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -360,6 +369,7 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
$studiensemester = new studiensemester();
|
||||
$stdsem = $studiensemester->getLastOrAktSemester(0);
|
||||
$lv_besucht = false;
|
||||
$studienverpflichtung_id = filter_input(INPUT_POST, "studienverpflichtung_id");
|
||||
|
||||
//Defaulteinstellung für Anzahlprüfungsversuche (wird durch Addon "ktu" überschrieben)
|
||||
$maxAnzahlVersuche = 0;
|
||||
@@ -506,34 +516,85 @@ function saveAnmeldung($aktStudiensemester = null, $uid = null)
|
||||
$data['errormsg']='Anmeldung auf Grund von Sperre nicht möglich.';
|
||||
return $data;
|
||||
}
|
||||
if($anmeldung->save(true))
|
||||
|
||||
$anrechnung = new anrechnung();
|
||||
$lv_komp = new lehrveranstaltung($studienverpflichtung_id);
|
||||
$person = new person();
|
||||
$person->getPersonFromBenutzer($uid);
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->getPrestudenten($person->person_id);
|
||||
|
||||
if(count($prestudent->result) > 0)
|
||||
{
|
||||
$pruefung = new pruefungCis($termin->pruefung_id);
|
||||
if(defined('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG') && (CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG !== ""))
|
||||
$to = CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG."@".DOMAIN;
|
||||
$prestudent_id = "";
|
||||
foreach($prestudent->result as $ps)
|
||||
{
|
||||
if($ps->getLaststatus($ps->prestudent_id, $stdsem))
|
||||
{
|
||||
if(($ps->status_kurzbz == "Student"))
|
||||
{
|
||||
$prestudent_id = $ps->prestudent_id;
|
||||
}
|
||||
}
|
||||
}
|
||||
if($prestudent_id != "")
|
||||
{
|
||||
|
||||
$anrechnung->lehrveranstaltung_id = $lehrveranstaltung->lehrveranstaltung_id;
|
||||
$anrechnung->lehrveranstaltung_id_kompatibel = $lv_komp->lehrveranstaltung_id;
|
||||
$anrechnung->prestudent_id = $prestudent_id;
|
||||
$anrechnung->begruendung_id = "2";
|
||||
//TODO welche uid übergeben?
|
||||
$anrechnung->genehmigt_von = "p.vondrak";
|
||||
$anrechnung->new = true;
|
||||
if($anrechnung->save())
|
||||
{
|
||||
if($anmeldung->save(true))
|
||||
{
|
||||
$pruefung = new pruefungCis($termin->pruefung_id);
|
||||
if(defined('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG') && (CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG !== ""))
|
||||
$to = CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG."@".DOMAIN;
|
||||
else
|
||||
$to = $pruefung->mitarbeiter_uid."@".DOMAIN;
|
||||
$from = "noreply@".DOMAIN;
|
||||
$subject = "Anmeldung zur Prüfung";
|
||||
$mail = new mail($to, $from, $subject, "Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.");
|
||||
|
||||
$student = new student($uid);
|
||||
$datum = new datum();
|
||||
|
||||
$lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id);
|
||||
|
||||
$html = "StudentIn ".$student->vorname." ".$student->nachname." hat sich zur Prüfung ".$lv->bezeichnung." am ".$datum->formatDatum($termin->von, "m.d.Y")." von ".$datum->formatDatum($termin->von,"h:i")." Uhr bis ".$datum->formatDatum($termin->bis,"h:i")." Uhr angemeldet.";
|
||||
$mail->setHTMLContent($html);
|
||||
$mail->send();
|
||||
|
||||
$data['result'] = "Anmeldung erfolgreich!";
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$anmeldung->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$anrechnung->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
$to = $pruefung->mitarbeiter_uid."@".DOMAIN;
|
||||
$from = "noreply@".DOMAIN;
|
||||
$subject = "Anmeldung zur Prüfung";
|
||||
$mail = new mail($to, $from, $subject, "Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.");
|
||||
|
||||
$student = new student($uid);
|
||||
$datum = new datum();
|
||||
|
||||
$lv = new lehrveranstaltung($anmeldung->lehrveranstaltung_id);
|
||||
|
||||
$html = "StudentIn ".$student->vorname." ".$student->nachname." hat sich zur Prüfung ".$lv->bezeichnung." am ".$datum->formatDatum($termin->von, "m.d.Y")." von ".$datum->formatDatum($termin->von,"h:i")." Uhr bis ".$datum->formatDatum($termin->bis,"h:i")." Uhr angemeldet.";
|
||||
$mail->setHTMLContent($html);
|
||||
$mail->send();
|
||||
|
||||
$data['result'] = "Anmeldung erfolgreich!";
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']="Prestudent nicht gefunden.";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$anmeldung->errormsg;
|
||||
$data['errormsg']="Prestudent nicht gefunden.";
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
@@ -980,4 +1041,22 @@ function saveRaum($terminId, $ort_kurzbz, $uid)
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
function getLvKompatibel($lvid)
|
||||
{
|
||||
$lv = new lehrveranstaltung();
|
||||
if($lv->getLVkompatibel($lvid))
|
||||
{
|
||||
$data['result']=$lv->lehrveranstaltungen;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['result']="";
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$lv->errormsg;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
?>
|
||||
@@ -32,6 +32,9 @@ require_once('../../../../include/student.class.php');
|
||||
|
||||
|
||||
$uid = get_uid();
|
||||
//TODO
|
||||
$uid = "p20132443";
|
||||
|
||||
$db = new basis_db();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
@@ -142,7 +145,7 @@ $studiensemester->getAll();
|
||||
$("#saveDialog").dialog({
|
||||
modal: true,
|
||||
autoOpen: false,
|
||||
width: "400px"
|
||||
width: "auto"
|
||||
});
|
||||
$("#dialog").dialog({ autoOpen: false });
|
||||
|
||||
@@ -284,6 +287,12 @@ $studiensemester->getAll();
|
||||
<span type="text" id="terminBis" disabled="true"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="vertical-align: top; font-weight: bold;">Studienverpflichtung:* </td>
|
||||
<td>
|
||||
<select id="studienverpflichtung"></select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="vertical-align: top; font-weight: bold;">Bemerkung: </td>
|
||||
<td>
|
||||
|
||||
@@ -39,6 +39,8 @@ class anrechnung extends basis_db
|
||||
public $updateamum; // timestamp
|
||||
public $updatevon; // varchar(32)
|
||||
|
||||
public $begruendungen = array();
|
||||
|
||||
public function validate()
|
||||
{
|
||||
if(!is_numeric($this->prestudent_id))
|
||||
@@ -124,45 +126,46 @@ class anrechnung extends basis_db
|
||||
*/
|
||||
public function save()
|
||||
{
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($this->new == "1")
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($this->new == "1")
|
||||
{
|
||||
// Neuen Datensatz anlegen
|
||||
$qry = 'INSERT INTO lehre.tbl_anrechnung (prestudent_id, lehrveranstaltung_id, begruendung_id, lehrveranstaltung_id_kompatibel, genehmigt_von, insertamum, insertvon, updateamum, updatevon) VALUES ('.
|
||||
$this->db_add_param($this->prestudent_id).', '.
|
||||
$this->db_add_param($this->lehrveranstaltung_id).', '.
|
||||
$this->db_add_param($this->begruendung_id).', '.
|
||||
$this->db_add_param($this->lehrveranstaltung_id_kompatibel).', '.
|
||||
$this->db_add_param($this->genehmigt_von).', '.
|
||||
'NOW(),'.
|
||||
$this->db_add_param($this->insertvon).', '.
|
||||
// Neuen Datensatz anlegen
|
||||
$qry = 'INSERT INTO lehre.tbl_anrechnung (prestudent_id, lehrveranstaltung_id, begruendung_id, lehrveranstaltung_id_kompatibel, genehmigt_von, insertamum, insertvon, updateamum, updatevon) VALUES ('.
|
||||
$this->db_add_param($this->prestudent_id).', '.
|
||||
$this->db_add_param($this->lehrveranstaltung_id).', '.
|
||||
$this->db_add_param($this->begruendung_id).', '.
|
||||
$this->db_add_param($this->lehrveranstaltung_id_kompatibel).', '.
|
||||
$this->db_add_param($this->genehmigt_von).', '.
|
||||
'NOW(),'.
|
||||
$this->db_add_param($this->updatevon).');';
|
||||
$this->db_add_param($this->insertvon).', '.
|
||||
'NOW(),'.
|
||||
$this->db_add_param($this->updatevon).') RETURNING anrechnung_id;';
|
||||
}
|
||||
else
|
||||
{
|
||||
// Datensatz aktualisieren
|
||||
$qry = 'UPDATE lehre.tbl_anrechnung SET '
|
||||
. 'lehrveranstaltung_id = ' . $this->db_add_param($this->lehrveranstaltung_id) . ', '
|
||||
. 'begruendung_id = ' . $this->db_add_param($this->begruendung_id) . ', '
|
||||
. 'lehrveranstaltung_id_kompatibel = ' . $this->db_add_param($this->lehrveranstaltung_id_kompatibel) . ', '
|
||||
. 'genehmigt_von = ' . $this->db_add_param($this->genehmigt_von) . ', '
|
||||
. 'updateamum = NOW(), '
|
||||
. 'updatevon = ' . $this->db_add_param($this->updatevon) . ' '
|
||||
. 'WHERE anrechnung_id = ' . $this->db_add_param($this->anrechnung_id);
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
else
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der Anrechnung: '.$this->db_last_error();
|
||||
return false;
|
||||
}
|
||||
// Datensatz aktualisieren
|
||||
$qry = 'UPDATE lehre.tbl_anrechnung SET '
|
||||
. 'lehrveranstaltung_id = ' . $this->db_add_param($this->lehrveranstaltung_id) . ', '
|
||||
. 'begruendung_id = ' . $this->db_add_param($this->begruendung_id) . ', '
|
||||
. 'lehrveranstaltung_id_kompatibel = ' . $this->db_add_param($this->lehrveranstaltung_id_kompatibel) . ', '
|
||||
. 'genehmigt_von = ' . $this->db_add_param($this->genehmigt_von) . ', '
|
||||
. 'updateamum = NOW(), '
|
||||
. 'updatevon = ' . $this->db_add_param($this->updatevon) . ' '
|
||||
. 'WHERE anrechnung_id = ' . $this->db_add_param($this->anrechnung_id);
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
$this->anrechnung_id = $this->db_fetch_object()->anrechnung_id;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der Anrechnung: '.$this->db_last_error();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -252,8 +255,34 @@ class anrechnung extends basis_db
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Daten konnten nicht geladen werden';
|
||||
$this->errormsg = 'Daten konnten nicht geladen werden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gibt alle möglichen Begründungen zurück
|
||||
* @return array Array der Begründungen
|
||||
*/
|
||||
public function getAllBegruendung()
|
||||
{
|
||||
$qry = 'SELECT * FROM lehre.tbl_anrechnung_begruendung';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while ($row = $this->db_fetch_object())
|
||||
{
|
||||
$stdobj = new stdClass();
|
||||
$stdobj->begruendung_id = $row->begruendung_id;
|
||||
$stdobj->bezeichnung = $row->bezeichnung;
|
||||
array_push($this->begruendungen, $stdobj);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Daten konnten nicht geladen werden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user