diff --git a/CHANGELOG.md b/CHANGELOG.md
index f3c5c7b30..265334eda 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -13,7 +13,9 @@
- **[FAS]** Bei Statuswechsel von Studierenden können Gründe für den Statuswechsel angegeben werden
- **[ADDONS]** Addons können Menüpunkte im Vilesci anpassen
- **[ADDONS]** Addons können Noten für die Gesamtnote vorschlagen
-- **[CORE]** UserDefinedFields
+- **[CORE]** UserDefinedFields hinzugefügt zur Verwalung von eigenen Eingabefeldern
+- **[CORE]** Support für Extensions hinzugefügt - eine Weiterentwicklung der Addons für die Verwendung mit Codeigniter
+- **[CORE]** Infocenter Seite hinzugefügt zur zentralen Verwaltung und ZGV Prüfung von Interessenten
### CHANGED
- **[CORE]** Berechtigungsprüfung wurde angepasst damit deaktivierte Benutzer keine Berechtigungen mehr haben
@@ -28,6 +30,18 @@
- **[CORE]** Update campus.tbl_templates (contentmittitel and contentohnetitel) with system/templates/contentmittitel_xslt_xhtml.xslt andsystem/templates/contentohnetitel_xslt_xhtml.xslt
- **[CORE]** Neue Style Anweisungen (div.header_logo, td.headerbar, div.cis_logo) müssen in Custom Stylesheet hinzugefügt werden
+### Deprecated
+- **[CORE]** Die folgenden Datenbank Tabellen und Spalten wurden als DEPRECATED markiert und werden mit der nächsten Version entfernt:
+ public.tbl_aufnahmeschluessel, public.tbl_aufnahmetermin, public.tbl_aufnahmetermintyp, public.tbl_preinteressent,
+ public.tbl_preinteressentstudiengang, campus.tbl_feedback, campus.tbl_lvinfo, campus.tbl_resturlaub, lehre.tbl_lehrfach
+ lehre.tbl_lehrmittel, lehre.tbl_moodle, lehre.tbl_moodle_version, lehre.tbl_studienordnung_semester, lehre.tbl_zeitfenster
+ lehre.tbl_zeugnis, fue.tbl_scrumsprint, fue.tbl_scrumteam, wawi.tbl_aufteilung, wawi.tbl_aufteilung_default,
+ testtool.tbl_kategorie, testtool.tbl_kriterien, public.tbl_prestudent.rt_punkte1, public.tbl_prestudent.rt_punkte2
+ public.tbl_prestudent.rt_punkte3, public.tbl_prestudent.anmeldungreihungstest, public.tbl_prestudent.reihungstest_id
+ public.tbl_prestudent.ausstellungsstaat, public.tbl_prestudent.aufnahmeschluessel, lehre.tbl_lehrveranstaltung.old_lehrfach_id
+- **[CORE]** LV-Infos werden mit der kommenden Version aus dem Core entfernt - Dies ist jetzt ein Addon
+- **[CORE]** WaWi wird mit der kommenden Version aus dem Core entfernt- Dies ist jetzt ein Addon
+
## [3.2]
### Added
diff --git a/application/controllers/system/Filters.php b/application/controllers/system/Filters.php
index 6d008ede7..cda080a46 100644
--- a/application/controllers/system/Filters.php
+++ b/application/controllers/system/Filters.php
@@ -74,25 +74,33 @@ class Filters extends VileSci_Controller
$allSelectedFields = $_SESSION[self::SESSION_NAME]['allSelectedFields'];
$allColumnsAliases = $_SESSION[self::SESSION_NAME]['allColumnsAliases'];
+ $json->selectedFields = $_SESSION[self::SESSION_NAME]['selectedFields'];
+ $json->columnsAliases = $_SESSION[self::SESSION_NAME]['columnsAliases'];
+
if (isset($selectedFieldsLst) && is_array($selectedFieldsLst))
{
- $json->selectedFields = $_SESSION[self::SESSION_NAME]['selectedFields'] = $selectedFieldsLst;
+ $json->selectedFields = $selectedFieldsLst;
+ $json->columnsAliases = array();
for ($i = 0; $i < count($json->selectedFields); $i++)
{
$pos = array_search($json->selectedFields[$i], $allSelectedFields);
+ $json->columnsAliases[$i] = $json->selectedFields[$i];
+
if ($pos !== false)
{
- $json->columnsAliases[] = $json->selectedFields[$i];
if ($allColumnsAliases != null && is_array($allColumnsAliases))
{
- $json->columnsAliases[] = $allColumnsAliases[$pos];
+ $json->columnsAliases[$i] = $allColumnsAliases[$pos];
}
}
}
}
+ $_SESSION[self::SESSION_NAME]['selectedFields'] = $json->selectedFields;
+ $_SESSION[self::SESSION_NAME]['columnsAliases'] = $json->columnsAliases;
+
$this->output->set_content_type('application/json')->set_output(json_encode($json));
}
@@ -125,10 +133,10 @@ class Filters extends VileSci_Controller
if ($pos !== false)
{
- $json->selectedFiltersAliases[] = $json->selectedFilters[$i];
+ $json->selectedFiltersAliases[$i] = $json->selectedFilters[$i];
if ($json->allColumnsAliases != null && is_array($json->allColumnsAliases))
{
- $json->selectedFiltersAliases[] = $json->allColumnsAliases[$pos];
+ $json->selectedFiltersAliases[$i] = $json->allColumnsAliases[$pos];
}
$json->selectedFiltersMetaData[] = $metaData[$pos];
diff --git a/application/controllers/system/infocenter/InfoCenter.php b/application/controllers/system/infocenter/InfoCenter.php
index 4cd6a0e07..216aa0619 100644
--- a/application/controllers/system/infocenter/InfoCenter.php
+++ b/application/controllers/system/infocenter/InfoCenter.php
@@ -641,6 +641,13 @@ class InfoCenter extends VileSci_Controller
show_error($notizen->retval);
}
+ $notizen_bewerbung = $this->NotizModel->getNotizByTitel($person_id, 'Anmerkung zur Bewerbung');
+
+ if (isError($notizen_bewerbung))
+ {
+ show_error($notizen_bewerbung->retval);
+ }
+
$user_person = $this->PersonModel->getByUid($this->uid);
if (isError($user_person))
@@ -659,6 +666,7 @@ class InfoCenter extends VileSci_Controller
'messages' => $messages->retval,
'logs' => $logs,
'notizen' => $notizen->retval,
+ 'notizenbewerbung' => $notizen_bewerbung->retval,
'messagelink' => $messagelink
);
diff --git a/application/libraries/MessageLib.php b/application/libraries/MessageLib.php
index c07756c17..bed87d184 100644
--- a/application/libraries/MessageLib.php
+++ b/application/libraries/MessageLib.php
@@ -690,7 +690,7 @@ class MessageLib
// Sending email
$sent = $this->ci->maillib->send(
- $sender,
+ null,
$receiverContact,
is_null($subject) ? $result->retval[0]->subject : $subject, // if parameter subject is not null, use it!
$bodyMsg,
diff --git a/application/views/system/infocenter/anmerkungenZurBewerbung.php b/application/views/system/infocenter/anmerkungenZurBewerbung.php
new file mode 100644
index 000000000..565db79db
--- /dev/null
+++ b/application/views/system/infocenter/anmerkungenZurBewerbung.php
@@ -0,0 +1,26 @@
+ 0): ?>
+
+
+
+
+
+
+
Anmerkungen zur Bewerbung
+
+
+
+
+
+
+ insertamum), 'd.m.Y H:i:s') ?>
+
+
+ text) ?>
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/application/views/system/infocenter/infocenterData.php b/application/views/system/infocenter/infocenterData.php
index 9b2643a94..663e69ca6 100644
--- a/application/views/system/infocenter/infocenterData.php
+++ b/application/views/system/infocenter/infocenterData.php
@@ -1,7 +1,7 @@
'
SELECT
@@ -12,7 +12,7 @@
(
SELECT zeitpunkt
FROM system.tbl_log
- WHERE taetigkeit_kurzbz = \'bewerbung\'
+ WHERE taetigkeit_kurzbz IN(\'bewerbung\',\'kommunikation\')
AND person_id = p.person_id
ORDER BY zeitpunkt DESC
LIMIT 1
@@ -20,7 +20,7 @@
(
SELECT insertvon
FROM system.tbl_log
- WHERE taetigkeit_kurzbz = \'bewerbung\'
+ WHERE taetigkeit_kurzbz IN(\'bewerbung\',\'kommunikation\')
AND person_id = p.person_id
ORDER BY zeitpunkt DESC
LIMIT 1
@@ -36,6 +36,11 @@
AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND tbl_studiengang.typ in(\'b\')
+ AND studiensemester_kurzbz IN (
+ SELECT studiensemester_kurzbz
+ FROM public.tbl_studiensemester
+ WHERE ende >= NOW()
+ )
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1
) AS "Studiensemester",
@@ -46,9 +51,15 @@
INNER JOIN public.tbl_prestudent ps USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE pss.status_kurzbz = \'Interessent\'
- AND pss.bewerbung_abgeschicktamum IS NOT NULL
+ AND (pss.bewerbung_abgeschicktamum IS NOT NULL AND pss.bewerbung_abgeschicktamum>=\''.$NOTBEFORE.'\')
+ AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND tbl_studiengang.typ in(\'b\')
+ AND studiensemester_kurzbz IN (
+ SELECT studiensemester_kurzbz
+ FROM public.tbl_studiensemester
+ WHERE ende >= NOW()
+ )
ORDER BY pss.datum DESC, pss.insertamum DESC, pss.ext_id DESC
LIMIT 1
) AS "SendDate",
@@ -59,28 +70,41 @@
INNER JOIN public.tbl_prestudent ps USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE pss.status_kurzbz = \'Interessent\'
- AND pss.bewerbung_abgeschicktamum IS NOT NULL
+ AND (pss.bewerbung_abgeschicktamum IS NOT NULL AND pss.bewerbung_abgeschicktamum>=\''.$NOTBEFORE.'\')
+ AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND tbl_studiengang.typ in(\'b\')
+ AND studiensemester_kurzbz IN (
+ SELECT studiensemester_kurzbz
+ FROM public.tbl_studiensemester
+ WHERE ende >= NOW()
+ )
LIMIT 1
) AS "AnzahlAbgeschickt",
array_to_string(
(
- SELECT array_agg(tbl_studiengang.kurzbzlang)
+ SELECT array_agg(distinct UPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz))
FROM
public.tbl_prestudentstatus pss
INNER JOIN public.tbl_prestudent ps USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE pss.status_kurzbz = \'Interessent\'
- AND pss.bewerbung_abgeschicktamum IS NOT NULL
+ AND (pss.bewerbung_abgeschicktamum IS NOT NULL AND pss.bewerbung_abgeschicktamum>=\''.$NOTBEFORE.'\')
+ AND pss.bestaetigtam IS NULL
AND ps.person_id = p.person_id
AND tbl_studiengang.typ in(\'b\')
+ AND studiensemester_kurzbz IN (
+ SELECT studiensemester_kurzbz
+ FROM public.tbl_studiensemester
+ WHERE ende >= NOW()
+ )
LIMIT 1
- ),\',\'
+ ),\', \'
) AS "StgAbgeschickt",
- pl.zeitpunkt AS "LockDate"
+ pl.zeitpunkt AS "LockDate",
+ pl.lockuser as "LockUser"
FROM public.tbl_person p
- LEFT JOIN (SELECT person_id, zeitpunkt FROM system.tbl_person_lock WHERE app = \''.$APP.'\') pl USING(person_id)
+ LEFT JOIN (SELECT person_id, zeitpunkt, uid as lockuser FROM system.tbl_person_lock WHERE app = \''.$APP.'\') pl USING(person_id)
WHERE
EXISTS(
SELECT 1
@@ -103,7 +127,7 @@
WHERE
prestudent_id = tbl_prestudent.prestudent_id
AND status_kurzbz = \'Interessent\'
- AND bestaetigtam IS NULL
+ AND (bestaetigtam IS NULL AND (bewerbung_abgeschicktamum is null OR bewerbung_abgeschicktamum>=\''.$NOTBEFORE.'\'))
AND studiensemester_kurzbz IN (
SELECT studiensemester_kurzbz
FROM public.tbl_studiensemester
@@ -111,12 +135,14 @@
)
)
)
- ORDER BY "LastAction" DESC
+ ORDER BY "LastAction" ASC
',
'hideHeader' => false,
'hideSave' => false,
'checkboxes' => 'PersonId',
'additionalColumns' => array('Details'),
+ 'columnsAliases' => array('PersonID','Vorname','Nachname','GebDatum','Letzte Aktion','Letzter Bearbeiter',
+ 'StSem','GesendetAm','NumAbgeschickt','Studiengänge','Sperrdatum','GesperrtVon'),
'formatRaw' => function($datasetRaw) {
$datasetRaw->{'Details'} = sprintf(
@@ -129,10 +155,18 @@
{
$datasetRaw->{'SendDate'} = 'Not sent';
}
+ else
+ {
+ $datasetRaw->{'SendDate'} = date_format(date_create($datasetRaw->{'SendDate'}),'Y-m-d H:i');
+ }
if ($datasetRaw->{'LastAction'} == null)
{
- $datasetRaw->{'LastAction'} = 'Not logged';
+ $datasetRaw->{'LastAction'} = '-';
+ }
+ else
+ {
+ $datasetRaw->{'LastAction'} = date_format(date_create($datasetRaw->{'LastAction'}),'Y-m-d H:i');
}
if ($datasetRaw->{'User/Operator'} == '')
@@ -142,7 +176,12 @@
if ($datasetRaw->{'LockDate'} == null)
{
- $datasetRaw->{'LockDate'} = 'Not locked';
+ $datasetRaw->{'LockDate'} = '-';
+ }
+
+ if ($datasetRaw->{'LockUser'} == null)
+ {
+ $datasetRaw->{'LockUser'} = '-';
}
if ($datasetRaw->{'StgAbgeschickt'} == null)
diff --git a/application/views/system/infocenter/infocenterDetails.php b/application/views/system/infocenter/infocenterDetails.php
old mode 100644
new mode 100755
index 299138e5c..6ebf5494b
--- a/application/views/system/infocenter/infocenterDetails.php
+++ b/application/views/system/infocenter/infocenterDetails.php
@@ -10,6 +10,7 @@
'tablesorter' => true,
'tinymce' => true,
'sbadmintemplate' => true,
+ 'addons' => true,
'customCSSs' =>
array(
'skin/admintemplate.css',
@@ -37,35 +38,35 @@