Compare commits

..
17 changed files with 14 additions and 4624 deletions
@@ -42,9 +42,9 @@ class Pruefung extends FHCAPI_Controller
'getNoten' => ['admin:r', 'assistenz:r'],
'checkZeugnisnoteLv' => ['admin:r', 'assistenz:r'],
'checkTermin1' => ['admin:r', 'assistenz:r'],
'insertPruefung' => self::PERM_LOGGED,
'updatePruefung' =>self::PERM_LOGGED,
'deletePruefung' =>self::PERM_LOGGED,
'insertPruefung' => ['admin:rw', 'assistenz:rw'],
'updatePruefung' => ['admin:rw', 'assistenz:rw'],
'deletePruefung' => ['admin:rw', 'assistenz:rw'],
]);
//Load Models
@@ -372,7 +372,7 @@ class Prestudentstatus_model extends DB_Model
$this->addSelect('g.bezeichnung');
$this->addSelect('o.orgform_kurzbz');
$this->addSelect(
'o.bezeichnung_mehrsprachig[(SELECT index FROM public.tbl_sprache WHERE sprache=\'' . $lang . '\')] AS orgform_bezeichnung',
'o.bezeichnung_mehrsprachig[(SELECT index FROM public.tbl_sprache WHERE sprache=' . $this->escape($lang) . ')] AS orgform_bezeichnung',
false
);
@@ -1,754 +0,0 @@
<?php
/* Copyright (C) 2009 Technikum-Wien
*
* 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: Christian Paminger < [email protected] >
* Andreas Oesterreicher < [email protected] >
* Rudolf Hangl < [email protected] >
* Gerald Simane-Sequens < [email protected] >
*/
/*******************************************************************************************************
* abgabe_lektor
* abgabe_lektor ist die Lektorenmaske des Abgabesystems
* fuer Diplom- und Bachelorarbeiten
*******************************************************************************************************/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/student.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/mail.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/projektarbeit.class.php');
require_once('../../../include/projektbetreuer.class.php');
require_once('../../../include/sancho.inc.php');
require_once('../../../application/libraries/SignatureLib.php');
$anzeigesprache = getSprache();
$p = new phrasen($anzeigesprache);
if (!$db = new basis_db())
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
// Wenn die Datei zu gross ist, dann ist FILES und POST leer
if(empty($_FILES) && empty($_POST) && isset($_SERVER['REQUEST_METHOD']) && strtolower($_SERVER['REQUEST_METHOD'])=='post')
{
echo $p->t('abgabetool/dateiZuGross');
exit;
}
if(!isset($_POST['uid']))
{
$uid = (isset($_GET['uid'])?$_GET['uid']:'-1');
$projektarbeit_id = (isset($_GET['projektarbeit_id'])?$_GET['projektarbeit_id']:'-1');
$titel = (isset($_GET['titel'])?$_GET['titel']:'-1');
$betreuer = (isset($_GET['betreuer'])?$_GET['betreuer']:'-1');
$bid = (isset($_GET['bid'])?$_GET['bid']:'-1');
$command = '';
$paabgabe_id = '';
$fixtermin = false;
$datum = '01.01.1980';
$kurzbz = '';
$schlagwoerter = '';
$schlagwoerter_en = '';
$abstract = '';
$abstract_en = '';
$seitenanzahl = '';
$abgabedatum = '01.01.1980';
$sprache='German';
}
else
{
$uid = (isset($_POST['uid'])?$_POST['uid']:'-1');
$projektarbeit_id = (isset($_POST['projektarbeit_id'])?$_POST['projektarbeit_id']:'-1');
$bid = (isset($_POST['bid'])?$_POST['bid']:'-1');
$titel = (isset($_POST['titel'])?$_POST['titel']:'');
$command = (isset($_POST['command'])?$_POST['command']:'');
$paabgabe_id = (isset($_POST['paabgabe_id'])?$_POST['paabgabe_id']:'-1');
$paabgabetyp_kurzbz = (isset($_POST['paabgabetyp_kurzbz'])?$_POST['paabgabetyp_kurzbz']:'-1');
$fixtermin = (isset($_POST['fixtermin'])?1:0);
$datum = (isset($_POST['datum'])?$_POST['datum']:'');
$abgabedatum = (isset($_POST['abgabedatum'])?$_POST['abgabedatum']:'01.01.1980');
$kurzbz = (isset($_POST['kurzbz'])?$_POST['kurzbz']:'');
$betreuer = (isset($_POST['betreuer'])?$_POST['betreuer']:'-1');
$sprache = (isset($_POST['sprache'])?$_POST['sprache']:'German');
$schlagwoerter = (isset($_POST['schlagwoerter'])?$_POST['schlagwoerter']:'-1');
$schlagwoerter_en = (isset($_POST['schlagwoerter_en'])?$_POST['schlagwoerter_en']:'-1');
$abstract = (isset($_POST['abstract'])?$_POST['abstract']:'-1');
$abstract_en = (isset($_POST['abstract_en'])?$_POST['abstract_en']:'-1');
$seitenanzahl = (isset($_POST['seitenanzahl'])?$_POST['seitenanzahl']:'-1');
$signaturVorhanden = (isset($_POST['signaturVorhanden']) && $_POST['signaturVorhanden']=='true'?true:false);
}
$user = get_uid();
if($uid=='-1' || $projektarbeit_id=='-1')
{
exit;
}
// Bei Studierenden pruefen ob die Uebergebene Projektarbeit zu dem Studierenden passt.
$projektarbeit_obj = new projektarbeit();
if(!$projektarbeit_obj->load($projektarbeit_id))
die('Ungueltiger Eintrag');
$titel = $projektarbeit_obj->titel;
$person = new person();
$person->load($bid);
$betreuer = $person->titelpre.' '.$person->vorname.' '.$person->nachname.' '.$person->titelpost;
$uploadedDocumentSigned = null;
if($uid!=$user)
{
$student = new student();
if(!$student->load($uid))
die($p->t('global/userNichtGefunden'));
$stg_obj = new studiengang();
if(!$stg_obj->load($student->studiengang_kz))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
//Studentenansicht
//Rechte Pruefen
$allowed=false;
//Berechtigung ueber das Berechtigungssystem
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if($rechte->isBerechtigt('lehre/abgabetool',$stg_obj->oe_kurzbz, 's'))
$allowed=true;
//oder Lektor mit Betreuung dieses Studenten
$qry = "SELECT 1
FROM
lehre.tbl_projektarbeit
JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id)
JOIN campus.vw_benutzer on(vw_benutzer.person_id=tbl_projektbetreuer.person_id)
WHERE
tbl_projektarbeit.student_uid=".$db->db_add_param($uid)." AND
vw_benutzer.uid=".$db->db_add_param($user).";";
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
$allowed=true;
}
}
if(!$allowed)
{
die($p->t('abgabetool/keineBerechtigungStudentenansicht'));
}
}
else
{
if($uid!=$projektarbeit_obj->student_uid)
die('Sie haben keine Berechtigung fuer diese Seite');
}
echo '<!DOCTYPE HTML>
<html>
<head>
<title>'.$p->t('abgabetool/ueberschrift').'</title>
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<style>
table.detail
{
border-style:solid;
border-color:#777777;
border-width:1px;
width:100%;
padding:2px;
}
</style>
<script type="text/javascript">
function checkEid()
{
if(document.projektabgabe.eiderklaerung.checked == false)
{
alert("'.$p->t('abgabetool/erklaerungNichtAkzeptiert').'!");
return false;
}
return true;
}
</script>
</head>
<body>';
$datum_obj = new datum();
$error='';
$neu = (isset($_GET['neu'])?true:false);
$stg_arr = array();
$error = false;
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$htmlstr='';
if($command=='add')
{
if(!isAbgabeOutOfDate($paabgabe_id))
{
//zusätzliche Daten bearbeiten
//Check der Eingabedaten
if((strlen($schlagwoerter) < 1) || (strlen($schlagwoerter_en) < 1) || (strlen($abstract) < 1) || (strlen($abstract_en) < 1) || ($seitenanzahl < 1))
{
$error=true;
}
if(!$error)
{
$qry_upd="UPDATE lehre.tbl_projektarbeit SET
seitenanzahl = ".$db->db_add_param($seitenanzahl).",
abgabedatum = now(),
sprache = ".$db->db_add_param($sprache).",
schlagwoerter_en = ".$db->db_add_param($schlagwoerter_en).",
schlagwoerter = ".$db->db_add_param($schlagwoerter).",
abstract = ".$db->db_add_param($abstract).",
abstract_en = ".$db->db_add_param($abstract_en)."
WHERE projektarbeit_id = ".$db->db_add_param($projektarbeit_id, FHC_INTEGER);
if($result=$db->db_query($qry_upd))
{
$qry="UPDATE campus.tbl_paabgabe SET
abgabedatum = now(),
updatevon = ".$db->db_add_param($user).",
updateamum = now()
WHERE paabgabe_id=".$db->db_add_param($paabgabe_id, FHC_INTEGER);
if($db->db_query($qry))
echo '<font color="green">'.$p->t('global/erfolgreichgespeichert').'</font><br>';
$command="update";
}
else
{
echo "<font color=\"#FF0000\">".$p->t('global/fehleraufgetreten')."</font><br>&nbsp;";
$command='';
}
if ($signaturVorhanden === false)
{
// Mail an Studiengang wenn keine Signatur gefunden wurde
$student = new student();
if(!$student->load($projektarbeit_obj->student_uid))
die($p->t('global/userNichtGefunden'));
$stg_obj = new studiengang();
if(!$stg_obj->load($student->studiengang_kz))
die($p->t('global/fehlerBeimLesenAusDatenbank'));
$subject = 'Abgabe ohne Signatur';
$tomail = $stg_obj->email;
$data = array(
'vorname' => $student->vorname,
'nachname' => $student->nachname,
'studiengang' => $stg_obj->bezeichnung
);
$mailres = sendSanchoMail(
'ParbeitsbeurteilungSiganturFehlt',
$data,
$tomail,
$subject,
'sancho_header_min_bw.jpg',
'sancho_footer_min_bw.jpg'
);
}
}
else
{
echo "<font color=\"#FF0000\">".$p->t('abgabetool/dateneingabeUnvollstaendig')."</font><br>&nbsp;";
$command='';
}
}
else
{
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerTerminVorbei').'</font>';
}
}
if($command=="update" && $error!=true)
{
if(!isAbgabeOutOfDate($paabgabe_id))
{
//Dateiupload bearbeiten
if ((isset($_FILES) and isset($_FILES['datei']) and ! $_FILES['datei']['error']))
{
$extensions = explode(".", $_FILES['datei']['name']);
if(strtoupper(end($extensions))=='PDF')
{
if ($paabgabetyp_kurzbz != 'end')
{
//"normaler" Upload
move_uploaded_file($_FILES['datei']['tmp_name'], PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf');
if (file_exists(PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'))
{
exec('chmod 640 "'.PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'.'"');
$qry="UPDATE campus.tbl_paabgabe SET
abgabedatum = now(),
updatevon = ".$db->db_add_param($user).",
updateamum = now()
WHERE paabgabe_id=".$db->db_add_param($paabgabe_id, FHC_INTEGER);
$result=$db->db_query($qry);
echo $p->t('global/dateiErfolgreichHochgeladen');
}
else
{
echo $p->t('global/dateiNichtErfolgreichHochgeladen');
}$htmlstr .= '<input type="hidden" name="command" value="add">'."\n";
}
else // endupload type
{
//Upload der Endabgabe - Eingabe der Zusatzdaten
$command='add';
if (!$error)
{
move_uploaded_file($_FILES['datei']['tmp_name'], PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf');
}
$signaturVorhanden = true;
if (file_exists(PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'))
{
if(defined('ABGABETOOL_CHECK_SIGNATURE') && ABGABETOOL_CHECK_SIGNATURE)
{
// Check if the document is signed
$signList = SignatureLib::list(PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf');
if (is_array($signList) && count($signList) > 0)
{
// The document is signed
}
elseif ($signList === null)
{
$uploadedDocumentSigned = 'WARNING: signature server error';
}
else
{
$signaturVorhanden = false;
$uploadedDocumentSigned = $p->t('abgabetool/uploadedDocumentNotSignedStudent');
}
}
/*$qry="UPDATE campus.tbl_paabgabe SET
abgabedatum = now(),
updatevon = '".$user."',
updateamum = now()
WHERE paabgabe_id='".$paabgabe_id."'";
$result=$db->db_query($qry);*/
echo '<h2>'.$p->t('abgabetool/abgabeStudentenbereich').' - '.$p->t('abgabetool/abgabeZusatzdaten').'</h2>';
$qry_zd="SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=".$db->db_add_param($projektarbeit_id, FHC_INTEGER);
if($result_zd=@$db->db_query($qry_zd))
{
if($row_zd=@$db->db_fetch_object($result_zd))
{
$htmlstr = "<div>".$p->t('abgabetool/betreuer').": <b>".$db->convert_html_chars($betreuer)."</b><br>".$p->t('abgabetool/titel').": <b>".$db->convert_html_chars($titel)."<b><br><br></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= '<form accept-charset="UTF-8" action="'.htmlspecialchars($_SERVER['PHP_SELF']).'" method="POST" name="projektabgabe">'."\n";
$htmlstr .= '<input type="hidden" name="projektarbeit_id" value="'.$db->convert_html_chars($projektarbeit_id).'">'."\n";
$htmlstr .= '<input type="hidden" name="paabgabe_id" value="'.$db->convert_html_chars($paabgabe_id).'">'."\n";
$htmlstr .= '<input type="hidden" name="paabgabetyp_kurzbz" value="'.$db->convert_html_chars($paabgabetyp_kurzbz).'">'."\n";
$htmlstr .= '<input type="hidden" name="abgabedatum" value="'.$db->convert_html_chars($abgabedatum).'">'."\n";
$htmlstr .= '<input type="hidden" name="titel" value="'.$db->convert_html_chars($titel).'">'."\n";
$htmlstr .= '<input type="hidden" name="uid" value="'.$db->convert_html_chars($uid).'">'."\n";
$htmlstr .= '<input type="hidden" name="betreuer" value="'.$db->convert_html_chars($betreuer).'">'."\n";
$htmlstr .= '<input type="hidden" name="bid" value="'.$db->convert_html_chars($bid).'">'."\n";
$htmlstr .= '<input type="hidden" name="command" value="add">'."\n";
$htmlstr .= '<input type="hidden" name="signaturVorhanden" value="'.($signaturVorhanden?'true':'false').'">'."\n";
$htmlstr .= "<tr>\n";
$htmlstr .= "<td><b>".$p->t('abgabetool/spracheDerArbeit').":</b></td><td>";
$sprache = @$db->db_query("SELECT sprache FROM public.tbl_sprache");
$num = $db->db_num_rows($sprache);
if ($num > 0)
{
$htmlstr .= "<SELECT NAME=\"sprache\" SIZE=1> \n";
while ($mrow=@$db->db_fetch_object($sprache))
{
$htmlstr .= "<OPTION VALUE=\"$mrow->sprache\"";
if ($mrow->sprache == $sprache)
{
$htmlstr .= " SELECTED";
}
$htmlstr .= ">$mrow->sprache \n";
}
$htmlstr .= "</SELECT> \n";
}
$htmlstr .= "</td></tr>\n";
$htmlstr .= '<tr><td><b>'.$p->t('abgabetool/deutscheSchlagwoerter').':*</b></td>
<td><input type="text" name="schlagwoerter" value="'.$db->convert_html_chars($schlagwoerter).'" size="60" maxlength="150" required></td></tr>'."\n";
$htmlstr .= '<tr><td><b>'.$p->t('abgabetool/englischeSchlagwoerter').':*</b></td>
<td><input type="text" name="schlagwoerter_en" value="'.$db->convert_html_chars($schlagwoerter_en).'" size="60" maxlength="150" required></td></tr>'."\n";
$htmlstr .= '<tr><td valign="top"><b>'.$p->t('abgabetool/abstract').' </b>'.$p->t('abgabetool/maxZeichen').':*</td>
<td><textarea name="abstract" cols="46" rows="7" required>'.$db->convert_html_chars($abstract).'</textarea></td></tr>'."\n";
$htmlstr .= '<tr><td valign="top"><b>'.$p->t('abgabetool/abstractEng').'</b>'.$p->t('abgabetool/maxZeichen').':*</td>
<td><textarea name="abstract_en" cols="46" rows="7" required>'.$db->convert_html_chars($abstract_en).'</textarea></td></tr>'."\n";
$htmlstr .= '<tr><td><b>'.$p->t('abgabetool/seitenanzahl').':*</b></td>
<td><input type="text" name="seitenanzahl" value="'.$db->convert_html_chars($seitenanzahl).'" size="5" maxlength="4" required></td></tr>'."\n";
$htmlstr .="<tr><td>&nbsp;</td></tr>\n";
// If there are info about the signed document
if ($uploadedDocumentSigned != null)
{
$htmlstr .= "<tr>\n";
$htmlstr .= "<td colspan='2' style='text-align: center;'>";
$htmlstr .= '<div style="color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc; padding: 15px; border: 1px solid; border-radius: 4px;">
<b>'.$uploadedDocumentSigned.'</b></td>
</div>';
$htmlstr .= "</td>";
$htmlstr .= "</tr>\n";
}
$htmlstr .="<tr><td>&nbsp;</td></tr>\n";
$htmlstr .="<tr><td colspan='2'><p align='justify'>".$p->t('abgabetool/eidesstattlicheErklaerung')."</p></td><td></td></tr>\n";
$htmlstr .= "<tr><td><b>".$p->t('abgabetool/gelesenUndAkzeptiert').":* <input type='checkbox' name='eiderklaerung'></b></td></tr>";
$htmlstr .="<tr></tr><td>&nbsp;</td><tr><td style='font-size:70%'>* ".$p->t('abgabetool/pflichtfeld')."</td></tr>
<tr><td>&nbsp;</td></tr>\n";
$htmlstr .= "<tr><td><input type='submit' name='schick' onclick='return checkEid();' value='".$p->t('global/abschicken')."'></td>";
$htmlstr .= "</tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
$htmlstr .= "</body></html>";
echo $htmlstr;
}
else
{
echo $p->t('global/dateiNichtErfolgreichHochgeladen');
}
}
else
{
echo $p->t('global/dateiNichtErfolgreichHochgeladen');
}
}
else
{
echo $p->t('global/dateiNichtErfolgreichHochgeladen');
}
}
//E-Mail an 1.Begutachter und 2.Begutachter senden
if($bid!='' && $bid!=NULL)
{
$qry_betr="SELECT distinct trim(COALESCE(titelpre,'')||' '||COALESCE(vorname,'')||' '||COALESCE(nachname,'')||' '||COALESCE(titelpost,'')) as first,
public.tbl_mitarbeiter.mitarbeiter_uid, anrede
FROM public.tbl_person JOIN lehre.tbl_projektbetreuer ON(lehre.tbl_projektbetreuer.person_id=public.tbl_person.person_id)
JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id)
JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid)
WHERE public.tbl_person.person_id=".$db->db_add_param($bid, FHC_INTEGER);
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">".$p->t('global/fehlerBeimLesenAusDatenbank')."</font><br>&nbsp;";
}
else
{
if($row_betr=$db->db_fetch_object($betr))
{
$qry_std="SELECT * FROM campus.vw_benutzer where uid=".$db->db_add_param($uid);
if(!$result_std=$db->db_query($qry_std))
{
echo "<font color=\"#FF0000\">".$p->t('global/fehlerBeimLesenAusDatenbank')."</font><br>&nbsp;";
}
else
{
// paarbeit sollte nur ab bestimmten Zeitpunkt online bewertet werden
$paIsCurrent = $projektarbeit_obj->projektarbeitIsCurrent($projektarbeit_id);
if(!is_bool($paIsCurrent))
{
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerAktualitaetProjektarbeit')."</font><br>&nbsp;";
}
$row_std=$db->db_fetch_object($result_std);
// 1. Begutachter mail ohne Token
$mail_baselink = APP_ROOT."index.ci.php/extensions/FHC-Core-Projektarbeitsbeurteilung/ProjektarbeitsbeurteilungErstbegutachter";
$mail_fulllink = "$mail_baselink?projektarbeit_id=".$projektarbeit_id."&uid=".$row_std->uid;
$projekttyp_kurzbz = $projektarbeit_obj->projekttyp_kurzbz;
$subject = $projektarbeit_obj->projekttyp_kurzbz == 'Diplom' ? 'Masterarbeitsbetreuung' : 'Bachelorarbeitsbetreuung';
$abgabetyp = $paabgabetyp_kurzbz == 'end' ? 'Endabgabe' : 'Zwischenabgabe';
$maildata = array();
$maildata['geehrt'] = "geehrte".($row_betr->anrede=="Herr"?"r":"");
$maildata['anrede'] = $row_betr->anrede;
$maildata['betreuer_voller_name'] = $row_betr->first;
$maildata['student_anrede'] = $row_std->anrede;
$maildata['student_voller_name'] = trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost);
$maildata['abgabetyp'] = $abgabetyp;
$maildata['parbeituebersichtlink'] = "<p><a href='".APP_ROOT."cis/private/lehre/abgabe_lektor_frameset.html'>Zur Projektarbeitsübersicht</a></p>";
$maildata['bewertunglink'] = $paIsCurrent && $paabgabetyp_kurzbz == 'end' ? "<p><a href='$mail_fulllink'>Zur Beurteilung der Arbeit</a></p>" : "";
$maildata['token'] = "";
$mailres = sendSanchoMail(
'ParbeitsbeurteilungEndupload',
$maildata,
$row_betr->mitarbeiter_uid."@".DOMAIN,
$subject,
'sancho_header_min_bw.jpg',
'sancho_footer_min_bw.jpg',
$user."@".DOMAIN);
if(!$mailres)
{
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerMailBegutachter')."</font><br>&nbsp;";
}
// 2. Begutachter mail, wenn Endabgabe, mit Token wenn extern
if ($paabgabetyp_kurzbz == 'end')
{
// Zweitbegutachter holen
$zweitbegutachter = new projektbetreuer();
$zweitbegutachterRes = $zweitbegutachter->getZweitbegutachterWithToken($bid, $projektarbeit_id, $row_std->uid);
if ($zweitbegutachterRes)
{
$zweitbegutachterResults = $zweitbegutachter->result;
foreach ($zweitbegutachterResults as $begutachter)
{
// token generieren, wenn noch nicht vorhanden und notwendig (wird in methode überprüft)
$tokenGenRes = $zweitbegutachter->generateZweitbegutachterToken($begutachter->person_id, $projektarbeit_id);
if (!$tokenGenRes)
echo "<font color=\"#FF0000\">" . $p->t('abgabetool/fehlerMailZweitBegutachter') . "</font><br>&nbsp;";
// Zweitbegutachter (evtl. mit Token) holen
$zweitbegutachterMitToken = new projektbetreuer();
$begutachterMitTokenRes = $zweitbegutachterMitToken->getZweitbegutachterWithToken($bid, $projektarbeit_id, $row_std->uid, $begutachter->person_id);
if (!$begutachterMitTokenRes)
echo "<font color=\"#FF0000\">" . $p->t('abgabetool/fehlerMailZweitBegutachter') . "</font><br>&nbsp;";
// Email an Zweitbegutachter senden
if (isset($zweitbegutachterMitToken->result[0]))
{
$begutachterMitToken = $zweitbegutachterMitToken->result[0];
$path = $begutachterMitToken->betreuerart_kurzbz == 'Zweitbegutachter' ? 'ProjektarbeitsbeurteilungZweitbegutachter' : 'ProjektarbeitsbeurteilungErstbegutachter';
$mail_baselink = APP_ROOT."index.ci.php/extensions/FHC-Core-Projektarbeitsbeurteilung/$path";
$mail_fulllink = "$mail_baselink?projektarbeit_id=".$projektarbeit_id."&uid=".$row_std->uid;
$intern = isset($begutachterMitToken->uid);
$mail_link = $intern ? $mail_fulllink : $mail_baselink;
$zweitbetmaildata = array();
$zweitbetmaildata['geehrt'] = "geehrte" . ($begutachterMitToken->anrede == "Herr" ? "r" : "");
$zweitbetmaildata['anrede'] = $begutachterMitToken->anrede;
$zweitbetmaildata['betreuer_voller_name'] = $begutachterMitToken->voller_name;
$zweitbetmaildata['student_anrede'] = $maildata['student_anrede'];
$zweitbetmaildata['student_voller_name'] = $maildata['student_voller_name'];
$zweitbetmaildata['abgabetyp'] = $abgabetyp;
$zweitbetmaildata['parbeituebersichtlink'] = $intern ? $maildata['parbeituebersichtlink'] : "";
$zweitbetmaildata['bewertunglink'] = $paIsCurrent ? "<p><a href='$mail_link'>Zur Beurteilung der Arbeit</a></p>" : "";
$zweitbetmaildata['token'] = $paIsCurrent && isset($begutachterMitToken->zugangstoken) && !$intern ? "<p>Zugangstoken: " . $begutachterMitToken->zugangstoken . "</p>" : "";
$mailres = sendSanchoMail(
'ParbeitsbeurteilungEndupload',
$zweitbetmaildata,
$begutachterMitToken->email,
$subject,
'sancho_header_min_bw.jpg',
'sancho_footer_min_bw.jpg',
$user . "@" . DOMAIN
);
if (!$mailres)
{
echo "<font color=\"#FF0000\">" . $p->t('abgabetool/fehlerMailZweitBegutachter') . "</font><br>&nbsp;";
}
}
}
}
}
}
}
else
{
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerBetreuerNichtGefundenKeinMail')."</font><br>&nbsp;";
}
}
}
}
else
{
echo $p->t('abgabetool/keinPDF');
}
}
}
else
{
echo "<font color=\"#FF0000\">".$p->t('abgabetool/fehlerTerminVorbei').'</font>';
}
$error=false;
}
if($command!="add" && $command!="update")
{
$command="update";
}
if($uid==-1||$projektarbeit_id==-1)
{
//echo "Fehler bei der Daten&uuml;bergabe";
exit;
}
if($command!="add")
{
echo '<h2>'.$p->t('abgabetool/abgabeStudentenbereich').'</h2>';
//Einlesen der Termine
$qry="";
$htmlstr = "<div>".$p->t('abgabetool/betreuer').": <b>".$db->convert_html_chars($betreuer)."</b><br>".$p->t('abgabetool/titel').": <b>".$db->convert_html_chars($titel)."<b><br><br><b>".$p->t('abgabetool/abgabetermine').":</b></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id=".$db->db_add_param($projektarbeit_id, FHC_INTEGER)." AND paabgabetyp_kurzbz!='note' ORDER BY datum;";
$htmlstr .= "<tr><td>".$p->t('abgabetool/fix')."</td><td>".$p->t('abgabetool/datum')." </td><td>".$p->t('abgabetool/abgabetyp')."</td><td>".$p->t('abgabetool/beschreibungAbgabe')."</td><td>".$p->t('abgabetool/abgegebenAm')."</td><td colspan='2'>".$p->t('abgabetool/dateiupload')."(<b>".$p->t('abgabetool/nurPDF')."</b>)</td><td></td></tr>\n";
$result=@$db->db_query($qry);
while ($row=@$db->db_fetch_object($result))
{
$htmlstr .= '<form accept-charset="UTF-8" action="'.htmlspecialchars($_SERVER['PHP_SELF']).'" method="POST" enctype="multipart/form-data" name="'.$db->convert_html_chars($row->projektarbeit_id).'">'."\n";
$htmlstr .= '<input type="hidden" name="projektarbeit_id" value="'.$db->convert_html_chars($row->projektarbeit_id).'">'."\n";
$htmlstr .= '<input type="hidden" name="paabgabe_id" value="'.$db->convert_html_chars($row->paabgabe_id).'">'."\n";
$htmlstr .= '<input type="hidden" name="paabgabetyp_kurzbz" value="'.$db->convert_html_chars($row->paabgabetyp_kurzbz).'">'."\n";
$htmlstr .= '<input type="hidden" name="titel" value="'.$db->convert_html_chars($titel).'">'."\n";
$htmlstr .= '<input type="hidden" name="uid" value="'.$db->convert_html_chars($uid).'">'."\n";
$htmlstr .= '<input type="hidden" name="betreuer" value="'.$db->convert_html_chars($betreuer).'">'."\n";
$htmlstr .= '<input type="hidden" name="command" value="update">'."\n";
$htmlstr .= '<input type="hidden" name="schlagwoerter" value="'.$db->convert_html_chars($schlagwoerter).'">'."\n";
$htmlstr .= '<input type="hidden" name="schlagwoerter_en" value="'.$db->convert_html_chars($schlagwoerter_en).'">'."\n";
$htmlstr .= '<input type="hidden" name="abstract" value="'.$db->convert_html_chars($abstract).'">'."\n";
$htmlstr .= '<input type="hidden" name="abstract_en" value="'.$db->convert_html_chars($abstract_en).'">'."\n";
$htmlstr .= '<input type="hidden" name="seitenanzahl" value="'.$db->convert_html_chars($seitenanzahl).'">'."\n";
$htmlstr .= '<input type="hidden" name="sprache" value="'.$db->convert_html_chars($sprache).'">'."\n";
$htmlstr .= '<input type="hidden" name="bid" value="'.$db->convert_html_chars($bid).'">'."\n";
$htmlstr .= '<tr id="'.$db->convert_html_chars($row->projektarbeit_id).'">'."\n";
if(!$row->abgabedatum)
{
if ($row->datum<date('Y-m-d'))
{
//Termin vorbei - weiß auf rot
$bgcol='#FF0000';
$fcol='#FFFFFF';
}
elseif (($row->datum>=date('Y-m-d')) && ($row->datum<date('Y-m-d',mktime(0, 0, 0, date("m") , date("d")+11, date("Y")))))
{
//Termin nahe - schwarz auf gelb
$bgcol='#FFFF00';
$fcol='#000000';
}
else
{
//"normaler" Termin - schwarz auf weiß
$bgcol='#FFFFFF';
$fcol='#000000';
}
}
else
{
if($row->abgabedatum>$row->datum)
{
//Abgabe nach Termin - weiß auf hellrot
$bgcol='#EA7B7B';
$fcol='#FFFFFF';
}
else
{
//Abgabe vor Termin - schwarz auf grün
$bgcol='#00FF00';
$fcol='#000000';
}
}
//$htmlstr .= "<td><input type='checkbox' name='fixtermin' ".($row->fixtermin=='t'?'checked=\"checked\"':'')." disabled>";
if($row->fixtermin=='t')
{
$htmlstr .= "<td><img src='../../../skin/images/bullet_red.png' alt='J' title='".$p->t('abgabetool/fixerAbgabetermin')."' border=0></td>";
}
else
{
$htmlstr .= "<td><img src='../../../skin/images/bullet_green.png' alt='N' title='".$p->t('abgabetool/variablerAbgabetermin')."' border=0></td>";
}
$htmlstr .= " </td>\n";
$htmlstr .= " <td align='center' style='background-color:".$bgcol.";font-weight:bold; color:".$fcol."'>".$datum_obj->formatDatum($row->datum,'d.m.Y')."</td>\n";
$qry_typ="SELECT * FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz=".$db->db_add_param($row->paabgabetyp_kurzbz);
$result_typ=$db->db_query($qry_typ);
$row_typ=$db->db_fetch_object($result_typ);
$htmlstr .= " <td>$row_typ->bezeichnung</td>\n";
$htmlstr .= " <td width='250'>$row->kurzbz</td>\n";
$htmlstr .= " <td align='center'>".$datum_obj->formatDatum($row->abgabedatum,'d.m.Y');
if($row->abgabedatum!='')
$htmlstr .= ' <a href="abgabe_student_file.php?abgabe_id='.$row->paabgabe_id.'&student_uid='.$uid.'" target="_blank" title="'.$p->t('abgabetool/downloadProjektarbeit').'"><img src="../../../skin/images/pdfpic.gif"></a>';
$htmlstr .= "</td>\n";
//Überschrittene Termine
if($row->paabgabetyp_kurzbz=='enda')
{
//Bei Endabgabe kein Upload - Abgabe erfolgt im Sekretariat
$htmlstr .= " <td>&nbsp;&nbsp;</td><td>&nbsp;&nbsp;</td>";
}
else
{
if($row->fixtermin=='t' && $row->datum<date('Y-m-d'))
{
//Termin ist überschritten - es wird kein Upload für diesen Termin mehr angeboten
$htmlstr .= " <td>&nbsp;&nbsp;</td><td> ".$p->t('abgabetool/terminVorbei')."</td>";
}
else
{
//Datei kann hochgeladen werden
$htmlstr .= " <td><input type='file' name='datei' size='60' accept='application/pdf'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='".$p->t('global/abschicken')."'></td>";
}
}
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
}
$command!="";
$htmlstr .= "</table>\n";
echo $htmlstr;
echo '</body></html>';
}
function isAbgabeOutOfDate($paabgabe_id)
{
$db = new basis_db();
$qry = "SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id=".$db->db_add_param($paabgabe_id);
if($result = $db->db_query($qry))
{
if($row = $db->db_fetch_object($result))
{
if($row->datum < date('Y-m-d') && $row->fixtermin=='t')
{
return true;
}
else
return false;
}
}
return false;
}
?>
-47
View File
@@ -1,47 +0,0 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* 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: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
// Holt den Hexcode eines Aktes aus der DB wandelt es in Zeichen
// um und gibt das Dokument zurueck.
require_once 'auth.php';
require_once('../../../config/vilesci.config.inc.php');
require_once('../../../include/akte.class.php');
require_once('../../../include/person.class.php');
$person = new person();
$person_id=$person->checkZugangscode($_SESSION['incoming/user']);
//base64 Dump aus der DB holen
if(isset($_GET['id']) && is_numeric($_GET['id']))
{
$akte = new akte($_GET['id']);
if($person_id!=$akte->person_id)
die('Sie haben keine Berechtigung fuer diese Datei');
//Header fuer Bild schicken
header("Content-type: $akte->mimetype");
header('Content-Disposition: attachment; filename="'.$akte->titel.'"');
echo base64_decode($akte->inhalt);
}
else
echo 'Unkown type';
?>
-190
View File
@@ -1,190 +0,0 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* 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: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]>,
* Rudolf Hangl <[email protected]>,
* Karl Burkhart <[email protected]>.
*/
// Oberflaeche zur Aenderung von Beispielen und Upload von Bildern
require_once 'auth.php';
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/functions.inc.php');
require_once('../../../include/person.class.php');
require_once('../../../include/benutzer.class.php');
require_once('../../../include/benutzerberechtigung.class.php');
require_once('../../../include/akte.class.php');
require_once('../../../include/dokument.class.php');
require_once('../../../include/mail.class.php');
require_once('../../../include/phrasen.class.php');
header("Content-Type: text/html; charset=utf-8");
if(isset($_GET['lang']))
setSprache($_GET['lang']);
$code = $_SESSION['incoming/user'];
$person = new person();
$person_id = $person->checkZugangscode($code);
if($person_id!=$_GET['person_id'])
die('Sie haben keine Berechtigung für diese Seite');
$dokumenttyp = (isset($_GET['dokumenttyp']))? $_GET['dokumenttyp'] : 'LearnAgr';
$sprache = getSprache();
$p=new phrasen($sprache);
$PHP_SELF = $_SERVER['PHP_SELF'];
echo "<html>
<head><title>File-Upload</title></head>
<body>";
//Bei Upload einer Datei
if(isset($_POST['submitbild']))
{
if(isset($_FILES['bild']['tmp_name']))
{
$filename = $_FILES['bild']['tmp_name'];
$fp = fopen($filename,'r');
//auslesen
$content = fread($fp, filesize($filename));
fclose($fp);
$akte = new akte();
if($akte->getAkten($_GET['person_id'], 'Lichtbil'))
{
if(count($akte->result)>0)
{
$akte = $akte->result[0];
$akte->new = false;
}
else
$akte->new = true;
}
else
{
$akte->new = true;
}
$dokument = new dokument();
$dokument->loadDokumenttyp($_REQUEST['dokumenttyp']);
$tmp = explode(".",strtolower($_FILES['bild']['name']));
$extension = end($tmp);
$titel = '';
// da nur 32 zeichen gespeichert werden dürfen, muss anhand vom typ gekürzt werden
/*if($_REQUEST['dokumenttyp']=='Lebenslf')
$titel = $p->t('incoming/lebenslauf').".".$extension;
if($_REQUEST['dokumenttyp']=='LearnAgr')
$titel = $p->t('incoming/learningAgreement').".".$extension;
if($_REQUEST['dokumenttyp']=='Motivat')
$titel = $p->t('incoming/motivationsschreiben').".".$extension;
if($_REQUEST['dokumenttyp']=='Zeugnis')
$titel = $p->t('incoming/zeugnis').".".$extension;
if($_REQUEST['dokumenttyp']=='Lichtbil')
$titel = $p->t('incoming/lichtbild').".".$extension;*/
$titel = StringCut($dokument->bezeichnung,25,false,'');
$titel = $titel.'.'.$extension;
$akte->dokument_kurzbz = $_REQUEST['dokumenttyp'];
$akte->person_id = $_GET['person_id'];
$akte->inhalt = base64_encode($content);
$akte->mimetype = $_FILES['bild']['type'];
$akte->erstelltam = date('Y-m-d H:i:s');
$akte->gedruckt = false;
$akte->titel = $titel;
//$akte->bezeichnung = $dokument->bezeichnung;
$akte->updateamum = date('Y-m-d H:i:s');
$akte->updatevon = 'Incoming-Online';
$akte->insertamum = date('Y-m-d H:i:s');
$akte->insertvon = 'Incoming-Online';
$akte->uid = '';
$akte->new = true;
if(!$akte->save())
{
echo "<b>Fehler: $akte->errormsg</b>";
}
else
echo "<b>".$p->t('global/erfolgreichgespeichert')."</b>";
echo "<script>window.opener.location.reload();</script>";
if($akte->dokument_kurzbz == "LearnAgr")
{
// sende Email zu Assistenz
$person = new person();
$person->load($_GET['person_id']);
$emailtext= "Dies ist eine automatisch generierte E-Mail.<br><br>";
$emailtext.= "Es wurde ein neues Dokument auf das System hochgeladen.<br><br>Vorname/Nachname: <b>".$person->vorname." ".$person->nachname."</b><br>Dokumenttyp: <b>Learning Agreement</b>";
$mail = new mail(MAIL_INTERNATIONAL, 'no-reply', 'Learning-Agreement Upload', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
$mail->setHTMLContent($emailtext);
if(!$mail->send())
$msg= '<span class="error">Fehler beim Senden des Mails</span><br />';
else
$msg= $p->t('global/emailgesendetan');
}
}
}
if(isset($_GET['person_id']))
{
$dokument = new dokument();
$dokument->getDokumente('10006');
echo " <form method='POST' enctype='multipart/form-data' action='$PHP_SELF?person_id=".$_GET['person_id']."'>
<table>
<tr>
<td>".$p->t('incoming/dokument').":</td>
<td>
<input type='file' name='bild' />
</td>
</tr>
<tr>
<td>".$p->t('incoming/dokumenttyp').":</td>
<td>
<SELECT name='dokumenttyp'>";
foreach ($dokument->result as $dok)
{
$selected ="";
if($dok->dokument_kurzbz == $dokumenttyp)
$selected = "selected";
echo '<option '.$selected.' value="'.$dok->dokument_kurzbz.'" >'.$dok->bezeichnung_mehrsprachig[$sprache]."</option>\n";
}
echo " </select>
</td>
</tr>
<tr><td>&nbsp;</td></tr>
<tr>
<td></td>
<td><input type='submit' name='submitbild' value='Upload' /></td>
</tr>
</table>
</form>";
}
else
{
echo "Es wurde keine Person_id angegeben";
}
?>
</body>
</html>
-12
View File
@@ -1,12 +0,0 @@
<?php
session_cache_limiter('none'); //muss gesetzt werden sonst funktioniert der Download mit IE8 nicht
session_start();
if (!isset($_SESSION['incoming/user']) || $_SESSION['incoming/user']=='')
{
$_SESSION['request_uri']=$_SERVER['REQUEST_URI'];
header('Location: index.php');
exit;
}
?>
File diff suppressed because it is too large Load Diff
-125
View File
@@ -1,125 +0,0 @@
<?php
/* Copyright (C) 2010 Technikum-Wien
*
* 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: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Karl Burkhart <[email protected]>.
*/
require_once '../../../config/cis.config.inc.php';
require_once '../../../include/phrasen.class.php';
require_once '../../../include/person.class.php';
if(isset($_GET['lang']))
setSprache($_GET['lang']);
$sprache = getSprache();
$p=new phrasen($sprache);
if (isset($_POST['userid']))
{
$login = $_REQUEST['userid'];
$person = new person();
session_start();
$preincoming=$person->checkZugangscodeIncoming($login);
//Zugangscode wird überprüft
if($preincoming != false)
{
$_SESSION['incoming/user'] = $login;
$_SESSION['incoming/preincomingid'] = $preincoming;
header('Location: incoming.php');
exit;
}
else
{
$errormsg= $p->t('incoming/ungueltigerbenutzer');
}
}
?>
<html>
<head>
<title>Incoming-Verwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="robots" content="noindex">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../include/js/tablesort/table.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="100%" height="100%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td class="rand"></td>
<td style="vertical-align: top" class="boxshadow">
<table width="100%" border="0">
<tr>
<td style="padding: 20px; text-align: left; width: 33%"></td>
<td style="padding: 20px; text-align: center; width: 33%"></td>
<td style="padding: 20px; text-align: right; width: 33%"><?php
echo $p->t("global/sprache")." ";
echo '<a href="'.$_SERVER['PHP_SELF'].'?lang=English&'.$_SERVER['QUERY_STRING'].'">'.$p->t("global/englisch").'</a> |
<a href="'.$_SERVER['PHP_SELF'].'?lang=German&'.$_SERVER['QUERY_STRING'].'">'.$p->t("global/deutsch").'</a><br>';?></td>
</tr>
</table>
<table style="padding: 50px" border="0" width ="100%">
<tr height="50%">
<td align ="center" valign="center"><h3><?php echo $p->t('incoming/welcomeToUAS',array(CAMPUS_NAME));?></h3><br><br>
<img src="../../../skin/styles/<?php echo DEFAULT_STYLE ?>/logo.png"></td>
</tr>
</table>
<table border ="0" width ="100%">
<form action ="index.php" method="POST">
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td align="center"><a href="registration.php"><?php echo $p->t('incoming/registration');?></a></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td align="center"><input type="text" size="30" value="UserID" name ="userid" onfocus="this.value='';"></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td align="center"><input type="submit" value="Login" name="submit"></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td align="center"><?php if(isset($errormsg))
echo $errormsg; ?>
</tr>
</form>
</table>
</td>
<td class="rand">
</td>
</tr>
</table>
</body>
</html>
-63
View File
@@ -1,63 +0,0 @@
<?php
/* Copyright (C) 2010 FH Technikum Wien
*
* 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: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Karl Burkhart <[email protected]>.
*/
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Logout</title>
<script type="text/javascript">
function login()
{
document.location="index.php";
}
</script>
</head>
<body>
<?php
session_start();
session_destroy();
if(isset($_SERVER['REMOTE_USER']))
{
echo 'ACHTUNG! Sie sind per BASIC-Authentifizierung angemeldet. Ein Logout ist hierbei nicht möglich. Um sich korrekt auszuloggen schliessen Sie bitte ALLE Browserfenster.';
}
else
{
echo '
<center>
<strong>
<br />
<br />
Sie wurden erfolgreich ausgeloggt!!<br /> Sie werden sofort weitergeleitet!<br />
</strong>
<script type="text/javascript">
window.setTimeout("login()", 2500);
</script>
';
}
?>
<br />
Sollten Sie nicht weitergeleitet werden klicken Sie bitte <a href="index.php">hier</a>
</center>
</body>
</html>
-513
View File
@@ -1,513 +0,0 @@
<?php
/* Copyright (C) 2011 FH Technikum-Wien
*
* 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 <[email protected]>
* Karl Burkhart < [email protected] >
*/
require_once('../../../config/cis.config.inc.php');
require_once 'auth.php';
require_once('../../../include/studiensemester.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/lvinfo.class.php');
require_once('../../../include/studiengang.class.php');
if (!$db = new basis_db())
die('Fehler beim Herstellen der Datenbankverbindung');
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>ECTS - European Course Credit Transfer Systems (ECTS)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../skin/style.css.php" type="text/css" rel="stylesheet" />
</head>
<body>
<table align="right">
<tr>
<td>
<div class="home_logo"></div>
</td>
</tr>
</table>
<br><br><br><br><br><br>
<div align="center">
<?php
if(isset($_REQUEST['lv']))
$lv = $_REQUEST['lv'];
$language='';
if(isset($_GET['language']))
$language=$_GET['language'];
if(!is_numeric($lv))
die('ungueltige ID');
if(isset($_GET['lv'])) //LV Id wird uebergeben (zB bei Ansicht fuer alle von lesson.php)
{
$lehrveranstaltung_id=$_GET['lv'];
if(!is_numeric($lehrveranstaltung_id))
die('ungueltige ID');
$stsemobj = new studiensemester();
$stsem = $stsemobj->getaktorNext();
$lvinfo_obj = new lvinfo();
if($lvinfo_obj->load($lehrveranstaltung_id, ATTR_SPRACHE_DE))
{
// german content variables
//$titel_de = $lvinfo_obj->titel;
$methodik_de = $lvinfo_obj->methodik;
$kurzbeschreibung_de = $lvinfo_obj->kurzbeschreibung;
$lehrziele_de = $lvinfo_obj->lehrziele;
$lehrinhalte_de = $lvinfo_obj->lehrinhalte;
$voraussetzungen_de = $lvinfo_obj->voraussetzungen;
$unterlagen_de = $lvinfo_obj->unterlagen;
$pruefungsordnung_de = $lvinfo_obj->pruefungsordnung;
$anmerkungen_de = $lvinfo_obj->anmerkungen;
}
if($lvinfo_obj->load($lehrveranstaltung_id, ATTR_SPRACHE_EN))
{
// Englisch content variables
//$titel_en = $lvinfo_obj->titel;
$methodik_en = $lvinfo_obj->methodik;
$kurzbeschreibung_en = $lvinfo_obj->kurzbeschreibung;
$lehrziele_en = $lvinfo_obj->lehrziele;
$lehrinhalte_en = $lvinfo_obj->lehrinhalte;
$voraussetzungen_en = $lvinfo_obj->voraussetzungen;
$unterlagen_en = $lvinfo_obj->unterlagen;
$pruefungsordnung_en = $lvinfo_obj->pruefungsordnung;
$anmerkungen_en = $lvinfo_obj->anmerkungen;
}
else
die('Es sind keine Informationen zu dieser Lehrveranstaltung vorhanden');
}
else
die('Fehler bei der Parameteruebergabe');
$stsemobj = new studiensemester();
$stsem = $stsemobj->getaktorNext();
$lv_obj = new lehrveranstaltung();
if(!$lv_obj->load($lehrveranstaltung_id))
die($lv_obj->errormsg);
$ects_points = $lv_obj->ects;
$stg = $lv_obj->studiengang_kz;
$sem = $lv_obj->semester;
$lang = $lv_obj->sprache;
$titel_de = $lv_obj->bezeichnung;
$titel_en = $lv_obj->bezeichnung_english;
if (!isset($lv))
$lv=0;
//Zugeteilte Fachbereiche auslesen
$qry = "SELECT distinct tbl_fachbereich.bezeichnung as bezeichnung, tbl_fachbereich.fachbereich_kurzbz as fachbereich_kurzbz
FROM public.tbl_fachbereich, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach
WHERE tbl_lehreinheit.studiensemester_kurzbz=(
SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lv, FHC_INTEGER)." ORDER BY ende DESC LIMIT 1)
AND tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lv, FHC_INTEGER)." AND
tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id AND
tbl_fachbereich.oe_kurzbz=lehrfach.oe_kurzbz";
if(!$result=$db->db_query($qry))
die('Fehler beim Lesen aus der Datenbank');
$fachbereiche="'1'";
$fachbereich['kurzbz']=array();
$fachbereich['bezeichnung']=array();
while($row=$db->db_fetch_object($result))
{
$fachbereiche .= ", ".$db->db_add_param($row->fachbereich_kurzbz);
$fachbereich['kurzbz'][]=$row->fachbereich_kurzbz;
$fachbereich['bezeichnung'][]=$row->bezeichnung;
}
//Studiengangsbezeichnung auslesen
$stg_hlp_obj = new studiengang();
$stg_hlp_obj->load($stg);
$stg_kurzbz = $stg_hlp_obj->kuerzel;
$stg_kurzbzlang = $stg_hlp_obj->kurzbzlang;
//Lehrform auslesen
$qry = "Select distinct lehrform_kurzbz FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id=".$db->db_add_param($lv, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($stsem);
if(!$res = $db->db_query($qry))
die('Fehler beim Lesen aus der Datenbank');
//echo $fachbereiche;
while($row = $db->db_fetch_object($res))
$lehrform_kurzbz[] = $row->lehrform_kurzbz;
//Fachbereichsleiter fuer alle FB ermitteln
$qry="
SELECT
vorname, nachname, tbl_fachbereich.fachbereich_kurzbz
FROM
public.tbl_benutzerfunktion
JOIN public.tbl_fachbereich USING(oe_kurzbz)
JOIN campus.vw_mitarbeiter USING(uid)
WHERE
funktion_kurzbz='Leitung' AND tbl_fachbereich.fachbereich_kurzbz in($fachbereiche) AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())";
if(!$res=$db->db_query($qry))
die('Fehler '.$db->errormsg);
$fachbereichsleiter=array();
while($row=$db->db_fetch_object($res))
$fachbereichsleiter[$row->fachbereich_kurzbz] = $row->vorname."&nbsp;".$row->nachname;
//Fachbereichskoordinatoren fuer alle FB ermitteln
//$qry="SELECT * FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE funktion_kurzbz='fbk' AND studiengang_kz='$stg' AND fachbereich_kurzbz in($fachbereiche)";
$qry = "SELECT
distinct vorname, nachname, tbl_fachbereich.fachbereich_kurzbz
FROM
lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, public.tbl_benutzerfunktion, campus.vw_mitarbeiter, public.tbl_fachbereich
WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lv, FHC_INTEGER)." AND
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id AND
lehrfach.oe_kurzbz=tbl_fachbereich.oe_kurzbz AND
tbl_fachbereich.fachbereich_kurzbz=tbl_benutzerfunktion.fachbereich_kurzbz AND
tbl_benutzerfunktion.funktion_kurzbz='fbk' AND
vw_mitarbeiter.uid=COALESCE(tbl_lehrveranstaltung.koordinator, tbl_benutzerfunktion.uid) AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1) ";
if(!$res=$db->db_query($qry))
die('Fehler ! '.$db->errormsg);
$fachbereichskoordinator=array();
while($row=$db->db_fetch_object($res))
{
$name = $row->vorname."&nbsp;".$row->nachname;
if(!isset($fachbereichskoordinator[$row->fachbereich_kurzbz]) ||
!in_array($name, $fachbereichskoordinator[$row->fachbereich_kurzbz]))
{
$fachbereichskoordinator[$row->fachbereich_kurzbz][] = $name;
}
}
//Namen der Lehrenden Auslesen
$qry = "SELECT distinct vorname, nachname FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, campus.vw_mitarbeiter
WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER)."
AND studiensemester_kurzbz=(SELECT studiensemester_kurzbz FROM public.tbl_studiensemester JOIN lehre.tbl_lehreinheit USING(studiensemester_kurzbz) WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER)." ORDER BY ende DESC LIMIT 1)
AND tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id
AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=uid";
$lehrendearray = array();
if($result=$db->db_query($qry))
{
while($row=$db->db_fetch_object($result))
$lehrendearray[] = "$row->vorname $row->nachname";
}
//Ausgabe der LV-Information
//Deutsch Version
if(!(isset($language) && $language=='en'))
{
echo "<a name=\"de\"></a><br><br>
<table class='tabcontent'>
<tr>
<td class=\"ContentHeader2\" align='center' valign='top'>
<div style='font-size: medium; padding-top: 15px; padding-bottom: 15px;'>
".stripslashes($titel_de)."</div>
</td>
</tr>
<tr>
<td><br>";
echo '<table border="0" cellpadding="0">';
echo "<tr><td>Studiengang:</td><td>$stg_kurzbz</td></tr>";
echo "<tr><td>Semester:</td><td>$sem</td></tr>";
echo '<tr><td>&nbsp;</td><td>&nbsp;</td></tr>';
if(($anz=count($lehrendearray))>0)
{
echo "<tr valign='top'><td>Lehrbeauftragte(r): </td><td>";
foreach($lehrendearray as $elem)
{
$anz--;
echo " $elem";
if($anz!=0)
echo ',';
}
echo '</td></tr>';
}
if(isset($lehrform_kurzbz) && count($lehrform_kurzbz)>0)
{
echo "<tr valign='top'><td>Lehrform:&nbsp;</td><td>";
foreach ($lehrform_kurzbz as $lehrform_kurz)
echo "$lehrform_kurz<br />";
echo '</td></tr>';
}
if ($lang > -1)
echo '<tr><td>Sprache:&nbsp;</td><td>'.stripslashes($lang).'</td></tr>';
if ($ects_points)
echo '<tr><td>ECTS:&nbsp;</td><td>'.number_format(stripslashes($ects_points),1,'.','').'</td></tr>';
echo '<tr><td>&nbsp;</td><td>&nbsp;</td></tr>';
//Fachbereiche und Leiter/Koordinatoren anzeigen
if (count($fachbereich['bezeichnung'])>0)
{
echo '<tr><td>Institut:&nbsp;</td><td>';
//Fachbereiche durchlaufen
for($i=0;$i<count($fachbereich['kurzbz']);$i++)
{
$help='';
echo stripslashes($fachbereich['bezeichnung'][$i]);
//zugehoerigen Leiter ausgeben
if(isset($fachbereichsleiter[$fachbereich['kurzbz'][$i]]))
$help.='Leitung: '.$fachbereichsleiter[$fachbereich['kurzbz'][$i]];
if(isset($fachbereichskoordinator[$fachbereich['kurzbz'][$i]]))
{
$first=true;
//zugehoerige Koordinatoren ausgeben
foreach($fachbereichskoordinator[$fachbereich['kurzbz'][$i]] as $fbk)
{
if($help!='')
{
if($first)
{
$help.=' Koordination:';
$first=false;
}
else
$help.=',';
}
$help.=" $fbk";
}
}
if($help!='')
echo " ($help)";
}
echo '</td></tr>';
}
echo "</table>";
echo "<br /><br /></td></tr>";
if ($kurzbeschreibung_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Kurzbeschreibung</td></tr>";
echo "<tr><td><br />".stripslashes($kurzbeschreibung_de)."<br /><br /></td></tr>";
}
if ($lehrziele_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Kompetenzerwerb</td></tr>";
echo "<tr><td><br />".stripslashes($lehrziele_de)."<br /><br /></td></tr>";
}
if ($lehrinhalte_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Lehrinhalte</td></tr>";
echo "<tr><td><br />".stripslashes($lehrinhalte_de)."<br /><br /></td></tr>";
}
if ($voraussetzungen_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Vorkenntnisse</td></tr>";
echo "<tr><td><br />".stripslashes($voraussetzungen_de)."<br><br /></td></tr>";
}
if ($methodik_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Methodik / Didaktik</td></tr>";
echo "<tr><td><br />".stripslashes($methodik_de)."<br><br /></td></tr>";
}
if ($pruefungsordnung_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Leistungsbeurteilung</td></tr>";
echo "<tr><td><br />".stripslashes($pruefungsordnung_de)."<br /><br /></td></tr>";
}
if ($unterlagen_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Literatur</td></tr>";
echo "<tr><td><br />".stripslashes($unterlagen_de)."<br /><br /></td></tr>";
}
if ($anmerkungen_de)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Anmerkungen</td></tr>";
echo "<tr><td><br />".stripslashes($anmerkungen_de)."&nbsp;<br /><br /></td></tr>";
}
echo "</td></tr></table>";
}
//Englische Version
if(!(isset($language) && $language=='de'))
{
echo "<a name=\"en\"></a><br><br>";
echo "<table class='tabcontent'>
<tr>
<td class=\"ContentHeader2\" align='center' valign='top'>
<div style='font-size: medium; padding-top: 15px; padding-bottom: 15px;'>
".stripslashes($titel_en)."
</div>
</td>
</tr>
<tr><td><br />";
echo '<table border="0" cellpadding="0">';
echo "<tr><td>degree programme:</td><td>$stg_kurzbz</td></tr>";
echo "<tr><td>semester:</td><td>$sem</td></tr>";
echo "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>";
if(($anz=count($lehrendearray))>0)
{
echo "<tr><td>Lecturer:</td><td>";
foreach($lehrendearray as $elem)
{
$anz--;
echo " $elem";
if($anz!=0)
echo ",";
}
echo "</td></tr>";
}
if(isset($lehrform_kurzbz) && count($lehrform_kurzbz)>0)
{
echo "<tr valign='top'><td>Course methods:&nbsp;</td><td>";
foreach ($lehrform_kurzbz as $lehrform_kurz)
echo "$lehrform_kurz<br />";
echo "</td></tr>";
}
if ($lang > -1)
echo "<tr><td>Language:&nbsp;</td><td>".stripslashes($lang)."</td></tr>";
if ($ects_points)
echo "<tr><td>ECTS Credits:&nbsp;</td><td>".number_format(stripslashes($ects_points),1,'.','')."</td></tr>";
echo "<tr><td>&nbsp;</td><td>&nbsp;</td></tr>";
//Fachbereiche und Leiter/Koordinatoren anzeigen
if (count($fachbereich['bezeichnung'])>0)
{
echo '<tr><td>Department:&nbsp;</td><td>';
//Fachbereiche durchlaufen
for($i=0;$i<count($fachbereich['kurzbz']);$i++)
{
$help='';
echo stripslashes($fachbereich['bezeichnung'][$i]);
//zugehoerigen Leiter ausgeben
if(isset($fachbereichsleiter[$fachbereich['kurzbz'][$i]]))
$help.='Head: '.$fachbereichsleiter[$fachbereich['kurzbz'][$i]];
if(isset($fachbereichskoordinator[$fachbereich['kurzbz'][$i]]))
{
$first=true;
//zugehoerige koordinatoren ausgeben
foreach($fachbereichskoordinator[$fachbereich['kurzbz'][$i]] as $fbk)
{
if($help!='')
{
if($first)
{
$help.=' Coordination:';
$first=false;
}
else
$help.=',';
}
$help.=" $fbk";
}
}
if($help!='')
echo " ($help)";
}
echo '</td></tr>';
}
echo '</table>';
echo '<br /><br /></td></tr>';
if ($kurzbeschreibung_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Course Description</td></tr>";
echo "<tr><td><br />".stripslashes($kurzbeschreibung_en)."<br /><br /></td></tr>";
}
if ($lehrziele_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Learning outcome</td></tr>";
echo "<tr><td><br />".stripslashes($lehrziele_en)."<br /><br /></td></tr>";
}
if ($lehrinhalte_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Course Contents</td></tr>";
echo "<tr><td><br />".stripslashes($lehrinhalte_en)."<br /><br /></td></tr>";
}
if ($voraussetzungen_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Prerequisites</td></tr>";
echo "<tr><td><br />".stripslashes($voraussetzungen_en)."<br /><br /></td></tr>";
}
if ($methodik_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Teaching Methods</td></tr>";
echo "<tr><td><br />".stripslashes($methodik_en)."<br><br /></td></tr>";
}
if ($pruefungsordnung_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Assessment Methods</td></tr>";
echo "<tr><td><br />".stripslashes($pruefungsordnung_en)."<br /><br /></td></tr>";
}
if ($unterlagen_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Recommended Reading and Material</td></tr>";
echo "<tr><td><br />".stripslashes($unterlagen_en)."<br /><br /></td></tr>";
}
if ($anmerkungen_en)
{
echo "<tr><td class=\"ContentHeader2\" align='left' valign='top'>Comments</td></tr>";
echo "<tr><td><br />".stripslashes($anmerkungen_en)."&nbsp;<br /></td></tr>";
}
}
echo "</table>";
//Ein paar Zeilenumbrueche damit er beim Sprung zum Anker weit genug nach unten springt
echo "<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>";
?>
</body></html>
-327
View File
@@ -1,327 +0,0 @@
<?php
/* Copyright (C) 2010 Technikum-Wien
*
* 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: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Karl Burkhart <[email protected]>.
*/
require_once '../../../config/cis.config.inc.php';
require_once '../../../include/person.class.php';
require_once '../../../include/nation.class.php';
require_once '../../../include/functions.inc.php';
require_once '../../../include/phrasen.class.php';
require_once '../../../include/adresse.class.php';
require_once '../../../include/kontakt.class.php';
require_once '../../../include/preincoming.class.php';
require_once '../../../include/mail.class.php';
require_once '../../../include/securimage/securimage.php';
if(isset($_GET['lang']))
setSprache($_GET['lang']);
$sprache = getSprache();
$p=new phrasen($sprache);
$nation = new nation();
if($sprache == "German")
$nation->getAll($ohnesperre = true);
else if($sprache == "English")
$nation->getAll($ohnesperre = true, $orderEnglish= true);
$date = new datum();
?>
<html>
<head>
<title>Incoming-Registration</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../include/js/tablesort/table.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
echo ' <table width="100%" height="100%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td class="rand"></td>
<td style="vertical-align: top" class="boxshadow">
<table width="100%" border="0">
<tr>
<td style="padding: 20px; text-align: left; width: 33%"><a href="index.php">Login</a> &gt; Registration </td>
<td style="padding: 20px; text-align: center; width: 33%"></td>
<td style="padding: 20px; text-align: right; width: 33%">
'.$p->t("global/sprache").'
<a href="'.$_SERVER['PHP_SELF'].'?lang=English">'.$p->t("global/englisch").'</a> |
<a href="'.$_SERVER['PHP_SELF'].'?lang=German">'.$p->t("global/deutsch").'</a><br> </td>
</tr>
</table>';
if(!isset($_POST['submit']))
{
echo ' <form action="registration.php" method="POST" name="RegistrationForm">
<table border = "0" style="margin: auto; width: 60%; margin-top:5%;">
<tr>
<td colspan="2" style="border-bottom: 1px solid grey; padding-bottom: 10px;">'.$p->t('incoming/datenschutzHinweisRegistration').'</td>
</tr>
<tr>
<td style="padding-top: 10px;">'.$p->t('global/titel').' Pre</td>
<td style="padding-top: 10px;"><input type="text" size="20" maxlength="64" name="titel_pre"></td>
</tr>
<tr>
<td>'.$p->t('incoming/vorname').'*</td>
<td><input type="text" size="40" maxlength="32" name="vorname"></td>
</tr>
<tr>
<td>'.$p->t('incoming/nachname').'*</td>
<td><input type="text" size="40" maxlength="64" name="nachname"></td>
</tr>
<tr>
<td>'.$p->t('global/titel').' Post</td>
<td><input type="text" size="20" maxlength="32" name="titel_post"></td>
</tr>
<tr>
<td>'.$p->t('global/geburtsdatum').'</td>
<td><input type="text" size="20" name="geb_datum" value="" onfocus="this.value=\'\';" > (dd.mm.yyyy)</td>
</tr>
<tr>
<td>'.$p->t('global/staatsbuergerschaft').'*</td>
<td><SELECT name="staatsbuerger">
<option value="staat_auswahl">-- select --</option>';
foreach ($nation->nation as $nat)
{
if($sprache == 'English')
echo '<option value="'.$nat->code.'" >'.$nat->engltext."</option>\n";
else
echo '<option value="'.$nat->code.'" >'.$nat->langtext."</option>\n";
}
echo' </select>
</td>
</tr>
<tr>
<td>'.$p->t('global/geschlecht').'</td>
<td>
<input type="radio" name="geschlecht" value="m" checked> '.$p->t('global/mann').'
<input type="radio" name="geschlecht" value="w"> '.$p->t('global/frau').'
</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>'.$p->t('global/strasse').'</td>
<td><input type="text" size="40" maxlength="256" name="strasse"></td>
</tr>
<tr>
<td>'.$p->t('global/plz').'</td>
<td><input type="text" size="20" maxlength="16" name="plz"></td>
</tr>
<tr>
<td>'.$p->t('global/ort').'</td>
<td><input type="text" size="40" maxlength="256" name="ort"></td>
</tr>
<tr>
<td>'.$p->t('incoming/nation').'*</td>
<td><SELECT name="nation">
<option value="nat_auswahl">-- select --</option>';
foreach ($nation->nation as $nat)
{
if($sprache == 'English')
echo '<option value="'.$nat->code.'" >'.$nat->engltext."</option>\n";
else
echo '<option value="'.$nat->code.'" >'.$nat->langtext."</option>\n";
}
echo ' </select>
</td>
</tr>
<tr>
<td>E-Mail*</td>
<td><input type="text" size="40" maxlength="128" name="email"></td>
</tr>
<tr>
<td>'.$p->t('global/anmerkung').'</td>
<td><textarea name="anmerkung" cols="31" rows="5"></textarea></td>
</tr>
<tr>
<td>
<img id="captcha" class="center-block img-responsive" src="'.APP_ROOT.'include/securimage/securimage_show.php" alt="CAPTCHA Image" />
<br>
<a href="#" onclick="document.getElementById(\'captcha\').src = \''.APP_ROOT.'include/securimage/securimage_show.php?\' + Math.random(); return false;">
'.$p->t('incoming/andereGrafik').'
</a>
</td>
<td>
'.$p->t('incoming/captcha').'<br>
<input type="text" name="captcha_code" maxlength="6" id="captcha" class="form-control">
</td>
</tr>
<tr>
<td colspan="2" align = "center"><input type="submit" name="submit" value="Registration" onclick="return checkRegistration()"></td>
</tr>
</table>
</form>
</td>
<td class="rand">
</td>
</tr>
</table>
<script type="text/javascript">
function checkRegistration()
{
if(document.RegistrationForm.nachname.value == "")
{
alert("Kein Nachname angegeben.");
return false;
}
if(document.RegistrationForm.staatsbuerger.options[0].selected == true)
{
alert("Keine Staatsbürgerschaft ausgewählt.");
return false;
}
if(document.RegistrationForm.nation.options[0].selected == true)
{
alert("Keine Nation ausgewählt.");
return false;
}
if(document.RegistrationForm.email.value == "")
{
alert("Keine E-Mail Adresse angegeben.");
return false;
}
return true;
}
</script>';
}
echo' </body>
</html>';
if(isset($_REQUEST['submit']))
{
$securimage = new Securimage();
// Sicherheitscode wurde falsch eingegeben
if ($securimage->check($_POST['captcha_code']) == false)
{
echo '<p class="bg-danger padding-10">'.$p->t('bewerbung/sicherheitscodeFalsch').'</p>';
exit;
}
$person = new person();
$adresse = new adresse();
$kontakt = new kontakt();
$preincoming = new preincoming();
$titel_pre = $_REQUEST['titel_pre'];
$vorname = $_REQUEST['vorname'];
$nachname =$_REQUEST['nachname'];
$titel_post = $_REQUEST['titel_post'];
$geb_datum = $date->formatDatum($_REQUEST['geb_datum'], 'Y-m-d');
$staatsbuerger = $_REQUEST['staatsbuerger'];
$geschlecht = $_REQUEST['geschlecht'];
$strasse = $_REQUEST['strasse'];
$plz = $_REQUEST['plz'];
$ort = $_REQUEST['ort'];
$nation_code = $_REQUEST['nation'];
$email = $_REQUEST['email'];
$anmerkung = $_REQUEST['anmerkung'];
$zugangscode = substr(md5(openssl_random_pseudo_bytes(20)), 0, 15);
$person->staatsbuergerschaft = $staatsbuerger;
$person->titelpost = $titel_post;
$person->titelpre = $titel_pre;
$person->nachname = $nachname;
$person->vorname = $vorname;
$person->gebdatum = $geb_datum;
$person->geschlecht = $geschlecht;
$person->aktiv = true;
$person->zugangscode = $zugangscode;
$person->new = true;
if(!$person->save())
die('Fehler beim Anlegen der Person aufgetreten.');
$adresse->person_id = $person->person_id;
$adresse->strasse = $strasse;
$adresse->plz = $plz;
$adresse->ort = $ort;
$adresse->nation = $nation_code;
$adresse->typ = 'h';
$adresse->heimatadresse = true;
$adresse->zustelladresse = true;
$adresse->new = true;
if(!$adresse->save())
die($p->t('incoming/fehlerAdresse'));
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = "email";
$kontakt->kontakt = $email;
$kontakt->new = true;
if(!$kontakt->save())
die($p->t('incoming/fehlerKontakt'));
$preincoming->person_id = $person->person_id;
$preincoming->anmerkung = $anmerkung;
$preincoming->zweck_code = 1;
$preincoming->aktiv = true;
$preincoming->bachelorthesis = false;
$preincoming->masterthesis = false;
$preincoming->uebernommen = false;
$preincoming->new = true;
$preincoming->insertamum = date('Y-m-d H:i:s');
$preincoming->updateamum = date('Y-m-d H:i:s');
if(!$preincoming->save())
{
echo $preincoming->errormsg;
die($p->t('incoming/fehlerIncoming'));
}
echo sendMail($zugangscode, $email);
}
function sendMail($zugangscode, $email)
{
global $p, $vorname, $nachname;
$emailtext= $p->t('mail/incomingRegistrationEmail', array($zugangscode));
$mail = new mail($email, 'no-reply', 'Incoming-Registration', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
$mail->setHTMLContent($emailtext);
if(!$mail->send())
$msg= '<span class="error">Fehler beim Senden des Mails</span><br />';
else
$msg= $p->t('global/emailgesendetan')." $email!<br>";
// sende Nachricht an Assistenz
$emailtext= "Dies ist eine automatisch generierte E-Mail.<br><br>";
$emailtext.= "Es hat sich ein neuer Incoming registriert.<br><br>Name: ".$vorname.' '.$nachname.'<br>E-Mail: '.$email;
$mail = new mail(MAIL_INTERNATIONAL, 'no-reply', 'New Incoming', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.');
$mail->setHTMLContent($emailtext);
$mail->send();
return $msg;
}
?>
-32
View File
@@ -1,32 +0,0 @@
<?php
/* Copyright (C) 2012 Technikum-Wien
*
* 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: Karl Burkhart <[email protected]>
*
*/
session_cache_limiter('none'); //muss gesetzt werden sonst funktioniert der Download mit IE8 nicht
session_start();
if (!isset($_SESSION['prestudent/user']) || $_SESSION['prestudent/user']=='')
{
$_SESSION['request_uri']=$_SERVER['REQUEST_URI'];
header('Location: index.php');
exit;
}
?>
-115
View File
@@ -1,115 +0,0 @@
<?php
/* Copyright (C) 2012 Technikum-Wien
*
* 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: Karl Burkhart <[email protected]>
*
*/
require_once('../../../config/cis.config.inc.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/person.class.php');
if(isset($_GET['lang']))
setSprache($_GET['lang']);
$sprache = getSprache();
$p=new phrasen($sprache);
if (isset($_POST['userid']))
{
$login = trim($_REQUEST['userid']);
$person = new person();
session_start();
$person_id=$person->checkZugangscode($login);
//Zugangscode wird überprüft
if($person_id != false)
{
$_SESSION['prestudent/user'] = $login;
$_SESSION['prestudent/person_id'] = $person_id;
header('Location: prestudent.php');
exit;
}
else
{
$errormsg= $p->t('incoming/ungueltigerbenutzer');
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Prestudenten-Tool</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="robots" content="noindex">
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../include/js/tablesort/table.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="100%" border="0">
<tr>
<td align="left"></td>
<td align ="right"><?php
echo $p->t("global/sprache")." ";
echo '<a href="'.$_SERVER['PHP_SELF'].'?lang=English">'.$p->t("global/englisch").'</a> |
<a href="'.$_SERVER['PHP_SELF'].'?lang=German">'.$p->t("global/deutsch").'</a><br>';?>
</td>
</tr>
</table>
<form action ="index.php" method="POST">
<table border ="0" width ="100%" height="40%">
<tr height="50%">
<td align ="center" valign="center"><h3><?php echo $p->t('incoming/wilkommenAnFh'); ?>. <br> <?php echo $p->t('incoming/bitteCodeEingeben'); ?>: </h3><span style="font-size:1.2em"></span></td>
</tr>
<tr >
<td align="center" valign="bottom"> <img src="../../../skin/images/tw_logo_02.jpg"></td>
</tr>
</table>
<table border ="0" width ="100%">
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td align="center"><input type="text" size="30" value="<?php echo $p->t('incoming/zugangscode') ?>" name ="userid" onfocus="this.value='';"></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td align="center"><input type="submit" value="Login" name="submit"></td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
<tr>
<td align="center"><div class="error"><?php if(isset($errormsg))
echo $errormsg; ?></div>
</tr>
</table>
</form>
</body>
</html>
-63
View File
@@ -1,63 +0,0 @@
<?php
/* Copyright (C) 2010 FH Technikum Wien
*
* 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: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Karl Burkhart <[email protected]>.
*/
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Logout</title>
<script type="text/javascript">
function login()
{
document.location="index.php";
}
</script>
</head>
<body>
<?php
session_start();
session_destroy();
if(isset($_SERVER['REMOTE_USER']))
{
echo 'ACHTUNG! Sie sind per BASIC-Authentifizierung angemeldet. Ein Logout ist hierbei nicht möglich. Um sich korrekt auszuloggen schliessen Sie bitte ALLE Browserfenster.';
}
else
{
echo '
<center>
<strong>
<br />
<br />
Sie wurden erfolgreich ausgeloggt!!<br /> Sie werden sofort weitergeleitet!<br />
</strong>
<script type="text/javascript">
window.setTimeout("login()", 2500);
</script>
';
}
?>
<br />
Sollten Sie nicht weitergeleitet werden klicken Sie bitte <a href="index.php">hier</a>
</center>
</body>
</html>
-141
View File
@@ -1,141 +0,0 @@
<?php
/* Copyright (C) 2012 Technikum-Wien
*
* 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: Karl Burkhart <[email protected]>
*
*/
require_once('../../../config/cis.config.inc.php');
require_once('auth.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/person.class.php');
require_once('../../../include/datum.class.php');
require_once('../../../include/prestudent.class.php');
require_once('../../../include/studiengang.class.php');
// Sprache setzen
if(isset($_GET['lang']))
setSprache($_GET['lang']);
$datum = new datum();
$sprache = getSprache();
$p = new phrasen($sprache);
// Bei login wird session gesetzt
$person_id = $_SESSION['prestudent/person_id'];
$person = new person();
$person->load($person_id);
$prestudent = new prestudent();
// hole prestudenten anhand person_id
$prestudent->getPrestudenten($person->person_id);
if(isset($prestudent->result[0]->studiengang_kz ))
$studiengang_kz = $prestudent->result[0]->studiengang_kz;
else
$studiengang_kz = '';
$studiengang = new studiengang();
$studiengang->load($studiengang_kz);
$method = (isset($_GET['method'])?$_GET['method']:'');
// emailadresse der assistenz
$mail = ($studiengang->email!='')?$studiengang->email:MAIL_ADMIN;
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Prestudententool</title>
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../include/js/tablesort/table.css" rel="stylesheet" type="text/css">
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>
<table width="100%" border="0"> <!-- Anzeige Header -->
<tr>
<td align="left" width="33%"><a href="prestudent.php">Administration</a></td>
<td align="center" width="33%"><?php echo $person->titelpre." ".$person->vorname." ".$person->nachname." ".$person->titelpost?>
<td align ="right" width="33%"><?php
echo $p->t("global/sprache")." ";
echo '<a href="'.$_SERVER['PHP_SELF'].'?lang=English">'.$p->t("global/englisch").'</a> |
<a href="'.$_SERVER['PHP_SELF'].'?lang=German">'.$p->t("global/deutsch").'</a><br>';?></td>
</tr>
</table>
<?php
if($method == 'profil') // Profil anzeigen
{
echo '
<form method="POST" action="prestudent.php?method=profil" name="ProfilForm">
<table align="center" style="margin-top:5%;" border="0">
<tr>
<td>'.$p->t('global/vorname').':</td>
<td>'.$person->vorname.'</td>
<td rowspan="5"><img id="personimage" src="../../public/bild.php?src=person&person_id='.$person->person_id.'" alt="'.$person->person_id.'" height="100px" width="75px"></td>
</tr>
<tr>
<td>'.$p->t('global/nachname').':</td>
<td>'.$person->nachname.'</td>
</tr>
<tr>
<td>'.$p->t('global/geburtsdatum').':</td>
<td>'.$datum->formatDatum($person->gebdatum, 'd.m.Y').'</td>
</tr>
<tr>
<td>'.$p->t('global/titel').' Pre</td>
<td>'.$person->titelpre.'</td>
<tr>
<tr>
<td>'.$p->t('global/titel').' Post</td>
<td>'.$person->titelpost.'</td>
</tr>
<td>&nbsp;</td>
</tr>
<tr>
<td><input type="button" value="'.$p->t('global/zurueck').'" onclick="window.location.href=\'prestudent.php\';"></td>
<td colspan="2"><a href="mailto:'.$mail.'">'.$p->t('global/emailAnAssistenz').'</a></td>
</tr>
</table>
</form>';
}
else // Hauptmenü anzeigen
{
echo '
<br><br><br><br>
<fieldset>
<table align ="center" border="0"> <!-- Anzeige Hauptmenü -->
<tr>
<td>1. <a href="prestudent.php?method=profil">'.$p->t('incoming/profil').'</a></td>
</tr>
<tr>';
echo "<td>2. <a href='#BildUpload' onclick='window.open(\"../bildupload.php?person_id=$person->person_id\",\"BildUpload\", \"height=500,width=500,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\"); return false;'>".$p->t('profil/bildHochladen')."</a></td>";
echo' </tr>
</table>
<table width="100%" border="0">
<tr>
<td align="right"><a href="logout.php">'.$p->t('global/abmelden').'</a> </td>
</tr>
</table>
</fieldset>';
}
?>
</body>
</html>
@@ -31,24 +31,10 @@ export default {
return {};
},
methods: {
printDokument(url, scope, event){
let output = 'pdf';
if(this.showAllFormats)
{
console.log("BERECHTIUNG VORHANDEN");
if (event.ctrlKey) {
output = 'doc';
} else if (event.shiftKey) {
output = 'odt';
}
url = url.replace("output=pdf","output="+output);
}
printDokument(url, scope){
//TODO Manu(check if logic not in content (Zutrittkarte also in content folder))
let linkToDocument = FHC_JS_DATA_STORAGE_OBJECT.app_root + 'content/' + url;
console.log('Documentlink:', linkToDocument);
window.open(linkToDocument, '_blank');
let linkToPdf = FHC_JS_DATA_STORAGE_OBJECT.app_root + 'content/' + url;
window.open(linkToPdf, '_blank');
}
},
template: `
@@ -67,7 +53,7 @@ export default {
<ul class="dropdown-menu dropdown-menu-right">
<template v-for="doc in documents" :key="doc.id">
<li v-if="doc.type === 'documenturl'">
<button class="dropdown-item" type="button" @click="printDokument(doc.url, doc.scope, $event)">
<button class="dropdown-item" type="button" @click="printDokument(doc.url, doc.scope)">
{{ doc.name }}
</button>
</li>
@@ -86,7 +72,7 @@ export default {
<ul class="dropdown-menu">
<template v-for="child in doc.data" :key="child.id">
<li v-if="child.type === 'documenturl'">
<button class="dropdown-item" type="button" @click="printDokument(child.url, child.scope, $event)">
<button class="dropdown-item" type="button" @click="printDokument(child.url, child.scope)">
{{ child.name }}
</button>
</li>
+5 -6
View File
@@ -2,11 +2,10 @@
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Pragma: no-cache");
if (isset($_GET['path']))
$path=$_GET['path'];
else
$path='../';
require ($path.'config/cis.config.inc.php');
$path = dirname(__DIR__);
require ($path.'/config/cis.config.inc.php');
//die($_SERVER["HTTP_USER_AGENT"]);
@@ -29,7 +28,7 @@
//setcookie('stylesheet', DEFAULT_STYLE);
header("Content-Type: text/css");
//echo $_COOKIE['stylesheet'];
readfile ($path.'skin/styles/'.$stylesheet.'.css');
readfile ($path.'/skin/styles/'.$stylesheet.'.css');
#--------------------------------------------------------------------------------------------------
# $const=@get_defined_constants();
# @reset($const);