mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
+15
-1
@@ -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
|
||||
|
||||
@@ -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];
|
||||
|
||||
@@ -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
|
||||
);
|
||||
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
<?php if (count($notizenbewerbung) > 0): ?>
|
||||
<br>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<table class="table-bordered" align="center" width="100%">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="2" class="text-center">Anmerkungen zur Bewerbung</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($notizenbewerbung as $notiz): ?>
|
||||
<tr>
|
||||
<td class="text-center">
|
||||
<?php echo date_format(date_create($notiz->insertamum), 'd.m.Y H:i:s') ?>
|
||||
</td>
|
||||
<td>
|
||||
<?php echo nl2br($notiz->text) ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
|
||||
$APP = 'infocenter';
|
||||
|
||||
$NOTBEFORE = '2018-03-01 18:00:00';
|
||||
$filterWidgetArray = array(
|
||||
'query' => '
|
||||
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)
|
||||
|
||||
Regular → Executable
+19
-18
@@ -10,6 +10,7 @@
|
||||
'tablesorter' => true,
|
||||
'tinymce' => true,
|
||||
'sbadmintemplate' => true,
|
||||
'addons' => true,
|
||||
'customCSSs' =>
|
||||
array(
|
||||
'skin/admintemplate.css',
|
||||
@@ -37,35 +38,35 @@
|
||||
<div id="page-wrapper">
|
||||
<div class="container-fluid">
|
||||
<input type="hidden" id="hiddenpersonid" value="<?php echo $stammdaten->person_id ?>">
|
||||
<div class="row<?php if($lockedbyother) echo ' alert-danger' ?>">
|
||||
<div class="row<?php if ($lockedbyother) echo ' alert-danger' ?>">
|
||||
<div class="col-lg-8">
|
||||
<h3 class="page-header">
|
||||
Infocenter Details: <?php echo $stammdaten->vorname.' '.$stammdaten->nachname ?>
|
||||
</h3>
|
||||
<h3 class="page-header">
|
||||
Infocenter Details: <?php echo $stammdaten->vorname.' '.$stammdaten->nachname ?>
|
||||
</h3>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<div class="headerright text-right">
|
||||
wird bearbeitet von:
|
||||
<?php
|
||||
if(isset($lockedby)):
|
||||
echo $lockedby;
|
||||
?>
|
||||
|
||||
<a href="../unlockPerson/<?php echo $stammdaten->person_id; ?>"><i class="fa fa-sign-out"></i> Freigeben</a>
|
||||
if (isset($lockedby)):
|
||||
echo $lockedby;
|
||||
?>
|
||||
|
||||
<a href="../unlockPerson/<?php echo $stammdaten->person_id; ?>"><i
|
||||
class="fa fa-sign-out"></i> Freigeben</a>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<br/>
|
||||
<section>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="panel panel-primary">
|
||||
<div class="panel-heading text-center"><h4>Stammdaten</h4></div>
|
||||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<?php $this->load->view('system/infocenter/stammdaten.php'); ?>
|
||||
</div> <!-- ./row -->
|
||||
<?php $this->load->view('system/infocenter/stammdaten.php'); ?>
|
||||
<?php $this->load->view('system/infocenter/anmerkungenZurBewerbung.php'); ?>
|
||||
</div> <!-- ./panel-body -->
|
||||
</div> <!-- ./panel -->
|
||||
</div> <!-- ./main column -->
|
||||
@@ -109,9 +110,9 @@
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<?php
|
||||
$this->load->view('system/messageList.php', $messages);
|
||||
?>
|
||||
<?php
|
||||
$this->load->view('system/messageList.php', $messages);
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -130,10 +131,10 @@
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<div id="addnotiz">
|
||||
<?php $this->load->view('system/infocenter/addNotiz.php'); ?>
|
||||
<?php $this->load->view('system/infocenter/addNotiz.php'); ?>
|
||||
</div>
|
||||
<div id="notizen">
|
||||
<?php $this->load->view('system/infocenter/notizen.php'); ?>
|
||||
<?php $this->load->view('system/infocenter/notizen.php'); ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6" id="logs">
|
||||
|
||||
Regular → Executable
+105
-102
@@ -1,108 +1,111 @@
|
||||
<div class="col-lg-6 table-responsive">
|
||||
<table class="table">
|
||||
<tr>
|
||||
<td><strong>Vorname</strong></td>
|
||||
<td><?php echo $stammdaten->vorname ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Nachname</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->nachname ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Geburtsdatum</strong></td>
|
||||
<td>
|
||||
<?php echo date_format(date_create($stammdaten->gebdatum), 'd.m.Y') ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Sozialversicherungsnr</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->svnr ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Staatsbürgerschaft</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->staatsbuergerschaft ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Geschlecht</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->geschlecht ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Geburtsnation</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->geburtsnation ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Geburtsort</strong></td>
|
||||
<td><?php echo $stammdaten->gebort ?></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="col-lg-6 table-responsive">
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="4" class="text-center">Kontakte</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-center">Typ</th>
|
||||
<th class="text-center">Kontakt</th>
|
||||
<th class="text-center">Anmerkung</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($stammdaten->kontakte as $kontakt): ?>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-6 table-responsive">
|
||||
<table class="table">
|
||||
<tr>
|
||||
<td><?php echo ucfirst($kontakt->kontakttyp); ?></td>
|
||||
<td>
|
||||
<?php if ($kontakt->kontakttyp === 'email'): ?>
|
||||
<a href="mailto:<?php echo $kontakt->kontakt; ?>" target="_top">
|
||||
<?php
|
||||
endif;
|
||||
echo $kontakt->kontakt;
|
||||
if ($kontakt->kontakttyp === 'email'):
|
||||
?>
|
||||
</a>
|
||||
<?php endif; ?>
|
||||
</td>
|
||||
<td><?php echo $kontakt->anmerkung; ?></td>
|
||||
<td><strong>Vorname</strong></td>
|
||||
<td><?php echo $stammdaten->vorname ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
<?php foreach ($stammdaten->adressen as $adresse): ?>
|
||||
<tr>
|
||||
<td><strong>Nachname</strong></td>
|
||||
<td>
|
||||
Adresse
|
||||
</td>
|
||||
<td>
|
||||
<?php echo isset($adresse) ? $adresse->strasse.', '.$adresse->plz.' '.$adresse->ort : '' ?>
|
||||
</td>
|
||||
<td>
|
||||
<?php echo ($adresse->heimatadresse === true ? 'Heimatadresse' : '').
|
||||
($adresse->heimatadresse === true && $adresse->rechnungsadresse === true ? ', ' : '').
|
||||
($adresse->rechnungsadresse === true ? 'Rechnungsadresse' : ''); ?>
|
||||
</td>
|
||||
<?php echo $stammdaten->nachname ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<form id="sendmsgform" method="post" action="<?php echo $messagelink ?>"
|
||||
target="_blank">
|
||||
<input type="hidden" name="person_id"
|
||||
value="<?php echo $stammdaten->person_id ?>">
|
||||
<a id="sendmsglink" href="javascript:void(0);"><i
|
||||
class="fa fa-envelope"></i> Nachricht senden</a>
|
||||
</form>
|
||||
</div>
|
||||
<?php if (isset($stammdaten->zugangscode)): ?>
|
||||
<div class="col-lg-6 text-right">
|
||||
<a href="<?php echo base_url('addons/bewerbung/cis/registration.php?code='.html_escape($stammdaten->zugangscode)) ?>"
|
||||
target='_blank'><i class="glyphicon glyphicon-new-window"></i> Zugang Bewerbung</a>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<tr>
|
||||
<td><strong>Geburtsdatum</strong></td>
|
||||
<td>
|
||||
<?php echo date_format(date_create($stammdaten->gebdatum), 'd.m.Y') ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Sozialversicherungsnr</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->svnr ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Staatsbürgerschaft</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->staatsbuergerschaft ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Geschlecht</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->geschlecht ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Geburtsnation</strong></td>
|
||||
<td>
|
||||
<?php echo $stammdaten->geburtsnation ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Geburtsort</strong></td>
|
||||
<td><?php echo $stammdaten->gebort ?></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-6 table-responsive">
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="4" class="text-center">Kontakte</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th class="text-center">Typ</th>
|
||||
<th class="text-center">Kontakt</th>
|
||||
<th class="text-center">Anmerkung</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($stammdaten->kontakte as $kontakt): ?>
|
||||
<tr>
|
||||
<td><?php echo ucfirst($kontakt->kontakttyp); ?></td>
|
||||
<td>
|
||||
<?php echo '<span class="'.$kontakt->kontakttyp.'">';?>
|
||||
<?php if ($kontakt->kontakttyp === 'email'): ?>
|
||||
<a href="mailto:<?php echo $kontakt->kontakt; ?>" target="_top">
|
||||
<?php
|
||||
endif;
|
||||
echo $kontakt->kontakt;
|
||||
if ($kontakt->kontakttyp === 'email'):
|
||||
?>
|
||||
</a>
|
||||
<?php endif; ?>
|
||||
<?php echo '</span>'?>
|
||||
</td>
|
||||
<td><?php echo $kontakt->anmerkung; ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
<?php foreach ($stammdaten->adressen as $adresse): ?>
|
||||
<tr>
|
||||
<td>
|
||||
Adresse
|
||||
</td>
|
||||
<td>
|
||||
<?php echo isset($adresse) ? $adresse->strasse.', '.$adresse->plz.' '.$adresse->ort : '' ?>
|
||||
</td>
|
||||
<td>
|
||||
<?php echo ($adresse->heimatadresse === true ? 'Heimatadresse' : '').
|
||||
($adresse->heimatadresse === true && $adresse->rechnungsadresse === true ? ', ' : '').
|
||||
($adresse->rechnungsadresse === true ? 'Rechnungsadresse' : ''); ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
<form id="sendmsgform" method="post" action="<?php echo $messagelink ?>"
|
||||
target="_blank">
|
||||
<input type="hidden" name="person_id"
|
||||
value="<?php echo $stammdaten->person_id ?>">
|
||||
<a id="sendmsglink" href="javascript:void(0);"><i
|
||||
class="fa fa-envelope"></i> Nachricht senden</a>
|
||||
</form>
|
||||
</div>
|
||||
<?php if (isset($stammdaten->zugangscode)): ?>
|
||||
<div class="col-lg-6 text-right">
|
||||
<a href="<?php echo CIS_ROOT.'addons/bewerbung/cis/registration.php?code='.html_escape($stammdaten->zugangscode) ?>"
|
||||
target='_blank'><i class="glyphicon glyphicon-new-window"></i> Zugang Bewerbung</a>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Regular → Executable
+33
@@ -15,6 +15,7 @@ $fontawesome = isset($fontawesome) ? $fontawesome : false;
|
||||
$tablesorter = isset($tablesorter) ? $tablesorter : false;
|
||||
$tinymce = isset($tinymce) ? $tinymce : false;
|
||||
$sbadmintemplate = isset($sbadmintemplate) ? $sbadmintemplate : false;
|
||||
$addons = isset($addons) ? $addons : false;
|
||||
|
||||
/**
|
||||
* Print the given title of the page
|
||||
@@ -76,6 +77,16 @@ function _generateJSsInclude($JSs)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates global JS-Object to pass parms to addon-js-functions
|
||||
*/
|
||||
function _generateAddonDataStorageObject()
|
||||
{
|
||||
echo '<script type="text/javascript">';
|
||||
echo 'var FHC_ADDON_DATA_STORAGE_OBJECT = {app_root:"'.APP_ROOT.'"};';
|
||||
echo "</script>\n";
|
||||
}
|
||||
|
||||
?>
|
||||
<!-- Header start -->
|
||||
<!DOCTYPE HTML>
|
||||
@@ -142,6 +153,28 @@ function _generateJSsInclude($JSs)
|
||||
_generateJSsInclude('vendor/BlackrockDigital/startbootstrap-sb-admin-2/dist/js/sb-admin-2.min.js');
|
||||
}
|
||||
|
||||
// load addon hooks JS
|
||||
if ($addons === true)
|
||||
{
|
||||
_generateAddonDataStorageObject();
|
||||
|
||||
$aktive_addons = array_filter(explode(";", ACTIVE_ADDONS));
|
||||
$called_from = $this->router->directory.$this->router->class.'/'.$this->router->method;
|
||||
foreach ($aktive_addons as $addon)
|
||||
{
|
||||
$hookfile = DOC_ROOT.'addons/'.$addon.'/hooks.config.inc.php';
|
||||
if (file_exists($hookfile))
|
||||
{
|
||||
include($hookfile);
|
||||
if (key_exists($called_from, $js_hooks))
|
||||
{
|
||||
foreach ($js_hooks[$called_from] as $js_file)
|
||||
_generateJSsInclude('addons/'.$addon.'/'.$js_file);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Eventually required JS
|
||||
_generateJSsInclude($customJSs);
|
||||
?>
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
.filter-name-title {
|
||||
font-family: inherit;
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
/*font-weight: bold;*/
|
||||
line-height: 1.1;
|
||||
color: black;
|
||||
}
|
||||
|
||||
@@ -196,13 +196,16 @@
|
||||
var fieldName = data.allSelectedFields[i];
|
||||
var fieldToDisplay = data.allSelectedFields[i];
|
||||
|
||||
if (data.allColumnsAliases != null && $.isArray(data.allColumnsAliases))
|
||||
if (data.selectedFields.indexOf(fieldName) < 0)
|
||||
{
|
||||
fieldToDisplay = data.allColumnsAliases[i];
|
||||
}
|
||||
if (data.allColumnsAliases != null && $.isArray(data.allColumnsAliases))
|
||||
{
|
||||
fieldToDisplay = data.allColumnsAliases[i];
|
||||
}
|
||||
|
||||
strDropDown = '<option value="' + fieldName + '">' + fieldToDisplay + '</option>';
|
||||
$("#addField").append(strDropDown);
|
||||
strDropDown = '<option value="' + fieldName + '">' + fieldToDisplay + '</option>';
|
||||
$("#addField").append(strDropDown);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -216,20 +216,6 @@
|
||||
var strDropDown = '<option value="">Select a filter to add...</option>';
|
||||
$("#addFilter").append(strDropDown);
|
||||
|
||||
for (var i = 0; i < data.allSelectedFields.length; i++)
|
||||
{
|
||||
var fieldName = data.allSelectedFields[i];
|
||||
var fieldToDisplay = data.allSelectedFields[i];
|
||||
|
||||
if (data.allColumnsAliases != null && $.isArray(data.allColumnsAliases))
|
||||
{
|
||||
fieldToDisplay = data.allColumnsAliases[i];
|
||||
}
|
||||
|
||||
strDropDown = '<option value="' + fieldName + '">' + fieldToDisplay + '</option>';
|
||||
$("#addFilter").append(strDropDown);
|
||||
}
|
||||
|
||||
for (var i = 0; i < data.selectedFilters.length; i++)
|
||||
{
|
||||
var selectedFilters = '<div>';
|
||||
@@ -253,6 +239,23 @@
|
||||
|
||||
$("#selectedFilters").append(selectedFilters);
|
||||
}
|
||||
|
||||
for (var i = 0; i < data.allSelectedFields.length; i++)
|
||||
{
|
||||
var fieldName = data.allSelectedFields[i];
|
||||
var fieldToDisplay = data.allSelectedFields[i];
|
||||
|
||||
if (data.selectedFilters.indexOf(fieldName) < 0)
|
||||
{
|
||||
if (data.allColumnsAliases != null && $.isArray(data.allColumnsAliases))
|
||||
{
|
||||
fieldToDisplay = data.allColumnsAliases[i];
|
||||
}
|
||||
|
||||
strDropDown = '<option value="' + fieldName + '">' + fieldToDisplay + '</option>';
|
||||
$("#addFilter").append(strDropDown);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
addEventsSFilters();
|
||||
|
||||
@@ -7,9 +7,9 @@ class Vorlage_widget extends DropdownWidget
|
||||
// All organization units to which the user belongs
|
||||
$oe_kurzbz = $widgetData['oe_kurzbz'];
|
||||
$idAdmin = $widgetData['isAdmin'];
|
||||
|
||||
|
||||
$vorlage = null;
|
||||
|
||||
|
||||
// If the user is an admin
|
||||
if ($idAdmin === true)
|
||||
{
|
||||
@@ -23,17 +23,17 @@ class Vorlage_widget extends DropdownWidget
|
||||
// organisation unit tree
|
||||
$vorlage = $this->_getUserVorlage($oe_kurzbz);
|
||||
}
|
||||
|
||||
|
||||
$this->setElementsArray(
|
||||
$vorlage,
|
||||
true,
|
||||
'Select a vorlage...',
|
||||
'No vorlage found'
|
||||
);
|
||||
|
||||
|
||||
$this->loadDropDownView($widgetData);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get all the vorlage with mimetype = text/html
|
||||
*/
|
||||
@@ -41,12 +41,12 @@ class Vorlage_widget extends DropdownWidget
|
||||
{
|
||||
$this->load->model('system/Vorlage_model', 'VorlageModel');
|
||||
$this->VorlageModel->addOrder('vorlage_kurzbz');
|
||||
|
||||
|
||||
$this->addSelectToModel($this->VorlageModel, 'vorlage_kurzbz', 'bezeichnung');
|
||||
|
||||
|
||||
return $this->VorlageModel->loadWhere(array('mimetype' => 'text/html'));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get all the vorlage that belongs to the organisation units of the user
|
||||
* and the parents of those organisation units until the root of the
|
||||
@@ -56,9 +56,9 @@ class Vorlage_widget extends DropdownWidget
|
||||
{
|
||||
// Loads library OrganisationseinheitLib
|
||||
$this->load->library('OrganisationseinheitLib');
|
||||
|
||||
|
||||
$vorlage = success(array()); // Default value
|
||||
|
||||
|
||||
$table = '(
|
||||
SELECT v.vorlage_kurzbz, v.bezeichnung, vs.version, vs.oe_kurzbz, vs.aktiv, vs.subject, vs.text, v.mimetype
|
||||
FROM tbl_vorlagestudiengang vs INNER JOIN tbl_vorlage v USING(vorlage_kurzbz)
|
||||
@@ -70,7 +70,7 @@ class Vorlage_widget extends DropdownWidget
|
||||
AND templates.text IS NOT NULL
|
||||
AND templates.mimetype = \'text/html\'';
|
||||
$order_by = 'description ASC';
|
||||
|
||||
|
||||
if (!is_array($oe_kurzbz))
|
||||
{
|
||||
$vorlage = $this->organisationseinheitlib->treeSearchEntire(
|
||||
@@ -95,14 +95,20 @@ class Vorlage_widget extends DropdownWidget
|
||||
$order_by,
|
||||
$val
|
||||
);
|
||||
|
||||
|
||||
// Everything is ok and data are inside
|
||||
if (hasData($tmpVorlage))
|
||||
{
|
||||
// If it's the first vorlage copy it
|
||||
if (count($vorlage->retval) == 0)
|
||||
{
|
||||
$vorlage->retval = $tmpVorlage->retval;
|
||||
for ($j = 0; $j < count($tmpVorlage->retval); $j++)
|
||||
{
|
||||
if ($tmpVorlage->retval[$j]->id != '')
|
||||
{
|
||||
array_push($vorlage->retval, $tmpVorlage->retval[$j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
else // checks for duplicates, if it's not already present push it into the array $vorlage->retval
|
||||
{
|
||||
@@ -110,7 +116,8 @@ class Vorlage_widget extends DropdownWidget
|
||||
{
|
||||
for ($j = 0; $j < count($tmpVorlage->retval); $j++)
|
||||
{
|
||||
if ($vorlage->retval[$i]->_pk != $tmpVorlage->retval[$j]->_pk
|
||||
if ($tmpVorlage->retval[$j]->id != ''
|
||||
&& $vorlage->retval[$i]->_pk != $tmpVorlage->retval[$j]->_pk
|
||||
&& $vorlage->retval[$i]->_ppk != $tmpVorlage->retval[$j]->_ppk
|
||||
&& $vorlage->retval[$i]->_jtpk != $tmpVorlage->retval[$j]->_jtpk)
|
||||
{
|
||||
@@ -122,7 +129,7 @@ class Vorlage_widget extends DropdownWidget
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return $vorlage;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+306
-309
@@ -1,309 +1,306 @@
|
||||
<?php
|
||||
|
||||
/* Copyright (C) 2015 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Cristina Hainberger <hainberg@technikum-wien.at>
|
||||
*
|
||||
* Description: This file creates a studentlist with students' profile fotos
|
||||
* by a given studiengangs- and lehrveranstaltungs ID (and eventually a given lehreinheit ID).
|
||||
* If fotos are locked by student, a dummy picture is inserted instead of the students foto.
|
||||
* EXCEPTION: if user has admins or assitents rights, ALL students' fotos are iserted (even locked ones)
|
||||
*
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../include/dokument_export.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/lehreinheit.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/erhalter.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
|
||||
|
||||
$doc = new dokument_export('fotoliste');
|
||||
$output = 'pdf';
|
||||
$show_all_fotos = false;
|
||||
|
||||
|
||||
//check user access & $_GET vars
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
|
||||
if (isset($_GET['lvid']) && is_numeric($_GET['lvid']))
|
||||
$lvid = $_GET['lvid'];
|
||||
else
|
||||
die('Eine gueltige LvID muss uebergeben werden');
|
||||
|
||||
isset($_GET['stsem']) ? $studiensemester = $_GET['stsem'] : die('Ein Studiensemester muss uebergeben werden');
|
||||
|
||||
$lv = new lehrveranstaltung();
|
||||
$lv->load($lvid);
|
||||
|
||||
$berechtigung = new benutzerberechtigung();
|
||||
$berechtigung->getBerechtigungen($user);
|
||||
|
||||
if (!$berechtigung->isBerechtigt('admin') && !$berechtigung->isBerechtigt('assistenz') && !$berechtigung->isBerechtigt('lehre', $lv->oe_kurzbz, 's') && !check_lektor_lehrveranstaltung($user, $lvid, $studiensemester))
|
||||
die('Sie muessen LektorIn der LV sein oder das Recht "ADMIN", "ASSISTENZ" oder "LEHRE" haben, um diese Seite aufrufen zu koennen');
|
||||
|
||||
if ($berechtigung->isBerechtigt('admin') || $berechtigung->isBerechtigt('assistenz'))
|
||||
$show_all_fotos = true;
|
||||
|
||||
if (isset($_GET['output']) && ($output = 'odt' || $output = 'doc'))
|
||||
$output = $_GET['output'];
|
||||
isset($_GET['stg_kz']) ? $studiengang = $_GET['stg_kz'] : $studiengang = NULL;
|
||||
isset($_GET['lehreinheit_id']) ? $lehreinheit = $_GET['lehreinheit_id'] : $lehreinheit = NULL;
|
||||
|
||||
|
||||
//**************************** overall lehrveranstaltungs data *******************************
|
||||
//load overall lehrveranstaltungs-data
|
||||
$qry = "SELECT DISTINCT ON
|
||||
(kuerzel, semester, verband, gruppe, gruppe_kurzbz)
|
||||
UPPER(stg_typ || stg_kurzbz) as kuerzel,
|
||||
lv_bezeichnung,
|
||||
stg_bez,
|
||||
semester,
|
||||
verband,
|
||||
gruppe,
|
||||
gruppe_kurzbz,
|
||||
stg_typ
|
||||
FROM
|
||||
campus.vw_lehreinheit
|
||||
WHERE
|
||||
lehrveranstaltung_id=" . $db->db_add_param($lvid, FHC_INTEGER) . "
|
||||
AND
|
||||
studiensemester_kurzbz=" . $db->db_add_param($studiensemester);
|
||||
if ($lehreinheit != '')
|
||||
$qry .= " AND lehreinheit_id=" . $db->db_add_param($lehreinheit, FHC_INTEGER);
|
||||
|
||||
$gruppen_string = '';
|
||||
$gruppen_string_arr = array();
|
||||
$stg_typ = '';
|
||||
|
||||
//structure overall lehrveranstaltungs data
|
||||
if ($result = $db->db_query($qry)) {
|
||||
while ($row = $db->db_fetch_object($result)) {
|
||||
//lehrveranstaltung
|
||||
$lv_bezeichnung = $row->lv_bezeichnung;
|
||||
//studiengang
|
||||
$stg_bezeichnung = $row->stg_bez;
|
||||
//studiengangstyp
|
||||
$stg_typ = $row->stg_typ;
|
||||
//collect all gruppenkürzel
|
||||
if ($row->gruppe_kurzbz == '')
|
||||
$gruppen_string = trim($row->kuerzel . '-' . $row->semester);
|
||||
else
|
||||
$gruppen_string = $row->gruppe_kurzbz;
|
||||
|
||||
$gruppen_string_arr[] = $gruppen_string;
|
||||
}
|
||||
}
|
||||
|
||||
//concatinate distinct gruppenkürzel
|
||||
$studiengruppe = implode(", ", array_unique($gruppen_string_arr));
|
||||
|
||||
//get studiengangstyp-bezeichnung
|
||||
$qry = "SELECT
|
||||
bezeichnung
|
||||
FROM
|
||||
public.tbl_studiengangstyp
|
||||
WHERE
|
||||
typ =" . $db->db_add_param($stg_typ);
|
||||
|
||||
if ($result = $db->db_query($qry)) {
|
||||
$row = $db->db_fetch_object($result);
|
||||
$stg_typ_bezeichnung = $row->bezeichnung;
|
||||
}
|
||||
|
||||
|
||||
//add overall lehrveranstaltungs-data for XML
|
||||
$data = array(
|
||||
'lehrveranstaltung' => $lv_bezeichnung,
|
||||
'studiengang' => $stg_bezeichnung,
|
||||
'studiengangs_typ' => $stg_typ_bezeichnung,
|
||||
'studiensemester' => $studiensemester,
|
||||
'studiengruppe' => $studiengruppe
|
||||
);
|
||||
|
||||
|
||||
|
||||
//**************************** students data *******************************
|
||||
//load students-data
|
||||
$qry = 'SELECT DISTINCT ON
|
||||
(nachname, vorname, person_id)
|
||||
vorname,
|
||||
nachname,
|
||||
matrikelnr,
|
||||
tbl_studentlehrverband.semester,
|
||||
tbl_studentlehrverband.verband,
|
||||
tbl_studentlehrverband.gruppe,
|
||||
(SELECT
|
||||
status_kurzbz
|
||||
FROM
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id=tbl_student.prestudent_id
|
||||
ORDER BY
|
||||
datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
|
||||
tbl_studiengang.kurzbz,
|
||||
tbl_studiengang.typ,
|
||||
tbl_bisio.bisio_id,
|
||||
tbl_bisio.von,
|
||||
tbl_bisio.bis,
|
||||
tbl_student.studiengang_kz AS stg_kz_student,
|
||||
tbl_zeugnisnote.note,
|
||||
tbl_mitarbeiter.mitarbeiter_uid,
|
||||
tbl_person.matr_nr,
|
||||
tbl_person.geschlecht,
|
||||
tbl_person.foto,
|
||||
tbl_person.foto_sperre
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN public.tbl_benutzer USING(uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
LEFT JOIN public.tbl_student ON(uid=student_uid)
|
||||
LEFT JOIN public.tbl_studiengang ON(tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz)
|
||||
LEFT JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid)
|
||||
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id
|
||||
AND tbl_zeugnisnote.student_uid=tbl_student.student_uid
|
||||
AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
|
||||
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
|
||||
WHERE
|
||||
vw_student_lehrveranstaltung.lehrveranstaltung_id=' . $db->db_add_param($lvid, FHC_INTEGER) . ' AND
|
||||
vw_student_lehrveranstaltung.studiensemester_kurzbz=' . $db->db_add_param($studiensemester);
|
||||
|
||||
if ($lehreinheit != '')
|
||||
$qry .= ' AND vw_student_lehrveranstaltung.lehreinheit_id=' . $db->db_add_param($lehreinheit, FHC_INTEGER);
|
||||
|
||||
$qry .= ' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem_obj->load($studiensemester);
|
||||
$stsemdatumvon = $stsem_obj->start;
|
||||
$stsemdatumbis = $stsem_obj->ende;
|
||||
|
||||
$erhalter = new erhalter();
|
||||
$erhalter->getAll();
|
||||
|
||||
$a_o_kz = '9' . sprintf("%03s", $erhalter->result[0]->erhalter_kz); //Stg_Kz AO-Studierende auslesen (9005 fuer FHTW)
|
||||
$anzahl_studierende = 0;
|
||||
$datum = new datum();
|
||||
$zusatz = '';
|
||||
|
||||
//structure students data
|
||||
if ($result = $db->db_query($qry)) {
|
||||
while ($row = $db->db_fetch_object($result)) {
|
||||
if ($row->status != 'Abbrecher' && $row->status != 'Unterbrecher') {
|
||||
$anzahl_studierende++;
|
||||
|
||||
if ($row->status == 'Incoming') //Incoming
|
||||
$zusatz = '(i)';
|
||||
else
|
||||
$zusatz = '';
|
||||
|
||||
if ($row->bisio_id != '' && $row->status != 'Incoming' && ($row->bis > $stsemdatumvon || $row->bis == '') && $row->von < $stsemdatumbis) //Outgoing
|
||||
$zusatz .= '(o)(ab ' . $datum->formatDatum($row->von, 'd.m.Y') . ')';
|
||||
|
||||
if ($row->note == 6) //angerechnet
|
||||
$zusatz .= '(ar)';
|
||||
|
||||
if ($row->mitarbeiter_uid != '') //mitarbeiter
|
||||
$zusatz .= '(ma)';
|
||||
|
||||
if ($row->stg_kz_student == $a_o_kz) //Außerordentliche Studierende
|
||||
$zusatz .= '(a.o.)';
|
||||
|
||||
//allow admin and assistenz to see ALL fotos (even if locked by user)
|
||||
if ($show_all_fotos)
|
||||
$row->foto_sperre = 'f';
|
||||
|
||||
//create foto (if not locked by student OR if fotolist is created by admin or assistenz)
|
||||
$foto_url = '';
|
||||
if ($row->foto_sperre == 'f' && $row->foto != '') {
|
||||
$foto_src = $row->foto;
|
||||
$foto_url = sys_get_temp_dir() . '/foto' . trim($row->matrikelnr) . '.jpg';
|
||||
$foto_url_arr[] = $foto_url;
|
||||
|
||||
//create writeable file
|
||||
if (!$foto = fopen($foto_url, 'w'))
|
||||
die("Das Bild konnte nicht erstellt werden");
|
||||
//add foto base64-code
|
||||
if (!fwrite($foto, base64_decode($foto_src)))
|
||||
{
|
||||
die("Das Bild konnte nicht erstellt werden");
|
||||
}
|
||||
|
||||
//add foto to document
|
||||
$doc->addImage($foto_url, trim($row->matrikelnr) . '.jpg', 'image/jpg');
|
||||
}
|
||||
// elseif ($row->foto == '')
|
||||
// {
|
||||
// $foto_url = '';
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// $foto_url = '';
|
||||
// }
|
||||
|
||||
//create studiengruppe
|
||||
$student_studiengruppe = strtoupper($row->typ.$row->kurzbz.'-'.$row->semester);
|
||||
|
||||
//add studierenden data for XML
|
||||
$data[] = array('studierende' => array(
|
||||
'vorname' => $row->vorname,
|
||||
'nachname' => mb_strtoupper($row->nachname, 'UTF-8'),
|
||||
'personenkennzeichen' => trim($row->matrikelnr),
|
||||
'geschlecht' => $row->geschlecht,
|
||||
'foto_gesperrt' => $row->foto_sperre, // f/t
|
||||
'foto_url' => $foto_url,
|
||||
'studiengruppe' => $student_studiengruppe,
|
||||
'verband' => trim($row->verband),
|
||||
'gruppe' => trim($row->gruppe),
|
||||
'zusatz' => $zusatz
|
||||
));
|
||||
}
|
||||
}
|
||||
//Anzahl Studierende in Array $data (an erster Stelle) einfuegen
|
||||
$data = array_reverse($data, true);
|
||||
$data['anzahl_studierende'] = $anzahl_studierende;
|
||||
$data = array_reverse($data, true);
|
||||
}
|
||||
|
||||
//add data to fotoliste.xsl
|
||||
$doc->addDataArray($data, 'fotoliste');
|
||||
|
||||
//set doc name
|
||||
$doc->setFilename('Fotoliste_'.$stg_bezeichnung.'_'.$studiensemester.'_'.$lv_bezeichnung);
|
||||
|
||||
//create doc in format required
|
||||
if (!$doc->create($output))
|
||||
die($doc->errormsg);
|
||||
|
||||
//download doc
|
||||
$doc->output();
|
||||
|
||||
//unlink doc from tmp-folder
|
||||
$doc->close();
|
||||
|
||||
//unlink fotos from tmp-folder
|
||||
foreach ($foto_url_arr as $foto_url)
|
||||
unlink($foto_url);
|
||||
<?php
|
||||
|
||||
/* Copyright (C) 2015 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Cristina Hainberger <hainberg@technikum-wien.at>
|
||||
*
|
||||
* Description: This file creates a studentlist with students' profile fotos
|
||||
* by a given studiengangs- and lehrveranstaltungs ID (and eventually a given lehreinheit ID).
|
||||
* If fotos are locked by student, a dummy picture is inserted instead of the students foto.
|
||||
* EXCEPTION: if user has admins or assitents rights, ALL students' fotos are iserted (even locked ones)
|
||||
*
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../include/dokument_export.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/lehreinheit.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/erhalter.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
|
||||
|
||||
$doc = new dokument_export('fotoliste');
|
||||
$output = 'pdf';
|
||||
$show_all_fotos = false;
|
||||
|
||||
|
||||
//check user access & $_GET vars
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
|
||||
if (isset($_GET['lvid']) && is_numeric($_GET['lvid']))
|
||||
$lvid = $_GET['lvid'];
|
||||
else
|
||||
die('Eine gueltige LvID muss uebergeben werden');
|
||||
|
||||
isset($_GET['stsem']) ? $studiensemester = $_GET['stsem'] : die('Ein Studiensemester muss uebergeben werden');
|
||||
|
||||
$lv = new lehrveranstaltung();
|
||||
$lv->load($lvid);
|
||||
|
||||
$berechtigung = new benutzerberechtigung();
|
||||
$berechtigung->getBerechtigungen($user);
|
||||
|
||||
if (!$berechtigung->isBerechtigt('admin') && !$berechtigung->isBerechtigt('assistenz') && !$berechtigung->isBerechtigt('lehre', $lv->oe_kurzbz, 's') && !check_lektor_lehrveranstaltung($user, $lvid, $studiensemester))
|
||||
die('Sie muessen LektorIn der LV sein oder das Recht "ADMIN", "ASSISTENZ" oder "LEHRE" haben, um diese Seite aufrufen zu koennen');
|
||||
|
||||
if ($berechtigung->isBerechtigt('admin') || $berechtigung->isBerechtigt('assistenz'))
|
||||
$show_all_fotos = true;
|
||||
|
||||
if (isset($_GET['output']) && ($output = 'odt' || $output = 'doc'))
|
||||
$output = $_GET['output'];
|
||||
isset($_GET['stg_kz']) ? $studiengang = $_GET['stg_kz'] : $studiengang = NULL;
|
||||
isset($_GET['lehreinheit_id']) ? $lehreinheit = $_GET['lehreinheit_id'] : $lehreinheit = NULL;
|
||||
|
||||
|
||||
//**************************** overall lehrveranstaltungs data *******************************
|
||||
//load overall lehrveranstaltungs-data
|
||||
$qry = "SELECT DISTINCT ON
|
||||
(kuerzel, semester, verband, gruppe, gruppe_kurzbz)
|
||||
UPPER(stg_typ || stg_kurzbz) as kuerzel,
|
||||
lv_bezeichnung,
|
||||
stg_bez,
|
||||
semester,
|
||||
verband,
|
||||
gruppe,
|
||||
gruppe_kurzbz,
|
||||
stg_typ
|
||||
FROM
|
||||
campus.vw_lehreinheit
|
||||
WHERE
|
||||
lehrveranstaltung_id=" . $db->db_add_param($lvid, FHC_INTEGER) . "
|
||||
AND
|
||||
studiensemester_kurzbz=" . $db->db_add_param($studiensemester);
|
||||
if ($lehreinheit != '')
|
||||
$qry .= " AND lehreinheit_id=" . $db->db_add_param($lehreinheit, FHC_INTEGER);
|
||||
|
||||
$gruppen_string = '';
|
||||
$gruppen_string_arr = array();
|
||||
$stg_typ = '';
|
||||
|
||||
//structure overall lehrveranstaltungs data
|
||||
if ($result = $db->db_query($qry)) {
|
||||
while ($row = $db->db_fetch_object($result)) {
|
||||
//lehrveranstaltung
|
||||
$lv_bezeichnung = $row->lv_bezeichnung;
|
||||
//studiengang
|
||||
$stg_bezeichnung = $row->stg_bez;
|
||||
//studiengangstyp
|
||||
$stg_typ = $row->stg_typ;
|
||||
//collect all gruppenkürzel
|
||||
if ($row->gruppe_kurzbz == '')
|
||||
$gruppen_string = trim($row->kuerzel . '-' . $row->semester);
|
||||
else
|
||||
$gruppen_string = $row->gruppe_kurzbz;
|
||||
|
||||
$gruppen_string_arr[] = $gruppen_string;
|
||||
}
|
||||
}
|
||||
|
||||
//concatinate distinct gruppenkürzel
|
||||
$studiengruppe = implode(", ", array_unique($gruppen_string_arr));
|
||||
|
||||
//get studiengangstyp-bezeichnung
|
||||
$qry = "SELECT
|
||||
bezeichnung
|
||||
FROM
|
||||
public.tbl_studiengangstyp
|
||||
WHERE
|
||||
typ =" . $db->db_add_param($stg_typ);
|
||||
|
||||
if ($result = $db->db_query($qry)) {
|
||||
$row = $db->db_fetch_object($result);
|
||||
$stg_typ_bezeichnung = $row->bezeichnung;
|
||||
}
|
||||
|
||||
|
||||
//add overall lehrveranstaltungs-data for XML
|
||||
$data = array(
|
||||
'lehrveranstaltung' => $lv_bezeichnung,
|
||||
'studiengang' => $stg_bezeichnung,
|
||||
'studiengangs_typ' => $stg_typ_bezeichnung,
|
||||
'studiensemester' => $studiensemester,
|
||||
'studiengruppe' => $studiengruppe
|
||||
);
|
||||
|
||||
|
||||
|
||||
//**************************** students data *******************************
|
||||
//load students-data
|
||||
$qry = 'SELECT DISTINCT ON
|
||||
(nachname, vorname, person_id)
|
||||
vorname,
|
||||
nachname,
|
||||
matrikelnr,
|
||||
tbl_studentlehrverband.semester,
|
||||
tbl_studentlehrverband.verband,
|
||||
tbl_studentlehrverband.gruppe,
|
||||
(SELECT
|
||||
status_kurzbz
|
||||
FROM
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id=tbl_student.prestudent_id
|
||||
ORDER BY
|
||||
datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
|
||||
tbl_studiengang.kurzbz,
|
||||
tbl_studiengang.typ,
|
||||
tbl_bisio.bisio_id,
|
||||
tbl_bisio.von,
|
||||
tbl_bisio.bis,
|
||||
tbl_student.studiengang_kz AS stg_kz_student,
|
||||
tbl_zeugnisnote.note,
|
||||
tbl_mitarbeiter.mitarbeiter_uid,
|
||||
tbl_person.matr_nr,
|
||||
tbl_person.geschlecht,
|
||||
tbl_person.foto,
|
||||
tbl_person.foto_sperre
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN public.tbl_benutzer USING(uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
LEFT JOIN public.tbl_student ON(uid=student_uid)
|
||||
LEFT JOIN public.tbl_studiengang ON(tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz)
|
||||
LEFT JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid)
|
||||
LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz)
|
||||
LEFT JOIN lehre.tbl_zeugnisnote ON(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id
|
||||
AND tbl_zeugnisnote.student_uid=tbl_student.student_uid
|
||||
AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
|
||||
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
|
||||
WHERE
|
||||
vw_student_lehrveranstaltung.lehrveranstaltung_id=' . $db->db_add_param($lvid, FHC_INTEGER) . ' AND
|
||||
vw_student_lehrveranstaltung.studiensemester_kurzbz=' . $db->db_add_param($studiensemester);
|
||||
|
||||
if ($lehreinheit != '')
|
||||
$qry .= ' AND vw_student_lehrveranstaltung.lehreinheit_id=' . $db->db_add_param($lehreinheit, FHC_INTEGER);
|
||||
|
||||
$qry .= ' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem_obj->load($studiensemester);
|
||||
$stsemdatumvon = $stsem_obj->start;
|
||||
$stsemdatumbis = $stsem_obj->ende;
|
||||
|
||||
$erhalter = new erhalter();
|
||||
$erhalter->getAll();
|
||||
|
||||
$a_o_kz = '9' . sprintf("%03s", $erhalter->result[0]->erhalter_kz); //Stg_Kz AO-Studierende auslesen (9005 fuer FHTW)
|
||||
$anzahl_studierende = 0;
|
||||
$datum = new datum();
|
||||
$zusatz = '';
|
||||
|
||||
//structure students data
|
||||
if ($result = $db->db_query($qry)) {
|
||||
while ($row = $db->db_fetch_object($result)) {
|
||||
if ($row->status != 'Abbrecher' && $row->status != 'Unterbrecher') {
|
||||
$anzahl_studierende++;
|
||||
|
||||
if ($row->status == 'Incoming') //Incoming
|
||||
$zusatz = '(i)';
|
||||
else
|
||||
$zusatz = '';
|
||||
|
||||
if ($row->bisio_id != '' && $row->status != 'Incoming' && ($row->bis > $stsemdatumvon || $row->bis == '') && $row->von < $stsemdatumbis) //Outgoing
|
||||
$zusatz .= '(o)(ab ' . $datum->formatDatum($row->von, 'd.m.Y') . ')';
|
||||
|
||||
if ($row->note == 6) //angerechnet
|
||||
$zusatz .= '(ar)';
|
||||
|
||||
if ($row->mitarbeiter_uid != '') //mitarbeiter
|
||||
$zusatz .= '(ma)';
|
||||
|
||||
if ($row->stg_kz_student == $a_o_kz) //Außerordentliche Studierende
|
||||
$zusatz .= '(a.o.)';
|
||||
|
||||
//allow admin and assistenz to see ALL fotos (even if locked by user)
|
||||
if ($show_all_fotos)
|
||||
$row->foto_sperre = 'f';
|
||||
|
||||
//create foto (if not locked by student OR if fotolist is created by admin or assistenz)
|
||||
$foto_url = '';
|
||||
|
||||
if ($row->foto_sperre == 'f' && $row->foto != '') {
|
||||
$foto_src = $row->foto;
|
||||
$foto_url = sys_get_temp_dir() . '/foto' . trim($row->matrikelnr) . '.jpg';
|
||||
$foto_url_arr[] = $foto_url;
|
||||
|
||||
//create writeable file
|
||||
if (!$foto = fopen($foto_url, 'w'))
|
||||
die("Das Bild konnte nicht erstellt werden");
|
||||
//add foto base64-code
|
||||
if (!fwrite($foto, base64_decode($foto_src)))
|
||||
{
|
||||
die("Das Bild konnte nicht erstellt werden");
|
||||
}
|
||||
|
||||
//add foto to document
|
||||
$doc->addImage($foto_url, trim($row->matrikelnr) . '.jpg', 'image/jpg');
|
||||
}
|
||||
elseif ($row->foto_sperre == 't')
|
||||
{
|
||||
$foto_url = 'gesperrt';
|
||||
}
|
||||
|
||||
//create studiengruppe
|
||||
$student_studiengruppe = strtoupper($row->typ.$row->kurzbz.'-'.$row->semester);
|
||||
|
||||
//add studierenden data for XML
|
||||
$data[] = array('studierende' => array(
|
||||
'vorname' => $row->vorname,
|
||||
'nachname' => mb_strtoupper($row->nachname, 'UTF-8'),
|
||||
'personenkennzeichen' => trim($row->matrikelnr),
|
||||
'geschlecht' => $row->geschlecht,
|
||||
'foto_gesperrt' => $row->foto_sperre, // f/t
|
||||
'foto_url' => $foto_url,
|
||||
'studiengruppe' => $student_studiengruppe,
|
||||
'verband' => trim($row->verband),
|
||||
'gruppe' => trim($row->gruppe),
|
||||
'zusatz' => $zusatz
|
||||
));
|
||||
}
|
||||
}
|
||||
//Anzahl Studierende in Array $data (an erster Stelle) einfuegen
|
||||
$data = array_reverse($data, true);
|
||||
$data['anzahl_studierende'] = $anzahl_studierende;
|
||||
$data = array_reverse($data, true);
|
||||
}
|
||||
|
||||
//add data to fotoliste.xsl
|
||||
$doc->addDataArray($data, 'fotoliste');
|
||||
|
||||
//set doc name
|
||||
$doc->setFilename('Fotoliste_'.$stg_bezeichnung.'_'.$studiensemester.'_'.$lv_bezeichnung);
|
||||
|
||||
//create doc in format required
|
||||
if (!$doc->create($output))
|
||||
die($doc->errormsg);
|
||||
|
||||
//download doc
|
||||
$doc->output();
|
||||
|
||||
//unlink doc from tmp-folder
|
||||
$doc->close();
|
||||
|
||||
//unlink fotos from tmp-folder
|
||||
foreach ($foto_url_arr as $foto_url)
|
||||
unlink($foto_url);
|
||||
|
||||
@@ -1343,6 +1343,20 @@ if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants
|
||||
}
|
||||
}
|
||||
|
||||
// INSERT Berechtigungen fuer web User erteilen fuer tbl_msg_status
|
||||
if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants WHERE table_name='tbl_msg_status' AND table_schema='public' AND grantee='web' AND privilege_type='UPDATE'"))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$qry = "GRANT UPDATE ON public.tbl_msg_status TO web;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_msg_status Berechtigungen: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo 'UPDATE Rechte fuer public.tbl_msg_status fuer web user gesetzt ';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Kommentare fuer Datenbanktabellen
|
||||
*/
|
||||
@@ -1668,7 +1682,89 @@ if($result = $db->db_query("SELECT obj_description('public.ci_apikey'::regclass)
|
||||
else
|
||||
echo 'Kommentare fuer DB Datenbanktabellen hinzugefügt';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($result = @$db->db_query("SELECT * FROM system.tbl_filters WHERE filter_kurzbz='InfoCenterSentApplicationAll' AND app='infocenter'"))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$qry = "INSERT INTO system.tbl_filters(app, dataset_name, filter_kurzbz, person_id, description, sort,
|
||||
default_filter, filter, oe_kurzbz)
|
||||
VALUES ('infocenter', 'PersonActions', 'InfoCenterSentApplicationAll', NULL, '{Alle}', 1, false,
|
||||
'{\"name\": \"Abgeschickt - Alle\", \"columns\": [{\"name\": \"Vorname\"},
|
||||
{\"name\": \"Nachname\"}, {\"name\": \"LastAction\"}, {\"name\": \"LockUser\"},
|
||||
{\"name\": \"Studiensemester\"}, {\"name\": \"SendDate\"}, {\"name\": \"StgAbgeschickt\"}],
|
||||
\"filters\": [{\"name\": \"AnzahlAbgeschickt\", \"option\": \"\",
|
||||
\"condition\": \"0\", \"operation\": \"gt\"}]}', NULL);";
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>Filter: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Filter InfoCenterSentApplicationAll hinzugefuegt';
|
||||
}
|
||||
}
|
||||
|
||||
if($result = @$db->db_query("SELECT * FROM system.tbl_filters WHERE filter_kurzbz='InfoCenterSentApplication3days' AND app='infocenter'"))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$qry = "INSERT INTO system.tbl_filters(app, dataset_name, filter_kurzbz, person_id, description, sort,
|
||||
default_filter, filter, oe_kurzbz)
|
||||
VALUES ('infocenter', 'PersonActions', 'InfoCenterSentApplication3days', NULL,
|
||||
'{\"3 Tage keine Aktion\"}', 2, false, '{\"name\": \"Abgeschickt - 3 Tage keine Aktion\",
|
||||
\"columns\": [{\"name\": \"Vorname\"}, {\"name\": \"Nachname\"}, {\"name\": \"LastAction\"},
|
||||
{\"name\": \"LockUser\"}, {\"name\": \"Studiensemester\"}, {\"name\": \"SendDate\"},
|
||||
{\"name\": \"StgAbgeschickt\"}],
|
||||
\"filters\": [{\"name\": \"LastAction\", \"option\": \"days\", \"condition\": \"3\",
|
||||
\"operation\": \"gt\"}, {\"name\": \"AnzahlAbgeschickt\", \"option\": \"\",
|
||||
\"condition\": \"0\", \"operation\": \"gt\"}]}', NULL);";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>Filter: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Filter InfoCenterSentApplication3days hinzugefuegt';
|
||||
}
|
||||
}
|
||||
|
||||
if($result = @$db->db_query("SELECT * FROM system.tbl_filters WHERE filter_kurzbz='InfoCenterNotSentApplicationAll' AND app='infocenter'"))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$qry = "INSERT INTO system.tbl_filters(app, dataset_name, filter_kurzbz, person_id, description, sort,
|
||||
default_filter, filter, oe_kurzbz)
|
||||
VALUES ('infocenter', 'PersonActions', 'InfoCenterNotSentApplicationAll', NULL, '{Alle}', 1, false,
|
||||
'{\"name\": \"Nicht abgeschickt - Alle\", \"columns\": [{\"name\": \"Vorname\"},
|
||||
{\"name\": \"Nachname\"}, {\"name\": \"LastAction\"}, {\"name\": \"LockUser\"},
|
||||
{\"name\": \"Studiensemester\"}, {\"name\": \"SendDate\"}, {\"name\": \"StgAbgeschickt\"}],
|
||||
\"filters\": [{\"name\": \"SendDate\", \"option\": \"\",
|
||||
\"condition\": \"\", \"operation\": \"nset\"}]}', NULL);";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>Filter: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Filter InfoCenterNotSentApplicationAll hinzugefuegt';
|
||||
}
|
||||
}
|
||||
|
||||
if($result = @$db->db_query("SELECT * FROM system.tbl_filters WHERE filter_kurzbz='InfoCenterNotSentApplication14Days' AND app='infocenter'"))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$qry = "INSERT INTO system.tbl_filters(app, dataset_name, filter_kurzbz, person_id, description, sort,
|
||||
default_filter, filter, oe_kurzbz)
|
||||
VALUES ('infocenter', 'PersonActions', 'InfoCenterNotSentApplication14Days', NULL,
|
||||
'{\"14 Tage keine Aktion\"}', 2, false, '{\"name\": \"Nicht abgeschickt - 14 Tage keine Aktion\",
|
||||
\"columns\": [{\"name\": \"Vorname\"}, {\"name\": \"Nachname\"}, {\"name\": \"LastAction\"},
|
||||
{\"name\": \"LockUser\"}, {\"name\": \"Studiensemester\"}, {\"name\": \"SendDate\"},
|
||||
{\"name\": \"StgAbgeschickt\"}], \"filters\": [{\"name\": \"LastAction\", \"option\": \"days\",
|
||||
\"condition\": \"14\", \"operation\": \"gt\"}, {\"name\": \"SendDate\", \"option\": \"\",
|
||||
\"condition\": \"\", \"operation\": \"nset\"}]}', NULL);
|
||||
";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>Filter: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>Filter InfoCenterNotSentApplication14Days hinzugefuegt';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -256,21 +256,21 @@
|
||||
<table:table-cell table:style-name="Tabelle1.A3" office:value-type="string">
|
||||
<text:p text:style-name="P4">
|
||||
<xsl:choose>
|
||||
<xsl:when test="foto_gesperrt!='t' and foto_url != ''">
|
||||
<xsl:when test="foto_gesperrt='f' and foto_url != ''">
|
||||
<draw:frame draw:style-name="fr1" draw:name="Bild" text:anchor-type="as-char" svg:width="2.57cm" svg:height="3.431cm" draw:z-index="0">
|
||||
<draw:image xlink:href="{foto_url}" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad"/>
|
||||
</draw:frame>
|
||||
</xsl:when>
|
||||
<xsl:when test="foto_gesperrt!='f'">
|
||||
<xsl:when test="foto_gesperrt='t'">
|
||||
<draw:frame draw:style-name="fr1" draw:name="Bild2" text:anchor-type="as-char" svg:width="2.57cm" svg:height="3.431cm" draw:z-index="0">
|
||||
<draw:image xlink:href="Pictures/10000000000000F000000140BF2FB93E89B12D34.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad"/>
|
||||
</draw:frame>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:when test="foto_url=''">
|
||||
<draw:frame draw:style-name="fr1" draw:name="dummy" text:anchor-type="as-char" svg:width="2.57cm" svg:height="3.431cm" draw:z-index="0">
|
||||
<draw:image xlink:href="Pictures/dummyfoto_keinBildVorhanden.jpg" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad"/>
|
||||
</draw:frame>
|
||||
</xsl:otherwise>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</text:p>
|
||||
</table:table-cell>
|
||||
|
||||
Reference in New Issue
Block a user