Compare commits

..

4 Commits

Author SHA1 Message Date
Paolo e9117740d9 Merge branch 'master' into feature-26336/Composer_Twig_Dependency_Security_Issue 2026-07-09 10:47:01 +02:00
Paolo 62a2b64d1f Merge branch 'master' into feature-26336/Composer_Twig_Dependency_Security_Issue 2026-06-10 14:24:24 +02:00
Harald Bamberger c989cfc563 Merge branch 'master' into feature-26336/Composer_Twig_Dependency_Security_Issue 2023-05-15 16:43:04 +02:00
Paolo e3a63eb491 - Dropped the Vorlage editor from Vilesci
- Removed brutusin/json-forms and kingsquare/json-schema-form
- Updated composer.lock
- Removed not anymore used files and widgets
2022-11-30 17:27:28 +01:00
27 changed files with 145 additions and 750 deletions
+9 -28
View File
@@ -45,7 +45,7 @@ $config['person'] = [
'field' => 'kontakt',
'join' => [
'table' => "public.tbl_kontakt",
'on' => "kontakttyp IN ('telefon', 'so.tel', 'mobil', 'firmenhandy') AND tbl_kontakt.person_id = tbl_person.person_id"
'on' => "kontakttyp IN ('telefon', 'so.tel', 'mobil') AND tbl_kontakt.person_id = tbl_person.person_id"
],
"1-n" => true
],
@@ -360,10 +360,6 @@ $config['employee'] = [
'comparison' => 'equals',
'field' => "mitarbeiter_uid"
],
'personalnummer' => [
'comparison' => 'equal-int',
'field' => "personalnummer"
],
'vorname' => [
'alias' => ['firstname'],
'comparison' => 'similar',
@@ -419,27 +415,12 @@ $config['employee'] = [
'tel' => [
'alias' => ['phone', 'telefon'],
'comparison' => 'similar',
'field' => 'kontakt',
'prepare' => "employee_tel (mitarbeiter_uid, kontakt) AS (
SELECT m.mitarbeiter_uid,
TRIM(COALESCE(k.kontakt, '') || ' ' || COALESCE(m.telefonklappe, ''))
FROM public.tbl_mitarbeiter m
LEFT JOIN public.tbl_kontakt k
ON k.standort_id = m.standort_id
AND k.kontakttyp = 'telefon'
UNION
SELECT m.mitarbeiter_uid, k.kontakt
FROM public.tbl_mitarbeiter m
JOIN public.tbl_benutzer b ON b.uid = m.mitarbeiter_uid
JOIN public.tbl_kontakt k
ON k.person_id = b.person_id
AND k.kontakttyp IN ('telefon', 'so.tel', 'mobil', 'firmenhandy')
)",
'field' => "TRIM(COALESCE(kontakt, '') || ' ' || COALESCE(telefonklappe, ''))",
'join' => [
'table' => "employee_tel",
'using' => "mitarbeiter_uid"
'table' => "public.tbl_kontakt",
'on' => "kontakttyp = 'telefon' AND tbl_kontakt.standort_id = tbl_mitarbeiter.standort_id"
],
'1-n' => true
"1-n" => true
],
'pid' => [
'alias' => ['person_id'],
@@ -490,7 +471,6 @@ $config['employee'] = [
],
'resultfields' => [
"b.uid",
"m.personalnummer",
"p.person_id",
"(p.vorname || ' ' || p.nachname) AS name",
"ARRAY(
@@ -532,6 +512,7 @@ $config['employee'] = [
) k ON (k.standort_id = m.standort_id)"
];
// TODO(chris): move to searchpv21.php
$config['unassigned_employee'] = $config['employee'];
$config['unassigned_employee']['alias'] = ['mitarbeiter_ohne_zuordnung'];
$config['unassigned_employee']['prepare'] = "unassigned_employee AS (
@@ -543,7 +524,7 @@ $config['unassigned_employee']['prepare'] = "unassigned_employee AS (
AND (datum_von IS NULL OR datum_von <= NOW())
AND (datum_bis IS NULL OR datum_bis >= NOW())
)
WHERE tbl_benutzerfunktion.uid IS NULL
WHERE tbl_benutzerfunktion.bezeichnung IS NULL
UNION
SELECT tbl_mitarbeiter.*
FROM public.tbl_mitarbeiter
@@ -553,10 +534,10 @@ $config['unassigned_employee']['prepare'] = "unassigned_employee AS (
AND (datum_von IS NULL OR datum_von <= NOW())
AND (datum_bis IS NULL OR datum_bis >= NOW())
)
WHERE tbl_benutzerfunktion.uid IS NULL
WHERE tbl_benutzerfunktion.bezeichnung IS NULL
)";
$config['unassigned_employee']['table'] = "unassigned_employee";
$config['unassigned_employee']['searchfields']['tel'] = "
$config['unassigned_employee']['searchfields']['tel']['join']['on'] = "
kontakttyp = 'telefon'
AND tbl_kontakt.standort_id = unassigned_employee.standort_id
";
-34
View File
@@ -1,34 +0,0 @@
<?php
if (! defined('BASEPATH')) exit('No direct script access allowed');
$CI =& get_instance();
$config['person'] = $CI->config->item('person', 'search');
$config['employee'] = $CI->config->item('employee', 'search');
$config['employee']['resultjoin'] = "
JOIN public.tbl_mitarbeiter m USING (mitarbeiter_uid)
JOIN public.tbl_benutzer b ON (b.uid = m.mitarbeiter_uid AND b.aktiv = true)
JOIN public.tbl_person p USING(person_id)
LEFT JOIN (
SELECT kontakt, standort_id
FROM public.tbl_kontakt
WHERE kontakttyp = 'telefon'
) k ON (k.standort_id = m.standort_id)";
$config['unassigned_employee'] = $CI->config->item('unassigned_employee', 'search');
$config['unassigned_employee']['resultjoin'] = "
JOIN public.tbl_mitarbeiter m USING (mitarbeiter_uid)
JOIN public.tbl_benutzer b ON (b.uid = m.mitarbeiter_uid AND b.aktiv = true)
JOIN public.tbl_person p USING(person_id)
LEFT JOIN (
SELECT kontakt, standort_id
FROM public.tbl_kontakt
WHERE kontakttyp = 'telefon'
) k ON (k.standort_id = m.standort_id)";
$config['room'] = $CI->config->item('room', 'search');
$config['organisationunit'] = $CI->config->item('organisationunit', 'search');
-1
View File
@@ -7,7 +7,6 @@ $CI =& get_instance();
$config['employee'] = $CI->config->item('employee', 'search');
unset($config['employee']['searchfields']['tel']);
$config['employee']['resultjoin'] = "
JOIN public.tbl_mitarbeiter m USING (mitarbeiter_uid)
JOIN public.tbl_benutzer b ON (b.uid = m.mitarbeiter_uid AND b.aktiv = true)
@@ -37,8 +37,7 @@ class Searchbar extends FHCAPI_Controller
parent::__construct([
'search' => self::PERM_LOGGED,
'searchCis' => self::PERM_LOGGED,
'searchStv' => self::PERM_LOGGED,
'searchPV' => self::PERM_LOGGED
'searchStv' => self::PERM_LOGGED
]);
$this->load->model('system/Webservicelog_model', 'WebservicelogModel');
@@ -88,15 +87,6 @@ class Searchbar extends FHCAPI_Controller
return $this->searchAdvanced([ 'config' => 'searchstv' ]);
}
/**
* Gets a JSON body via HTTP POST and provides the parameters
*/
public function searchPV()
{
return $this->searchAdvanced([ 'config' => 'searchPV' ]);
}
/**
* Gets a JSON body via HTTP POST and provides the parameters
*/
@@ -122,47 +122,6 @@ class Studiensemester_model extends DB_Model
return $this->execQuery($query, array($studiensemester_kurzbz, $limit));
}
/**
* Returns the current study semester and the previous semesters of the same type (SS/WS).
*
* Example:
* - SS2026, limit 3: SS2026, SS2025, SS2024
* - WS2025, limit 2: WS2025, WS2024
*
* @param $studiensemester_kurzbz
* @param $limit
*/
public function getPreviousSameSemesterFrom($studiensemester_kurzbz, $limit = 1)
{
$qry = '
SELECT
studiensemester_kurzbz,
start,
ende
FROM
public.tbl_studiensemester
WHERE
SUBSTRING(studiensemester_kurzbz FROM 1 FOR 2) = SUBSTRING(? FROM 1 FOR 2)
AND start <= (
SELECT start
FROM public.tbl_studiensemester
WHERE studiensemester_kurzbz = ?
)
ORDER BY
start DESC
LIMIT ?
';
return $this->execQuery($qry,
[
$studiensemester_kurzbz,
$studiensemester_kurzbz,
$limit
]
);
}
/**
* getNearest
*/
@@ -260,6 +260,7 @@ class Benutzerfunktion_model extends DB_Model
return $this->execQuery($query, $parameters_array);
}
/**
* Get active Kompetenzfeldleitung bei UID.
*
@@ -295,6 +296,7 @@ class Benutzerfunktion_model extends DB_Model
return $this->execQuery($query, $parameters_array);
}
public function insertBenutzerfunktion($Json)
{
unset($Json['benutzerfunktion_id']);
@@ -1,67 +0,0 @@
<?php
$this->load->view('templates/header', array('title' => 'TemplateLinkDocuments', 'tablesort' => true, 'tableid' => 't1', 'sortList' => '2,1', 'headers' => '3:{sorter:false},4:{sorter:false}'));
?>
<script>
function addDocument(dokument_kurzbz)
{
var addDocumentDefault = document.getElementById("addDocumentDefault");
addDocumentDefault.selected = true;
$.post("../saveDocuments/"+<?=$vorlagestudiengang_id?>+"/"+dokument_kurzbz+"/0", function(answer)
{
window.location.href=window.location.href;
});
}
function delDocument(vorlagedokument_id)
{
$.post("../deleteDocumentLink/"+vorlagedokument_id, function(answer)
{
window.location.href=window.location.href;
});
}
function changeSort(vorlagedokument_id, sortnum)
{
$.post("../changeSort/"+vorlagedokument_id+"/"+sortnum, function(answer)
{
window.location.href=window.location.href;
});
}
</script>
<h2><?=$vorlagestudiengang_id?></h2>
<table id="t1" class="tablesorter">
<thead>
<tr>
<th>ID</th>
<th>Bezeichnung</th>
<th>Sortierung</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<?php foreach ($documents as $d): ?>
<tr>
<td><?=$d->vorlagedokument_id?></td>
<td><?=$d->bezeichnung?></td>
<td> <?=$d->sort?></td>
<td><a onclick="changeSort('<?=$d->vorlagedokument_id?>', <?=$d->sort?>+1)"><img src="<?php echo APP_ROOT?>/skin/images/up.png"/></a> <a onclick="changeSort('<?=$d->vorlagedokument_id?>', <?=$d->sort?>-1)"><img src="<?php echo APP_ROOT?>/skin/images/down.png"/></a></td>
<td><a onclick="delDocument('<?=$d->vorlagedokument_id?>')">löschen</a></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<select>
<option selected="true" id="addDocumentDefault" disabled>Dokument hinzufuegen</option>
<?php foreach($allDocuments as $d): ?>
<option onclick="addDocument('<?=$d->dokument_kurzbz?>');"><?=$d->bezeichnung?></option>
<?php endforeach ;?>
</select>
</body>
</html>
@@ -1,20 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">
<html lang="de_AT">
<head>
<title>VileSci - Vorlage</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<frameset rows="30%,*">
<frame src="Vorlage/table" id="VorlageTop" name="VorlageTop" frameborder="0" />
<frame src="Vorlage/edit" id="VorlageBottom" name="VorlageBottom" frameborder="0" />
<noframes>
<body bgcolor="#FFFFFF">
This application works only with a frames-enabled browser.<br />
<a href="VorlageList">Use without frames</a>
</body>
</noframes>
</frameset>
</html>
@@ -1,32 +0,0 @@
<?php
$this->load->view('templates/header', array('title' => 'VorlageEdit', 'jsoneditor' => true));
?>
<div class="row">
<div class="span4">
<h2>Vorlage: <?php echo $vorlage->vorlage_kurzbz; ?></h2>
<form method="post" action="../save">
Bezeichnung: <input type="text" name="bezeichnung" value="<?php echo $vorlage->bezeichnung; ?>" />
Anmerkung: <input type="text" name="anmerkung" value="<?php echo $vorlage->anmerkung; ?>" /><br/>
MimeType:<?php echo $this->widgetlib->widget("mimetype_widget", array('mimetype' => $vorlage->mimetype)); ?>
Attribute: <?php echo $this->widgetlib->widget("jsoneditor_widget", array('json' => $vorlage->attribute)); ?>
<input type="hidden" name="attribute" id="attribute" value="<?=$vorlage->attribute?>" />
<input type="hidden" name="vorlage_kurzbz" value="<?php echo $vorlage->vorlage_kurzbz; ?>" />
<button type="submit" onclick="getJSON(this.form);">Save</button>
</form>
</div>
</div>
<script type="text/javascript" >
// get json
function getJSON(form)
{
form.elements["attribute"].value = JSON.stringify(jsoneditor.get(), null, 2);
//alert(form.elements["attribute"].value);
}
</script>
</body>
</html>
@@ -1,38 +0,0 @@
<?php
$this->load->view('templates/header', array('title' => 'VorlageList', 'tablesort' => true, 'tableid' => 't1', 'headers' => '4:{sorter:false}'));
?>
<div class="row">
<div class="span4">
<h2>Vorlagen</h2>
<form method="post" action="">
MimeType
<?php
// This is an example to show that you can load stuff from inside the template file
echo $this->widgetlib->widget("mimetype_widget", array('mimetype' => $mimetype));
?>
<button type="submit">Filter</button>
</form>
<table id="t1" class="tablesorter">
<thead>
<tr><th class='table-sortable:default'>Vorlage</th>
<th class='table-sortable:default'>Bezeichnung</th>
<th>Anmerkung</th><th>MimeType</th>
<th></th>
</tr>
</thead>
<tbody>
<?php foreach ($vorlage as $v): ?>
<tr><td><a href="edit/<?php echo $v->vorlage_kurzbz; ?>" target="VorlageBottom"><?php echo $v->vorlage_kurzbz; ?></a></td>
<td><?php echo $v->bezeichnung; ?></td>
<td><?php echo $v->anmerkung; ?></td>
<td><?php echo $v->mimetype; ?></td>
<td><a href="view/<?php echo $v->vorlage_kurzbz; ?>">Vorlagenexte bearbeiten</a></td>
</tr>
<?php endforeach ?>
</tbody>
</table>
</div>
</div>
</body>
</html>
@@ -1,50 +0,0 @@
<?php
$this->load->view('templates/header', array('title' => 'VorlagetextList', 'tablesort' => true, 'tableid' => 't1', 'headers' => '7:{sorter:false},8:{sorter:false},9:{sorter:false}'));
?>
<div class="row">
<div class="span4">
<h2>Vorlagentext - <?php echo $vorlage_kurzbz; ?></h2>
<form method="post" action="../newText" target="VorlageBottom">
<input type="hidden" name="vorlage_kurzbz" value="<?php echo $vorlage_kurzbz; ?>"/>
<button type="submit">Neu</button>
</form>
<table id="t1" class="tablesorter">
<thead>
<tr>
<th>ID</th>
<th>Vorlage</th>
<th>Version</th>
<th>OrgEinheit</th>
<th>OrgForm</th>
<th>Berechtigung</th>
<th>Anmerkung</th>
<th>Aktiv</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<?php foreach ($vorlagentext as $v): ?>
<tr>
<td><a href="../editText/<?php echo $v->vorlagestudiengang_id; ?>" target="VorlageBottom"><?php echo $v->vorlagestudiengang_id; ?></a></td>
<td><a href="../editText/<?php echo $v->vorlagestudiengang_id; ?>" target="VorlageBottom"><?php echo $v->vorlage_kurzbz; ?></a></td>
<td><?php echo $v->version; ?></td>
<td><?php echo $v->oe_kurzbz; ?></td>
<td></td>
<td><?php echo implode(',', $v->berechtigung); ?></td>
<td><?php echo $v->anmerkung_vorlagestudiengang; ?></td>
<td><?php echo $v->aktiv; ?></td>
<td><a href="../editText/<?php echo $v->vorlagestudiengang_id; ?>" target="VorlageBottom">Edit Text</a></td>
<td><a href="../linkDocuments/<?php echo $v->vorlagestudiengang_id; ?>" target="VorlageBottom">Edit Documents</a></td>
</tr>
<?php endforeach ?>
</tbody>
</table>
</div>
</div>
<?php
$this->load->view('templates/footer');
?>
@@ -1,3 +0,0 @@
<?php
echo $text;
?>
-6
View File
@@ -13,7 +13,6 @@ isset($title) ? $title = 'VileSci - '.$title : $title = 'VileSci';
!isset($headers) ? $headers = '' : $headers = $headers;
!isset($tinymce) ? $tinymce = false : $tinymce = $tinymce;
!isset($jsoneditor) ? $jsoneditor = false : $jsoneditor = $jsoneditor;
!isset($jsonforms) ? $jsonforms = false : $jsonforms = $jsonforms;
!isset($textile) ? $textile = false : $textile = $textile;
!isset($widgetsCSS) ? $widgetsCSS = false : $widgetsCSS = $widgetsCSS;
!isset($datepicker) ? $datepicker = false : $datepicker = $datepicker;
@@ -107,11 +106,6 @@ if($jqueryV1 && $jqueryV2) show_error("Two JQuery versions used: composer and in
<script type="text/javascript" src="<?php echo base_url('vendor/josdejong/jsoneditor/dist/jsoneditor.js');?>"></script>
<?php endif ?>
<?php if($jsonforms) : ?>
<link rel="stylesheet" type="text/css" href="<?php echo base_url('vendor/brutusin/json-forms/dist/css/brutusin-json-forms.min.css'); ?>" />
<script type="text/javascript" src="<?php echo base_url('vendor/brutusin/json-forms/dist/js/brutusin-json-forms.min.js'); ?>"></script>
<?php endif ?>
<?php if($widgetsCSS) : ?>
<link rel="stylesheet" type="text/css" href="<?php echo base_url('skin/widgets.css'); ?>" />
<?php endif ?>
-10
View File
@@ -1,10 +0,0 @@
<div id="<?=$id?>" style="<?=$style?>"></div>
<script language="Javascript" type="text/javascript">
var container = document.getElementById('<?=$id?>');
var schema = <?=$schema?>;
var BrutusinForms = brutusin["json-forms"];
var <?=$objectname?> = BrutusinForms.create(schema);
<?=$objectname?>.render(container);
</script>
-47
View File
@@ -1,47 +0,0 @@
<?php
/*
* JSON-Forms widget
*/
class jsonforms_widget extends Widget
{
public function display($data)
{
// set default values if needed
if (! isset($data['objectname']))
$data['objectname'] = 'bf';
if (! isset($data['id']))
$data['id'] = 'jsonforms';
if (! isset($data['style']))
$data['style'] = 'width: 50%; ';
if (! isset($data['schema']))
$data['schema'] = '{
"$schema": "http://json-schema.org/draft-03/schema#",
"title": "Person",
"type": "object",
"properties": {
"anrede": {
"type": "string",
"enum": [
"Herr",
"Frau"
],
"default": "Herr"
},
"vorname": {
"type": "string",
"description": "Firstname",
"minLength": 2,
"default": "Vorname"
},
"nachname": {
"type": "string",
"description": "Surename",
"minLength": 2,
"default": "Nachname"
}
}
}';
$this->view('widgets/jsonforms', $data);
}
}
-14
View File
@@ -172,17 +172,6 @@
}
}
},
{
"type": "package",
"package": {
"name": "brutusin/json-forms",
"version": "1.4.0",
"dist": {
"url": "https://github.com/brutusin/json-forms/archive/v1.4.0.zip",
"type": "zip"
}
}
},
{
"type": "package",
"package": {
@@ -479,11 +468,8 @@
"jquery/jquery2": "2.*",
"jquery/sizzle": "1.0.*",
"jquery-archive/jquery-metadata": "1.0.*",
"brutusin/json-forms": "1.4.0",
"josdejong/jsoneditor": "5.5.6",
"kingsquare/json-schema-form": "*",
"ludo/jquery-treetable": "3.2.0",
"michelf/php-markdown": "1.5.0",
Generated
+123 -296
View File
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "869cbc35bd1ba90ab90934fcb41b0f51",
"content-hash": "146d2d3708e44cf5966be727e54c0a48",
"packages": [
{
"name": "afarkas/html5shiv",
@@ -77,15 +77,6 @@
},
"type": "library"
},
{
"name": "brutusin/json-forms",
"version": "1.4.0",
"dist": {
"type": "zip",
"url": "https://github.com/brutusin/json-forms/archive/v1.4.0.zip"
},
"type": "library"
},
{
"name": "chillerlan/php-qrcode",
"version": "2.0.8",
@@ -897,12 +888,12 @@
"version": "v6.0.0",
"source": {
"type": "git",
"url": "https://github.com/firebase/php-jwt.git",
"url": "https://github.com/googleapis/php-jwt.git",
"reference": "0541cba75ab108ef901985e68055a92646c73534"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/firebase/php-jwt/zipball/0541cba75ab108ef901985e68055a92646c73534",
"url": "https://api.github.com/repos/googleapis/php-jwt/zipball/0541cba75ab108ef901985e68055a92646c73534",
"reference": "0541cba75ab108ef901985e68055a92646c73534",
"shasum": ""
},
@@ -944,8 +935,8 @@
"php"
],
"support": {
"issues": "https://github.com/firebase/php-jwt/issues",
"source": "https://github.com/firebase/php-jwt/tree/v6.0.0"
"issues": "https://github.com/googleapis/php-jwt/issues",
"source": "https://github.com/googleapis/php-jwt/tree/v6.0.0"
},
"time": "2022-01-24T15:18:34+00:00"
},
@@ -1086,115 +1077,6 @@
},
"type": "library"
},
{
"name": "justinrainbow/json-schema",
"version": "1.3.7",
"source": {
"type": "git",
"url": "https://github.com/jsonrainbow/json-schema.git",
"reference": "87b54b460febed69726c781ab67462084e97a105"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/87b54b460febed69726c781ab67462084e97a105",
"reference": "87b54b460febed69726c781ab67462084e97a105",
"shasum": ""
},
"require": {
"php": ">=5.3.0"
},
"require-dev": {
"json-schema/json-schema-test-suite": "1.1.0",
"phpdocumentor/phpdocumentor": "~2",
"phpunit/phpunit": "~3.7"
},
"bin": [
"bin/validate-json"
],
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.4.x-dev"
}
},
"autoload": {
"psr-0": {
"JsonSchema": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-3-Clause"
],
"authors": [
{
"name": "Bruno Prieto Reis",
"email": "bruno.p.reis@gmail.com"
},
{
"name": "Justin Rainbow",
"email": "justin.rainbow@gmail.com"
},
{
"name": "Igor Wiedler",
"email": "igor@wiedler.ch"
},
{
"name": "Robert Schönthal",
"email": "seroscho@googlemail.com"
}
],
"description": "A library to validate a json schema.",
"homepage": "https://github.com/justinrainbow/json-schema",
"keywords": [
"json",
"schema"
],
"support": {
"issues": "https://github.com/jsonrainbow/json-schema/issues",
"source": "https://github.com/jsonrainbow/json-schema/tree/1.3.7"
},
"time": "2014-08-25T02:48:14+00:00"
},
{
"name": "kingsquare/json-schema-form",
"version": "0.6",
"source": {
"type": "git",
"url": "https://github.com/kingsquare/json-schema-form.git",
"reference": "609049fab463e0b7d6d2a2b315e0f58172333b89"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/kingsquare/json-schema-form/zipball/609049fab463e0b7d6d2a2b315e0f58172333b89",
"reference": "609049fab463e0b7d6d2a2b315e0f58172333b89",
"shasum": ""
},
"require": {
"justinrainbow/json-schema": "1.3.*",
"twig/twig": "1.*"
},
"type": "library",
"autoload": {
"psr-0": {
"JsonSchemaForm": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"authors": [
{
"name": "Kingsquare",
"email": "json-schema-form@kingsquare.nl"
}
],
"description": "A framework-agnostic PHP Implementation for generating simple forms based on json-schema",
"support": {
"issues": "https://github.com/kingsquare/json-schema-form/issues",
"source": "https://github.com/kingsquare/json-schema-form/tree/master"
},
"abandoned": true,
"time": "2014-07-10T12:27:19+00:00"
},
{
"name": "ludo/jquery-treetable",
"version": "3.2.0",
@@ -1616,16 +1498,16 @@
},
{
"name": "phpseclib/phpseclib",
"version": "2.0.48",
"version": "2.0.55",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
"reference": "eaa7be704b8b93a6913b69eb7f645a59d7731b61"
"reference": "d73c9e019a895be83b18a2ccccfa7e2b0a648743"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/eaa7be704b8b93a6913b69eb7f645a59d7731b61",
"reference": "eaa7be704b8b93a6913b69eb7f645a59d7731b61",
"url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/d73c9e019a895be83b18a2ccccfa7e2b0a648743",
"reference": "d73c9e019a895be83b18a2ccccfa7e2b0a648743",
"shasum": ""
},
"require": {
@@ -1633,7 +1515,7 @@
},
"require-dev": {
"phing/phing": "~2.7",
"phpunit/phpunit": "^4.8.35|^5.7|^6.0|^9.4",
"phpunit/phpunit": "^4.8.35|^5.7|^6.0|^8.5|^9.4",
"squizlabs/php_codesniffer": "~2.0"
},
"suggest": {
@@ -1706,7 +1588,7 @@
],
"support": {
"issues": "https://github.com/phpseclib/phpseclib/issues",
"source": "https://github.com/phpseclib/phpseclib/tree/2.0.48"
"source": "https://github.com/phpseclib/phpseclib/tree/2.0.55"
},
"funding": [
{
@@ -1722,7 +1604,7 @@
"type": "tidelift"
}
],
"time": "2024-12-14T21:03:54+00:00"
"time": "2026-06-14T19:53:12+00:00"
},
{
"name": "rmariuzzo/jquery-checkboxes",
@@ -1742,85 +1624,6 @@
},
"type": "library"
},
{
"name": "symfony/polyfill-ctype",
"version": "v1.19.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
"reference": "aed596913b70fae57be53d86faa2e9ef85a2297b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/aed596913b70fae57be53d86faa2e9ef85a2297b",
"reference": "aed596913b70fae57be53d86faa2e9ef85a2297b",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
},
"suggest": {
"ext-ctype": "For best performance"
},
"type": "library",
"extra": {
"thanks": {
"url": "https://github.com/symfony/polyfill",
"name": "symfony/polyfill"
},
"branch-alias": {
"dev-main": "1.19-dev"
}
},
"autoload": {
"files": [
"bootstrap.php"
],
"psr-4": {
"Symfony\\Polyfill\\Ctype\\": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Gert de Pagter",
"email": "BackEndTea@gmail.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony polyfill for ctype functions",
"homepage": "https://symfony.com",
"keywords": [
"compatibility",
"ctype",
"polyfill",
"portable"
],
"support": {
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.19.0"
},
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2020-10-23T09:01:57+00:00"
},
{
"name": "tapmodo/jcrop",
"version": "2.0.4",
@@ -1867,74 +1670,6 @@
},
"type": "library"
},
{
"name": "twig/twig",
"version": "v1.42.5",
"source": {
"type": "git",
"url": "https://github.com/twigphp/Twig.git",
"reference": "87b2ea9d8f6fd014d0621ca089bb1b3769ea3f8e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/87b2ea9d8f6fd014d0621ca089bb1b3769ea3f8e",
"reference": "87b2ea9d8f6fd014d0621ca089bb1b3769ea3f8e",
"shasum": ""
},
"require": {
"php": ">=5.5.0",
"symfony/polyfill-ctype": "^1.8"
},
"require-dev": {
"psr/container": "^1.0",
"symfony/phpunit-bridge": "^4.4|^5.0"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.42-dev"
}
},
"autoload": {
"psr-0": {
"Twig_": "lib/"
},
"psr-4": {
"Twig\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-3-Clause"
],
"authors": [
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com",
"homepage": "http://fabien.potencier.org",
"role": "Lead Developer"
},
{
"name": "Twig Team",
"role": "Contributors"
},
{
"name": "Armin Ronacher",
"email": "armin.ronacher@active-4.com",
"role": "Project Founder"
}
],
"description": "Twig, the flexible, fast, and secure template language for PHP",
"homepage": "https://twig.symfony.com",
"keywords": [
"templating"
],
"support": {
"issues": "https://github.com/twigphp/Twig/issues",
"source": "https://github.com/twigphp/Twig/tree/1.x"
},
"time": "2020-02-11T05:59:23+00:00"
},
{
"name": "vuejs/vuedatepicker_css",
"version": "7.2.0",
@@ -2726,33 +2461,29 @@
},
{
"name": "phpmetrics/phpmetrics",
"version": "v2.8.2",
"version": "v2.9.1",
"source": {
"type": "git",
"url": "https://github.com/phpmetrics/PhpMetrics.git",
"reference": "4b77140a11452e63c7a9b98e0648320bf6710090"
"reference": "e2e68ddd1543bc3f44402c383f7bccb62de1ece3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpmetrics/PhpMetrics/zipball/4b77140a11452e63c7a9b98e0648320bf6710090",
"reference": "4b77140a11452e63c7a9b98e0648320bf6710090",
"url": "https://api.github.com/repos/phpmetrics/PhpMetrics/zipball/e2e68ddd1543bc3f44402c383f7bccb62de1ece3",
"reference": "e2e68ddd1543bc3f44402c383f7bccb62de1ece3",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-tokenizer": "*",
"nikic/php-parser": "^3|^4",
"php": ">=5.5"
"nikic/php-parser": "^3|^4|^5"
},
"replace": {
"halleck45/php-metrics": "*",
"halleck45/phpmetrics": "*"
},
"require-dev": {
"phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14",
"sebastian/comparator": ">=1.2.3",
"squizlabs/php_codesniffer": "^3.5",
"symfony/dom-crawler": "^3.0 || ^4.0 || ^5.0"
"phpunit/phpunit": "*"
},
"bin": [
"bin/phpmetrics"
@@ -2788,9 +2519,15 @@
],
"support": {
"issues": "https://github.com/PhpMetrics/PhpMetrics/issues",
"source": "https://github.com/phpmetrics/PhpMetrics/tree/v2.8.2"
"source": "https://github.com/phpmetrics/PhpMetrics/tree/v2.9.1"
},
"time": "2023-03-08T15:03:36+00:00"
"funding": [
{
"url": "https://github.com/Halleck45",
"type": "github"
}
],
"time": "2025-09-25T05:21:02+00:00"
},
{
"name": "phpspec/prophecy",
@@ -3127,7 +2864,6 @@
"issues": "https://github.com/sebastianbergmann/php-token-stream/issues",
"source": "https://github.com/sebastianbergmann/php-token-stream/tree/master"
},
"abandoned": true,
"time": "2017-11-27T05:48:46+00:00"
},
{
@@ -3963,16 +3699,16 @@
},
{
"name": "sebastian/recursion-context",
"version": "3.0.2",
"version": "3.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
"reference": "9bfd3c6f1f08c026f542032dfb42813544f7d64c"
"reference": "8fe7e75986a9d24b4cceae847314035df7703a5a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/9bfd3c6f1f08c026f542032dfb42813544f7d64c",
"reference": "9bfd3c6f1f08c026f542032dfb42813544f7d64c",
"url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/8fe7e75986a9d24b4cceae847314035df7703a5a",
"reference": "8fe7e75986a9d24b4cceae847314035df7703a5a",
"shasum": ""
},
"require": {
@@ -4014,15 +3750,27 @@
"homepage": "http://www.github.com/sebastianbergmann/recursion-context",
"support": {
"issues": "https://github.com/sebastianbergmann/recursion-context/issues",
"source": "https://github.com/sebastianbergmann/recursion-context/tree/3.0.2"
"source": "https://github.com/sebastianbergmann/recursion-context/tree/3.0.3"
},
"funding": [
{
"url": "https://github.com/sebastianbergmann",
"type": "github"
},
{
"url": "https://liberapay.com/sebastianbergmann",
"type": "liberapay"
},
{
"url": "https://thanks.dev/u/gh/sebastianbergmann",
"type": "thanks_dev"
},
{
"url": "https://tidelift.com/funding/github/packagist/sebastian/recursion-context",
"type": "tidelift"
}
],
"time": "2024-03-01T14:07:30+00:00"
"time": "2025-08-10T05:25:53+00:00"
},
{
"name": "sebastian/resource-operations",
@@ -4622,6 +4370,85 @@
],
"time": "2020-11-16T17:02:08+00:00"
},
{
"name": "symfony/polyfill-ctype",
"version": "v1.19.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
"reference": "aed596913b70fae57be53d86faa2e9ef85a2297b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/aed596913b70fae57be53d86faa2e9ef85a2297b",
"reference": "aed596913b70fae57be53d86faa2e9ef85a2297b",
"shasum": ""
},
"require": {
"php": ">=5.3.3"
},
"suggest": {
"ext-ctype": "For best performance"
},
"type": "library",
"extra": {
"thanks": {
"url": "https://github.com/symfony/polyfill",
"name": "symfony/polyfill"
},
"branch-alias": {
"dev-main": "1.19-dev"
}
},
"autoload": {
"files": [
"bootstrap.php"
],
"psr-4": {
"Symfony\\Polyfill\\Ctype\\": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Gert de Pagter",
"email": "BackEndTea@gmail.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony polyfill for ctype functions",
"homepage": "https://symfony.com",
"keywords": [
"compatibility",
"ctype",
"polyfill",
"portable"
],
"support": {
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.19.0"
},
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2020-10-23T09:01:57+00:00"
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.19.0",
-1
View File
@@ -225,7 +225,6 @@ $menu=array
'name'=>'Admin', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('basis/cronjob'), 'image'=>'vilesci_admin.png',
'link'=>'left.php?categorie=Admin', 'target'=>'nav',
'Cronjobs'=>array('name'=>'Cronjobs', 'link'=>'stammdaten/cronjobverwaltung.php', 'target'=>'main','permissions'=>array('basis/cronjob')),
'Vorlagen'=>array('name'=>'Vorlagen', 'link'=>'../index.ci.php/system/Vorlage', 'target'=>'main','permissions'=>array('basis/cronjob')),
'Phrasen'=>array('name'=>'Phrasen', 'link'=>'../index.ci.php/system/Phrases', 'target'=>'main','permissions'=>array('basis/cronjob'))
)
);
-7
View File
@@ -36,12 +36,5 @@ export default {
url: '/api/frontend/v1/searchbar/searchStv',
params
};
},
searchPV(params) {
return {
method: 'post',
url: '/api/frontend/v1/searchbar/searchPV',
params
};
}
};
@@ -27,7 +27,7 @@ export default {
return {
filter: false,
studiengang_kz: false,
counterdate: luxon.DateTime.now().setZone(FHC_JS_DATA_STORAGE_OBJECT.timezone).toISODate()
counterdate: new Date()
};
},
computed: {
@@ -259,7 +259,6 @@ export default {
<form-input
type="DatePicker"
v-model="counterdate"
model-type="yyyy-MM-dd"
input-group
:enable-time-picker="false"
text-input
@@ -79,7 +79,6 @@ export default {
<form-input
type="DatePicker"
v-model="data.buchungsdatum"
model-type="yyyy-MM-dd"
name="buchungsdatum"
:label="$p.t('konto/buchungsdatum')"
:enable-time-picker="false"
@@ -88,7 +88,7 @@ export default {
this.data = {
buchungstyp_kurzbz: '',
betrag: '-0.00',
buchungsdatum: luxon.DateTime.now().setZone(FHC_JS_DATA_STORAGE_OBJECT.timezone).toISODate(),
buchungsdatum: new Date(),
buchungstext: '',
mahnspanne: 30,
studiensemester_kurzbz: this.currentSemester,
@@ -154,7 +154,6 @@ export default {
<form-input
type="DatePicker"
v-model="data.buchungsdatum"
model-type="yyyy-MM-dd"
name="buchungsdatum"
:label="$p.t('konto/buchungsdatum')"
:enable-time-picker="false"
@@ -325,7 +325,6 @@ export default {
:label="$p.t('infocenter', 'zgvDatum')"
type="DatePicker"
v-model="data.zgvdatum"
model-type="yyyy-MM-dd"
name="zgvdatum"
no-today
auto-apply
@@ -390,7 +389,6 @@ export default {
:label="$p.t('lehre', 'zgvMasterDatum')"
type="DatePicker"
v-model="data.zgvmadatum"
model-type="yyyy-MM-dd"
name="zgvmadatum"
no-today
auto-apply
@@ -456,7 +454,6 @@ export default {
:label="$p.t('lehre', 'zgvDoktorDatum')"
type="DatePicker"
v-model="data.zgvdoktordatum"
model-type="yyyy-MM-dd"
name="zgvdoktordatum"
no-today
auto-apply
+8 -16
View File
@@ -218,23 +218,15 @@ export const CoreFilterCmpt = {
},
columnsForFilter() {
if (!this.filteredColumns || !this.datasetMetadata) return [];
const localizedColumnTitles = this.tabulator.getLang().columns;
const isTabulatorLocalized = !!this.$props.tabulatorOptions.locale;
let filterTitles;
if (isTabulatorLocalized) {
const localizedColumnTitles = this.tabulator.getLang().columns;
filterTitles = this.filteredColumns.reduce((a, c) => {
a[c.field] = localizedColumnTitles[c.field];
return a;
}, {});
} else {
filterTitles = this.filteredColumns.reduce((a, c) => {
a[c.field] = c.title;
return a;
}, {});
}
const filterTitles = this.filteredColumns.reduce((a, c) => {
a[c.field] =
isTabulatorLocalized && localizedColumnTitles[c.field]
? localizedColumnTitles[c.field]
: c.title;
return a;
}, {});
return this.datasetMetadata.map((el) => ({
...el,
...{ title: filterTitles[el.name] },
Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

-20
View File
@@ -55257,26 +55257,6 @@ and represent the current state of research on the topic. The prescribed citatio
)
)
),
array(
'app' => 'core',
'category' => 'search',
'phrase' => 'type_unassigned_employee',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Mitarbeiter ohne Zuordnung',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'unassigned employee',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'search',