Merge branch 'master' into feature-3716/Messaging_inbox_outbox_user

This commit is contained in:
Paolo
2020-02-20 16:41:42 +01:00
39 changed files with 7438 additions and 6771 deletions
@@ -26,7 +26,7 @@ class Lehrauftrag extends Auth_Controller
array(
'index' => 'lehre/lehrauftrag_bestellen:r',
'orderLehrauftrag' => 'lehre/lehrauftrag_bestellen:rw',
'Dashboard' => array('lehre/lehrauftrag_bestellen:r', 'lehre/lehrauftrag_erteilen:rw'),
'Dashboard' => array('lehre/lehrauftrag_bestellen:r', 'lehre/lehrauftrag_erteilen:r'),
'LehrendeUebersicht' => array('lehre/lehrauftrag_erteilen:r')
)
);
@@ -107,7 +107,7 @@ class Lehrauftrag extends Auth_Controller
$studiensemester_kurzbz = $this->input->get('studiensemester'); // if provided by selected studiensemester
if (is_null($studiensemester_kurzbz)) // else set next studiensemester as default value
{
$studiensemester = $this->StudiensemesterModel->getNext();
$studiensemester = $this->StudiensemesterModel->getAktOrNextSemester();
if (hasData($studiensemester))
{
$studiensemester_kurzbz = $studiensemester->retval[0]->studiensemester_kurzbz;
@@ -71,7 +71,7 @@ class LehrauftragAkzeptieren extends Auth_Controller
$studiensemester_kurzbz = $this->input->get('studiensemester'); // if provided by selected studiensemester
if (is_null($studiensemester_kurzbz)) // else set next studiensemester as default value
{
$studiensemester = $this->StudiensemesterModel->getNext();
$studiensemester = $this->StudiensemesterModel->getAktOrNextSemester();
if (hasData($studiensemester))
{
$studiensemester_kurzbz = $studiensemester->retval[0]->studiensemester_kurzbz;
@@ -90,7 +90,7 @@ class LehrauftragErteilen extends Auth_Controller
$studiensemester_kurzbz = $this->input->get('studiensemester'); // if provided by selected studiensemester
if (is_null($studiensemester_kurzbz)) // else set next studiensemester as default value
{
$studiensemester = $this->StudiensemesterModel->getNext();
$studiensemester = $this->StudiensemesterModel->getAktOrNextSemester();
if (hasData($studiensemester))
{
$studiensemester_kurzbz = $studiensemester->retval[0]->studiensemester_kurzbz;
+1 -1
View File
@@ -101,7 +101,7 @@ class FilterWidgetLib
const FILTER_UNIQUE_ID = 'filterUniqueId'; // Filter page parameter name
const PERMISSION_FILTER_METHOD = 'FilterWidget'; // Name for fake method to be checked by the PermissionLib
const PERMISSION_TYPE = 'rw';
const PERMISSION_TYPE = 'r';
// Name and array keys of the filters menu array
const NAV_MENU_FILTER_KEY = 'filters';
+1 -1
View File
@@ -66,7 +66,7 @@ class TableWidgetLib
const DATASET_REP_TABULATOR = 'tabulator';
const PERMISSION_TABLE_METHOD = 'TableWidget'; // Name for fake method to be checked by the PermissionLib
const PERMISSION_TYPE = 'rw';
const PERMISSION_TYPE = 'r';
private $_ci; // Code igniter instance
private $_tableUniqueId; // unique id for this table widget
+1 -1
View File
@@ -57,7 +57,7 @@ class VariableLib
if (!isEmptyString($uid) && !isEmptyString($name) && is_numeric($change))
{
$change = (int) $change;
$change = (int)$change;
$varres = $this->_ci->VariableModel->getVariables($uid, array($name));
if (isSuccess($varres))
+2 -2
View File
@@ -271,9 +271,9 @@ class Messages_model extends CI_Model
if (isError($isEmployeeResult)) show_error(getError($isEmployeeResult));
if (hasData($isEmployeeResult)) $isEmployee = true;
// If the sender is an employee and are present configurations to reply
// If the sender is not an employee and are present configurations to reply
$hrefReply = '';
if ($isEmployee && !isEmptyString($this->config->item(MessageLib::CFG_REDIRECT_VIEW_MESSAGE_URL)))
if (!$isEmployee && !isEmptyString($this->config->item(MessageLib::CFG_REDIRECT_VIEW_MESSAGE_URL)))
{
$hrefReply = $this->config->item(MessageLib::CFG_MESSAGE_SERVER).
$this->config->item(MessageLib::CFG_REDIRECT_VIEW_MESSAGE_URL).
+11 -10
View File
@@ -24,30 +24,32 @@ class Variable_model extends DB_Model
*/
public function getVariables($uid, $names = null)
{
if (isEmptyString($uid) || (isset($names) && !is_array($names)))
if (isEmptyString($uid))
$result = error('wrong parameters passed');
else
{
$vardata = array();
$parametersArray = array($uid);
$qry = "SELECT name, wert FROM public.tbl_variable WHERE uid = ?";
if (isset($names))
if (!isEmptyArray($names))
{
$qry .= " AND name IN ('".implode(',', $names)."')";
$qry .= " AND name IN ?";
$parametersArray[] = $names;
}
$qry .= ";";
$varresults = $this->execQuery($qry, array($uid));
$varresults = $this->execQuery($qry, $parametersArray);
if (hasData($varresults))
{
$varresults = getData($varresults);
foreach ($varresults as $varresult)
{
if (isset($varresult->wert))
$vardata[$varresult->name] = $varresult->wert;
}
foreach ($varresults as $varresult)
{
if (isset($varresult->wert))
$vardata[$varresult->name] = $varresult->wert;
}
}
$vardefaults = $this->VariablennameModel->getDefaults($names);
@@ -56,7 +58,6 @@ class Variable_model extends DB_Model
{
$vardefaults = getData($vardefaults);
foreach ($vardefaults as $vardefault)
{
if (!isset($vardata[$vardefault->name]) && isset($vardefault->defaultwert))
+5 -1
View File
@@ -182,7 +182,11 @@
}
// Tabulator JS
if ($tabulator === true) generateJSsInclude('vendor/olifolkerd/tabulator/dist/js/tabulator.min.js');
if ($tabulator === true)
{
generateJSsInclude('vendor/olifolkerd/tabulator/dist/js/tabulator.min.js');
generateJSsInclude('vendor/olifolkerd/tabulator/dist/js/jquery_wrapper.min.js');
}
// Tinymce JS
if ($tinymce === true) generateJSsInclude('vendor/tinymce/tinymce/tinymce.min.js');
+2 -2
View File
@@ -337,10 +337,10 @@ function writePruefungsTable(e, data, anmeldung)
{
var row = "";
var teilnehmer = "";
var button = "";
row += "<tr><td>"+e.organisationseinheit+"</td><td style='cursor: pointer; text-decoration: underline;' onclick='showPruefungsDetails(\""+e.pruefung.pruefung_id+"\",\""+e.lehrveranstaltung[0].lehrveranstaltung_id+"\");'>"+e.lehrveranstaltung[0].bezeichnung+" <br>("+e.lehrveranstaltung[0].lehrform_kurzbz+", "+e.lehrveranstaltung[0].ects+" ECTS, "+e.pruefung.mitarbeiter_uid+")</td><td>";
e.pruefung.termine.forEach(function(d){
var storno = false;
var button = "";
var storno = false;
var anmeldung_id = null;
data.result.anmeldungen.forEach(function(anmeldung){
if((anmeldung.pruefungstermin_id === d.pruefungstermin_id) && (anmeldung.lehrveranstaltung_id === e.lehrveranstaltung[0].lehrveranstaltung_id))
+13
View File
@@ -186,6 +186,7 @@ if (isset($_POST['speichern']))
$gebiet->zufallvorschlag = isset($_POST['zufallvorschlag']);
$gebiet->levelgleichverteilung = isset($_POST['levelgleichverteilung']);
$gebiet->maxpunkte = $_POST['maxpunkte'];
$gebiet->offsetpunkte = $_POST['offsetpunkte'];
$gebiet->maxfragen = $_POST['maxfragen'];
$gebiet->level_start = $_POST['level_start'];
$gebiet->level_sprung_auf = $_POST['level_sprung_auf'];
@@ -257,6 +258,18 @@ if ($gebiet_id != '')
$hinweis = '';
echo '<td>Maximale Punkteanzahl</td><td><input type="text" size="5" maxlength="5" name="maxpunkte" value="'.$gebiet->maxpunkte.'">'.$hinweis.'</td>';
echo '</tr><tr>';
// empfohlene offsetpunkte berechnen und anzeigen
$offsethinweis = '';
$offsetpunkte = $gebiet->berechneOffsetpunkte($gebiet_id);
if ($offsetpunkte)
{
$offsetwarnung = strlen($gebiet->errormsg) > 0 ? ' (HINWEIS: '.$gebiet->errormsg.')' : '';
$offsethinweis = ' <span class="error">empfohlene Offsetpunkteanzahl: '.round($offsetpunkte).(round($offsetpunkte) != $offsetpunkte ? ' ('.$offsetpunkte.' gerundet)' : '').'</span>';
$offsethinweis .= '<span class="error">'.$offsetwarnung.'</span>';
}
echo '<td>Offsetpunkte (minimale Punkteanzahl)</td><td><input type="text" size="5" maxlength="5" name="offsetpunkte" value="'.$gebiet->offsetpunkte.'">'.$offsethinweis.'</td>';
echo '</tr><tr>';
echo '<td>Maximale Fragenanzahl</td><td><input type="text" size="5" maxlength="5" name="maxfragen" value="'.$gebiet->maxfragen.'"></td>';
echo '</tr><tr>';
echo '<td>Antworten pro Zeile</td><td><input type="text" size="5" maxlength="2" name="antwortenprozeile" value="'.$gebiet->antwortenprozeile.'" required></td>';
+30 -5
View File
@@ -35,7 +35,7 @@ if (!$db = new basis_db())
<title>Testool Fragen Übersicht</title>
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
</head>
<body>
<body style="padding: 10px">
<?php
$user = get_uid();
$rechte = new benutzerberechtigung();
@@ -47,7 +47,8 @@ if(!$rechte->isBerechtigt('basis/testtool', null, 's'))
$gebiet = new gebiet();
$gebiet->getAll();
$sprache = (isset($_REQUEST['Sprache'])?$_REQUEST['Sprache']:'German');
$Auswahlgebiet = (isset($_REQUEST['AuswahlGebiet'])?$_REQUEST['AuswahlGebiet']:'');
$Auswahlgebiet = (isset($_REQUEST['AuswahlGebiet'])?$_REQUEST['AuswahlGebiet']:'');
$loesungen = (isset($_REQUEST['loesungen']) && $_REQUEST['loesungen'] != '' ? true:false);
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post" name="TesttoolUebersicht">
<table>
@@ -76,6 +77,13 @@ else
echo'</select>
</td>
</tr>
<tr>
<td>
Mit Lösungen
</td>
<td><input type="checkbox" name="loesungen" '.($loesungen ? 'checked':'').'></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Anzeigen"></td></tr>
</table><br>';
@@ -208,8 +216,17 @@ if(isset($_REQUEST['AuswahlGebiet']))
$vorschlag = new vorschlag();
$vorschlag->loadVorschlagSprache($vor->vorschlag_id, $sprache);
if($vorschlag->bild =='')
echo '<tr><td align="right"><b>'.$vor->punkte.'</b></td><td style="border-left:1px solid;">&nbsp;'.$vorschlag->text.'</td></tr>';
if($vorschlag->bild == '')
{
if ($loesungen)
{
echo '<tr><td style="border-right:1px solid;">'.$vor->nummer.'</td></td><td align="right"><b>'.$vor->punkte.'</b></td><td style="border-left:1px solid;">&nbsp;'.$vorschlag->text.'</td></tr>';
}
else
{
echo '<tr><td style="border-right:1px solid;">'.$vor->nummer.'</td><td>&nbsp;'.$vorschlag->text.'</td></tr>';
}
}
if($vorschlag->bild!='')
{
// zeilenumbruch nach 4 bilder
@@ -217,7 +234,15 @@ if(isset($_REQUEST['AuswahlGebiet']))
echo "</tr>";
echo "<td>";
echo "<img class='testtoolvorschlag' src='../bild.php?src=vorschlag&amp;vorschlag_id=$vor->vorschlag_id&amp;sprache=".$sprache."' /><br/>";
echo "<br>".$vor->punkte."</td>";
if ($loesungen)
{
echo "<br>".$vor->punkte."</td>";
}
else
{
echo "</td>";
}
$anzahlBild++;
}
if($vorschlag->audio!='')
+3
View File
@@ -125,6 +125,9 @@ if (isset($_POST['prestudent']) && isset($gebdatum))
{
if($rt->freigeschaltet)
{
// regenerate Session ID after Login
session_regenerate_id();
$pruefling = new pruefling();
if($pruefling->getPruefling($ps->prestudent_id))
{
@@ -143,13 +143,18 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</row>
<row>
<label value="Geschlecht" control="mitarbeiter-detail-menulist-geschlecht"/>
<menulist id="mitarbeiter-detail-menulist-geschlecht" disabled="true" oncommand="MitarbeiterDetailValueChange()">
<menupopup>
<menuitem value="m" label="maennlich"/>
<menuitem value="w" label="weiblich"/>
<menuitem value="u" label="unbekannt"/>
</menupopup>
</menulist>
<menulist id="mitarbeiter-detail-menulist-geschlecht" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/geschlecht.rdf.php"
ref="http://www.technikum-wien.at/geschlecht"
oncommand="MitarbeiterDetailValueChange()">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/geschlecht/rdf#geschlecht"
label="rdf:http://www.technikum-wien.at/geschlecht/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Familienstand" control="mitarbeiter-detail-menulist-familienstand" <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> />
<menulist id="mitarbeiter-detail-menulist-familienstand" disabled="true" oncommand="MitarbeiterDetailValueChange()" <?php echo ($rechte->isBerechtigt('mitarbeiter/persoenlich'))?'':'hidden="true"'; ?> >
<menupopup>
+6 -24
View File
@@ -288,13 +288,7 @@ if (isset($_GET['excel']))
WHERE
person_id=tbl_prestudent.person_id
AND tbl_reihungstest.studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz
AND (
anmeldedatum<=".$db->db_add_param($datum)."
OR
(anmeldedatum is null
AND tbl_rt_person.insertamum<=".$db->db_add_param($datum).")
)
/*AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz*/
AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz
)
) AS interessentenrtanmeldung,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
@@ -310,13 +304,7 @@ if (isset($_GET['excel']))
WHERE
person_id=tbl_prestudent.person_id
AND tbl_reihungstest.studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz
AND (
anmeldedatum<=".$db->db_add_param($datum)."
OR
(anmeldedatum is null
AND tbl_rt_person.insertamum<=".$db->db_add_param($datum).")
)
/*AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz*/
AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz
)
) AS interessentenrtanmeldung_m,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
@@ -332,13 +320,7 @@ if (isset($_GET['excel']))
WHERE
person_id=tbl_prestudent.person_id
AND tbl_reihungstest.studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz
AND (
anmeldedatum<=".$db->db_add_param($datum)."
OR
(anmeldedatum is null
AND tbl_rt_person.insertamum<=".$db->db_add_param($datum).")
)
/*AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz*/
AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz
)
) AS interessentenrtanmeldung_w,
@@ -841,7 +823,7 @@ if (isset($_GET['excel']))
WHERE
person_id=tbl_prestudent.person_id
AND tbl_reihungstest.studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz
/*AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz*/
AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz
AND (
anmeldedatum<=".$db->db_add_param($datum)."
OR
@@ -863,7 +845,7 @@ if (isset($_GET['excel']))
WHERE
person_id=tbl_prestudent.person_id
AND tbl_reihungstest.studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz
/*AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz*/
AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz
AND (anmeldedatum<=".$db->db_add_param($datum)."
OR
(anmeldedatum is null
@@ -884,7 +866,7 @@ if (isset($_GET['excel']))
WHERE
person_id=tbl_prestudent.person_id
AND tbl_reihungstest.studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz
/*AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz*/
AND tbl_studienordnung.studiengang_kz=tbl_prestudent.studiengang_kz
AND (anmeldedatum<=".$db->db_add_param($datum)."
OR
(anmeldedatum is null
+500 -495
View File
@@ -1,496 +1,501 @@
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../../config/vilesci.config.inc.php');
?>
// ********** FUNKTIONEN ********** //
var AufnahmeterminePrestudentID='';
var AufnahmeTermineStudienplanID='';
var AufnahmeTermineStudiengang='';
// ****
// * Laedt die Trees
// ****
function loadAufnahmeTermine(prestudent_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
AufnahmeTerminePrestudentID = prestudent_id;
AufnahmeTermineLoadTree();
document.getElementById('aufnahmetermine-textbox-gesamtpunkte').disabled=false;
document.getElementById('aufnahmetermine-button-savegesamtpunkte').disabled=false;
document.getElementById('aufnahmetermine-button-calculatetotal').disabled=false;
// Gruppen DropDown laden
var aufnahmegruppemenulist = document.getElementById('aufnahmetermine-menulist-aufnahmegruppe');
if(aufnahmegruppemenulist)
{
var url="<?php echo APP_ROOT ?>rdf/gruppen.rdf.php?aufnahmegruppe=true&optional=true";
//Alte DS entfernen
var oldDatasources = aufnahmegruppemenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
aufnahmegruppemenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
aufnahmegruppemenulist.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
aufnahmegruppemenulist.database.AddDataSource(myDatasource);
aufnahmegruppemenulist.builder.rebuild();
}
// Gesamtpunkte laden und anzeigen
var url = '<?php echo APP_ROOT ?>rdf/student.rdf.php?prestudent_id='+prestudent_id+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/student/" + prestudent_id);
var predicateNS = "http://www.technikum-wien.at/student/rdf";
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
var person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
AufnahmeTermineStudiengang = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiengang_kz" ));
reihungstestangetreten = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#reihungstestangetreten" ));
var aufnahmegruppe_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#aufnahmegruppe_kurzbz" ));
document.getElementById('aufnahmetermine-textbox-gesamtpunkte').value=punkte;
if(reihungstestangetreten=='true')
document.getElementById('aufnahmetermine-checkbox-reihungstestangetreten').checked=true;
else
document.getElementById('aufnahmetermine-checkbox-reihungstestangetreten').checked=false;
document.getElementById('aufnahmetermine-menulist-aufnahmegruppe').value = aufnahmegruppe_kurzbz;
AufnahmeTermineStudienplanID = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studienplan_id" ));
// ReihungstestDropDown laden
var reihungstestmenulist = document.getElementById('aufnahmetermine-menulist-reihungstest');
var url="<?php echo APP_ROOT ?>rdf/reihungstest.rdf.php?optional=true&prestudent_id="+AufnahmeTerminePrestudentID;
//Alte DS entfernen
var oldDatasources = reihungstestmenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
reihungstestmenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
reihungstestmenulist.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
reihungstestmenulist.database.AddDataSource(myDatasource);
reihungstestmenulist.builder.rebuild();
// Studienplan DropDown laden
var studienplanmenulist = document.getElementById('aufnahmetermine-menulist-studienplan');
var url="<?php echo APP_ROOT ?>rdf/studienplan.rdf.php?person_id="+person_id;
//Alte DS entfernen
var oldDatasources = studienplanmenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
studienplanmenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
studienplanmenulist.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
studienplanmenulist.database.AddDataSource(myDatasource);
studienplanmenulist.builder.rebuild();
}
/**
* Laedt den Tree mit den Terminen
*/
function AufnahmeTermineLoadTree()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//Termine laden
url = "<?php echo APP_ROOT; ?>rdf/aufnahmetermine.rdf.php?prestudent_id="+AufnahmeTerminePrestudentID+"&ts="+gettimestamp();
var treeAufnahmeTermine=document.getElementById('aufnahmetermine-tree');
//Alte DS entfernen
var oldDatasources = treeAufnahmeTermine.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeAufnahmeTermine.database.RemoveDataSource(oldDatasources.getNext());
}
treeAufnahmeTermine.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var AufnahmeTerminTreeDatasource = rdfService.GetDataSource(url);
AufnahmeTerminTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
treeAufnahmeTermine.database.AddDataSource(AufnahmeTerminTreeDatasource);
}
/**
* Speichert die Gesamtpunkte
*/
function AufnahmeTermineSaveGesamtpunkte()
{
var punkte = document.getElementById('aufnahmetermine-textbox-gesamtpunkte').value;
var aufnahmegruppe_kurzbz = document.getElementById('aufnahmetermine-menulist-aufnahmegruppe').value;
var reihungstestangetreten = document.getElementById('aufnahmetermine-checkbox-reihungstestangetreten').checked;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineSaveGesamtpunkte');
req.add('prestudent_id', AufnahmeTerminePrestudentID);
req.add('punkte', punkte);
req.add('reihungstestangetreten',reihungstestangetreten);
req.add('aufnahmegruppe_kurzbz',aufnahmegruppe_kurzbz);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
return false;
}
else
{
return true;
}
}
function AufnahmeTermineCalculateTotal()
{
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineBerechneGesamtpunkte');
req.add('prestudent_id', AufnahmeTerminePrestudentID);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
return false;
}
else
{
document.getElementById('aufnahmetermine-textbox-gesamtpunkte').value=val.dbdml_data;
return true;
}
}
/**
* Laedt die Details bei Auswahl eines Eintrages aus dem Tree
*/
function AufnahmeTermineAuswahl()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('aufnahmetermine-tree');
if (tree.currentIndex==-1) return;
AufnahmeTermineDisableFields(false);
AufnahmeTermineReihungstestDropDownRefresh(true);
//Ausgewaehlten Eintrag holen
var rt_person_id = getTreeCellText(tree, 'aufnahmetermine-tree-rt_person_id', tree.currentIndex);
//Daten holen
var url = '<?php echo APP_ROOT ?>rdf/aufnahmetermine.rdf.php?rt_person_id='+rt_person_id+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/aufnahmetermine/"+rt_person_id);
var predicateNS = "http://www.technikum-wien.at/aufnahmetermine/rdf";
//Daten holen
var person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
var rt_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#rt_id" ));
var anmeldedatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmeldedatum" ));
var teilgenommen = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#teilgenommen" ));
var punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
var studienplan_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studienplan_id" ));
var endpunkte_inkl_gebiete = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#endpunkte_inkl_gebiete" ));
var endpunkte_exkl_gebiete = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#endpunkte_exkl_gebiete" ));
var typ = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#typ" ));
document.getElementById('aufnahmetermine-textbox-rt_person_id').value=rt_person_id;
document.getElementById('aufnahmetermine-textbox-person_id').value=person_id;
document.getElementById('aufnahmetermine-checkbox-neu').checked=false;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').value=anmeldedatum;
MenulistSelectItemOnValue('aufnahmetermine-menulist-reihungstest', rt_id);
if(teilgenommen=='Ja')
document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked=true;
else
document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked=false;
document.getElementById('aufnahmetermine-textbox-punkte').value=punkte;
document.getElementById('aufnahmetermine-menulist-studienplan').value=studienplan_id;
document.getElementById('aufnahmetermine-textbox-endpunkte-inkl-gebiete').value = endpunkte_inkl_gebiete;
document.getElementById('aufnahmetermine-textbox-endpunkte-exkl-gebiete').value = endpunkte_exkl_gebiete;
// Sichtbarkeit der RT-Vergleichsergebnispunkte (ohne Quereinsteiger)
var basisgebiet_punkte_anzeigen = <?php echo (defined('FAS_REIHUNGSTEST_PUNKTE_BASISGEBIET_ANZEIGEN') && FAS_REIHUNGSTEST_PUNKTE_BASISGEBIET_ANZEIGEN) ? 'true' : 'false' ?>;
// * Generell Anzeige nur wenn über config-Datei gesetzt ist
if (basisgebiet_punkte_anzeigen)
{
// * für Bachelor-Studiengänge anzeigen
if (typ == 'b')
{
document.getElementById('aufnahmetermine-groupbox-vergleich-endpunkte').hidden = false;
}
// * für Master-Studiengänge verstecken
else if (typ == 'm')
{
document.getElementById('aufnahmetermine-groupbox-vergleich-endpunkte').hidden = true;
}
}
}
function AufnahmeTermineNeu()
{
AufnahmeTermineDisableFields(false);
AufnahmeTermineResetFields();
AufnahmeTermineReihungstestDropDownRefresh(true);
}
/**
* Loescht einen Aufnahmetermin
*/
function AufnahmeTermineDelete()
{
var rt_person_id = document.getElementById('aufnahmetermine-textbox-rt_person_id').value;
if(!confirm("Wollen Sie diesen Eintrag wirklich löschen?"))
return;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineDelete');
req.add('rt_person_id', rt_person_id);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
return false;
}
else
{
AufnahmeTermineLoadTree();
return true;
}
}
function AufnahemTermineReihungstestPunkteTransmit()
{
var reihungstest_id = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var person_id = document.getElementById('aufnahmetermine-textbox-person_id').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'getReihungstestPunkte');
req.add('person_id', person_id);
req.add('reihungstest_id', reihungstest_id);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
else
{
document.getElementById('aufnahmetermine-textbox-punkte').value = val.dbdml_data;
}
}
function setEndpunkteAsPunkte(id)
{
var punkte = document.getElementById(id).value;
document.getElementById('aufnahmetermine-textbox-punkte').value = punkte;
}
/**
* Speichert einen AufnahmeTermin
*/
function AufnahmeTermineSpeichern()
{
var rt_person_id = document.getElementById('aufnahmetermine-textbox-rt_person_id').value;
var rt_id = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var person_id = document.getElementById('aufnahmetermine-textbox-person_id').value;
var neu = document.getElementById('aufnahmetermine-checkbox-neu').checked;
var anmeldedatum = document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').iso;
var rt_id_new = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var teilgenommen = document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked;
var punkte = document.getElementById('aufnahmetermine-textbox-punkte').value;
var studienplan_id = document.getElementById('aufnahmetermine-menulist-studienplan').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineSave');
req.add('rt_id', rt_id);
req.add('rt_person_id', rt_person_id);
req.add('person_id', person_id);
req.add('prestudent_id', AufnahmeTerminePrestudentID);
req.add('neu', neu);
req.add('anmeldedatum', anmeldedatum);
req.add('teilgenommen', teilgenommen);
req.add('punkte', punkte);
req.add('studienplan_id', studienplan_id);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
document.getElementById('aufnahmetermine-textbox-rt_person_id').value=val.dbdml_data;
document.getElementById('aufnahmetermine-checkbox-neu').checked=false;
AufnahmeTermineLoadTree();
return false;
}
else
{
document.getElementById('aufnahmetermine-textbox-rt_person_id').value=val.dbdml_data;
document.getElementById('aufnahmetermine-checkbox-neu').checked=false;
AufnahmeTermineLoadTree();
return true;
}
}
/**
* Aktiviert oder Deaktiviert die Eingabefelder
* @param val boolean true | false
*/
function AufnahmeTermineDisableFields(val)
{
document.getElementById('aufnahmetermine-button-speichern').disabled=val;
document.getElementById('aufnahmetermine-textbox-punkte').disabled=val;
document.getElementById('aufnahmetermine-checkbox-teilgenommen').disabled=val;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').disabled=val;
document.getElementById('aufnahmetermine-menulist-reihungstest').disabled=val;
document.getElementById('aufnahmetermine-button-anmeldungreihungstest-heute').disabled=val;
document.getElementById('aufnahmetermine-menulist-studienplan').disabled=val;
}
/**
* Leert die Eingabefelder
*/
function AufnahmeTermineResetFields()
{
document.getElementById('aufnahmetermine-textbox-punkte').value='';
document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked=false;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').value='';
document.getElementById('aufnahmetermine-menulist-reihungstest').value='';
document.getElementById('aufnahmetermine-textbox-person_id').value='';
document.getElementById('aufnahmetermine-checkbox-neu').checked=true;
document.getElementById('aufnahmetermine-textbox-rt_person_id').value='';
document.getElementById('aufnahmetermine-menulist-studienplan').value=AufnahmeTermineStudienplanID;
}
/**
* Setzt das aktuelle Datum als Anmeldedatum
*/
function AufnahmeTermineAnmeldungreihungstestHeute()
{
var now = new Date();
var jahr = now.getFullYear();
monat = now.getMonth()+1;
if(monat<10) monat='0'+monat;
tag = now.getDate();
if(tag<10) tag='0'+tag;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').value=tag+'.'+monat+'.'+jahr;
}
/**
* Refresht das DropDown mit den Reihungstestterminen
*/
function AufnahmeTermineReihungstestDropDownRefresh(prestudent)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var menulist = document.getElementById('aufnahmetermine-menulist-reihungstest');
if(typeof(prestudent)=='undefined')
var url="<?php echo APP_ROOT ?>rdf/reihungstest.rdf.php?include_id=&studiengang_kz="+AufnahmeTermineStudiengang+"&"+gettimestamp();
else
var url="<?php echo APP_ROOT ?>rdf/reihungstest.rdf.php?optional=true&prestudent_id="+AufnahmeTerminePrestudentID+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = menulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
menulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
menulist.builder.rebuild();
btn = document.getElementById('aufnahmetermine-button-reihungstest-refresh');
btn.setAttribute('image','../../skin/images/spinner.gif');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
menulist.database.AddDataSource(myDatasource);
menulist.builder.rebuild();
btn.setAttribute('image','../../skin/images/refresh.png');
}
function AufnahmeTermineReihungstestEdit()
{
var rt_id = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var url="<?php echo APP_ROOT ?>vilesci/stammdaten/reihungstestverwaltung.php?reihungstest_id="+rt_id;
window.open(url);
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../../config/vilesci.config.inc.php');
?>
// ********** FUNKTIONEN ********** //
var AufnahmeterminePrestudentID='';
var AufnahmeTermineStudienplanID='';
var AufnahmeTermineStudiengang='';
// ****
// * Laedt die Trees
// ****
function loadAufnahmeTermine(prestudent_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
AufnahmeTerminePrestudentID = prestudent_id;
AufnahmeTermineLoadTree();
document.getElementById('aufnahmetermine-textbox-gesamtpunkte').disabled=false;
document.getElementById('aufnahmetermine-button-savegesamtpunkte').disabled=false;
document.getElementById('aufnahmetermine-button-calculatetotal').disabled=false;
// Gruppen DropDown laden
var aufnahmegruppemenulist = document.getElementById('aufnahmetermine-menulist-aufnahmegruppe');
if(aufnahmegruppemenulist)
{
var url="<?php echo APP_ROOT ?>rdf/gruppen.rdf.php?aufnahmegruppe=true&optional=true";
//Alte DS entfernen
var oldDatasources = aufnahmegruppemenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
aufnahmegruppemenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
aufnahmegruppemenulist.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
aufnahmegruppemenulist.database.AddDataSource(myDatasource);
aufnahmegruppemenulist.builder.rebuild();
}
// Gesamtpunkte laden und anzeigen
var url = '<?php echo APP_ROOT ?>rdf/student.rdf.php?prestudent_id='+prestudent_id+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/student/" + prestudent_id);
var predicateNS = "http://www.technikum-wien.at/student/rdf";
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
var person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
AufnahmeTermineStudiengang = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiengang_kz" ));
reihungstestangetreten = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#reihungstestangetreten" ));
var aufnahmegruppe_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#aufnahmegruppe_kurzbz" ));
document.getElementById('aufnahmetermine-textbox-gesamtpunkte').value=punkte;
if(reihungstestangetreten=='true')
document.getElementById('aufnahmetermine-checkbox-reihungstestangetreten').checked=true;
else
document.getElementById('aufnahmetermine-checkbox-reihungstestangetreten').checked=false;
document.getElementById('aufnahmetermine-menulist-aufnahmegruppe').value = aufnahmegruppe_kurzbz;
AufnahmeTermineStudienplanID = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studienplan_id" ));
// ReihungstestDropDown laden
var reihungstestmenulist = document.getElementById('aufnahmetermine-menulist-reihungstest');
var url="<?php echo APP_ROOT ?>rdf/reihungstest.rdf.php?optional=true&prestudent_id="+AufnahmeTerminePrestudentID;
//Alte DS entfernen
var oldDatasources = reihungstestmenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
reihungstestmenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
reihungstestmenulist.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
reihungstestmenulist.database.AddDataSource(myDatasource);
reihungstestmenulist.builder.rebuild();
// Studienplan DropDown laden
var studienplanmenulist = document.getElementById('aufnahmetermine-menulist-studienplan');
var url="<?php echo APP_ROOT ?>rdf/studienplan.rdf.php?person_id="+person_id;
//Alte DS entfernen
var oldDatasources = studienplanmenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
studienplanmenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
studienplanmenulist.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
studienplanmenulist.database.AddDataSource(myDatasource);
studienplanmenulist.builder.rebuild();
}
/**
* Laedt den Tree mit den Terminen
*/
function AufnahmeTermineLoadTree()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//Termine laden
url = "<?php echo APP_ROOT; ?>rdf/aufnahmetermine.rdf.php?prestudent_id="+AufnahmeTerminePrestudentID+"&ts="+gettimestamp();
var treeAufnahmeTermine=document.getElementById('aufnahmetermine-tree');
//Alte DS entfernen
var oldDatasources = treeAufnahmeTermine.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treeAufnahmeTermine.database.RemoveDataSource(oldDatasources.getNext());
}
treeAufnahmeTermine.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var AufnahmeTerminTreeDatasource = rdfService.GetDataSource(url);
AufnahmeTerminTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
treeAufnahmeTermine.database.AddDataSource(AufnahmeTerminTreeDatasource);
}
/**
* Speichert die Gesamtpunkte
*/
function AufnahmeTermineSaveGesamtpunkte()
{
var punkte = document.getElementById('aufnahmetermine-textbox-gesamtpunkte').value;
var aufnahmegruppe_kurzbz = document.getElementById('aufnahmetermine-menulist-aufnahmegruppe').value;
var reihungstestangetreten = document.getElementById('aufnahmetermine-checkbox-reihungstestangetreten').checked;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineSaveGesamtpunkte');
req.add('prestudent_id', AufnahmeTerminePrestudentID);
req.add('punkte', punkte);
req.add('reihungstestangetreten',reihungstestangetreten);
req.add('aufnahmegruppe_kurzbz',aufnahmegruppe_kurzbz);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
return false;
}
else
{
return true;
}
}
function AufnahmeTermineCalculateTotal()
{
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineBerechneGesamtpunkte');
req.add('prestudent_id', AufnahmeTerminePrestudentID);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
return false;
}
else
{
document.getElementById('aufnahmetermine-textbox-gesamtpunkte').value=val.dbdml_data;
return true;
}
}
/**
* Laedt die Details bei Auswahl eines Eintrages aus dem Tree
*/
function AufnahmeTermineAuswahl()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('aufnahmetermine-tree');
if (tree.currentIndex==-1) return;
AufnahmeTermineDisableFields(false);
AufnahmeTermineReihungstestDropDownRefresh(true);
//Ausgewaehlten Eintrag holen
var rt_person_id = getTreeCellText(tree, 'aufnahmetermine-tree-rt_person_id', tree.currentIndex);
//Daten holen
var url = '<?php echo APP_ROOT ?>rdf/aufnahmetermine.rdf.php?rt_person_id='+rt_person_id+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/aufnahmetermine/"+rt_person_id);
var predicateNS = "http://www.technikum-wien.at/aufnahmetermine/rdf";
//Daten holen
var person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
var rt_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#rt_id" ));
var anmeldedatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmeldedatum" ));
var teilgenommen = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#teilgenommen" ));
var punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
var studienplan_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studienplan_id" ));
var studienplan_studiengang_kz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studienplan_studiengang_kz" ));
var endpunkte_inkl_gebiete = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#endpunkte_inkl_gebiete" ));
var endpunkte_exkl_gebiete = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#endpunkte_exkl_gebiete" ));
var typ = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#typ" ));
document.getElementById('aufnahmetermine-textbox-rt_person_id').value=rt_person_id;
document.getElementById('aufnahmetermine-textbox-person_id').value=person_id;
document.getElementById('aufnahmetermine-textbox-studienplan_studiengang_kz').value=studienplan_studiengang_kz;
document.getElementById('aufnahmetermine-checkbox-neu').checked=false;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').value=anmeldedatum;
MenulistSelectItemOnValue('aufnahmetermine-menulist-reihungstest', rt_id);
if(teilgenommen=='Ja')
document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked=true;
else
document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked=false;
document.getElementById('aufnahmetermine-textbox-punkte').value=punkte;
document.getElementById('aufnahmetermine-menulist-studienplan').value=studienplan_id;
document.getElementById('aufnahmetermine-textbox-endpunkte-inkl-gebiete').value = endpunkte_inkl_gebiete;
document.getElementById('aufnahmetermine-textbox-endpunkte-exkl-gebiete').value = endpunkte_exkl_gebiete;
// Sichtbarkeit der RT-Vergleichsergebnispunkte (ohne Quereinsteiger)
var basisgebiet_punkte_anzeigen = <?php echo (defined('FAS_REIHUNGSTEST_PUNKTE_BASISGEBIET_ANZEIGEN') && FAS_REIHUNGSTEST_PUNKTE_BASISGEBIET_ANZEIGEN) ? 'true' : 'false' ?>;
// * Generell Anzeige nur wenn über config-Datei gesetzt ist
if (basisgebiet_punkte_anzeigen)
{
// * für Bachelor-Studiengänge anzeigen
if (typ == 'b')
{
document.getElementById('aufnahmetermine-groupbox-vergleich-endpunkte').hidden = false;
}
// * für Master-Studiengänge verstecken
else if (typ == 'm')
{
document.getElementById('aufnahmetermine-groupbox-vergleich-endpunkte').hidden = true;
}
}
}
function AufnahmeTermineNeu()
{
AufnahmeTermineDisableFields(false);
AufnahmeTermineResetFields();
AufnahmeTermineReihungstestDropDownRefresh(true);
}
/**
* Loescht einen Aufnahmetermin
*/
function AufnahmeTermineDelete()
{
var rt_person_id = document.getElementById('aufnahmetermine-textbox-rt_person_id').value;
if(!confirm("Wollen Sie diesen Eintrag wirklich löschen?"))
return;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineDelete');
req.add('rt_person_id', rt_person_id);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
return false;
}
else
{
AufnahmeTermineLoadTree();
return true;
}
}
function AufnahemTermineReihungstestPunkteTransmit()
{
var reihungstest_id = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var person_id = document.getElementById('aufnahmetermine-textbox-person_id').value;
var studienplan_studiengang_kz = document.getElementById('aufnahmetermine-textbox-studienplan_studiengang_kz').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'getReihungstestPunkte');
req.add('person_id', person_id);
req.add('studienplan_studiengang_kz', studienplan_studiengang_kz);
req.add('reihungstest_id', reihungstest_id);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
else
{
document.getElementById('aufnahmetermine-textbox-punkte').value = val.dbdml_data;
}
}
function setEndpunkteAsPunkte(id)
{
var punkte = document.getElementById(id).value;
document.getElementById('aufnahmetermine-textbox-punkte').value = punkte;
}
/**
* Speichert einen AufnahmeTermin
*/
function AufnahmeTermineSpeichern()
{
var rt_person_id = document.getElementById('aufnahmetermine-textbox-rt_person_id').value;
var rt_id = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var person_id = document.getElementById('aufnahmetermine-textbox-person_id').value;
var neu = document.getElementById('aufnahmetermine-checkbox-neu').checked;
var anmeldedatum = document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').iso;
var rt_id_new = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var teilgenommen = document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked;
var punkte = document.getElementById('aufnahmetermine-textbox-punkte').value;
var studienplan_id = document.getElementById('aufnahmetermine-menulist-studienplan').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'AufnahmeTermineSave');
req.add('rt_id', rt_id);
req.add('rt_person_id', rt_person_id);
req.add('person_id', person_id);
req.add('prestudent_id', AufnahmeTerminePrestudentID);
req.add('neu', neu);
req.add('anmeldedatum', anmeldedatum);
req.add('teilgenommen', teilgenommen);
req.add('punkte', punkte);
req.add('studienplan_id', studienplan_id);
var response = req.executePOST();
var val = new ParseReturnValue(response);
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
document.getElementById('aufnahmetermine-textbox-rt_person_id').value=val.dbdml_data;
document.getElementById('aufnahmetermine-checkbox-neu').checked=false;
AufnahmeTermineLoadTree();
return false;
}
else
{
document.getElementById('aufnahmetermine-textbox-rt_person_id').value=val.dbdml_data;
document.getElementById('aufnahmetermine-checkbox-neu').checked=false;
AufnahmeTermineLoadTree();
return true;
}
}
/**
* Aktiviert oder Deaktiviert die Eingabefelder
* @param val boolean true | false
*/
function AufnahmeTermineDisableFields(val)
{
document.getElementById('aufnahmetermine-button-speichern').disabled=val;
document.getElementById('aufnahmetermine-textbox-punkte').disabled=val;
document.getElementById('aufnahmetermine-checkbox-teilgenommen').disabled=val;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').disabled=val;
document.getElementById('aufnahmetermine-menulist-reihungstest').disabled=val;
document.getElementById('aufnahmetermine-button-anmeldungreihungstest-heute').disabled=val;
document.getElementById('aufnahmetermine-menulist-studienplan').disabled=val;
}
/**
* Leert die Eingabefelder
*/
function AufnahmeTermineResetFields()
{
document.getElementById('aufnahmetermine-textbox-punkte').value='';
document.getElementById('aufnahmetermine-checkbox-teilgenommen').checked=false;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').value='';
document.getElementById('aufnahmetermine-menulist-reihungstest').value='';
document.getElementById('aufnahmetermine-textbox-person_id').value='';
document.getElementById('aufnahmetermine-textbox-studienplan_studiengang_kz').value='';
document.getElementById('aufnahmetermine-checkbox-neu').checked=true;
document.getElementById('aufnahmetermine-textbox-rt_person_id').value='';
document.getElementById('aufnahmetermine-menulist-studienplan').value=AufnahmeTermineStudienplanID;
}
/**
* Setzt das aktuelle Datum als Anmeldedatum
*/
function AufnahmeTermineAnmeldungreihungstestHeute()
{
var now = new Date();
var jahr = now.getFullYear();
monat = now.getMonth()+1;
if(monat<10) monat='0'+monat;
tag = now.getDate();
if(tag<10) tag='0'+tag;
document.getElementById('aufnahmetermine-textbox-anmeldungreihungstest').value=tag+'.'+monat+'.'+jahr;
}
/**
* Refresht das DropDown mit den Reihungstestterminen
*/
function AufnahmeTermineReihungstestDropDownRefresh(prestudent)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var menulist = document.getElementById('aufnahmetermine-menulist-reihungstest');
if(typeof(prestudent)=='undefined')
var url="<?php echo APP_ROOT ?>rdf/reihungstest.rdf.php?include_id=&studiengang_kz="+AufnahmeTermineStudiengang+"&"+gettimestamp();
else
var url="<?php echo APP_ROOT ?>rdf/reihungstest.rdf.php?optional=true&prestudent_id="+AufnahmeTerminePrestudentID+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = menulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
menulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
menulist.builder.rebuild();
btn = document.getElementById('aufnahmetermine-button-reihungstest-refresh');
btn.setAttribute('image','../../skin/images/spinner.gif');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
menulist.database.AddDataSource(myDatasource);
menulist.builder.rebuild();
btn.setAttribute('image','../../skin/images/refresh.png');
}
function AufnahmeTermineReihungstestEdit()
{
var rt_id = document.getElementById('aufnahmetermine-menulist-reihungstest').value;
var url="<?php echo APP_ROOT ?>vilesci/stammdaten/reihungstestverwaltung.php?reihungstest_id="+rt_id;
window.open(url);
}
+336 -334
View File
@@ -1,334 +1,336 @@
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@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");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/variable.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/studiengang.class.php');
$user=get_uid();
$variable = new variable();
if(!$variable->loadVariables($user))
{
die('Fehler beim Laden der Variablen:'.$variable->errormsg);
}
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/datepicker/datepicker.css" type="text/css"?>';
$prestudent_id = filter_input(INPUT_GET,'prestudent_id');
echo '
<!DOCTYPE overlay [';
require('../../locale/'.$variable->variable->locale.'/fas.dtd');
echo ']>
';
?>
<window id="aufnahmetermine-window" title="aufnahmetermine"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadAufnahmeTermine(<?php echo "'".$prestudent_id."'"; ?>);"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/aufnahmetermine.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<vbox flex="1">
<popupset>
<menupopup id="aufnahmetermine-tree-popup">
<menuitem label="Entfernen" oncommand="aufnahmetermineDelete();" id="aufnahmetermine-tree-popup-delete" hidden="false"/>
</menupopup>
</popupset>
<groupbox>
<caption label="Studiengang" />
<hbox style="padding-top: 10px">
<?php
if(!defined('FAS_REIHUNGSTEST_AUFNAHMEGRUPPEN') || FAS_REIHUNGSTEST_AUFNAHMEGRUPPEN==true)
$aufnahmegruppe_visibility='';
else
$aufnahmegruppe_visibility='hidden="true"';
echo '<hbox '.$aufnahmegruppe_visibility.'>';
?>
<label value="Gruppe" control="aufnahmetermine-menulist-aufnahmegruppe"/>
<menulist id="aufnahmetermine-menulist-aufnahmegruppe" disabled="false"
datasources="rdf:null"
ref="http://www.technikum-wien.at/gruppen/liste">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gruppen/rdf#gruppe_kurzbz"
label="rdf:http://www.technikum-wien.at/gruppen/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</hbox>
<label value="&aufnahmetermine-reihungstest.absolviert;" control="aufnahmetermine-checkbox-reihungstestangetreten"/>
<checkbox id="aufnahmetermine-checkbox-reihungstestangetreten" checked="true"/>
<label value="Gesamtpunkte" control="aufnahmetermine-textbox-gesamtpunkte"/>
<textbox id="aufnahmetermine-textbox-gesamtpunkte" disabled="true" maxlength="8" size="8"/>
<button id="aufnahmetermine-button-savegesamtpunkte" disabled="true" label="Speichern" oncommand="AufnahmeTermineSaveGesamtpunkte();"/>
<button id="aufnahmetermine-button-calculatetotal" disabled="true" label="Gesamtpunkte berechnen" oncommand="AufnahmeTermineCalculateTotal();"/>
</hbox>
</groupbox>
<groupbox>
<caption label="Allgemein" />
<hbox flex="1">
<grid id="aufnahmetermine-grid-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="1"/>
</columns>
<rows>
<row>
<tree id="aufnahmetermine-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/aufnahmetermine"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
onselect="AufnahmeTermineAuswahl()"
context="aufnahmetermine-tree-popup"
flags="dont-build-content"
>
<treecols>
<treecol id="aufnahmetermine-tree-datum" label="Datum" flex="3" hidden="false" primary="true"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum_iso"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-stufe" label="Stufe" flex="2" hidden="false"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#stufe"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studiensemester" label="Studiensemester" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studiensemester"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-anmerkung" label="Anmerkung" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmerkung"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-anmeldedatum" label="Anmeldedatum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum_iso"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-ort" label="Ort" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-punkte" label="Punkte" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#punkte" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-teilgenommen" label="Teilgen." flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#teilgenommen" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-ort_kurzbz" label="Ort" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-rt_id" label="ReihungstestID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-person_id" label="PersonID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#person_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-rt_person_id" label="RTPersonID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_person_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studienplan_bezeichnung" label="Studienplan" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_bezeichnung" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studienplan_id" label="StudienplanID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studienplan_studiengang" label="Stg" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_studiengang" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-datum_iso" label="DatumISO" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum_iso"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-anmeldedatum_iso" label="AnmeldedatumISO" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum_iso"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow properties="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#properties">
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#stufe"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studiensemester"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmerkung"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#punkte"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#teilgenommen"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#person_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_person_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_studiengang"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum_iso"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum_iso"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
<vbox>
<hbox>
<button id="aufnahmetermine-button-neu" label="Neu" oncommand="AufnahmeTermineNeu();"/>
<button id="aufnahmetermine-button-loeschen" label="Loeschen" oncommand="AufnahmeTermineDelete();"/>
</hbox>
<vbox hidden="true">
<label value="person_id" control="aufnahmetermine-textbox-person_id"/>
<textbox id="aufnahmetermine-textbox-person_id" disabled="true"/>
<label value="Neu" control="aufnahmetermine-checkbox-neu"/>
<checkbox id="aufnahmetermine-checkbox-neu" disabled="true" checked="false"/>
<label value="rt_person_id" control="aufnahmetermine-textbox-rt_person_id"/>
<textbox id="aufnahmetermine-textbox-rt_person_id" disabled="true"/>
</vbox>
<groupbox id="aufnahmetermine-groupbox" flex="1">
<caption label="Details"/>
<grid id="aufnahmetermine-grid-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="Reihungstest / Interview" control="aufnahmetermine-menulist-reihungstest"/>
<hbox>
<menulist id="aufnahmetermine-menulist-reihungstest" disabled="true"
datasources="rdf:null" flex="1" style="width:200px"
ref="http://www.technikum-wien.at/reihungstest/alle">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/reihungstest/rdf#reihungstest_id"
label="rdf:http://www.technikum-wien.at/reihungstest/rdf#bezeichnung"
tooltiptext="rdf:http://www.technikum-wien.at/reihungstest/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<toolbarbutton id="aufnahmetermine-button-reihungstest-refresh" image="../../skin/images/refresh.png" tooltiptext="Alle zukünftigen Reihungstests des Studiengangs laden" onclick="AufnahmeTermineReihungstestDropDownRefresh()"/>
<toolbarbutton id="aufnahmetermine-button-reihungstest-open" image="../../skin/images/edit.png" tooltiptext="Zur Reihungstestverwaltung" onclick="AufnahmeTermineReihungstestEdit()"/>
<spacer flex="1"/>
</hbox>
</row>
<row>
<label value="&tab-prestudent-aufnahme.anmeldung;" control="aufnahmetermine-textbox-anmeldungreihungstest"/>
<hbox>
<box class="Datum" id="aufnahmetermine-textbox-anmeldungreihungstest" disabled="true"/>
<button id="aufnahmetermine-button-anmeldungreihungstest-heute" label="Heute" oncommand="AufnahmeTermineAnmeldungreihungstestHeute()" disabled="true" style="margin:0px;"/>
</hbox>
</row>
<row>
<label value="&tab-prestudent-aufnahme.absolviert;" control="aufnahmetermine-checkbox-teilgenommen"/>
<checkbox id="aufnahmetermine-checkbox-teilgenommen" checked="true" disabled="true"/>
</row>
<row>
<label value="Reihungstest Studienplan" control="aufnahmetermine-menulist-studienplan"/>
<hbox>
<menulist id="aufnahmetermine-menulist-studienplan" disabled="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/studienplan">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/studienplan/rdf#studienplan_id"
label="rdf:http://www.technikum-wien.at/studienplan/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<spacer flex="1"/>
</hbox>
</row>
<row>
<label value="Punkte" control="aufnahmetermine-textbox-punkte" />
<hbox>
<textbox id="aufnahmetermine-textbox-punkte" disabled="true" maxlength="8" size="6"/>
<toolbarbutton id="aufnahmetermine-button-reihungstest-punktesync" image="../../skin/images/transmit.png" tooltiptext="Reihungstest Ergebnis holen" onclick="AufnahemTermineReihungstestPunkteTransmit()"/>
<spacer flex="1" />
</hbox>
</row>
<groupbox id="aufnahmetermine-groupbox-vergleich-endpunkte" hidden="true">
<caption label="Vergleichswerte Reihungstestpunkte (Basisgebiete)"></caption>
<vbox style="padding: 10px;">
<spacer resize='none' height='10' flex="1"/>
<row>
<label value="Reihungstestpunkte (inkl. Physik)" control="aufnahmetermine-textbox-endpunkte-inkl-gebiete" style="margin-right: 7px;"/>
<hbox>
<textbox id="aufnahmetermine-textbox-endpunkte-inkl-gebiete" readonly="true" maxlength="8" size="6" flex="1"/>
<toolbarbutton image="../../skin/images/up.png" tooltiptext="Als Punkte setzen" onclick="setEndpunkteAsPunkte('aufnahmetermine-textbox-endpunkte-inkl-gebiete')"/>
</hbox>
</row>
<row>
<label value="Reihungstestpunkte (exkl. Physik)" control="aufnahmetermine-textbox-endpunkte-exkl-gebiete" />
<hbox>
<textbox id="aufnahmetermine-textbox-endpunkte-exkl-gebiete" readonly="true" maxlength="8" size="6" flex="1"/>
<toolbarbutton image="../../skin/images/up.png" tooltiptext="Als Punkte setzen" onclick="setEndpunkteAsPunkte('aufnahmetermine-textbox-endpunkte-exkl-gebiete')"/>
</hbox>
</row>
</vbox>
</groupbox>
</rows>
</grid>
<hbox>
<button id="aufnahmetermine-button-speichern" oncommand="AufnahmeTermineSpeichern()" label="Speichern" disabled="true"/>
<spacer flex="1" />
</hbox>
</groupbox>
</vbox>
</row>
</rows>
</grid>
</hbox>
</groupbox>
<spacer flex="1" />
</vbox>
</window>
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@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");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/variable.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/studiengang.class.php');
$user=get_uid();
$variable = new variable();
if(!$variable->loadVariables($user))
{
die('Fehler beim Laden der Variablen:'.$variable->errormsg);
}
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/datepicker/datepicker.css" type="text/css"?>';
$prestudent_id = filter_input(INPUT_GET,'prestudent_id');
echo '
<!DOCTYPE overlay [';
require('../../locale/'.$variable->variable->locale.'/fas.dtd');
echo ']>
';
?>
<window id="aufnahmetermine-window" title="aufnahmetermine"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadAufnahmeTermine(<?php echo "'".$prestudent_id."'"; ?>);"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/aufnahmetermine.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<vbox flex="1">
<popupset>
<menupopup id="aufnahmetermine-tree-popup">
<menuitem label="Entfernen" oncommand="aufnahmetermineDelete();" id="aufnahmetermine-tree-popup-delete" hidden="false"/>
</menupopup>
</popupset>
<groupbox>
<caption label="Studiengang" />
<hbox style="padding-top: 10px">
<?php
if(!defined('FAS_REIHUNGSTEST_AUFNAHMEGRUPPEN') || FAS_REIHUNGSTEST_AUFNAHMEGRUPPEN==true)
$aufnahmegruppe_visibility='';
else
$aufnahmegruppe_visibility='hidden="true"';
echo '<hbox '.$aufnahmegruppe_visibility.'>';
?>
<label value="Gruppe" control="aufnahmetermine-menulist-aufnahmegruppe"/>
<menulist id="aufnahmetermine-menulist-aufnahmegruppe" disabled="false"
datasources="rdf:null"
ref="http://www.technikum-wien.at/gruppen/liste">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/gruppen/rdf#gruppe_kurzbz"
label="rdf:http://www.technikum-wien.at/gruppen/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
</hbox>
<label value="&aufnahmetermine-reihungstest.absolviert;" control="aufnahmetermine-checkbox-reihungstestangetreten"/>
<checkbox id="aufnahmetermine-checkbox-reihungstestangetreten" checked="true"/>
<label value="Gesamtpunkte" control="aufnahmetermine-textbox-gesamtpunkte"/>
<textbox id="aufnahmetermine-textbox-gesamtpunkte" disabled="true" maxlength="8" size="8"/>
<button id="aufnahmetermine-button-savegesamtpunkte" disabled="true" label="Speichern" oncommand="AufnahmeTermineSaveGesamtpunkte();"/>
<button id="aufnahmetermine-button-calculatetotal" disabled="true" label="Gesamtpunkte berechnen" oncommand="AufnahmeTermineCalculateTotal();"/>
</hbox>
</groupbox>
<groupbox>
<caption label="Allgemein" />
<hbox flex="1">
<grid id="aufnahmetermine-grid-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="1"/>
</columns>
<rows>
<row>
<tree id="aufnahmetermine-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/aufnahmetermine"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
onselect="AufnahmeTermineAuswahl()"
context="aufnahmetermine-tree-popup"
flags="dont-build-content"
>
<treecols>
<treecol id="aufnahmetermine-tree-datum" label="Datum" flex="3" hidden="false" primary="true"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum_iso"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-stufe" label="Stufe" flex="2" hidden="false"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#stufe"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studiensemester" label="Studiensemester" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studiensemester"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-anmerkung" label="Anmerkung" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmerkung"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-anmeldedatum" label="Anmeldedatum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum_iso"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-ort" label="Ort" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-punkte" label="Punkte" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#punkte" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-teilgenommen" label="Teilgen." flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#teilgenommen" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-ort_kurzbz" label="Ort" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-rt_id" label="ReihungstestID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-person_id" label="PersonID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#person_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-rt_person_id" label="RTPersonID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_person_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studienplan_bezeichnung" label="Studienplan" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_bezeichnung" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studienplan_id" label="StudienplanID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_id" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-studienplan_studiengang" label="Stg" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_studiengang" />
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-datum_iso" label="DatumISO" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum_iso"/>
<splitter class="tree-splitter"/>
<treecol id="aufnahmetermine-tree-anmeldedatum_iso" label="AnmeldedatumISO" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum_iso"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow properties="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#properties">
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#stufe"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studiensemester"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmerkung"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#punkte"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#teilgenommen"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#ort_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#person_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#rt_person_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_id"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#studienplan_studiengang"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#datum_iso"/>
<treecell label="rdf:http://www.technikum-wien.at/aufnahmetermine/rdf#anmeldedatum_iso"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
<vbox>
<hbox>
<button id="aufnahmetermine-button-neu" label="Neu" oncommand="AufnahmeTermineNeu();"/>
<button id="aufnahmetermine-button-loeschen" label="Loeschen" oncommand="AufnahmeTermineDelete();"/>
</hbox>
<vbox hidden="true">
<label value="person_id" control="aufnahmetermine-textbox-person_id"/>
<textbox id="aufnahmetermine-textbox-person_id" disabled="true"/>
<label value="studienplan_studiengang_kz" control="aufnahmetermine-textbox-studienplan_studiengang_kz"/>
<textbox id="aufnahmetermine-textbox-studienplan_studiengang_kz" disabled="true"/>
<label value="Neu" control="aufnahmetermine-checkbox-neu"/>
<checkbox id="aufnahmetermine-checkbox-neu" disabled="true" checked="false"/>
<label value="rt_person_id" control="aufnahmetermine-textbox-rt_person_id"/>
<textbox id="aufnahmetermine-textbox-rt_person_id" disabled="true"/>
</vbox>
<groupbox id="aufnahmetermine-groupbox" flex="1">
<caption label="Details"/>
<grid id="aufnahmetermine-grid-detail" style="overflow:auto;margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="5"/>
</columns>
<rows>
<row>
<label value="Reihungstest / Interview" control="aufnahmetermine-menulist-reihungstest"/>
<hbox>
<menulist id="aufnahmetermine-menulist-reihungstest" disabled="true"
datasources="rdf:null" flex="1" style="width:200px"
ref="http://www.technikum-wien.at/reihungstest/alle">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/reihungstest/rdf#reihungstest_id"
label="rdf:http://www.technikum-wien.at/reihungstest/rdf#bezeichnung"
tooltiptext="rdf:http://www.technikum-wien.at/reihungstest/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<toolbarbutton id="aufnahmetermine-button-reihungstest-refresh" image="../../skin/images/refresh.png" tooltiptext="Alle zukünftigen Reihungstests des Studiengangs laden" onclick="AufnahmeTermineReihungstestDropDownRefresh()"/>
<toolbarbutton id="aufnahmetermine-button-reihungstest-open" image="../../skin/images/edit.png" tooltiptext="Zur Reihungstestverwaltung" onclick="AufnahmeTermineReihungstestEdit()"/>
<spacer flex="1"/>
</hbox>
</row>
<row>
<label value="&tab-prestudent-aufnahme.anmeldung;" control="aufnahmetermine-textbox-anmeldungreihungstest"/>
<hbox>
<box class="Datum" id="aufnahmetermine-textbox-anmeldungreihungstest" disabled="true"/>
<button id="aufnahmetermine-button-anmeldungreihungstest-heute" label="Heute" oncommand="AufnahmeTermineAnmeldungreihungstestHeute()" disabled="true" style="margin:0px;"/>
</hbox>
</row>
<row>
<label value="&tab-prestudent-aufnahme.absolviert;" control="aufnahmetermine-checkbox-teilgenommen"/>
<checkbox id="aufnahmetermine-checkbox-teilgenommen" checked="true" disabled="true"/>
</row>
<row>
<label value="Reihungstest Studienplan" control="aufnahmetermine-menulist-studienplan"/>
<hbox>
<menulist id="aufnahmetermine-menulist-studienplan" disabled="true"
datasources="rdf:null" flex="1"
ref="http://www.technikum-wien.at/studienplan">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/studienplan/rdf#studienplan_id"
label="rdf:http://www.technikum-wien.at/studienplan/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<spacer flex="1"/>
</hbox>
</row>
<row>
<label value="Punkte" control="aufnahmetermine-textbox-punkte" />
<hbox>
<textbox id="aufnahmetermine-textbox-punkte" disabled="true" maxlength="8" size="6"/>
<toolbarbutton id="aufnahmetermine-button-reihungstest-punktesync" image="../../skin/images/transmit.png" tooltiptext="Reihungstest Ergebnis holen" onclick="AufnahemTermineReihungstestPunkteTransmit()"/>
<spacer flex="1" />
</hbox>
</row>
<groupbox id="aufnahmetermine-groupbox-vergleich-endpunkte" hidden="true">
<caption label="Vergleichswerte Reihungstestpunkte (Basisgebiete)"></caption>
<vbox style="padding: 10px;">
<spacer resize='none' height='10' flex="1"/>
<row>
<label value="Reihungstestpunkte (inkl. Physik)" control="aufnahmetermine-textbox-endpunkte-inkl-gebiete" style="margin-right: 7px;"/>
<hbox>
<textbox id="aufnahmetermine-textbox-endpunkte-inkl-gebiete" readonly="true" maxlength="8" size="6" flex="1"/>
<toolbarbutton image="../../skin/images/up.png" tooltiptext="Als Punkte setzen" onclick="setEndpunkteAsPunkte('aufnahmetermine-textbox-endpunkte-inkl-gebiete')"/>
</hbox>
</row>
<row>
<label value="Reihungstestpunkte (exkl. Physik)" control="aufnahmetermine-textbox-endpunkte-exkl-gebiete" />
<hbox>
<textbox id="aufnahmetermine-textbox-endpunkte-exkl-gebiete" readonly="true" maxlength="8" size="6" flex="1"/>
<toolbarbutton image="../../skin/images/up.png" tooltiptext="Als Punkte setzen" onclick="setEndpunkteAsPunkte('aufnahmetermine-textbox-endpunkte-exkl-gebiete')"/>
</hbox>
</row>
</vbox>
</groupbox>
</rows>
</grid>
<hbox>
<button id="aufnahmetermine-button-speichern" oncommand="AufnahmeTermineSpeichern()" label="Speichern" disabled="true"/>
<spacer flex="1" />
</hbox>
</groupbox>
</vbox>
</row>
</rows>
</grid>
</hbox>
</groupbox>
<spacer flex="1" />
</vbox>
</window>
File diff suppressed because it is too large Load Diff
+11 -7
View File
@@ -145,12 +145,16 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</row>
<row>
<label value="Geschlecht" control="student-detail-menulist-geschlecht"/>
<menulist id="student-detail-menulist-geschlecht" disabled="true">
<menupopup>
<menuitem value="m" label="maennlich"/>
<menuitem value="w" label="weiblich"/>
<menuitem value="u" label="unbekannt"/>
</menupopup>
<menulist id="student-detail-menulist-geschlecht" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/geschlecht.rdf.php"
ref="http://www.technikum-wien.at/geschlecht">
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/geschlecht/rdf#geschlecht"
label="rdf:http://www.technikum-wien.at/geschlecht/rdf#bezeichnung"
uri="rdf:*"/>
</menupopup>
</template>
</menulist>
<label value="Familienstand" control="student-detail-menulist-familienstand"/>
<menulist id="student-detail-menulist-familienstand" disabled="true">
@@ -475,7 +479,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</hbox>
<hbox>
<label value="Priorität" control="student-prestudent-textbox-priorisierung"/>
<?php
<?php
$readonly = 'readonly="true"';
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
@@ -247,6 +247,7 @@ $is_hidden = (!defined('FAS_STUDIERENDE_PROJEKTARBEIT_VERTRAGSDETAILS_ANZEIGEN')
<label value="Lehreinheit" control="student-projektarbeit-menulist-lehreinheit"/>
<menulist id="student-projektarbeit-menulist-lehreinheit" disabled="true"
datasources="rdf:null" flex="1"
style="max-width: 600px"
ref="http://www.technikum-wien.at/lehreinheit/liste" >
<template>
<menupopup>
+1070 -889
View File
File diff suppressed because it is too large Load Diff
+116
View File
@@ -0,0 +1,116 @@
<?php
/* Copyright (C) 2019 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
*/
require_once(dirname(__FILE__).'/basis_db.class.php');
require_once(dirname(__FILE__).'/sprache.class.php');
class geschlecht extends basis_db
{
public $new; // boolean
public $result = array();
//Tabellenspalten
public $geschlecht; // character(1)
public $bezeichnung_mehrsprachig; // varchar(255)[]
public $bezeichnung_mehrsprachig_arr = array();
/**
* Konstruktor
* @param $geschlecht ID des Geschlechts das geladen werden soll (Default=null)
*/
public function __construct($geschlecht=null)
{
parent::__construct();
if(!is_null($geschlecht))
$this->load($geschlecht);
}
/**
* Laedt ein geschlecht
* @param $geschlecht das zu ladende Geschlecht
* @return true wenn ok, false im Fehlerfall
*/
public function load($geschlecht)
{
$sprache = new sprache();
$qry = "
SELECT
*,".$sprache->getSprachQuery('bezeichnung_mehrsprachig')."
FROM
public.tbl_geschlecht
WHERE
geschlecht=".$this->db_add_param($geschlecht);
if(!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
if($row = $this->db_fetch_object())
{
$this->geschlecht = $row->geschlecht;
$this->bezeichnung_mehrsprachig_arr = $sprache->parseSprachResult('bezeichnung_mehrsprachig', $row);
}
else
{
$this->errormsg = 'Es ist kein Datensatz mit dieser ID vorhanden';
return false;
}
return true;
}
/**
* Laedt alle Geschlechter
* @return boolean true wenn erfolgreich, false im Fehlerfall
*/
public function getAll()
{
$sprache = new sprache();
$qry = "
SELECT
*,".$sprache->getSprachQuery('bezeichnung_mehrsprachig')."
FROM
public.tbl_geschlecht
ORDER BY sort, geschlecht";
if (!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
while ($row = $this->db_fetch_object())
{
$obj = new stdClass();
$obj->geschlecht = $row->geschlecht;
$obj->bezeichnung_mehrsprachig_arr = $sprache->parseSprachResult('bezeichnung_mehrsprachig', $row);
$this->result[] = $obj;
}
return true;
}
}
?>
+1 -6
View File
@@ -374,12 +374,7 @@ class person extends basis_db
$this->errormsg = 'Staatsbuergerschaft darf nicht laenger als 3 Zeichen sein';
return false;
}
if ($this->geschlecht != 'm' && $this->geschlecht != 'w' && $this->geschlecht != 'u')
{
$this->errormsg = 'Geschlecht muss w, m oder u sein!';
return false;
}
//Pruefen ob das Geburtsdatum mit der SVNR uebereinstimmt.
if ($this->svnr != '' && $this->gebdatum != '')
{
+53 -31
View File
@@ -350,9 +350,10 @@ class pruefling extends basis_db
* definiert sind, bei der Berechnung der Endpunkte nicht berücksichtigt.
* @param $studiengang_kz Wenn eine Studiengangskennzahl übergeben wird, dann werden nur die Punkte der
* Basis-Fragengebiete (ohne Quereinsteiger) bei der Berechnung der Endpunkte berücksichtigt.
* @param $gewichtung_studiengang_kz Wenn diese studiengang_kz übergeben wird, wird das Ergebnis entsprechend des Gewichtungsschemas des Studienganges gewichtet
* @return Endpunkte des Reihungstests oder False wenn keine Punkte vorhanden
*/
public function getReihungstestErgebnisPerson($person_id, $punkte=false, $reihungstest_id, $has_excluded_gebiete = false, $studiengang_kz = null)
public function getReihungstestErgebnisPerson($person_id, $punkte=false, $reihungstest_id, $has_excluded_gebiete = false, $studiengang_kz = null, $gewichtung_studiengang_kz = null)
{
if(is_numeric($reihungstest_id))
{
@@ -415,39 +416,57 @@ class pruefling extends basis_db
* Ergebniss der beiden Tests summiert bekommen
* Im Zweifelsfall wird der neuere Reihungstest genommen */
$qry .= "
AND prestudent_id = (
SELECT
prestudent_id
FROM
public.tbl_rt_person
JOIN
public.tbl_prestudent USING(person_id)
JOIN
public.tbl_prestudentstatus USING (prestudent_id, studienplan_id)
JOIN
tbl_reihungstest ON (
tbl_rt_person.rt_id = tbl_reihungstest.reihungstest_id
)
WHERE
tbl_rt_person.person_id = ".$this->db_add_param($person_id, FHC_INTEGER)."
AND
tbl_rt_person.rt_id = ".$this->db_add_param($reihungstest_id, FHC_INTEGER)."
AND
tbl_prestudentstatus.status_kurzbz='Interessent'
AND
tbl_prestudentstatus.studiensemester_kurzbz = tbl_reihungstest.studiensemester_kurzbz
ORDER BY
tbl_reihungstest.datum DESC, tbl_prestudent.priorisierung ASC LIMIT 1
)
";
AND prestudent_id = (
SELECT
prestudent_id
FROM
public.tbl_rt_person
JOIN
public.tbl_prestudent USING(person_id)
JOIN
public.tbl_prestudentstatus USING (prestudent_id, studienplan_id)
JOIN
tbl_reihungstest ON (
tbl_rt_person.rt_id = tbl_reihungstest.reihungstest_id
)
WHERE
tbl_rt_person.person_id = ".$this->db_add_param($person_id, FHC_INTEGER)."
AND
tbl_rt_person.rt_id = ".$this->db_add_param($reihungstest_id, FHC_INTEGER)."
AND
tbl_prestudentstatus.status_kurzbz='Interessent'
AND
tbl_prestudentstatus.studiensemester_kurzbz = tbl_reihungstest.studiensemester_kurzbz
ORDER BY tbl_reihungstest.datum DESC, tbl_prestudent.priorisierung ASC LIMIT 1
)
";
//calculate Gewichte for Studiengang if set
$gewichte = array();
if (isset($gewichtung_studiengang_kz))
{
$ablauf = new ablauf();
$ablauf->getAblaufGebiete($gewichtung_studiengang_kz);
foreach ($ablauf->result as $abl)
{
$gewichte[$abl->gebiet_id] = $abl->gewicht;
}
}
if($result = $this->db_query($qry))
{
// Wenn keine Eintraege vorhanden dann false
if($this->db_num_rows($result)==0)
return false;
$summeGewicht = 0;
while($row = $this->db_fetch_object($result))
{
if (!isset($row->punkte))
continue;
//wenn maxpunkte ueberschritten wurde -> 100%
if($row->punkte>=$row->maxpunkte)
{
@@ -455,17 +474,20 @@ class pruefling extends basis_db
$row->punkte = $row->maxpunkte;
}
else
$prozent = ($row->punkte/$row->maxpunkte)*100;
$prozent = (($row->punkte + $row->offsetpunkte)/($row->maxpunkte + $row->offsetpunkte))*100;
if($punkte)
{
$ergebnis +=$row->punkte;
$ergebnis += $row->punkte;
}
else
$ergebnis+=$prozent*$row->gewicht;
{
$gew = isset($gewichte[$row->gebiet_id]) ? $gewichte[$row->gebiet_id] : 1;
$ergebnis += $prozent * $gew;
$summeGewicht += $gew;
}
}
return $ergebnis;
return $summeGewicht > 0 ? $ergebnis/$summeGewicht : $ergebnis;
}
else
{
+6 -4
View File
@@ -154,6 +154,7 @@ class studienordnung extends basis_db
FROM lehre.tbl_studienordnung sto
LEFT JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
LEFT JOIN public.tbl_studiensemester ON(sto.gueltigvon=tbl_studiensemester.studiensemester_kurzbz)
LEFT JOIN public.tbl_studiensemester stoende ON(sto.gueltigbis=stoende.studiensemester_kurzbz)
WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
}
else
@@ -164,6 +165,7 @@ class studienordnung extends basis_db
LEFT JOIN lehre.tbl_studienplan USING(studienordnung_id)
LEFT JOIN lehre.tbl_studienplan_semester sem USING (studienplan_id)
LEFT JOIN public.tbl_studiensemester ON(sto.gueltigvon=tbl_studiensemester.studiensemester_kurzbz)
LEFT JOIN public.tbl_studiensemester stoende ON(sto.gueltigbis=stoende.studiensemester_kurzbz)
WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
if (!is_null($studiensemester_kurzbz))
@@ -172,7 +174,7 @@ class studienordnung extends basis_db
$qry.=" AND semester=".$this->db_add_param($semester, FHC_INTEGER,false);
}
$qry.=" ORDER BY gueltig_startdatum desc";
$qry.=" ORDER BY gueltig_startdatum desc, stoende.start nulls first";
if(!$this->db_query($qry))
{
@@ -475,10 +477,10 @@ class studienordnung extends basis_db
return false;
}
$qry = 'SELECT 1 FROM lehre.tbl_studienplan_semester
WHERE studienplan_id
$qry = 'SELECT 1 FROM lehre.tbl_studienplan_semester
WHERE studienplan_id
IN (SELECT studienplan_id FROM lehre.tbl_studienplan
WHERE studienordnung_id ='.$this->db_add_param($studienordnung_id).';';
WHERE studienordnung_id ='.$this->db_add_param($studienordnung_id).';';
if($this->db_query($qry))
{
+9 -8
View File
@@ -113,11 +113,11 @@ if($prestudent_id!='')
// * Endpunkte über alle Basisgebiete
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
{
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, true, $row->reihungstest_id, false, $row->studiengang_kz);
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, true, $row->reihungstest_id, false, $row->studiengang_kz, $studiengang_kz);
}
else
{
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, false, $row->reihungstest_id, false, $row->studiengang_kz);
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, false, $row->reihungstest_id, false, $row->studiengang_kz, $studiengang_kz);
}
// * ggf. Endpunkte exklusive bestimmter Gebiete, die in der config-Datei gesetzt sind
@@ -125,11 +125,11 @@ if($prestudent_id!='')
{
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
{
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, true, $row->reihungstest_id, true, $row->studiengang_kz);
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, true, $row->reihungstest_id, true, $row->studiengang_kz, $studiengang_kz);
}
else
{
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, false, $row->reihungstest_id, true, $row->studiengang_kz);
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($row->person_id, false, $row->reihungstest_id, true, $row->studiengang_kz, $studiengang_kz);
}
}
@@ -174,22 +174,22 @@ elseif($rt_person_id!='')
// * Endpunkte über alle Basisgebiete
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
{
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, true, $reihungstest->reihungstest_id, false, $studiengang_kz);
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, true, $reihungstest->reihungstest_id, false, $studiengang_kz, $studiengang_kz);
}
else
{
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, false, $reihungstest->reihungstest_id, false, $studiengang_kz);
$endpunkte_inkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, false, $reihungstest->reihungstest_id, false, $studiengang_kz, $studiengang_kz);
}
// * ggf. Endpunkte exklusive bestimmter Gebiete, die in der config-Datei gesetzt sind
if (defined('FAS_REIHUNGSTEST_EXCLUDE_GEBIETE') && !empty(FAS_REIHUNGSTEST_EXCLUDE_GEBIETE))
{
if(defined('FAS_REIHUNGSTEST_PUNKTE') && FAS_REIHUNGSTEST_PUNKTE)
{
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, true, $reihungstest->reihungstest_id, true, $studiengang_kz);
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, true, $reihungstest->reihungstest_id, true, $studiengang_kz, $studiengang_kz);
}
else
{
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, false, $reihungstest->reihungstest_id, true, $studiengang_kz);
$endpunkte_exkl_gebiete = $pruefling->getReihungstestErgebnisPerson($reihungstest->person_id, false, $reihungstest->reihungstest_id, true, $studiengang_kz, $studiengang_kz);
}
}
@@ -244,6 +244,7 @@ function drawrow($row)
$oRdf->obj[$i]->setAttribut('stufe',$reihungstest_obj->stufe,true);
$oRdf->obj[$i]->setAttribut('studienplan_id',$row->studienplan_id,true);
$oRdf->obj[$i]->setAttribut('studienplan_bezeichnung',$studienplan->bezeichnung,true);
$oRdf->obj[$i]->setAttribut('studienplan_studiengang_kz',$stpl_stg->studiengang_kz,true);
$oRdf->obj[$i]->setAttribut('studienplan_studiengang',$stpl_stg->kuerzel,true);
$oRdf->obj[$i]->setAttribut('studiensemester',$reihungstest_obj->studiensemester_kurzbz,true);
$oRdf->obj[$i]->setAttribut('datum',$datum_obj->formatDatum($reihungstest_obj->datum,'d.m.Y'),true);
+40
View File
@@ -0,0 +1,40 @@
<?php
/* Copyright (C) 2019 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/rdf.class.php');
require_once('../include/basis_db.class.php');
require_once('../include/geschlecht.class.php');
$oRdf = new rdf('GESCHLECHT','http://www.technikum-wien.at/geschlecht');
$oRdf->sendHeader();
$geschlecht = new geschlecht();
$geschlecht->getAll();
foreach($geschlecht->result as $row)
{
$i=$oRdf->newObjekt($row->geschlecht);
$oRdf->obj[$i]->setAttribut('geschlecht', $row->geschlecht,true);
$oRdf->obj[$i]->setAttribut('bezeichnung', $row->bezeichnung_mehrsprachig_arr[DEFAULT_LANGUAGE],true);
$oRdf->addSequence($row->geschlecht);
}
$oRdf->sendRdfText();
?>
+139 -140
View File
@@ -16,8 +16,8 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
* Karl Burkhart <burkhart@technikum-wien.at>
* Manfred Kindl <kindlm@technikum-wien.at>
* Karl Burkhart <burkhart@technikum-wien.at>
* Manfred Kindl <kindlm@technikum-wien.at>
*/
header("Content-type: application/xhtml+xml");
require_once('../config/vilesci.config.inc.php');
@@ -36,6 +36,7 @@ require_once('../include/mitarbeiter.class.php');
require_once('../include/organisationsform.class.php');
require_once('../include/zgv.class.php');
require_once('../include/konto.class.php');
require_once('../include/geschlecht.class.php');
$uid_arr = (isset($_REQUEST['uid'])?$_REQUEST['uid']:null);
$studiensemester = (isset($_REQUEST['ss'])?$_REQUEST['ss']:null);
@@ -52,33 +53,33 @@ $student_help = new student();
// an 2ter stelle da im Aufruf vom FAS ;<uid>; der erste immer '' ist
if($student_help->load($uid))
{
$studiengang = new studiengang();
$studiengang->load($student_help->studiengang_kz);
$studiengang = new studiengang();
$studiengang->load($student_help->studiengang_kz);
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t<studiengang><![CDATA[".$studiengang->bezeichnung."]]></studiengang>\n";
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t<studiengang_typ>".$studTyp."</studiengang_typ>\n";
echo "\t<studiengang><![CDATA[".$studiengang->bezeichnung."]]></studiengang>\n";
}
foreach($uid_arr as $uid)
@@ -105,152 +106,150 @@ foreach($uid_arr as $uid)
$staatsbuergerschaft->load($student->staatsbuergerschaft);
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
$svnr = ($student->svnr == '')?'Ersatzkennzeichen: '.$student->ersatzkennzeichen:$student->svnr;
switch($student->geschlecht)
{
case 'm':
$geschlecht = 'Männlich';
break;
case 'w':
$geschlecht = 'Weiblich';
break;
case 'u':
$geschlecht = 'Unbekannt';
break;
default:
$geschlecht ='';
}
$geschlecht_obj = new geschlecht();
$geschlecht_obj->load($student->geschlecht);
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
if ($studienordnung->studiengang_kz<0)
{
$stg = new studiengang();
$stg->load($studienordnung->studiengang_kz);
$geschlecht = $geschlecht_obj->bezeichnung_mehrsprachig_arr[DEFAULT_LANGUAGE];
$geschlecht_englisch = $geschlecht_obj->bezeichnung_mehrsprachig_arr['English'];
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studienordnung->studiengang_kz));
}
else
$studiengang_kz = sprintf("%04s", abs($studienordnung->studiengang_kz));
//Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen
if ($studienordnung->studiengang_kz<0)
{
$stg = new studiengang();
$stg->load($studienordnung->studiengang_kz);
$studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($studienordnung->studiengang_kz));
}
else
$studiengang_kz = sprintf("%04s", abs($studienordnung->studiengang_kz));
$sprache_obj = new sprache();
$sprache_obj->load($studienplan->sprache);
$studienplan_sprache = $sprache_obj->bezeichnung_arr[DEFAULT_LANGUAGE];
$studienplan_sprache_englisch = $sprache_obj->bezeichnung_arr['English'];
echo "\t\t<quote>1</quote>\n";
echo "\t\t<personenkz>".$uid."</personenkz>\n";
echo "\t\t<geschlecht>".$geschlecht."</geschlecht>\n";
echo "\t\t<personenkz><![CDATA[".$uid."]]></personenkz>\n";
echo "\t\t<geschlecht><![CDATA[".$geschlecht."]]></geschlecht>\n";
echo "\t\t<geschlecht_englisch><![CDATA[".$geschlecht_englisch."]]></geschlecht_englisch>\n";
echo "\t\t<anrede><![CDATA[".$student->anrede."]]></anrede>\n";
echo "\t\t<vorname><![CDATA[".$student->vorname." ".$student->vornamen."]]></vorname>\n";
echo "\t\t<vornamen><![CDATA[".$student->vornamen."]]></vornamen>\n";
echo "\t\t<nachname><![CDATA[".$student->nachname."]]></nachname>\n";
echo "\t\t<titelpre><![CDATA[".$student->titelpre."]]></titelpre>\n";
echo "\t\t<titelpost><![CDATA[".$student->titelpost."]]></titelpost>\n";
echo "\t\t<gebdatum>".$gebdatum."</gebdatum>\n";
echo "\t\t<gebdatum><![CDATA[".$gebdatum."]]></gebdatum>\n";
echo "\t\t<gebort><![CDATA[".$student->gebort."]]></gebort>\n";
echo "\t\t<staatsbuergerschaft><![CDATA[".$staatsbuergerschaft->langtext."]]></staatsbuergerschaft>\n";
echo "\t\t<svnr>".$svnr."</svnr>\n";
echo "\t\t<matr_nr>".trim($student->matr_nr)."</matr_nr>\n";
echo "\t\t<matrikelnr>".trim($student->matrikelnr)."</matrikelnr>\n";
echo "\t\t<svnr><![CDATA[".$svnr."]]></svnr>\n";
echo "\t\t<matr_nr><![CDATA[".trim($student->matr_nr)."]]></matr_nr>\n";
echo "\t\t<matrikelnr><![CDATA[".trim($student->matrikelnr)."]]></matrikelnr>\n";
echo "\t\t<studiengang><![CDATA[".$studienordnung->studiengangbezeichnung."]]></studiengang>\n";
echo "\t\t<studiengang_englisch><![CDATA[".$studienordnung->studiengangbezeichnung_englisch."]]></studiengang_englisch>\n";
echo "\t\t<studiengang_kurzbz><![CDATA[".$studienordnung->studiengangkurzbzlang."]]></studiengang_kurzbz>\n";
echo "\t\t<studiengang_kurzbz><![CDATA[".$studienordnung->studiengangkurzbzlang."]]></studiengang_kurzbz>\n";
echo "\t\t<studiengang_kz><![CDATA[".$studiengang_kz."]]></studiengang_kz>\n";
echo "\t\t<studiengangSprache><![CDATA[".$studienplan->sprache."]]></studiengangSprache>";
echo "\t\t<ects_gesamt>".$studienordnung->ects."</ects_gesamt>";
echo "\t\t<ects_pro_semester>".($studienplan->regelstudiendauer!=0?$studienordnung->ects/$studienplan->regelstudiendauer:0)."</ects_pro_semester>";
echo "\t\t<studiengangSprache><![CDATA[".$studienplan_sprache."]]></studiengangSprache>";
echo "\t\t<studiengangSpracheEnglisch><![CDATA[".$studienplan_sprache_englisch."]]></studiengangSpracheEnglisch>";
echo "\t\t<ects_gesamt><![CDATA[".$studienordnung->ects."]]></ects_gesamt>";
echo "\t\t<ects_pro_semester><![CDATA[".($studienplan->regelstudiendauer!=0?$studienordnung->ects/$studienplan->regelstudiendauer:0)."]]></ects_pro_semester>";
echo "\t\t<aktuellesJahr>".date('Y')."</aktuellesJahr>";
echo "\t\t<aktuellesJahr><![CDATA[".date('Y')."]]></aktuellesJahr>";
echo "\t\t<ausbildungssemester_aktuell>".$prestudent->ausbildungssemester."</ausbildungssemester_aktuell>";
echo "\t\t<ausbildungssemester_aktuell><![CDATA[".$prestudent->ausbildungssemester."]]></ausbildungssemester_aktuell>";
$studiensemester_aktuell = new studiensemester();
$studiensemester_aktuell->load($studiensemester);
$studiensemester_aktuell = new studiensemester();
$studiensemester_aktuell->load($studiensemester);
echo "\t\t<studiensemester_aktuell><![CDATA[".$studiensemester_aktuell->bezeichnung."]]></studiensemester_aktuell>";
echo "\t\t<studiensemester_aktuell><![CDATA[".$studiensemester_aktuell->bezeichnung."]]></studiensemester_aktuell>";
// check ob Oeh-Beitrag bezahlt wurde
$oehbeitrag = $konto->getOehBeitragGesamt($uid, $studiensemester_aktuell->studiensemester_kurzbz);
echo "\t\t<oehbeitrag>".str_replace('.', ',', $oehbeitrag)."</oehbeitrag>";
echo "\t\t<oehbeitrag><![CDATA[".str_replace('.', ',', $oehbeitrag)."]]></oehbeitrag>";
// check ob Quereinsteiger
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'';
echo "\t\t<semesterStudent>".$ausbildungssemester."</semesterStudent>";
// check ob Quereinsteiger
$ausbildungssemester = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->ausbildungssemester:'';
echo "\t\t<semesterStudent><![CDATA[".$ausbildungssemester."]]></semesterStudent>";
$studiensemester_beginn = new studiensemester();
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
$studiensemester_beginn->load($studienbeginn);
$studiensemester_beginn = new studiensemester();
$studienbeginn = ($prestudent->getFirstStatus($student->prestudent_id, 'Student'))?$prestudent->studiensemester_kurzbz:'';
$studiensemester_beginn->load($studienbeginn);
echo "\t\t<studiensemester_beginn>".$studiensemester_beginn->bezeichnung."</studiensemester_beginn>";
echo "\t\t<studiensemester_beginndatum>".date('d.m.Y',strtotime($studiensemester_beginn->start))."</studiensemester_beginndatum>";
echo "\t\t<studiensemester_beginn><![CDATA[".$studiensemester_beginn->bezeichnung."]]></studiensemester_beginn>";
echo "\t\t<studiensemester_beginndatum><![CDATA[".date('d.m.Y',strtotime($studiensemester_beginn->start))."]]></studiensemester_beginndatum>";
$prestudent->getLastStatus($student->prestudent_id,$studiensemester);
$studiensemester_abschluss = new studiensemester();
$abschluss = $studiensemester_abschluss->jump($prestudent->studiensemester_kurzbz, $studienplan->regelstudiendauer-$prestudent->ausbildungssemester);
$studiensemester_abschluss->load($abschluss);
echo "\t\t<voraussichtlichLetztesStudiensemester>".$studiensemester_abschluss->bezeichnung."</voraussichtlichLetztesStudiensemester>";
echo "\t\t<voraussichtlichLetztesStudiensemester_datum>".date('d.m.Y',strtotime($studiensemester_abschluss->ende))."</voraussichtlichLetztesStudiensemester_datum>";
$prestudent->getLastStatus($student->prestudent_id,$studiensemester);
$studiensemester_abschluss = new studiensemester();
$abschluss = $studiensemester_abschluss->jump($prestudent->studiensemester_kurzbz, $studienplan->regelstudiendauer-$prestudent->ausbildungssemester);
$studiensemester_abschluss->load($abschluss);
echo "\t\t<voraussichtlichLetztesStudiensemester><![CDATA[".$studiensemester_abschluss->bezeichnung."]]></voraussichtlichLetztesStudiensemester>";
echo "\t\t<voraussichtlichLetztesStudiensemester_datum><![CDATA[".date('d.m.Y',strtotime($studiensemester_abschluss->ende))."]]></voraussichtlichLetztesStudiensemester_datum>";
$studiensemester_endedatum = new studiensemester();
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
$studiensemester_endedatum = new studiensemester();
$studiensemester_endedatum->load($studiensemester_endedatum->getaktorNext(1));
echo "\t\t<studiensemester_endedatum>".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."</studiensemester_endedatum>";
echo "\t\t<studiensemester_endedatum><![CDATA[".date('d.m.Y',strtotime($studiensemester_endedatum->ende))."]]></studiensemester_endedatum>";
$status_aktuell = ($prestudent->getLastStatus($student->prestudent_id,null,null))?$prestudent->status_kurzbz:'';
$status_aktuell = ($prestudent->getLastStatus($student->prestudent_id,null,null))?$prestudent->status_kurzbz:'';
switch($status_aktuell)
{
case 'Student':
$studierendenstatus_aktuell = 'Aktive/r StudentIn';
break;
case 'Unterbrecher':
$studierendenstatus_aktuell = 'UnterbrecherIn';
break;
case 'Absolvent':
$studierendenstatus_aktuell = 'AbsolventIn';
break;
case 'Diplomand':
$studierendenstatus_aktuell = 'DiplomandIn';
break;
case 'Abbrecher':
$studierendenstatus_aktuell = 'AbbrecherIn';
break;
default:
$studierendenstatus_aktuell ='';
}
{
case 'Student':
$studierendenstatus_aktuell = 'Aktive/r StudentIn';
break;
case 'Unterbrecher':
$studierendenstatus_aktuell = 'UnterbrecherIn';
break;
case 'Absolvent':
$studierendenstatus_aktuell = 'AbsolventIn';
break;
case 'Diplomand':
$studierendenstatus_aktuell = 'DiplomandIn';
break;
case 'Abbrecher':
$studierendenstatus_aktuell = 'AbbrecherIn';
break;
default:
$studierendenstatus_aktuell ='';
}
echo "\t\t<studierendenstatus_aktuell>".$studierendenstatus_aktuell."</studierendenstatus_aktuell>\n";
echo "\t\t<datum_reifepruefung>".$prestudent->zgvdatum."</datum_reifepruefung>\n";
$zgv = new zgv($prestudent->zgv_code);
echo "\t\t<schulform_zgv><![CDATA[".$zgv->zgv_kurzbz."]]></schulform_zgv>\n";
echo "\t\t<studienplan_bezeichnung><![CDATA[".$studienplan->bezeichnung."]]></studienplan_bezeichnung>\n";
echo "\t\t<anmerkungpre><![CDATA[$prestudent->anmerkung]]></anmerkungpre>\n";
echo "\t\t<studierendenstatus_aktuell><![CDATA[".$studierendenstatus_aktuell."]]></studierendenstatus_aktuell>\n";
echo "\t\t<datum_reifepruefung><![CDATA[".$prestudent->zgvdatum."]]></datum_reifepruefung>\n";
$zgv = new zgv($prestudent->zgv_code);
echo "\t\t<schulform_zgv><![CDATA[".$zgv->zgv_kurzbz."]]></schulform_zgv>\n";
echo "\t\t<studienplan_bezeichnung><![CDATA[".$studienplan->bezeichnung."]]></studienplan_bezeichnung>\n";
echo "\t\t<anmerkungpre><![CDATA[$prestudent->anmerkung]]></anmerkungpre>\n";
$titel_kurzbz = '';
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
$titel_kurzbz = '';
switch($studiengang->typ)
{
case 'b':
$studTyp = 'Bachelor';
$titel_kurzbz = 'BSc';
break;
case 'm':
$studTyp = 'Master';
$titel_kurzbz ='MSc';
break;
case 'd':
$studTyp = 'Diplom';
break;
case 'l':
$studTyp = 'Lehrgang';
break;
case 'k':
$studTyp = 'Kurzstudium';
break;
default:
$studTyp ='';
$titel_kurzbz = '';
}
echo "\t\t<titel_kurzbz><![CDATA[".$titel_kurzbz."]]></titel_kurzbz>\n";
echo "\t\t<titel_kurzbz><![CDATA[".$titel_kurzbz."]]></titel_kurzbz>\n";
echo "\t\t<studiengang_typ><![CDATA[".$studTyp."]]></studiengang_typ>\n";
echo "\t\t<studienplan_sprache><![CDATA[".$studienplan->sprache."]]></studienplan_sprache>\n";
echo "\t\t<regelstudiendauer>".$studienplan->regelstudiendauer."</regelstudiendauer>\n";
echo "\t\t<regelstudiendauer><![CDATA[".$studienplan->regelstudiendauer."]]></regelstudiendauer>\n";
$akadgrad = new akadgrad();
$akadgrad->getAkadgradStudent($student->uid);
@@ -272,15 +271,15 @@ foreach($uid_arr as $uid)
$lv_studiengang=new studiengang();
$lv_studiengang->load($lv_studiengang_kz);
$lv_studiengang_bezeichnung=$lv_studiengang->bezeichnung;
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
$stg_typ->getStudiengangTyp($lv_studiengang->typ);
$lv_studiengang_typ=$stg_typ->bezeichnung;
}
echo "\t\t<lv_studiengang_kz>".sprintf('%04s', $lv_studiengang_kz)."</lv_studiengang_kz>";
echo "\t\t<lv_studiengang_kz><![CDATA[".sprintf('%04s', $lv_studiengang_kz)."]]></lv_studiengang_kz>";
echo "\t\t<lv_studiengang_typ><![CDATA[$lv_studiengang_typ]]></lv_studiengang_typ>";
echo "\t\t<lv_studiengang_bezeichnung><![CDATA[$lv_studiengang_bezeichnung]]></lv_studiengang_bezeichnung>";
echo "\t\t<datum_aktuell>".$datum_aktuell."</datum_aktuell>\n";
echo "\t\t<datum_aktuell><![CDATA[".$datum_aktuell."]]></datum_aktuell>\n";
$adresse = new adresse();
$adresse->load_pers($student->person_id);
+189 -1
View File
@@ -3488,6 +3488,193 @@ if ($result = @$db->db_query("SELECT 1 FROM system.tbl_webservicetyp WHERE webse
}
}
// Add new Table for gender
// Add FK to public.tbl_person and Drop old Check Constraint
if(!$result = @$db->db_query("SELECT 1 FROM public.tbl_geschlecht LIMIT 1"))
{
$qry = "
CREATE TABLE public.tbl_geschlecht
(
geschlecht character(1) NOT NULL,
bezeichnung_mehrsprachig varchar(255)[],
sort smallint
);
COMMENT ON TABLE public.tbl_geschlecht IS 'Key-Table of Gender';
ALTER TABLE public.tbl_geschlecht ADD CONSTRAINT pk_tbl_geschlecht PRIMARY KEY (geschlecht);
INSERT INTO public.tbl_geschlecht(geschlecht, bezeichnung_mehrsprachig, sort) VALUES ('m', '{\"männlich\",\"male\"}', 1);
INSERT INTO public.tbl_geschlecht(geschlecht, bezeichnung_mehrsprachig, sort) VALUES ('w', '{\"weiblich\",\"female\"}', 2);
INSERT INTO public.tbl_geschlecht(geschlecht, bezeichnung_mehrsprachig, sort) VALUES ('x', '{\"divers\",\"divers\"}', 3);
INSERT INTO public.tbl_geschlecht(geschlecht, bezeichnung_mehrsprachig, sort) VALUES ('u', '{\"unbekannt\",\"unknown\"}', 4);
ALTER TABLE public.tbl_person ADD CONSTRAINT fk_tbl_person_geschlecht FOREIGN KEY (geschlecht) REFERENCES public.tbl_geschlecht (geschlecht) ON DELETE RESTRICT ON UPDATE CASCADE;
ALTER TABLE public.tbl_person DROP CONSTRAINT tbl_person_geschlecht;
GRANT SELECT ON TABLE public.tbl_geschlecht TO web;
GRANT SELECT ON TABLE public.tbl_geschlecht TO wawi;
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE public.tbl_geschlecht TO vilesci;
";
if(!$db->db_query($qry))
echo '<strong>public.tbl_geschlecht: '.$db->db_last_error().'</strong><br>';
else
echo '<br>public.tbl_geschlecht hinzugefügt. Check Constraint für Geschlecht entfernt.';
}
if($result = $db->db_query("SELECT * FROM pg_proc WHERE proname = 'transform_geschlecht'"))
{
if ($db->db_num_rows($result) == 0)
{
$qry = '
CREATE OR REPLACE FUNCTION transform_geschlecht(character, date) RETURNS character
LANGUAGE plpgsql
AS $_$
DECLARE geschlecht ALIAS FOR $1;
DECLARE gebdatum ALIAS FOR $2;
BEGIN
IF geschlecht=\'x\' THEN
IF date_part(\'day\', gebdatum)::int%2=0 THEN
geschlecht:=\'m\';
ELSE
geschlecht:=\'w\';
END IF;
END IF;
RETURN geschlecht;
END;
$_$;';
if(!$db->db_query($qry))
echo '<strong>transform_geschlecht: '.$db->db_last_error().'</strong><br>';
else
echo '<br>Function transform_geschlecht hinzugefügt.';
}
}
// Add column offset to testtool.tbl_gebiet
if(!$result = @$db->db_query("SELECT offsetpunkte FROM testtool.tbl_gebiet LIMIT 1"))
{
$qry = "ALTER TABLE testtool.tbl_gebiet ADD COLUMN offsetpunkte numeric(8,4)";
if(!$db->db_query($qry))
echo '<strong>testtool.tbl_gebiet: '.$db->db_last_error().'</strong><br>';
else
echo '<br>testtool.tbl_gebiet: Spalte offsetpunkte hinzugefuegt';
}
// ADD COLUMN offset to testtool.vw_auswertung_ablauf
if(!$result = @$db->db_query("SELECT offsetpunkte FROM testtool.vw_auswertung_ablauf LIMIT 1"))
{
// CREATE OR REPLACE VIEW testtool.vw_auswertung_ablauf
$qry = '
CREATE OR REPLACE VIEW testtool.vw_auswertung_ablauf AS (
SELECT
tbl_gebiet.gebiet_id,
tbl_gebiet.bezeichnung AS gebiet,
tbl_ablauf.reihung,
tbl_gebiet.maxpunkte,
tbl_pruefling.pruefling_id,
tbl_pruefling.prestudent_id,
tbl_person.vorname,
tbl_person.nachname,
tbl_person.gebdatum,
tbl_person.geschlecht,
tbl_pruefling.semester,
upper(tbl_studiengang.typ::character varying(1)::text || tbl_studiengang.kurzbz::text) AS stg_kurzbz,
tbl_studiengang.bezeichnung AS stg_bez,
tbl_pruefling.registriert,
tbl_pruefling.idnachweis,
( SELECT sum(tbl_vorschlag.punkte) AS sum
FROM testtool.tbl_vorschlag
JOIN testtool.tbl_antwort USING (vorschlag_id)
JOIN testtool.tbl_frage USING (frage_id)
WHERE tbl_antwort.pruefling_id = tbl_pruefling.pruefling_id AND tbl_frage.gebiet_id = tbl_gebiet.gebiet_id
) AS punkte,
tbl_rt_person.rt_id AS reihungstest_id,
tbl_ablauf.gewicht,
tbl_studiengang.studiengang_kz,
tbl_gebiet.offsetpunkte
FROM
testtool.tbl_pruefling
JOIN testtool.tbl_ablauf ON tbl_ablauf.studiengang_kz = tbl_pruefling.studiengang_kz
JOIN testtool.tbl_gebiet USING (gebiet_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_rt_person USING (person_id)
JOIN lehre.tbl_studienplan ON tbl_studienplan.studienplan_id = tbl_rt_person.studienplan_id
JOIN lehre.tbl_studienordnung ON tbl_studienordnung.studienordnung_id = tbl_studienplan.studienordnung_id
JOIN public.tbl_studiengang ON tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz
WHERE NOT (tbl_ablauf.gebiet_id IN
(
SELECT tbl_kategorie.gebiet_id
FROM testtool.tbl_kategorie
)
) AND tbl_studienordnung.studiengang_kz = tbl_pruefling.studiengang_kz
)';
if(!$db->db_query($qry))
echo '<strong>testtool.vw_auswertung_ablauf: '.$db->db_last_error().'</strong><br>';
else
echo '<br>testtool.vw_auswertung_ablauf view created';
}
// ADD COLUMN offset to testtool.vw_auswertung_ablauf
if(!$result = @$db->db_query("SELECT offsetpunkte FROM testtool.vw_auswertung LIMIT 1"))
{
// CREATE OR REPLACE VIEW testtool.vw_auswertung_ablauf
$qry = '
CREATE OR REPLACE VIEW testtool.vw_auswertung AS
SELECT
tbl_gebiet.gebiet_id,
tbl_gebiet.bezeichnung AS gebiet,
tbl_gebiet.maxpunkte,
tbl_pruefling.pruefling_id,
tbl_pruefling.prestudent_id,
tbl_person.vorname,
tbl_person.nachname,
tbl_person.gebdatum,
tbl_person.geschlecht,
tbl_pruefling.semester,
upper(tbl_studiengang.typ::character varying(1)::text || tbl_studiengang.kurzbz::text) AS stg_kurzbz,
tbl_studiengang.bezeichnung AS stg_bez,
tbl_pruefling.registriert,
tbl_pruefling.idnachweis,
(
SELECT
sum(tbl_vorschlag.punkte) AS sum
FROM
testtool.tbl_vorschlag
JOIN testtool.tbl_antwort USING (vorschlag_id)
JOIN testtool.tbl_frage USING (frage_id)
WHERE
tbl_antwort.pruefling_id = tbl_pruefling.pruefling_id
AND tbl_frage.gebiet_id = tbl_gebiet.gebiet_id
) AS punkte,
tbl_rt_person.rt_id as reihungstest_id,
tbl_ablauf.gewicht,
tbl_person.person_id,
tbl_gebiet.offsetpunkte
FROM
testtool.tbl_pruefling
JOIN testtool.tbl_ablauf ON (tbl_ablauf.studiengang_kz = tbl_pruefling.studiengang_kz AND tbl_ablauf.semester = tbl_pruefling.semester)
JOIN testtool.tbl_gebiet USING (gebiet_id)
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_person USING (person_id)
JOIN public.tbl_studiengang ON tbl_prestudent.studiengang_kz = tbl_studiengang.studiengang_kz
JOIN public.tbl_rt_person USING (person_id)
JOIN lehre.tbl_studienplan ON (tbl_studienplan.studienplan_id = tbl_rt_person.studienplan_id)
JOIN lehre.tbl_studienordnung ON (tbl_studienordnung.studienordnung_id = tbl_studienplan.studienordnung_id)
WHERE
tbl_studienordnung.studiengang_kz = tbl_prestudent.studiengang_kz
AND NOT (tbl_ablauf.gebiet_id IN ( SELECT tbl_kategorie.gebiet_id
FROM testtool.tbl_kategorie));';
if(!$db->db_query($qry))
echo '<strong>testtool.vw_auswertung: '.$db->db_last_error().'</strong><br>';
else
echo '<br>testtool.vw_auswertung view created';
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
@@ -3665,6 +3852,7 @@ $tabellen=array(
"public.tbl_firmatag" => array("firma_id","tag","insertamum","insertvon"),
"public.tbl_fotostatus" => array("fotostatus_kurzbz","beschreibung"),
"public.tbl_funktion" => array("funktion_kurzbz","beschreibung","aktiv","fachbereich","semester"),
"public.tbl_geschlecht" => array("geschlecht","bezeichnung_mehrsprachig","sort"),
"public.tbl_geschaeftsjahr" => array("geschaeftsjahr_kurzbz","start","ende","bezeichnung"),
"public.tbl_gruppe" => array("gruppe_kurzbz","studiengang_kz","semester","bezeichnung","beschreibung","sichtbar","lehre","aktiv","sort","mailgrp","generiert","updateamum","updatevon","insertamum","insertvon","ext_id","orgform_kurzbz","gid","content_visible","gesperrt","zutrittssystem","aufnahmegruppe","direktinskription"),
"public.tbl_kontakt" => array("kontakt_id","person_id","kontakttyp","anmerkung","kontakt","zustellung","updateamum","updatevon","insertamum","insertvon","ext_id","standort_id"),
@@ -3728,7 +3916,7 @@ $tabellen=array(
"testtool.tbl_ablauf_vorgaben" => array("ablauf_vorgaben_id","studiengang_kz","sprache","sprachwahl","content_id","insertamum","insertvon","updateamum", "updatevon"),
"testtool.tbl_antwort" => array("antwort_id","pruefling_id","vorschlag_id"),
"testtool.tbl_frage" => array("frage_id","kategorie_kurzbz","gebiet_id","level","nummer","demo","insertamum","insertvon","updateamum","updatevon","aktiv"),
"testtool.tbl_gebiet" => array("gebiet_id","kurzbz","bezeichnung","beschreibung","zeit","multipleresponse","kategorien","maxfragen","zufallfrage","zufallvorschlag","levelgleichverteilung","maxpunkte","insertamum", "insertvon", "updateamum", "updatevon", "level_start","level_sprung_auf","level_sprung_ab","antwortenprozeile","bezeichnung_mehrsprachig"),
"testtool.tbl_gebiet" => array("gebiet_id","kurzbz","bezeichnung","beschreibung","zeit","multipleresponse","kategorien","maxfragen","zufallfrage","zufallvorschlag","levelgleichverteilung","maxpunkte","insertamum", "insertvon", "updateamum", "updatevon", "level_start","level_sprung_auf","level_sprung_ab","antwortenprozeile","bezeichnung_mehrsprachig", "offsetpunkte"),
"testtool.tbl_kategorie" => array("kategorie_kurzbz","gebiet_id"),
"testtool.tbl_kriterien" => array("gebiet_id","kategorie_kurzbz","punkte","typ"),
"testtool.tbl_pruefling" => array("pruefling_id","prestudent_id","studiengang_kz","idnachweis","registriert","semester"),
+1 -1
View File
@@ -106,8 +106,8 @@ $filters = array(
{"name": "Nachname"},
{"name": "Nation"},
{"name": "LastAction"},
{"name": "User/Operator"},
{"name": "LastActionType"},
{"name": "User/Operator"},
{"name": "LockUser"},
{"name": "StgNichtAbgeschickt"},
{"name": "StgAbgeschickt"},
+1 -1
View File
@@ -197,7 +197,7 @@ if($result = $db->db_query($qry))
{
$error_log.=(!empty($error_log)?', ':'')."Geburtsdatum ('".$row->gebdatum."')";
}
if($row->geschlecht!='m' && $row->geschlecht!='w')
if($row->geschlecht!='m' && $row->geschlecht!='w' && $row->geschlecht!='x')
{
$error_log.=(!empty($error_log)?', ':'')."Geschlecht ('".$row->geschlecht."')";
}
+7 -2
View File
@@ -115,7 +115,7 @@ $stg_obj = new studiengang();
$stg_obj->getAll(null,false);
$qry="
SELECT DISTINCT ON (UID) *
SELECT DISTINCT ON (UID) *, transform_geschlecht(tbl_person.geschlecht, tbl_person.gebdatum) as geschlecht_imputiert
FROM
public.tbl_mitarbeiter
JOIN public.tbl_benutzer ON(mitarbeiter_uid=uid)
@@ -175,7 +175,12 @@ if($result = $db->db_query($qry))
<Person>
<PersonalNummer>".sprintf("%015s",$row->personalnummer)."</PersonalNummer>
<GeburtsDatum>".date("dmY", $datumobj->mktime_fromdate($row->gebdatum))."</GeburtsDatum>
<Geschlecht>".strtoupper($row->geschlecht)."</Geschlecht>
<Geschlecht>".strtoupper($row->geschlecht)."</Geschlecht>";
if ($row->geschlecht == 'x')
$person_content.="
<GeschlechtX>".strtoupper($row->geschlecht_imputiert)."</GeschlechtX>";
$person_content.="
<HoechsteAbgeschlosseneAusbildung>".$row->ausbildungcode."</HoechsteAbgeschlosseneAusbildung>";
$qryvw="SELECT * FROM bis.tbl_bisverwendung WHERE mitarbeiter_uid=".$db->db_add_param($row->mitarbeiter_uid)." AND habilitation=true;";
if($resultvw=$db->db_query($qryvw))
+24 -7
View File
@@ -648,7 +648,7 @@ function GenerateXMLStudentBlock($row)
{
$error_log.=(!empty($error_log)?', ':'')."Geburtsdatum ('".$row->gebdatum."')";
}
if($row->geschlecht!='m' && $row->geschlecht!='w')
if($row->geschlecht!='m' && $row->geschlecht!='w' && $row->geschlecht!='x')
{
$error_log.=(!empty($error_log)?', ':'')."Geschlecht ('".$row->geschlecht."')";
}
@@ -1355,13 +1355,19 @@ function GenerateXMLBewerberBlock($orgformcode=null)
if(mb_strstr($ssem,"WS"))
{
//Bewerber
$qrybw="SELECT * FROM public.tbl_prestudent
$qrybw="
SELECT
*, transform_geschlecht(tbl_person.geschlecht, tbl_person.gebdatum) as geschlecht_imputiert
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id)
JOIN public.tbl_person USING(person_id)
LEFT JOIN bis.tbl_orgform USING(orgform_kurzbz)
WHERE (studiensemester_kurzbz=".$db->db_add_param($ssem)." OR studiensemester_kurzbz=".$db->db_add_param($psem).") AND tbl_prestudent.studiengang_kz=".$db->db_add_param($stg_kz)."
WHERE (studiensemester_kurzbz=".$db->db_add_param($ssem)." OR studiensemester_kurzbz=".$db->db_add_param($psem).")
AND tbl_prestudent.studiengang_kz=".$db->db_add_param($stg_kz)."
AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).")
AND status_kurzbz='Bewerber' AND reihungstestangetreten
AND status_kurzbz='Bewerber'
AND reihungstestangetreten
";
if(!is_null($orgformcode))
$qrybw.=" AND tbl_orgform.code=".$db->db_add_param($orgformcode);
@@ -1373,7 +1379,7 @@ function GenerateXMLBewerberBlock($orgformcode=null)
// Bachelor / Diplom
if(($stgart==1 || $stgart==3) && $rowbw->zgv_code!=NULL)
{
if(strtoupper($rowbw->geschlecht)=='M')
if(strtoupper($rowbw->geschlecht_imputiert)=='M')
{
if(!isset($bewerberM[$rowbw->zgv_code]))
{
@@ -1393,7 +1399,7 @@ function GenerateXMLBewerberBlock($orgformcode=null)
// Master
if($stgart==2 && $rowbw->zgvmas_code!=NULL)
{
if(strtoupper($rowbw->geschlecht)=='M')
if(strtoupper($rowbw->geschlecht_imputiert)=='M')
{
if(!isset($bewerberM[$rowbw->zgvmas_code]))
{
@@ -1421,7 +1427,18 @@ function GenerateXMLBewerberBlock($orgformcode=null)
else
$bewerbercount[$bworgform]=1;
$bwlist.='<tr><td>'.trim($rowbw->nachname).'</td><td>'.trim($rowbw->vorname).'</td><td>'.$bworgform.'</td></tr>';
if($rowbw->geschlecht_imputiert!=$rowbw->geschlecht)
$geschlecht_imputiert = ' -> '.$rowbw->geschlecht_imputiert;
else
$geschlecht_imputiert = '';
$bwlist.='
<tr>
<td>'.trim($rowbw->nachname).'</td>
<td>'.trim($rowbw->vorname).'</td>
<td>'.$bworgform.'</td>
<td>'.$rowbw->geschlecht.$geschlecht_imputiert.'</td>
</tr>';
}
}
@@ -37,6 +37,7 @@ require_once('../../../include/student.class.php');
require_once('../../../include/lehrverband.class.php');
require_once('../../../include/nation.class.php');
require_once('../../../include/studienplan.class.php');
require_once('../../../include/geschlecht.class.php');
$db = new basis_db();
$user = get_uid();
@@ -940,9 +941,17 @@ echo '<tr><td>Weitere Vornamen </td><td><input type="text" id="vornamen" maxleng
echo '<tr><td>Nachname *</td><td><input type="text" maxlength="64" id="nachname" name="nachname" value="'.$nachname.'" required="required" autofocus/></td></tr>';
echo '<tr><td>Titel(Post)</td><td><input type="text" id="titelpost" name="titelpost" maxlength="64" value="'.$titelpost.'" /></td></tr>';
echo '<tr><td>Geschlecht *</td><td><SELECT id="geschlecht" name="geschlecht">';
echo '<OPTION value="m" '.($geschlecht=='m'?'selected':'').'>m&auml;nnlich</OPTION>';
echo '<OPTION value="w" '.($geschlecht=='w'?'selected':'').'>weiblich</OPTION>';
echo '<OPTION value="u" '.($geschlecht=='u'?'selected':'').'>unbekannt</OPTION>';
$geschlecht_obj = new geschlecht();
$geschlecht_obj->getAll();
foreach ($geschlecht_obj->result as $row_geschlecht)
{
if ($row_geschlecht->geschlecht == $geschlecht)
$selected = 'selected';
else
$selected = '';
echo '<OPTION value="'.$row_geschlecht->geschlecht.'" '.$selected.'>'.$row_geschlecht->bezeichnung_mehrsprachig_arr[DEFAULT_LANGUAGE].'</OPTION>';
}
echo '</SELECT>';
echo '</td></tr>';
echo '<tr><td>Geburtsdatum </td><td><input type="text" id="geburtsdatum" size="10" maxlength="10" name="geburtsdatum" value="'.$geburtsdatum_orig.'" /> (Format: dd.mm.JJJJ)</td></tr>';
+13 -3
View File
@@ -30,6 +30,7 @@ require_once('../../../include/kontakt.class.php');
require_once('../../../include/adresse.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/nation.class.php');
require_once('../../../include/geschlecht.class.php');
require_once('../../../include/'.EXT_FKT_PATH.'/generateuid.inc.php');
$db = new basis_db();
@@ -932,9 +933,18 @@ echo '<input type="text" id="vornamen" maxlength="32" size="30" name="vornamen"
echo '<tr><td>Nachname *</td><td><input type="text" maxlength="64" size="30" id="nachname" name="nachname" value="'.$nachname.'" /></td></tr>';
echo '<tr><td>Titel(Post)</td><td><input type="text" id="titelpost" name="titelpost" maxlength="64" size="30" value="'.$titelpost.'" /></td></tr>';
echo '<tr><td>Geschlecht *</td><td><SELECT id="geschlecht" name="geschlecht" onchange="GeschlechtChange()">';
echo '<OPTION value="m" '.($geschlecht=='m'?'selected':'').'>m&auml;nnlich</OPTION>';
echo '<OPTION value="w" '.($geschlecht=='w'?'selected':'').'>weiblich</OPTION>';
echo '<OPTION value="u" '.($geschlecht=='u'?'selected':'').'>unbekannt</OPTION>';
$geschlecht_obj = new geschlecht();
$geschlecht_obj->getAll();
foreach($geschlecht_obj->result as $row_geschlecht)
{
if($geschlecht == $row_geschlecht->geschlecht)
$selected = 'selected';
else
$selected = '';
echo '<OPTION value="'.$row_geschlecht->geschlecht.'" '.$selected.'>'.$row_geschlecht->bezeichnung_mehrsprachig_arr[DEFAULT_LANGUAGE].'</OPTION>';
}
echo '</SELECT>';
echo '</td></tr>';
echo '<tr><td>SVNR</td><td><input type="text" id="svnr" size="30" maxlength="16" name="svnr" value="'.$svnr.'" onblur="GeburtsdatumEintragen()" /></td></tr>';
+13 -4
View File
@@ -27,6 +27,7 @@ require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/kontakt.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/geschlecht.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
@@ -39,7 +40,7 @@ loadVariables($user);
<html>
<head>
<meta charset="UTF-8">
<link href="../../skin/cis.css" rel="stylesheet" type="text/css">
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
<script language="Javascript">
function disablefields(obj)
{
@@ -347,9 +348,17 @@ echo '<tr><td>Vorname</td><td><input type="text" id="vorname" maxlength="32" nam
echo '<tr><td>Nachname *</td><td><input type="text" maxlength="64" id="nachname" name="nachname" value="'.$nachname.'" /></td></tr>';
echo '<tr><td>Titel(Post)</td><td><input type="text" id="titelpost" name="titelpost" maxlength="64" value="'.$titelpost.'" /></td></tr>';
echo '<tr><td>Geschlecht *</td><td><SELECT id="geschlecht" name="geschlecht">';
echo '<OPTION value="m" '.($geschlecht=='m'?'selected':'').'>m&auml;nnlich</OPTION>';
echo '<OPTION value="w" '.($geschlecht=='w'?'selected':'').'>weiblich</OPTION>';
echo '<OPTION value="u" '.($geschlecht=='u'?'selected':'').'>unbekannt</OPTION>';
$geschlecht_obj = new geschlecht();
$geschlecht_obj->getAll();
foreach ($geschlecht_obj->result as $row_geschlecht)
{
if ($geschlecht == $row_geschlecht->geschlecht)
$selected = 'selected';
else
$selected = '';
echo '<OPTION value="'.$row_geschlecht->geschlecht.'" '.$selected.'>'.$row_geschlecht->bezeichnung_mehrsprachig_arr[DEFAULT_LANGUAGE].'</OPTION>';
}
echo '</SELECT>';
echo '</td></tr>';
echo '<tr><td>SVNR</td><td><input type="text" id="svnr" size="10" maxlength="10" name="svnr" value="'.$svnr.'" onblur="GeburtsdatumEintragen()" /></td></tr>';
+17 -26
View File
@@ -31,7 +31,7 @@ require_once('../../include/nation.class.php');
require_once('../../include/ort.class.php');
require_once('../../include/akte.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/fckeditor/fckeditor.php');
require_once('../../include/geschlecht.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
@@ -119,7 +119,6 @@ $ort_kurzbz = (isset($_POST['ort_kurzbz'])?$_POST['ort_kurzbz']:'');
$standort_id = (isset($_POST['standort_id'])?$_POST['standort_id']:'');
$anmerkung = (isset($_POST['anmerkung'])?$_POST['anmerkung']:'');
$bismelden = (isset($_POST['bismelden'])?$_POST['bismelden']:'');
$kurzbeschreibung = (isset($_POST['kurzbeschreibung'])?$_POST['kurzbeschreibung']:'');
$matrikelnummer = (isset($_POST['matrikelnummer'])?$_POST['matrikelnummer']:'');
$semester = (isset($_POST['semester'])?$_POST['semester']:'');
$verband = (isset($_POST['verband'])?$_POST['verband']:'');
@@ -128,9 +127,9 @@ $dms_id_lichtbild = '';
if($uid!='')
{
$qry = "SELECT person_id, true as mitarbeiter FROM campus.vw_mitarbeiter WHERE uid='".addslashes($uid)."'
$qry = "SELECT person_id, true as mitarbeiter FROM campus.vw_mitarbeiter WHERE uid=".$db->db_add_param($uid)."
UNION
SELECT person_id, false as mitarbeiter FROM campus.vw_student WHERE uid='".addslashes($uid)."'";
SELECT person_id, false as mitarbeiter FROM campus.vw_student WHERE uid=".$db->db_add_param($uid);
if($result = $db->db_query($qry))
{
@@ -176,7 +175,6 @@ if(isset($_POST['saveperson']))
$person->homepage = $homepage;
$person->updateamum = date('Y-m-d H:i:s');
$person->updatevon = $user;
$person->kurzbeschreibung = $kurzbeschreibung;
$person->new = false;
if($person->save())
@@ -344,7 +342,6 @@ if(!$error_person_save)
$anzahlderkinder = $person->anzahlkinder;
$anmerkungen = $person->anmerkungen;
$homepage = $person->homepage;
$kurzbeschreibung = $person->kurzbeschreibung;
}
$akte = new akte();
@@ -452,11 +449,19 @@ echo "
</tr>
<tr>
<td>Geschlecht</td>
<td><SELECT name='geschlecht'>
<option value='m' ".($geschlecht=='m'?'selected':'').">maennlich</option>
<option value='w' ".($geschlecht=='w'?'selected':'').">weiblich</option>
<option value='u' ".($geschlecht=='u'?'selected':'').">unbekannt</option>
</SELECT>
<td><SELECT name='geschlecht'>";
$geschlecht_obj = new geschlecht();
$geschlecht_obj->getAll();
foreach ($geschlecht_obj->result as $row_geschlecht)
{
if($geschlecht == $row_geschlecht->geschlecht)
$selected = 'selected';
else
$selected = '';
echo "<option value='".$row_geschlecht->geschlecht."' ".$selected.">".$row_geschlecht->bezeichnung_mehrsprachig_arr[DEFAULT_LANGUAGE]."</option>";
}
echo " </SELECT>
</td>
<td>Familienstand</td>
<td><SELECT name='familienstand'>
@@ -485,19 +490,6 @@ echo "
<a href=\"../fhausweis/search.php?person_id=".$person_id."\">FH-Ausweis Status</a>
</td>
</tr>
<tr>
<td colspan=6>
";
$oFCKeditor = new FCKeditor('kurzbeschreibung') ;
$sBasePath = '../../include/fckeditor/';
$oFCKeditor->BasePath = $sBasePath ;
$oFCKeditor->Value = $kurzbeschreibung;
$oFCKeditor->Create() ;
echo "
</td>
</tr>
<tr>
<td></td>
<td></td>
@@ -521,7 +513,7 @@ if(isset($uid) && $uid!='')
<legend>Benutzerdaten</legend>
";
$qry = "SELECT * FROM public.tbl_benutzer WHERE uid='".addslashes($uid)."'";
$qry = "SELECT * FROM public.tbl_benutzer WHERE uid=".$db->db_add_param($uid);
if(!$result_benutzer = $db->db_query($qry))
die('Fehler beim Auslesen der Benutzerdaten');
@@ -545,7 +537,6 @@ if(isset($uid) && $uid!='')
echo '<br><a href="../../content/pdfExport.php?xsl=AccountInfo&xml=accountinfoblatt.xml.php&uid='.$uid.'" >AccountInfoBlatt erstellen</a>';
echo '<br><a href="../stammdaten/betriebsmittel_frameset.php?searchstr='.$uid.'" >Betriebsmittel verwalten</a>';
echo "</fieldset></td></tr>";
if($is_mitarbeiter)
+91 -54
View File
@@ -731,6 +731,7 @@ if ($punkteUebertragen)
{
foreach ($_POST['prestudentPunkteArr'] AS $key => $array)
{
$rtpunkte = number_format(floatval(str_replace(',', '.', $array['ergebnis'])), 4);
$prestudentrolle = new prestudent($array['prestudent_id']);
$prestudentrolle->getLastStatus($array['prestudent_id'], null, 'Interessent');
@@ -750,7 +751,7 @@ if ($punkteUebertragen)
if ($setRTPunkte->punkte == '')
{
$setRTPunkte->new = false;
$setRTPunkte->punkte = number_format(floatval($array['ergebnis']), 4);
$setRTPunkte->punkte = $rtpunkte;
$setRTPunkte->updateamum = date('Y-m-d H:i:s');
$setRTPunkte->updatevon = $user;
@@ -789,7 +790,7 @@ if ($punkteUebertragen)
$setRTPunkte->anmeldedatum = '';
$setRTPunkte->ort_kurzbz = $ort_kurzbz;
$setRTPunkte->studienplan_id = $prestudentrolle->studienplan_id;
$setRTPunkte->punkte = number_format(floatval($array['ergebnis']), 4);
$setRTPunkte->punkte = $rtpunkte;
$setRTPunkte->insertamum = date('Y-m-d H:i:s');
$setRTPunkte->insertvon = $user;
@@ -1035,7 +1036,7 @@ function getMailEmpfaenger($studiengang_kz, $studienplan_id = null, $orgform_kur
return false;
}
$ergebnis = '';
$ergebnis = array();
$gebiet = array();
$kategorie = array();
$erg_kat = array();
@@ -1147,7 +1148,8 @@ if (isset($_REQUEST['reihungstest']))
tbl_gebiet.bezeichnung AS gebiet,
tbl_ablauf.reihung,
tbl_ablauf.studiengang_kz,
tbl_ablauf.semester
tbl_ablauf.semester,
tbl_ablauf.gewicht
FROM PUBLIC.tbl_rt_person
JOIN PUBLIC.tbl_person ON (tbl_rt_person.person_id = tbl_person.person_id)
JOIN PUBLIC.tbl_prestudent ps ON (ps.person_id = tbl_rt_person.person_id)
@@ -1209,6 +1211,7 @@ if (isset($_REQUEST['reihungstest']))
}
$gebiet[$row->gebiet_id]->name = $row->gebiet;
$gebiet[$row->gebiet_id]->gebiet_id = $row->gebiet_id;
$gebiet[$row->gebiet_id]->gewicht = $row->gewicht;
}
// Alle Ergebnisse laden
@@ -1222,6 +1225,7 @@ if (isset($_REQUEST['reihungstest']))
tbl_studiengang.bezeichnung AS stg_bez,
tbl_studienplan.orgform_kurzbz,
tbl_gebiet.maxpunkte,
tbl_gebiet.offsetpunkte,
tbl_prestudentstatus.ausbildungssemester,
tbl_ablauf.gewicht,
tbl_ort.planbezeichnung AS raum,
@@ -1313,6 +1317,7 @@ if (isset($_REQUEST['reihungstest']))
AND studiensemester_kurzbz = rt.studiensemester_kurzbz
ORDER BY registriert DESC LIMIT 1
)
ORDER BY registriert DESC LIMIT 1
)
AND testtool.tbl_frage.gebiet_id = tbl_gebiet.gebiet_id
)
@@ -1404,7 +1409,7 @@ if (isset($_REQUEST['reihungstest']))
$query .= " ORDER BY nachname,
vorname,
person_id
";//var_dump($query);
";/*print_r($query);*/
if (!($result = $db->db_query($query)))
{
die($db->db_last_error());
@@ -1447,8 +1452,7 @@ if (isset($_REQUEST['reihungstest']))
}
$ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->name = $row->gebiet;
$ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->punkte = (($row->punkte >= $row->maxpunkte) ? $row->maxpunkte : $row->punkte);
if ($row->punkte == 0 && $row->punkte != '')
/*if ($row->punkte == 0 && $row->punkte != '')
{
$prozent = '0';
}
@@ -1459,7 +1463,7 @@ if (isset($_REQUEST['reihungstest']))
else
{
$prozent = ($row->punkte / $row->maxpunkte) * 100;
}
}*/
if ($row->punkte >= $row->maxpunkte)
{
@@ -1470,9 +1474,24 @@ if (isset($_REQUEST['reihungstest']))
$punkte = $row->punkte;
}
$ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->prozent = $prozent;
$ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->prozent = null;
$ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->punkte = $punkte;
// Punkte berechnen
if (isset($punkte))
{
if ($row->punkte >= $row->maxpunkte)
$ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->prozent = 100;
else
{
//offset zur Vermeidung negativer Prozentzahlen
$punkte_positiv = $punkte + $row->offsetpunkte;
$maxpunkte_positiv = $row->maxpunkte + $row->offsetpunkte;
//Formel: Summe(Punkte/Maxpunkte * Gewicht)
$ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->prozent = $maxpunkte_positiv > 0 ? $punkte_positiv / $maxpunkte_positiv * /*$row->gewicht **/ 100 : null;
}
}
// Bei Auswertungen ohne rt_id kann es vorkommen, dass Datensätze Doppelt sind
// Bei der Summe darf ein Gebiet jedenfalls nur einmal summiert werden
@@ -1480,14 +1499,14 @@ if (isset($_REQUEST['reihungstest']))
{
$gebiete_arr[$row->prestudent_id][] = $row->gebiet_id;
// Gesamtpunkte mit Physik
// Gesamtpunkte
if (isset($ergebnis[$row->prestudent_id]->gesamt))
{
$ergebnis[$row->prestudent_id]->gesamt += $prozent * $row->gewicht;
$ergebnis[$row->prestudent_id]->gesamt += $ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->prozent * $row->gewicht;
}
else
{
$ergebnis[$row->prestudent_id]->gesamt = $prozent * $row->gewicht;
$ergebnis[$row->prestudent_id]->gesamt = $ergebnis[$row->prestudent_id]->gebiet[$row->gebiet_id]->prozent * $row->gewicht;
}
if (isset($ergebnis[$row->prestudent_id]->gesamtpunkte))
@@ -1499,8 +1518,20 @@ if (isset($_REQUEST['reihungstest']))
$ergebnis[$row->prestudent_id]->gesamtpunkte = $punkte;
}
if (isset($row->punkte))
{
if (isset($ergebnis[$row->prestudent_id]->gesamtgewicht))
{
$ergebnis[$row->prestudent_id]->gesamtgewicht += $row->gewicht;
}
else
{
$ergebnis[$row->prestudent_id]->gesamtgewicht = $row->gewicht;
}
}
// Gesamtpunkte ohne Physik
if ($row->gebiet_id != 10)
/* if ($row->gebiet_id != 10)
{
if (isset($ergebnis[$row->prestudent_id]->gesamt_ohne_physik))
{
@@ -1519,10 +1550,17 @@ if (isset($_REQUEST['reihungstest']))
{
$ergebnis[$row->prestudent_id]->gesamtpunkte_ohne_physik = $punkte;
}
}
}*/
}
}
foreach ($ergebnis as $prestudentid => $erg)
{
//Berechnen Gesamtpunkte nach Formel: Summe(Punkte/Maxpunkte * Gewicht)/Summe(Gewichte) * 100
if (isset($erg->gesamtgewicht) && $erg->gesamtgewicht > 0)
$erg->gesamt /= $erg->gesamtgewicht;
}
$ergb = $ergebnis;
}
@@ -1567,7 +1605,7 @@ if (isset($_REQUEST['format']) && $_REQUEST['format'] == 'xls')
// Eigener TItel bei Bachelor-Studiengängen
if (isset($studiengangObj) && $studiengangObj->typ == 'b')
{
$worksheet =& $workbook->addWorksheet("Auswertung MIT Physik " . ($titel_studiengang ? $stg_arr[$_REQUEST['studiengang']] : '') . ($titel_semester ? ' ' . $semester . '.Semester' : ''));
$worksheet =& $workbook->addWorksheet("Auswertung " . ($titel_studiengang ? $stg_arr[$_REQUEST['studiengang']] : '') . ($titel_semester ? ' ' . $semester . '.Semester' : ''));
}
else
{
@@ -1665,7 +1703,7 @@ if (isset($_REQUEST['format']) && $_REQUEST['format'] == 'xls')
foreach ($gebiet AS $gbt)
{
++$spalte;
$worksheet->write($zeile, ++$spalte, strip_tags($gbt->name), $format_bold_border);
$worksheet->write($zeile, ++$spalte, strip_tags($gbt->name) . (isset($gbt->gewicht) ? " (Gew: $gbt->gewicht)" : ""), $format_bold_border);
$worksheet->mergeCells($zeile, $spalte, 0, $spalte + 1);
$maxlength[$spalte] = 10;
}
@@ -1756,7 +1794,7 @@ if (isset($_REQUEST['format']) && $_REQUEST['format'] == 'xls')
}
// Worksheet ohne Physik nur für Bachelor-Studiengänge
if (isset($studiengangObj) && $studiengangObj->typ == 'b')
/*if (isset($studiengangObj) && $studiengangObj->typ == 'b')
{
$worksheetOhnePhsyik =& $workbook->addWorksheet("Auswertung OHNE Physik " . ($titel_studiengang ? $stg_arr[$_REQUEST['studiengang']] : '') . ($titel_semester ? ' ' . $semester . '.Semester' : ''));
$worksheetOhnePhsyik->setInputEncoding('utf-8');
@@ -1912,7 +1950,7 @@ if (isset($_REQUEST['format']) && $_REQUEST['format'] == 'xls')
{
$worksheetOhnePhsyik->setColumn($i, $i, $breite);
}
}
}*/
if (isset($erg_kat) && count($erg_kat) > 0)
{
@@ -2104,12 +2142,23 @@ else
$("#auswertung_table").tablesorter(
{
widgets: ["zebra", "filter", "columnSelector"],
sortList: [[16,1],[3,0],[4,0]],
headers: {0: { sorter: false, filter: false}, 2: { sorter: false, filter: false}, 4: { dateFormat: "ddmmyyyy" }}
sortList: [[15,1],[17,1],[3,0],[4,0]],//16th fake hidden column for correct sort with colspan
headers: {0: { sorter: false, filter: false}, 2: { sorter: false, filter: false}, 4: { dateFormat: "ddmmyyyy" }, 15: { sorter: false, filter: false}}
/*widgetOptions : {
columnSelector_container : $("#columnSelector"),
columnSelector_saveColumns: true} */
});
//hide tablesorter filter field if column is hidden
for (var i = 0; i < $("#auswertung_table tbody tr:nth-child(1) td").length; i++)
{
var colnr = i + 1;
var cell = $("#auswertung_table tbody tr:nth-child(1) td:nth-child(" + colnr + ")");
if (cell.css("display") === "none")
{
$("#auswertung_table tr.tablesorter-filter-row td:nth-child(" + colnr + ")").css("display", "none");
}
}
/*$.tablesorter.columnSelector.attachTo( $("#auswertung_table"), "#popover-target");*/
/*$("#columnSelector").popover(
@@ -2263,7 +2312,7 @@ else
}
else
{
$("#row_"+prestudent_id).find("td.punkte, td.col_gesamtpunkte_ohne_physik").each (function()
$("#row_"+prestudent_id).find("td.punkte, td.col_gesamtpunkte").each (function()
{
$(this).html("");
});
@@ -2434,7 +2483,7 @@ else
function checkAllWithResult()
{
// Schleife ueber die einzelnen Elemente
$(".col_gesamtpunkte_ohne_physik").each(function()
$(".col_gesamtpunkte").each(function()
{
if ($(this).text().trim() !== "")
{
@@ -2469,20 +2518,10 @@ else
{
$("input.prestudentCheckbox:checked").each(function()
{
if ($("#uebertragenOptionPhysik:checked").length === 1)
{
prestudentPunkteArr.push({
prestudent_id: $(this).attr("name"),
ergebnis: $(this).parents("tr").find(".erg_gesamt_mit_physik").text()
});
}
else
{
prestudentPunkteArr.push({
prestudent_id: $(this).attr("name"),
ergebnis: $(this).parents("tr").find(".erg_gesamt_ohne_physik").text()
});
}
prestudentPunkteArr.push({
prestudent_id: $(this).attr("name"),
ergebnis: $(this).parents("tr").find(".erg_gesamt").text()
});
});
$(".loaderIcon").show();
@@ -2814,9 +2853,6 @@ else
echo ' <form class="form" role="form">
<div class="panel panel-default" id="uebertragenOptions" style="display: none">
<div class="panel-body">
<div class="checkbox">
<label><input type="checkbox" id="uebertragenOptionPhysik" value="">Mit Physik</label>
</div>
<div class="checkbox">
<label><input type="checkbox" id="uebertragenOptionGesamtpunkte" value="">"Gesamtpunkte" und "Reihungsverfahren absolviert" setzen</label>
</div>
@@ -2903,8 +2939,8 @@ else
<th title="Priorität" rowspan="2" style="width: 20px">Prio</th>
<th rowspan="2">Raum</th>
<th title="Teilgenommen" rowspan="2">TG</th>
<th colspan="2">Gesamt mit Physik</th>
<th colspan="2">Gesamt ohne Physik</th>';
<th style="display: none"></th>
<th colspan="2">Gesamt</th>';
foreach ($gebiet AS $gbt)
{
@@ -2913,8 +2949,7 @@ else
echo '</tr>
<tr>
<th><small>Punkte</small></th>
<th><small>Prozent</small></th>
<th style="display: none"></th>
<th><small>Punkte</small></th>
<th><small>Prozent</small></th>';
@@ -2957,6 +2992,8 @@ else
<td class='".$inaktiv."'>$erg->raum</td>
<td class='".$inaktiv."'>".($erg->teilgenommen == true ? "<span class='glyphicon glyphicon-ok'></span>" : "")."</td>";
//<td>$erg->idnachweis</td>
$gesamtprozent = ($erg->gesamt != '' ? number_format($erg->gesamt, 2, ',', ' ') : '');
echo '<td style="display: none">'. $gesamtprozent .'</td>';
echo ' <td style="text-align: right; padding-right: 3px" class="punkte '.$inaktiv.'" nowrap>';
// Punkte können nur gelöscht werden, solange "Zum Reihungstest angetreten" nicht gesetzt ist
if ($erg->teilgenommen == false || $rechte->isBerechtigt('admin'))
@@ -2973,25 +3010,25 @@ else
echo ' <span class=""><b>' . ($erg->gesamtpunkte != '' ? number_format($erg->gesamtpunkte, 2, ',', ' ') : '') . '</b></span>';
}
echo ' </td>';
if (!isset($erg->gesamtpunkte_ohne_physik))
/* if (!isset($erg->gesamtpunkte_ohne_physik))
{
$erg->gesamtpunkte_ohne_physik = '';
}
if (!isset($erg->gesamt_ohne_physik))
}*/
/* if (!isset($erg->gesamt_ohne_physik))
{
$erg->gesamt_ohne_physik = '';
}
echo ' <td style="text-align: right; padding-right: 3px" class="punkte '.$inaktiv.'" nowrap>
<b>' . ($erg->gesamt != '' ? number_format($erg->gesamt, 2, ',', ' ') : '') . '</b>
<span class="erg_gesamt_mit_physik" style="display: none">'.$erg->gesamt.'</span>
}*/
echo ' <td style="text-align: right; padding-right: 3px" class="col_gesamtpunkte punkte '.$inaktiv.'" nowrap>
<b>' . $gesamtprozent . '</b>
<span class="erg_gesamt" style="display: none">'.$erg->gesamt.'</span>
</td>';
echo ' <td style="text-align: right; padding-right: 3px" class="col_gesamtpunkte_ohne_physik '.$inaktiv.'" nowrap>
/* echo ' <td style="text-align: right; padding-right: 3px" class="col_gesamtpunkte_ohne_physik '.$inaktiv.'" nowrap>
<b>' . ($erg->gesamtpunkte_ohne_physik != '' ? number_format($erg->gesamtpunkte_ohne_physik, 2, ',', ' ') : '') . '</b>
</td>';
echo ' <td style="text-align: right; padding-right: 3px" class="punkte '.$inaktiv.'" nowrap>
</td>';*/
/* echo ' <td style="text-align: right; padding-right: 3px" class="punkte '.$inaktiv.'" nowrap>
<b>' . ($erg->gesamt_ohne_physik != '' ? number_format($erg->gesamt_ohne_physik, 2, ',', ' ') : '') . '</b>
<span class="erg_gesamt_ohne_physik" style="display: none">'.$erg->gesamt_ohne_physik.'</span>
</td>';
</td>';*/
foreach ($gebiet AS $gbt)
{
if (isset($erg->gebiet[$gbt->gebiet_id]))
@@ -2553,7 +2553,7 @@ echo '<table width="100%"><tr><td>';
if($reihungstest_id!='')
{
echo '<a class="buttongreen" href="'.$_SERVER['PHP_SELF'].'?reihungstest_id='.$reihungstest_id.'&excel=true">Excel Export</a>';
echo '<a class="buttongreen" href="'.$_SERVER['PHP_SELF'].'?reihungstest_id='.$reihungstest_id.'&type=saveallrtpunkte">Punkte ins FAS &uuml;bertragen</a>';
//echo '<a class="buttongreen" href="'.$_SERVER['PHP_SELF'].'?reihungstest_id='.$reihungstest_id.'&type=saveallrtpunkte">Punkte ins FAS &uuml;bertragen</a>';
echo '<a class="buttongreen" href="#" onclick="SendMail()" id="mailSendButton">Mail an alle BewerberInnen senden</a>';
}
if (defined('CAMPUS_NAME') && CAMPUS_NAME == 'FH Technikum Wien')