Status, Standort, ECTS, PflichSWS und PflichtLVS können jetzt auch über Vilesci GUI editiert werden

This commit is contained in:
oesi
2016-04-27 14:49:05 +02:00
parent 9dc5ef6f5b
commit ccbff2b349
4 changed files with 190 additions and 90 deletions
+95 -56
View File
@@ -115,7 +115,7 @@ class studienordnung extends basis_db
$this->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch;
$this->studiengangkurzbzlang = $row->studiengangkurzbzlang;
$this->akadgrad_id = $row->akadgrad_id;
$this->status_kurzbz = $row->status_kurzbz;
$this->status_kurzbz = $row->status_kurzbz;
$this->standort_id = $row->standort_id;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
@@ -150,7 +150,7 @@ class studienordnung extends basis_db
if(is_null($studiensemester_kurzbz))
{
$qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung FROM lehre.tbl_studienordnung sto
JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
LEFT JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz)
WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false);
}
else
@@ -316,17 +316,17 @@ class studienordnung extends basis_db
' version='.$this->db_add_param($this->version).', '.
' bezeichnung='.$this->db_add_param($this->bezeichnung).', '.
' ects='.$this->db_add_param($this->ects).', '.
' gueltigvon='.$this->db_add_param($this->gueltigvon).', '.
' gueltigbis='.$this->db_add_param($this->gueltigbis).', '.
' studiengangbezeichnung='.$this->db_add_param($this->studiengangbezeichnung).', '.
' studiengangbezeichnung_englisch='.$this->db_add_param($this->studiengangbezeichnung_englisch).', '.
' studiengangkurzbzlang='.$this->db_add_param($this->studiengangkurzbzlang).','.
' akadgrad_id='.$this->db_add_param($this->akadgrad_id, FHC_INTEGER).', '.
' gueltigvon='.$this->db_add_param($this->gueltigvon).', '.
' gueltigbis='.$this->db_add_param($this->gueltigbis).', '.
' studiengangbezeichnung='.$this->db_add_param($this->studiengangbezeichnung).', '.
' studiengangbezeichnung_englisch='.$this->db_add_param($this->studiengangbezeichnung_englisch).', '.
' studiengangkurzbzlang='.$this->db_add_param($this->studiengangkurzbzlang).','.
' akadgrad_id='.$this->db_add_param($this->akadgrad_id, FHC_INTEGER).', '.
' standort_id='.$this->db_add_param($this->standort_id, FHC_INTEGER).', '.
' status_kurzbz='.$this->db_add_param($this->status_kurzbz).', '.
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).' '.
' WHERE studienordnung_id='.$this->db_add_param($this->studienordnung_id, FHC_INTEGER, false).';';
' updateamum= now(), '.
' updatevon='.$this->db_add_param($this->updatevon).' '.
' WHERE studienordnung_id='.$this->db_add_param($this->studienordnung_id, FHC_INTEGER, false).';';
}
if($this->db_query($qry))
@@ -829,61 +829,100 @@ class studienordnung extends basis_db
return true;
}
/**
* Laedt die Studienordnungen eines Studiengangs inklusive Status
* @param $studiengang_kz Kennzahl des Studiengangs
* @param $status_kurzbz Status
* @return boolean true wenn ok, false im Fehlerfall
*/
public function loadStudienordnungWithStatus($studiengang_kz, $status_kurzbz)
{
$qry = "SELECT sto.*, s.bezeichnung as status_bezeichnung "
. "FROM lehre.tbl_studienordnung sto "
. "JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) "
. "WHERE status_kurzbz=" . $this->db_add_param($status_kurzbz, FHC_STRING) . ""
. " AND studiengang_kz=" . $this->db_add_param($studiengang_kz, FHC_INTEGER) . ";";
$qry = "SELECT sto.*, s.bezeichnung as status_bezeichnung "
. "FROM lehre.tbl_studienordnung sto "
. "JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) "
. "WHERE status_kurzbz=" . $this->db_add_param($status_kurzbz, FHC_STRING) . ""
. " AND studiengang_kz=" . $this->db_add_param($studiengang_kz, FHC_INTEGER) . ";";
if (!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
if (!$this->db_query($qry))
{
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
return false;
}
while ($row = $this->db_fetch_object())
{
$obj = new studienordnung();
$obj->studienordnung_id = $row->studienordnung_id;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->version = $row->version;
$obj->bezeichnung = $row->bezeichnung;
$obj->ects = $row->ects;
$obj->gueltigvon = $row->gueltigvon;
$obj->gueltigbis = $row->gueltigbis;
$obj->studiengangbezeichnung = $row->studiengangbezeichnung;
$obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch;
$obj->studiengangkurzbzlang = $row->studiengangkurzbzlang;
$obj->akadgrad_id = $row->akadgrad_id;
$obj->status_kurzbz = $row->status_kurzbz;
$obj->status_bezeichnung = $row->status_bezeichnung;
$obj->begruendung = json_decode($row->begruendung);
$obj->studiengangsart = $row->studiengangsart;
$obj->standort_id = $row->standort_id;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->new = false;
$this->result[] = $obj;
}
return true;
}
while ($row = $this->db_fetch_object())
/**
* Aendert den Status einer Studienordnung
* @param $studienordnung_id ID der Studienordnung
* @param $status_kurzbz Kurzbezeichnung des Status
* @return boolean true wenn erfolgreich, false im Fehlerfall
*/
public function changeState($studienordnung_id, $status_kurzbz)
{
$obj = new studienordnung();
$qry = "UPDATE lehre.tbl_studienordnung SET status_kurzbz=" . $this->db_add_param($status_kurzbz)
. " WHERE studienordnung_id=" . $this->db_add_param($studienordnung_id) . ";";
$obj->studienordnung_id = $row->studienordnung_id;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->version = $row->version;
$obj->bezeichnung = $row->bezeichnung;
$obj->ects = $row->ects;
$obj->gueltigvon = $row->gueltigvon;
$obj->gueltigbis = $row->gueltigbis;
$obj->studiengangbezeichnung = $row->studiengangbezeichnung;
$obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch;
$obj->studiengangkurzbzlang = $row->studiengangkurzbzlang;
$obj->akadgrad_id = $row->akadgrad_id;
$obj->status_kurzbz = $row->status_kurzbz;
$obj->status_bezeichnung = $row->status_bezeichnung;
$obj->begruendung = json_decode($row->begruendung);
$obj->studiengangsart = $row->studiengangsart;
$obj->standort_id = $row->standort_id;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->new = false;
$this->result[] = $obj;
if (!$this->db_query($qry))
{
$this->errormsg = "Status konnte nicht geändert werden.";
return false;
}
return true;
}
return true;
}
public function changeState($studienordnung_id, $status_kurzbz)
{
$qry = "UPDATE lehre.tbl_studienordnung SET status_kurzbz=" . $this->db_add_param($status_kurzbz)
. " WHERE studienordnung_id=" . $this->db_add_param($studienordnung_id) . ";";
if (!$this->db_query($qry))
/**
* Laedt alle vorhandenen Studienordnungsstatus Einträge
* @return boolean true wenn ok, false im Fehlerfall
*/
public function getStatus()
{
$this->errormsg = "Status konnte nicht geändert werden.";
return false;
$qry = "SELECT * FROM lehre.tbl_studienordnungstatus order by reihenfolge";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new stdClass();
$obj->status_kurzbz = $row->status_kurzbz;
$obj->bezeichnung = $row->bezeichnung;
$obj->reihenfolge = $row->reihenfolge;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
return true;
}
}
?>
+11 -11
View File
@@ -1,22 +1,22 @@
<?php
/*
/*
* Copyright 2013 fhcomplete.org
*
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Stefan Puraner <stefan.puraner@technikum-wien.at>
*/
@@ -51,7 +51,7 @@ for($i=0;$i<100;$i++)
$parameter[]=null;
else
$parameter[]=$_REQUEST['parameter_'.$i];
}
}
else
break;
}
@@ -100,13 +100,13 @@ if(mb_stristr($method,'save'))
$studienordnung = new studienordnung();
if($studienordnung->isAktiv($loaddata["parameter_0"]))
die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.');
}
}
}
if(isset($loaddata['method']))
{
if(!$wsrecht->isUserAuthorized($uid, $loaddata['method']))
@@ -158,7 +158,7 @@ elseif(mb_stristr($method,'delete'))
$studienplan->loadStudienplanLehrveranstaltung($_REQUEST['parameter_0']);
$studienordnung = new studienordnung();
$studienordnung->getStudienordnungFromStudienplan($studienplan->studienplan_id);
if($studienordnung->isAktiv($studienordnung->studienordnung_id))
die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.');
}
+62 -11
View File
@@ -1,22 +1,22 @@
<?php
/*
/*
* Copyright 2013 fhcomplete.org
*
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*
*
*
* Authors: Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
*/
@@ -31,6 +31,7 @@ require_once('../../include/organisationsform.class.php');
require_once('../../include/sprache.class.php');
require_once('../../include/akadgrad.class.php');
require_once('../../include/lvregel.class.php');
require_once('../../include/standort.class.php');
$uid = get_uid();
$db = new basis_db();
@@ -65,7 +66,7 @@ switch($method)
}
else
$new=true;
echo '
<input type="hidden" id="studienordnung_id" value ="'.$studienordnung_id.'"/>
<table>
@@ -143,6 +144,44 @@ switch($method)
echo '
</select>
</tr>
<tr>
<td>Status:</td>
<td><select id="studienordnung_status">
<option value="">--keine Auswahl--</option>';
$studienordnungstatus = new studienordnung();
$studienordnungstatus->getstatus();
foreach($studienordnungstatus->result as $row_status)
{
if($row_status->status_kurzbz==$studienordnung->status_kurzbz)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$db->convert_html_chars($row_status->status_kurzbz).'" '.$selected.'>'.$db->convert_html_chars($row_status->bezeichnung).'</option>';
}
echo '
</select></td>
</tr>
<tr>
<td>Standort</td>
<td><select id="standort_id">
<option value="">--keine Auswahl--</option>';
$standort = new standort();
$standort->getStandorteWithTyp('Intern');
foreach($standort->result as $row_standort)
{
if($row_standort->standort_id == $studienordnung->standort_id)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$db->convert_html_chars($row_standort->standort_id).'" '.$selected.'>'.$db->convert_html_chars($row_standort->bezeichnung).'</option>';
}
echo '
</select>
</tr>
<tr>
<td><span id="submsg" style="color:green; visibility:hidden;">Daten gespeichert</span></td>
<td><input type="button" value="Speichern" onclick="saveStudienordnung()"/></td>
@@ -173,7 +212,7 @@ switch($method)
}
else
$new=true;
echo '
<input type="hidden" id="studienplan_id" value="'.$studienplan_id.'"/>
<table>
@@ -244,6 +283,18 @@ switch($method)
echo '
<td><input type="checkbox" id="aktiv"'.($new?' checked="checked"':$checked).'/></td>
</tr>
<tr>
<td>ECTS gesamt</td>
<td><input type="text" size="6" id="ects_stpl" value="'.$studienplan->ects_stpl.'" /></td>
</tr>
<tr>
<td>Pflicht SWS</td>
<td><input type="text" size="3" id="pflicht_sws" value="'.$studienplan->pflicht_sws.'" /></td>
</tr>
<tr>
<td>Pflicht LVS</td>
<td><input type="text" size="3" id="pflicht_lvs" value="'.$studienplan->pflicht_lvs.'" /></td>
</tr>
<tr>
<td><span id="submsg" style="color:green; visibility:hidden;">Daten gespeichert</span></td>
<td><input type="button" value="Speichern" onclick="saveStudienplan()" /></td>
@@ -256,7 +307,7 @@ switch($method)
$studienordnung_id = $_GET["studienordnung_id"];
// $studiensemester_kurzbz = isset($_GET["studiensemester_kurzbz"]) ? $_GET["studiensemester_kurzbz"] : "";
// $semester = isset($_GET["semester"]) ? $_GET["semester"] : "";
$studienordnung = new studienordnung();
$studienordnung->loadStudienordnung($studienordnung_id);
@@ -268,12 +319,12 @@ switch($method)
$obj->ausbildungssemester = $studienordnung->loadAusbildungsemesterFromStudiensemester($studienordnung_id, $studienSem);
$ausbildungssemesterResult[] = $obj;
}
$studiengang = new studiengang();
$studiengang->load($studienordnung->studiengang_kz);
// $ausbildungssemester = $studiengang->getSemesterFromStudiengang($studienordnung->studiengang_kz)
$ausbildungssemester = $studiengang->max_semester;
$studiensemester = new studiensemester();
$studiensemester->getAll();
echo '
@@ -290,7 +341,7 @@ switch($method)
echo '</tr>
</thead>
<tbody>';
if($studienSemesterResult != null)
{
foreach($ausbildungssemesterResult as $row)
+22 -12
View File
@@ -1264,16 +1264,18 @@ function deleteLehrveranstaltungFromStudienplan(lehrveranstaltung_studienplan_id
*/
function saveStudienordnung()
{
bezeichnung = $("#bezeichnung").val();
version = $("#version").val();
gueltigvon = $("#gueltigvon option:selected").val();
gueltigbis = $("#gueltigbis option:selected").val();
ects = $("#ects").val();
studiengangbezeichnung = $("#studiengangbezeichnung").val();
studiengangbezeichnungenglisch = $("#studiengangbezeichnungenglisch").val();
studiengangkurzbzlang = $("#studiengangkurzbzlang").val();
mystudienordnung_id = $("#studienordnung_id").val();
akadgrad_id = $("#akadgrad_id").val();
var bezeichnung = $("#bezeichnung").val();
var version = $("#version").val();
var gueltigvon = $("#gueltigvon option:selected").val();
var gueltigbis = $("#gueltigbis option:selected").val();
var ects = $("#ects").val();
var studiengangbezeichnung = $("#studiengangbezeichnung").val();
var studiengangbezeichnungenglisch = $("#studiengangbezeichnungenglisch").val();
var studiengangkurzbzlang = $("#studiengangkurzbzlang").val();
var mystudienordnung_id = $("#studienordnung_id").val();
var akadgrad_id = $("#akadgrad_id").val();
var status_kurzbz = $("#studienordnung_status").val();
var standort_id = $("#standort_id").val();
if(mystudienordnung_id!='')
{
@@ -1295,7 +1297,9 @@ function saveStudienordnung()
"studiengangbezeichnung_englisch":studiengangbezeichnungenglisch,
"studiengangkurzbzlang":studiengangkurzbzlang,
"akadgrad_id":akadgrad_id,
"studiengang_kz":global_studiengang_kz
"studiengang_kz":global_studiengang_kz,
"status_kurzbz":status_kurzbz,
"standort_id":standort_id
};
@@ -1339,6 +1343,9 @@ function saveStudienplan()
testtool_sprachwahl = $("#testtool_sprachwahl").prop("checked");
aktiv = $("#aktiv").prop("checked");
var studienplan_id = $("#studienplan_id").val();
var pflicht_sws = $("#pflicht_sws").val();
var pflicht_lvs = $("#pflicht_lvs").val();
var ects_stpl = $("#ects_stpl").val();
if(studienplan_id!='')
{
@@ -1359,7 +1366,10 @@ function saveStudienplan()
"semesterwochen":semesterwochen,
"testtool_sprachwahl":testtool_sprachwahl,
"aktiv":aktiv,
"studienordnung_id":global_studienordnung_id
"studienordnung_id":global_studienordnung_id,
"ects_stpl":ects_stpl,
"pflicht_sws":pflicht_sws,
"pflicht_lvs":pflicht_lvs
};