mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-21 22:19:27 +00:00
Prestudent Status kann ein Semester vorgerückt werden. Gleichzeitig wird der Eintrag Student-Lehrverband aktualisiert.
This commit is contained in:
@@ -797,6 +797,16 @@ if(!$error)
|
||||
if($rolle->delete_rolle($_POST['prestudent_id'],$_POST['status_kurzbz'],$_POST['studiensemester_kurzbz'], $_POST['ausbildungssemester']))
|
||||
{
|
||||
$return = true;
|
||||
if($return)
|
||||
{
|
||||
$student = new student();
|
||||
$temp_uid = $student->getUid($rolle->prestudent_id);
|
||||
if(!$student->delete_studentLehrverband($temp_uid, $_POST['studiengang_kz'], $rolle->studiensemester_kurzbz, $rolle->ausbildungssemester))
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = "Fehler beim Löschen der Lehrverbandszuordnung.";
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -955,6 +965,123 @@ if(!$error)
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='rolleVorruecken')
|
||||
{
|
||||
$errormsg='';
|
||||
//Prestudentrolle speichern
|
||||
if(!$error)
|
||||
{
|
||||
if(isset($_POST['prestudent_id']))
|
||||
{
|
||||
$rolle = new prestudent();
|
||||
if(!$rolle->load($_POST['prestudent_id']))
|
||||
{
|
||||
$error = true;
|
||||
$errormsg = 'Prestudent wurde nicht gefunden';
|
||||
}
|
||||
else
|
||||
{
|
||||
//Berechtigung pruefen
|
||||
if(!$rechte->isBerechtigt('assistenz',$rolle->studiengang_kz,'suid') &&
|
||||
!$rechte->isBerechtigt('admin',$rolle->studiengang_kz, 'suid'))
|
||||
{
|
||||
$error = true;
|
||||
$errormsg = 'Sie haben keine Schreibrechte fuer diesen Studiengang';
|
||||
}
|
||||
}
|
||||
|
||||
$rolle = new prestudent();
|
||||
$rolle->prestudent_id = $_POST['prestudent_id'];
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
$studiensem = new studiensemester();
|
||||
$stdsem = $studiensem->getNextFrom($_POST["studiensemester_kurzbz"]);
|
||||
// $stdsem = ($stdesm==false ? $_POST["studiensemester_kurzbz"]:$stdsem);
|
||||
$semester = $_POST["ausbildungssemester"];
|
||||
$semester++;
|
||||
if((!$rolle->load_rolle($_POST['prestudent_id'], $_POST['status_kurzbz'], $stdsem, $semester)))
|
||||
{
|
||||
$rolle->new = true;
|
||||
$rolle->insertamum = date('Y-m-d H:i:s');
|
||||
$rolle->insertvon = $user;
|
||||
$rolle->status_kurzbz = $_POST['status_kurzbz'];
|
||||
$rolle->bestaetigtam = date('Y-m-d');
|
||||
$rolle->bestaetigtvon = $user;
|
||||
|
||||
if($_POST['status_kurzbz']=='Student')
|
||||
{
|
||||
//Die Rolle Student darf nur eingefuegt werden, wenn schon eine Studentenrolle vorhanden ist
|
||||
$qry = "SELECT count(*) as anzahl FROM public.tbl_student WHERE prestudent_id='".addslashes($_POST['prestudent_id'])."'";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if($row->anzahl==0)
|
||||
{
|
||||
$error = true;
|
||||
$errormsg = 'Ein Studentenstatus kann hier nur hinzugefuegt werden wenn die Person bereits Student ist. Um einen Bewerber zum Studenten zu machen waehlen Sie bitte unter "Status aendern" den Punkt "Student".';
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Rolle existiert bereits
|
||||
$error = true;
|
||||
$errormsg = "Rolle existiert bereits.";
|
||||
$return = false;
|
||||
}
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
$rolle->ausbildungssemester = $semester;
|
||||
$rolle->studiensemester_kurzbz = $stdsem;
|
||||
$rolle->datum = date("Y-m-d");
|
||||
$rolle->orgform_kurzbz = $_POST['orgform_kurzbz'];
|
||||
$rolle->studienplan_id = $_POST['studienplan_id'];
|
||||
|
||||
if($rolle->save_rolle())
|
||||
{
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = $rolle->errormsg;
|
||||
}
|
||||
}
|
||||
$student = new student();
|
||||
$temp_uid = $student->getUid($rolle->prestudent_id);
|
||||
if(!$student->studentlehrverband_exists($temp_uid, $stdsem))
|
||||
{
|
||||
$lehrverband = new lehrverband();
|
||||
$student->load_studentlehrverband($temp_uid, $_POST["studiensemester_kurzbz"]);
|
||||
|
||||
if(!$lehrverband->exists($student->studiengang_kz, $student->semester, $student->verband, $student->gruppe))
|
||||
{
|
||||
$lehrverband->studiengang_kz = $student->studiengang_kz;
|
||||
$lehrverband->semester = $student->semester;
|
||||
$lehrverband->verband = $student->verband;
|
||||
$lehrverband->gruppe = $student->gruppe;
|
||||
$lehrverband->save(true);
|
||||
}
|
||||
|
||||
$student->studiensemester_kurzbz = $stdsem;
|
||||
$student->semester = $semester;
|
||||
$student->save_studentlehrverband(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Prestudent_id muss angegeben werden';
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='BewerberZuStudent')
|
||||
{
|
||||
// macht aus einem Bewerber einen Studenten
|
||||
|
||||
@@ -252,6 +252,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<menuitem label="Status bestaetigen" oncommand="StudentPrestudentRolleBestaetigen();" id="student-prestudent-rolle-tree-popup-approve" hidden="false"/>
|
||||
<menuitem label="Neuen Status hinzufuegen" oncommand="StudentRolleAdd();" id="student-prestudent-rolle-tree-popup-add" hidden="false"/>
|
||||
<menuitem label="Entfernen" oncommand="StudentPrestudentRolleDelete();" id="student-prestudent-rolle-tree-popup-delete" hidden="false"/>
|
||||
<menuitem label="Status vorrücken" oncommand="StudentPrestudentRolleVorruecken();" id="student-prestudent-rolle-tree-popup-move_forward" hidden="false"/>
|
||||
</menupopup>
|
||||
</popupset>
|
||||
<vbox hidden="true">
|
||||
|
||||
@@ -4539,3 +4539,60 @@ function StudentReihungstestDropDownSelect()
|
||||
if(document.getElementById('student-prestudent-textbox-anmeldungreihungstest').value=='')
|
||||
StudentAnmeldungreihungstestHeute();
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Funktion um Status vorzurücken
|
||||
// ****
|
||||
function StudentPrestudentRolleVorruecken()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-prestudent-tree-rolle');
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//markierte Rolle holen
|
||||
var status_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-status_kurzbz', tree.currentIndex);
|
||||
var studiensemester_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', tree.currentIndex);
|
||||
var prestudent_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-prestudent_id', tree.currentIndex);
|
||||
var ausbildungssemester = getTreeCellText(tree, 'student-prestudent-tree-rolle-ausbildungssemester', tree.currentIndex);
|
||||
var orgform_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-orgform_kurzbz', tree.currentIndex);
|
||||
var studienplan_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-studienplan_id', tree.currentIndex);
|
||||
|
||||
studiengang_kz = document.getElementById('student-prestudent-menulist-studiengang_kz').value;
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'rolleVorruecken');
|
||||
|
||||
req.add('status_kurzbz', status_kurzbz);
|
||||
req.add('prestudent_id', prestudent_id);
|
||||
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
|
||||
req.add('ausbildungssemester', ausbildungssemester);
|
||||
req.add('orgform_kurzbz', orgform_kurzbz);
|
||||
req.add('studienplan_id', studienplan_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response);
|
||||
debug("Return: "+val.dbdml_return);
|
||||
debug("Msg: "+val.dbdml_errormsg);
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
StudentDetailRolleTreeDatasource.Refresh(false);
|
||||
SetStatusBarText('Daten wurden gespeichert');
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
|
||||
@@ -769,5 +769,33 @@ class student extends benutzer
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Löscht die Zuordnung eines Studenten zu einer Lehrverbandsgruppe
|
||||
* @param type $uid
|
||||
* @param type $studiengang_kz
|
||||
* @param type $studiensemester
|
||||
* @param type $semester
|
||||
* @param type $verband
|
||||
* @param type $gruppe
|
||||
*/
|
||||
public function delete_studentLehrverband($uid, $studiengang_kz, $studiensemester, $semester)
|
||||
{
|
||||
$qry = 'DELETE FROM public.tbl_studentlehrverband '
|
||||
. 'WHERE student_uid='.$this->db_add_param($uid)
|
||||
. ' AND studiensemester_kurzbz='.$this->db_add_param($studiensemester)
|
||||
. ' AND studiengang_kz='.$this->db_add_param($studiengang_kz)
|
||||
. ' AND semester='.$this->db_add_param($semester).';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'StudentLehrverband konnte nicht gelöscht werden.';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user