Skip to content
Snippets Groups Projects
Commit c185ff77 authored by Elmar Ludwig's avatar Elmar Ludwig Committed by Jan-Hendrik Willms
Browse files

only process form values when the form has been submitted, re #1765

Merge request studip/studip!1157
parent 39a93615
No related branches found
No related tags found
No related merge requests found
...@@ -60,25 +60,6 @@ class Admin_UserController extends AuthenticatedController ...@@ -60,25 +60,6 @@ class Admin_UserController extends AuthenticatedController
$this->perm = $perm; $this->perm = $perm;
$request = ''; $request = '';
//Daten annehmen
if (Request::submitted('reset')) {
unset($_SESSION['admin']['user']);
} elseif (Request::submitted('search')) {
$request = $_SESSION['admin']['user'] = iterator_to_array(Request::getInstance());
}
//Suchparameter und Ergebnisse vorhanden
if (isset($_SESSION['admin']['user']) && $_SESSION['admin']['user']['results']) {
$request = $_SESSION['admin']['user'];
}
if (!empty($request)) {
// Inaktivität für die suche anpassen
$inaktiv = [$request['inaktiv'], $request['inaktiv_tage']];
if (empty($request['inaktiv_tage']) && $request['inaktiv'] != 'nie') {
$inaktiv = null;
}
}
//Datafields //Datafields
$this->datafields = []; $this->datafields = [];
...@@ -94,17 +75,46 @@ class Admin_UserController extends AuthenticatedController ...@@ -94,17 +75,46 @@ class Admin_UserController extends AuthenticatedController
return !$role->systemtype; return !$role->systemtype;
}); });
//wenn suche durchgeführt //Daten annehmen
if (!empty($request)) { if (Request::submitted('reset')) {
unset($_SESSION['admin']['user']);
} elseif (Request::submitted('search')) {
$request = iterator_to_array(Request::getInstance());
// Inaktivität für die suche anpassen
$inaktiv = [$request['inaktiv'], $request['inaktiv_tage']];
if (empty($request['inaktiv_tage']) && $request['inaktiv'] != 'nie') {
$inaktiv = null;
}
//suche mit datafields //suche mit datafields
$search_datafields = [];
foreach ($this->datafields as $datafield) { foreach ($this->datafields as $datafield) {
if (mb_strlen($request[$datafield->id]) > 0 if (mb_strlen($request[$datafield->id]) > 0
&& !(in_array($datafield->type, words('selectbox radio')) && $request[$datafield->id] === '---ignore---') && !(in_array($datafield->type, words('selectbox radio')) && $request[$datafield->id] === '---ignore---')
) { ) {
$search_datafields[$datafield->id] = $request[$datafield->id]; $search_datafields[$datafield->id] = trim($request[$datafield->id]);
} }
} }
$request['username'] = trim($request['username']);
$request['email'] = trim($request['email']);
$request['vorname'] = trim($request['vorname']);
$request['nachname'] = trim($request['nachname']);
$request['inaktiv'] = $inaktiv;
$request['datafields'] = $search_datafields;
$_SESSION['admin']['user'] = $request;
} elseif (!empty($_SESSION['admin']['user']['results'])) {
//Suchparameter und Ergebnisse vorhanden
$request = $_SESSION['admin']['user'];
}
$this->request = [];
$this->users = [];
//wenn suche durchgeführt
if (!empty($request)) {
//Suchparameter //Suchparameter
$this->sortby = Request::option('sortby', 'username'); $this->sortby = Request::option('sortby', 'username');
$this->order = Request::option('order', 'asc'); $this->order = Request::option('order', 'asc');
...@@ -112,14 +122,6 @@ class Admin_UserController extends AuthenticatedController ...@@ -112,14 +122,6 @@ class Admin_UserController extends AuthenticatedController
$this->order = $this->order == 'desc' ? 'asc' : 'desc'; $this->order = $this->order == 'desc' ? 'asc' : 'desc';
} }
$request['username'] = $this->getStringValueFromRequest($request, 'username');
$request['email'] = $this->getStringValueFromRequest($request, 'email');
$request['vorname'] = $this->getStringValueFromRequest($request, 'vorname');
$request['nachname'] = $this->getStringValueFromRequest($request, 'nachname');
$request['inaktiv'] = $inaktiv;
$request['datafields'] = $search_datafields;
$request['sort'] = $this->sortby;
$request['order'] = $this->order;
$empty_search = $request['perm'] === 'alle'; $empty_search = $request['perm'] === 'alle';
$values = [ $values = [
...@@ -215,15 +217,6 @@ class Admin_UserController extends AuthenticatedController ...@@ -215,15 +217,6 @@ class Admin_UserController extends AuthenticatedController
} }
} }
private function getStringValueFromRequest(array $request, string $key): ?string
{
if (!isset($request[$key])) {
return null;
}
return trim($request[$key]) ?: null;
}
/** /**
* Bulk action (delete users or send message to all) * Bulk action (delete users or send message to all)
*/ */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment