Studiengangsverwaltung

This commit is contained in:
Martin Tatzber
2013-10-14 07:15:30 +00:00
parent d9f6976f71
commit fa851462b6
3 changed files with 203 additions and 78 deletions
+20 -2
View File
@@ -73,11 +73,12 @@ class studiengang extends basis_db
if(!is_null($studiengang_kz))
$this->load($studiengang_kz);
$this->studiengang_typ_arr["b"] = "Bachelor";
$this->getAllTypes();
/* $this->studiengang_typ_arr["b"] = "Bachelor";
$this->studiengang_typ_arr["d"] = "Diplom";
$this->studiengang_typ_arr["m"] = "Master";
$this->studiengang_typ_arr["l"] = "LLL";
$this->studiengang_typ_arr["e"] = "Erhalter";
$this->studiengang_typ_arr["e"] = "Erhalter"; */
}
/**
@@ -212,6 +213,23 @@ class studiengang extends basis_db
return true;
}
/**
* Laedt alle Studientypen in das Attribut studiengang_typ_array
*/
public function getAllTypes()
{
$qry='SELECT * FROM public.tbl_studiengangstyp';
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$this->studiengang_typ_arr[$row->typ]=$row->typ.' - '.$row->bezeichnung;
}
}
else
$this->errormsg = 'Fehler beim Laden der Studiengangstypen';
}
/**
* Laedt die Studiengaenge die als Array uebergeben werden
* @param $stgs Array mit den Kennzahlen
+176 -72
View File
@@ -41,6 +41,8 @@ require_once('../../include/benutzerberechtigung.class.php');
if(!$rechte->isBerechtigt('basis/studiengang'))
die('Sie haben keine Berechtigung fuer diese Seite');
$date=new datum();
$reloadstr = ''; // neuladen der liste im oberen frame
$htmlstr = '';
$errorstr = '';
@@ -120,6 +122,7 @@ require_once('../../include/benutzerberechtigung.class.php');
$bescheidgz = $_POST['bescheidgz'];
$bescheidvom = $_POST['bescheidvom'];
$oe_kurzbz = $_POST['oe_kurzbz'];
$oe_parent_kurzbz = $_POST['oe_parent_kurzbz'];
$titelbescheidvom = $_POST['titelbescheidvom'];
$zusatzinfo_html = $_POST['zusatzinfo_html'];
$moodle = isset($_POST['moodle']);
@@ -133,50 +136,85 @@ require_once('../../include/benutzerberechtigung.class.php');
$mischform = isset($_POST['mischform']);
$ext_id = $_POST['ext_id'];
$sg_update = new studiengang();
$sg_update->studiengang_kz = $studiengang_kz;
$sg_update->kurzbz = $kurzbz;
$sg_update->kurzbzlang = $kurzbzlang;
$sg_update->typ = $typ;
$sg_update->bezeichnung = $bezeichnung;
$sg_update->english = $english;
$sg_update->farbe = $farbe;
$sg_update->email = $email;
$sg_update->telefon = $telefon;
$sg_update->max_semester = $max_semester;
$sg_update->max_verband = $max_verband;
$sg_update->max_gruppe = $max_gruppe;
$sg_update->erhalter_kz = $erhalter_kz;
$sg_update->bescheid = $bescheid;
$sg_update->bescheidbgbl1 = $bescheidbgbl1;
$sg_update->bescheidbgbl2 = $bescheidbgbl1;
$sg_update->bescheidgz = $bescheidgz;
$sg_update->bescheidvom = $bescheidvom;
$sg_update->titelbescheidvom = $titelbescheidvom;
$sg_update->zusatzinfo_html = $zusatzinfo_html;
$sg_update->aktiv = $aktiv;
$sg_update->mischform = $mischform;
$sg_update->ext_id = $ext_id;
$sg_update->oe_kurzbz = $oe_kurzbz;
$sg_update->moodle = $moodle;
$sg_update->projektarbeit_note_anzeige = $projektarbeit_note_anzeige;
$sg_update->sprache = $sprache;
$sg_update->testtool_sprachwahl = $testtool_sprachwahl;
$sg_update->studienplaetze = $studienplaetze;
$sg_update->orgform_kurzbz = $orgform_kurzbz;
$sg_update->lgartcode = $lgartcode;
if ($_POST['neu'] == 'true')
$sg_update->new = true;
if(!$sg_update->save())
$oe_error=false;
if($oe_kurzbz=='')
{
$errorstr .= $sg_update->errormsg;
$oe=new organisationseinheit();
$oe->new=true;
$oe->oe_kurzbz = strtolower($typ.$kurzbz);
$oe->kurzzeichen = strtolower($typ.$kurzbz);
$oe->oe_parent_kurzbz = $oe_parent_kurzbz;
$oe->bezeichnung = $kurzbzlang;
$oe->organisationseinheittyp_kurzbz = 'Studiengang';
$oe->aktiv = true;
$oe->mailverteiler = false;
if(!$oe->save())
{
echo '<br><br>Fehler beim Anlegen der Organisationseinheit: '.$oe->errormsg;
$oe_error=true;
}
else
{
echo '<br><br>Organisationseinheit '.$oe->oe_kurzbz.' angelegt';
echo '<br>kurzbz '.$kurzbz;
echo '<br>kurzbzlang '.$kurzbzlang;
$oe_kurzbz=$oe->oe_kurzbz;
}
}
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht_studiengang.location.href='studiengang_uebersicht.php';";
$reloadstr .= "</script>\n";
if(!$oe_error)
{
$sg_update = new studiengang();
$sg_update->studiengang_kz = $studiengang_kz;
$sg_update->kurzbz = $kurzbz;
$sg_update->kurzbzlang = $kurzbzlang;
$sg_update->typ = $typ;
$sg_update->bezeichnung = $bezeichnung;
$sg_update->english = $english;
$sg_update->farbe = $farbe;
$sg_update->email = $email;
$sg_update->telefon = $telefon;
$sg_update->max_semester = $max_semester;
$sg_update->max_verband = $max_verband;
$sg_update->max_gruppe = $max_gruppe;
$sg_update->erhalter_kz = $erhalter_kz;
$sg_update->bescheid = $bescheid;
$sg_update->bescheidbgbl1 = $bescheidbgbl1;
$sg_update->bescheidbgbl2 = $bescheidbgbl1;
$sg_update->bescheidgz = $bescheidgz;
$sg_update->bescheidvom = $bescheidvom;
$sg_update->titelbescheidvom = $titelbescheidvom;
$sg_update->zusatzinfo_html = $zusatzinfo_html;
$sg_update->aktiv = $aktiv;
$sg_update->mischform = $mischform;
$sg_update->ext_id = $ext_id;
$sg_update->oe_kurzbz = $oe_kurzbz;
$sg_update->moodle = $moodle;
$sg_update->projektarbeit_note_anzeige = $projektarbeit_note_anzeige;
$sg_update->sprache = $sprache;
$sg_update->testtool_sprachwahl = $testtool_sprachwahl;
$sg_update->studienplaetze = $studienplaetze;
$sg_update->orgform_kurzbz = $orgform_kurzbz;
$sg_update->lgartcode = $lgartcode;
$sg_update->bescheidvom=$date->formatDatum($sg_update->bescheidvom,'Y-m-d');
$sg_update->titelbescheidvom=$date->formatDatum($sg_update->titelbescheidvom,'Y-m-d');
if ($_POST['neu'] == 'true')
$sg_update->new = true;
if(!$sg_update->save())
{
$errorstr .= $sg_update->errormsg;
}
}
$reloadstr .= '<script type="text/javascript">';
$reloadstr .= ' parent.uebersicht_studiengang.location.href="studiengang_uebersicht.php";';
$reloadstr .= '</script>';
}
@@ -221,7 +259,7 @@ require_once('../../include/benutzerberechtigung.class.php');
$orgform_kurzbz = $sg->orgform_kurzbz;
$lgartcode = $sg->lgartcode;
}
$erh = new erhalter();
if (!$erh->getAll('kurzbz'))
@@ -238,11 +276,16 @@ require_once('../../include/benutzerberechtigung.class.php');
// ertse Spalte start
$htmlstr .= " <td valign='top'>\n";
$htmlstr .= " <table>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>Kennzahl</td>\n";
$htmlstr .= " <td><input class='detail' type='text' name='studiengang_kz' size='16' maxlength='5' value='".$studiengang_kz."' onchange='submitable()'></td>\n";
$htmlstr .= " </tr>\n";
$htmlstr .= ' <table>
<tr>
<td>Kennzahl</td>
<td><input class="detail" type="text" name="studiengang_kz" size="16" maxlength="5" value="'.$studiengang_kz.'"';
if($neu=='true')
$htmlstr .= ' onchange="submitable()"';
else
$htmlstr .= ' style="background-color:#eeeeee;" readonly="readonly"';
$htmlstr .= '></td>
</tr>';
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>Kurzbezeichnung</td>\n";
$htmlstr .= " <td><input class='detail' type='text' name='kurzbz' size='16' maxlength='3' value='".$kurzbz."' onchange='submitable()'></td>\n";
@@ -342,7 +385,7 @@ require_once('../../include/benutzerberechtigung.class.php');
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>Erhalter</td>\n";
$htmlstr .= " <td\n>";
$htmlstr .= " <td>";
$htmlstr .= " <select name='erhalter_kz' onchange='submitable()'>\n";
foreach($erh->result as $erhalter)
@@ -359,7 +402,7 @@ require_once('../../include/benutzerberechtigung.class.php');
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>Typ</td>\n";
$htmlstr .= " <td\n>";
$htmlstr .= " <td>";
$htmlstr .= " <select name='typ' onchange='submitable()'>\n";
$htmlstr .= " <option value=''></option>\n";
@@ -396,11 +439,11 @@ require_once('../../include/benutzerberechtigung.class.php');
$htmlstr .= " </tr>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>Bescheidvom</td>\n";
$htmlstr .= " <td><input class='detail' type='text' name='bescheidvom' size='16' maxlength='10' value='".$bescheidvom."' onchange='submitable()'></td>\n";
$htmlstr .= " <td><input class='detail' type='text' id='bescheidvom' name='bescheidvom' size='16' maxlength='10' value='".$date->formatDatum($bescheidvom,'d.m.Y')."' onchange='submitable()'></td>\n";
$htmlstr .= " </tr>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>Titelbescheidvom</td>\n";
$htmlstr .= " <td><input class='detail' type='text' name='titelbescheidvom' size='16' maxlength='10' value='".$titelbescheidvom."' onchange='submitable()'></td>\n";
$htmlstr .= " <td><input class='detail' type='text' id='titelbescheidvom' name='titelbescheidvom' size='16' maxlength='10' value='".$date->formatDatum($titelbescheidvom,'d.m.Y')."' onchange='submitable()'></td>\n";
$htmlstr .= " </tr>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td>Sprache</td>\n";
@@ -435,7 +478,8 @@ require_once('../../include/benutzerberechtigung.class.php');
else
$selected = '';
$htmlstr .= " <option value='$row->lgartcode' $selected>$row->lgartcode - $row->kurzbz</option>";
$htmlstr .= '
<option value="'.$row->lgartcode.'" '.$selected.'>'.$row->lgartcode.' - '.$row->kurzbz.'</option>';
}
}
$htmlstr .= " </SELECT></td>\n";
@@ -480,19 +524,23 @@ require_once('../../include/benutzerberechtigung.class.php');
$htmlstr .= " </td>\n";
$htmlstr .= " </tr>";
$htmlstr .= " <tr>";
$htmlstr .= " <td colspan='2'>";
$htmlstr .= " <table>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td valign='top'>Zusatzinfo</td>\n";
$htmlstr .= " <td><textarea name='zusatzinfo_html' cols='50' rows='4' onchange='submitable()'>".$zusatzinfo_html."</textarea></td>\n";
$htmlstr .= " </tr>\n";
$htmlstr .= " </table>\n";
$htmlstr .= " </td>";
$htmlstr .= " <td valign='top'>Organisationseinheit<br>\n";
$htmlstr .= " <SELECT name='oe_kurzbz' onchange='submitable()'>";
$qry = "SELECT oe_kurzbz, organisationseinheittyp_kurzbz, bezeichnung FROM public.tbl_organisationseinheit ORDER BY organisationseinheittyp_kurzbz, bezeichnung";
$htmlstr .= ' </tr>
<tr>
<td colspan="2">
<table>
<tr>
<td valign="top">Zusatzinfo</td>
<td><textarea id="zusatzinfo_html" class="mceEditor" name="zusatzinfo_html" cols="50" rows="4" onchange="submitable()">'.$zusatzinfo_html.'</textarea></td>
</tr>
</table>
</td>
<td valign="top">
<table>
<tr>
<td>Organisationseinheit<br>
<SELECT id="oe_kurzbz" name="oe_kurzbz" onchange="submitable();toggleOeParentDiv()">
<option value="">-- neue Organisationseinheit anlegen --</option>';
$qry = 'SELECT oe_kurzbz, organisationseinheittyp_kurzbz, bezeichnung FROM public.tbl_organisationseinheit ORDER BY organisationseinheittyp_kurzbz, bezeichnung';
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
@@ -502,15 +550,31 @@ require_once('../../include/benutzerberechtigung.class.php');
else
$selected = '';
$htmlstr .= " <option value='$row->oe_kurzbz' $selected>$row->organisationseinheittyp_kurzbz $row->bezeichnung</option>";
$htmlstr .= ' <option value="'.$row->oe_kurzbz.'" '.$selected.'>'.$row->organisationseinheittyp_kurzbz.' '.$row->bezeichnung.'</option>';
}
}
$htmlstr .= " </SELECT></td>\n";
$htmlstr .= " </tr>";
$htmlstr .= '
</SELECT></td></tr>
<tr>
<td valign="top">
<div id="oe_parent_div">übergeordnete Organisationseinheit<br>
<SELECT name="oe_parent_kurzbz" onchange="submitable()">';
$qry = 'SELECT oe_kurzbz, organisationseinheittyp_kurzbz, bezeichnung FROM public.tbl_organisationseinheit ORDER BY organisationseinheittyp_kurzbz, bezeichnung';
if($result = $db->db_query($qry))
{
while($row = $db->db_fetch_object($result))
{
$htmlstr .= ' <option value="'.$row->oe_kurzbz.'">'.$row->organisationseinheittyp_kurzbz.' '.$row->bezeichnung.'</option>';
}
}
$htmlstr .= '
</SELECT></div><script type="text/javascript">toggleOeParentDiv();</script>
</td></tr></table>
</td></tr></table><br>';
$htmlstr .= "</table>\n";
$htmlstr .= "<br>\n";
$htmlstr .= "<div align='right' id='sub'>\n";
$htmlstr .= " <span id='submsg' style='color:red; visibility:hidden;'>Datensatz ge&auml;ndert!&nbsp;&nbsp;</span>\n";
$htmlstr .= " <input type='hidden' name='neu' value='".$neu."'>";
@@ -528,10 +592,41 @@ require_once('../../include/benutzerberechtigung.class.php');
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Studiengang - Details</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script src="../../include/js/mailcheck.js"></script>
<script src="../../include/js/datecheck.js"></script>
<script type="text/javascript" src="../../include/js/jquery1.9.min.js"></script>
<link rel="stylesheet" type="text/css" href="../../skin/jquery-ui-1.9.2.custom.min.css"/>
<script type="text/javascript" src="../../include/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
$(function() {
$("#bescheidvom,#titelbescheidvom").datepicker();
});
tinyMCE.init({
mode:'specific_textareas',
editor_selector:"mceEditor",
theme : "advanced",
language : "de",
file_browser_callback: "FHCFileBrowser",
plugins : "spellchecker,pagebreak,style,layer,table,advhr,advimage,advlink,inlinepopups,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking",
// Theme options
theme_advanced_buttons1 : "code, bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,fontsizeselect",
theme_advanced_buttons2 : "", //tablecontrols,|,hr,removeformat,visualaid
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,
force_br_newlines : true,
force_p_newlines : false,
forced_root_block : '',
editor_deselector : "mceNoEditor" });
function unchanged()
{
document.studiengangform.reset();
@@ -602,8 +697,8 @@ function checkrequired(feld)
function submitable()
{
mail = checkmail();
date1 = checkdate(document.studiengangform.bescheidvom);
date2 = checkdate(document.studiengangform.titelbescheidvom);
date1 = true;//checkdate(document.studiengangform.bescheidvom);
date2 = true;//checkdate(document.studiengangform.titelbescheidvom);
required1 = checkrequired(document.studiengangform.kurzbz);
required2 = checkrequired(document.studiengangform.bezeichnung);
required3 = checkrequired(document.studiengangform.studiengang_kz);
@@ -620,6 +715,15 @@ function submitable()
}
}
function toggleOeParentDiv()
{
if(document.getElementById("oe_kurzbz").value=="")
document.getElementById("oe_parent_div").style.visibility="visible";
else
document.getElementById("oe_parent_div").style.visibility="hidden";
}
</script>
</head>
<body style="background-color:#eeeeee;">
@@ -55,10 +55,13 @@ require_once('../../include/benutzerberechtigung.class.php');
die($sg->errormsg);
//$htmlstr = "<table class='liste sortable'>\n";
$htmlstr = "<form name='formular'><input type='hidden' name='check' value=''></form><table class=\"tablesorter\" id=\"t1\">\n";
$htmlstr .= " <thead><tr>\n";
$htmlstr .= " <th onmouseup='document.formular.check.value=0'>Kz</th><th>Kurzbz</th><th>KurzbzLang</th> <th>Typ</th><th>Bezeichnung</th><th>Aktiv</th><th>Email</th>";
$htmlstr .= " </tr></thead><tbody>\n";
$htmlstr = '';
$htmlstr .= '<input type="button" value="Neu" onClick="parent.detail_studiengang.location=\'studiengang_details.php\'">
<form name="formular"><input type="hidden" name="check" value=""></form><table class="tablesorter" id="t1">
<thead><tr>
<th onmouseup="document.formular.check.value=0">Kz</th><th>Kurzbz</th><th>KurzbzLang</th> <th>Typ</th><th>Bezeichnung</th><th>Aktiv</th><th>Email</th>
</tr></thead><tbody>
';
$i = 0;
foreach ($sg->result as $stg)
{