diff --git a/application/controllers/system/infocenter/InfoCenter.php b/application/controllers/system/infocenter/InfoCenter.php
index 97da8ff2e..901ac4c73 100644
--- a/application/controllers/system/infocenter/InfoCenter.php
+++ b/application/controllers/system/infocenter/InfoCenter.php
@@ -857,9 +857,20 @@ class InfoCenter extends Auth_Controller
}
$this->navigationlib->setSessionMenu(
- array(
+ array('filters' => $this->navigationlib->oneLevel(
+ 'Filters', // description
+ '#', // link
+ $filtersArray, // children
+ 'filter', // icon
+ true, // expand
+ null, // subscriptDescription
+ null, // subscriptLinkClass
+ null, // subscriptLinkValue
+ '', // target
+ 1 // sort
+ ),
'freigegeben' => $this->navigationlib->oneLevel(
- 'zum RT Freigegeben', // description
+ 'zum RT freigegeben', // description
$freigegebenLink, // link
null, // children
'thumbs-up', // icon
@@ -868,7 +879,7 @@ class InfoCenter extends Auth_Controller
null, // subscriptLinkClass
null, // subscriptLinkValue
'', // target
- 1 // sort
+ 10 // sort
),
'reihungstestAbsolviert' => $this->navigationlib->oneLevel(
'Reihungstest absolviert', // description
@@ -880,19 +891,7 @@ class InfoCenter extends Auth_Controller
null, // subscriptLinkClass
null, // subscriptLinkValue
'', // target
- 2 // sort
- ),
- 'filters' => $this->navigationlib->oneLevel(
- 'Filters', // description
- '#', // link
- $filtersArray, // children
- '', // icon
- true, // expand
- null, // subscriptDescription
- null, // subscriptLinkClass
- null, // subscriptLinkValue
- '', // target
- 10 // sort
+ 20 // sort
)
)
);
@@ -951,6 +950,8 @@ class InfoCenter extends Auth_Controller
// Generate the home link with the eventually loaded filter
$homeLink = site_url(self::INFOCENTER_URI.'/'.self::INDEX_PAGE);
+ $freigegebenLink = site_url(self::INFOCENTER_URI.'/'.self::FREIGEGEBEN_PAGE);
+ $absolviertLink = site_url(self::INFOCENTER_URI.'/'.self::REIHUNGSTESTABSOLVIERT_PAGE);
$prevFilterId = $this->input->get(self::PREV_FILTER_ID);
if (isset($prevFilterId))
{
@@ -958,20 +959,57 @@ class InfoCenter extends Auth_Controller
}
$this->navigationlib->setElementSessionMenu(
- $page,
+ 'uebersicht',
$this->navigationlib->oneLevel(
- 'Home', // description
+ 'Infocenter Übersicht', // description
$homeLink, // link
null, // children
- 'angle-left', // icon
+ 'info', // icon
null, // subscriptDescription
false, // expand
null, // subscriptLinkClass
null, // subscriptLinkValue
'', // target
- 1 // sort
+ 20 // sort
)
);
+
+ if($page == self::REIHUNGSTESTABSOLVIERT_PAGE)
+ {
+ $this->navigationlib->setElementSessionMenu(
+ 'freigegeben',
+ $this->navigationlib->oneLevel(
+ 'zum RT freigegeben', // description
+ $freigegebenLink, // link
+ null, // children
+ 'thumbs-up', // icon
+ null, // subscriptDescription
+ false, // expand
+ null, // subscriptLinkClass
+ null, // subscriptLinkValue
+ '', // target
+ 30 // sort
+ )
+ );
+ }
+ if($page == self::FREIGEGEBEN_PAGE)
+ {
+ $this->navigationlib->setElementSessionMenu(
+ 'reihungstestAbsolviert',
+ $this->navigationlib->oneLevel(
+ 'Reihungstest absolviert', // description
+ $absolviertLink, // link
+ null, // children
+ 'check', // icon
+ null, // subscriptDescription
+ false, // expand
+ null, // subscriptLinkClass
+ null, // subscriptLinkValue
+ '', // target
+ 30 // sort
+ )
+ );
+ }
}
/**
@@ -993,25 +1031,6 @@ class InfoCenter extends Auth_Controller
}
}
- /**
- * Utility method used to fill elements of the InfoCenter left menu of the freigegeben InfoCenter page
- */
- private function _fillFiltersFreigegeben($filters, &$toFill)
- {
- foreach ($filters as $filterId => $description)
- {
- $toFill['children'][] = $this->navigationlib->oneLevel(
- $description, // description
- sprintf(
- '%s?%s=%s',
- site_url(self::INFOCENTER_URI.'/'.self::FREIGEGEBEN_PAGE),
- self::FILTER_ID,
- $filterId
- ) // link
- );
- }
- }
-
/**
* Utility method used to fill elements of the InfoCenter left menu
* with the list of the custom filter of the authenticated user
diff --git a/application/libraries/FiltersLib.php b/application/libraries/FiltersLib.php
index 0875716d1..1e3a591ac 100644
--- a/application/libraries/FiltersLib.php
+++ b/application/libraries/FiltersLib.php
@@ -757,7 +757,7 @@ class FiltersLib
self::NAV_MENU_FILTER_NAME, // description
'#', // link
$childrenArray, // children
- '', // icon
+ 'filter', // icon
true, // expand
null, // subscriptDescription
null, // subscriptLinkClass
diff --git a/application/views/system/infocenter/infocenterFreigegeben.php b/application/views/system/infocenter/infocenterFreigegeben.php
index eee68d69d..96fd3349b 100755
--- a/application/views/system/infocenter/infocenterFreigegeben.php
+++ b/application/views/system/infocenter/infocenterFreigegeben.php
@@ -33,7 +33,7 @@
diff --git a/cms/dms.php b/cms/dms.php
index 6548dc1e3..bc9c13035 100644
--- a/cms/dms.php
+++ b/cms/dms.php
@@ -79,9 +79,11 @@ if($doc->isLocked($id))
$dokumente_arr[] .= $row->dokument_kurzbz;
// An der FHTW wird das vorläufige ZGV Dokument verlangt und kann somit auch heruntergeladen werden
+ // Auch der Inivtation Letter kann von BewerberInnen heruntergeladen werden
if (CAMPUS_NAME == 'FH Technikum Wien')
{
$dokumente_arr[] .= 'ZgvBaPre';
+ $dokumente_arr[] .= 'InvitLet';
}
if ($person_id!=$akte_person || !in_array($akte_dokument_kurzbz, $dokumente_arr))
die('Sie haben keinen Zugriff auf dieses Dokument');
diff --git a/include/prestudent.class.php b/include/prestudent.class.php
index d98b3df8e..eca7e22cf 100644
--- a/include/prestudent.class.php
+++ b/include/prestudent.class.php
@@ -796,16 +796,17 @@ class prestudent extends person
/**
* Prueft ob eine Person bereits einen PreStudentstatus-Eintrag
- * fuer einen Studiengang und optional ein Studiensemester und optional ein Status_kurzbz besitzt
+ * fuer einen Studiengang, optional ein Studiensemester, optional eine Status_kurzbz und optional einen Studienplan besitzt
* @param integer $person_id
* @param integer $studiengang_kz
* @param string $studiensemester_kurzbz Optional.
* @param string $status_kurzbz Optional.
+ * @param integer $studienplan_id Optional.
* @return true wenn vorhanden
* false wenn nicht vorhanden
* false und errormsg wenn Fehler aufgetreten ist
*/
- public function existsPrestudentstatus($person_id, $studiengang_kz, $studiensemester_kurzbz = null, $status_kurzbz = null)
+ public function existsPrestudentstatus($person_id, $studiengang_kz, $studiensemester_kurzbz = null, $status_kurzbz = null, $studienplan_id = null)
{
if(!is_numeric($person_id))
{
@@ -829,6 +830,9 @@ class prestudent extends person
if ($status_kurzbz != '')
$qry .= " AND status_kurzbz=".$this->db_add_param($status_kurzbz);
+
+ if ($studienplan_id != '')
+ $qry .= " AND studienplan_id=".$this->db_add_param($studienplan_id);
if($this->db_query($qry))
{
@@ -1185,6 +1189,7 @@ class prestudent extends person
/**
* Laedt alle Prestudenten der Person
+ * @param integer $person_id
* @return true wenn ok, false wenn Fehler
*/
public function getPrestudenten($person_id)
@@ -1195,7 +1200,13 @@ class prestudent extends person
return false;
}
- $qry = "SELECT * FROM public.tbl_prestudent WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER)." ORDER BY prestudent_id";
+ $qry = "SELECT
+ *
+ FROM
+ public.tbl_prestudent
+ WHERE
+ person_id=".$this->db_add_param($person_id, FHC_INTEGER)."
+ ORDER BY prestudent_id";
if($this->db_query($qry))
{
@@ -1929,15 +1940,17 @@ class prestudent extends person
}
/**
- * Liefert die höchste Priorität des PreStudenten einer Person in einem Studiensemester
+ * Liefert die Priorität des PreStudenten einer Person in einem Studiensemester
+ * Per Default wird die Höchste Priorisierung (ORDER BY DESC NULLS LAST) zurueckgegeben.
* @param integer $person_id Person ID deren höchste Priorität geladen werden soll
* @param string $studiensemester_kurzbz Studiensemester dessen höchste Priorität geladen werden soll
- * @return integer Zahl der höchsten Priorität oder false im Fehlerfall
+ * @param string $order Default höchste Priorisierung (priorisierung DESC NULLS LAST)
+ * @return object mit priorisierung und studiengang_kz oder false im Fehlerfall
*/
- public function getHoechstePriorisierungPersonStudiensemester($person_id, $studiensemester_kurzbz)
+ public function getPriorisierungPersonStudiensemester($person_id, $studiensemester_kurzbz, $order = "priorisierung DESC NULLS LAST")
{
$qry = "SELECT
- priorisierung
+ priorisierung, studiengang_kz
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
@@ -1945,13 +1958,16 @@ class prestudent extends person
tbl_prestudent.person_id=".$this->db_add_param($person_id, FHC_INTEGER)."
AND tbl_prestudentstatus.status_kurzbz='Interessent'
AND tbl_prestudentstatus.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
- ORDER BY priorisierung DESC NULLS LAST LIMIT 1";
+ ORDER BY ".$order."
+ LIMIT 1";
if($result = $this->db_query($qry))
{
if($row = $this->db_fetch_object($result))
{
- return $row->priorisierung;
+ $this->priorisierung = $row->priorisierung;
+ $this->studiengang_kz = $row->studiengang_kz;
+ return true;
}
else
{
diff --git a/include/reihungstest.class.php b/include/reihungstest.class.php
index 7bc2b67a1..132ec78fa 100644
--- a/include/reihungstest.class.php
+++ b/include/reihungstest.class.php
@@ -1386,4 +1386,38 @@ class reihungstest extends basis_db
return false;
}
}
+
+ /**
+ * Laedt alle person_ids, die einem Reihungstest zugeteilt sind
+ * @param integer $reihungstest_id ID des Reihungstests.
+ * @return true wenn ok, false im Fehlerfall
+ */
+ public function getPersonenReihungstest($reihungstest_id)
+ {
+ $qry = "SELECT
+ person_id
+ FROM
+ public.tbl_rt_person
+ WHERE
+ tbl_rt_person.rt_id=".$this->db_add_param($reihungstest_id)."
+ ORDER BY
+ person_id";
+ if ($result = $this->db_query($qry))
+ {
+ while ($row = $this->db_fetch_object($result))
+ {
+ $obj = new stdClass();
+
+ $obj->person_id = $row->person_id;
+
+ $this->result[] = $obj;
+ }
+ return true;
+ }
+ else
+ {
+ $this->errormsg = 'Fehler beim Laden der Daten';
+ return false;
+ }
+ }
}
diff --git a/system/filtersupdate.php b/system/filtersupdate.php
index 612dbdf3e..e90189142 100644
--- a/system/filtersupdate.php
+++ b/system/filtersupdate.php
@@ -264,7 +264,8 @@ $filters = array(
{"name": "StgAbgeschickt"},
{"name": "LastAction"},
{"name": "User/Operator"},
- {"name": "LockUser"}
+ {"name": "LockUser"},
+ {"name": "Statusgrund"}
],
"filters": [
{
@@ -298,7 +299,8 @@ $filters = array(
{"name": "StgAbgeschickt"},
{"name": "LastAction"},
{"name": "User/Operator"},
- {"name": "LockUser"}
+ {"name": "LockUser"},
+ {"name": "Statusgrund"}
],
"filters": [
{
diff --git a/vilesci/stammdaten/reihungstestverwaltung.php b/vilesci/stammdaten/reihungstestverwaltung.php
index a9577cfc6..76b1dd248 100644
--- a/vilesci/stammdaten/reihungstestverwaltung.php
+++ b/vilesci/stammdaten/reihungstestverwaltung.php
@@ -52,6 +52,7 @@ require_once('../../include/sprache.class.php');
require_once('../../include/organisationsform.class.php');
require_once('../../include/gruppe.class.php');
require_once('../../include/variable.class.php');
+require_once('../../include/mail.class.php');
// "Teilgenommen" und "Punkte" werden immer mit false bzw. 0 gespeichert
@@ -583,6 +584,25 @@ if(isset($_GET['excel']))