summaryrefslogtreecommitdiff
path: root/includes/pages
diff options
context:
space:
mode:
authorIgor Scheller <igor.scheller@igorshp.de>2017-08-29 16:21:25 +0200
committerIgor Scheller <igor.scheller@igorshp.de>2017-08-29 21:52:07 +0200
commitcc01c906ba63b3797bf2b9ef92a6854fe2ddbefb (patch)
treeea819678100f6a50d67f1f8516e82fdef8a9196b /includes/pages
parent73175e2b64c85c7a8c528c76452cd82ffa99f925 (diff)
#336: Integration of symfony/http-foundation request
Diffstat (limited to 'includes/pages')
-rw-r--r--includes/pages/admin_groups.php5
-rw-r--r--includes/pages/admin_news.php7
-rw-r--r--includes/pages/admin_rooms.php13
-rw-r--r--includes/pages/admin_shifts.php10
-rw-r--r--includes/pages/admin_user.php40
-rw-r--r--includes/pages/guest_login.php8
-rw-r--r--includes/pages/user_atom.php17
-rw-r--r--includes/pages/user_news.php10
-rw-r--r--includes/pages/user_settings.php8
-rw-r--r--includes/pages/user_shifts.php4
10 files changed, 64 insertions, 58 deletions
diff --git a/includes/pages/admin_groups.php b/includes/pages/admin_groups.php
index d64afe76..1de8bfb7 100644
--- a/includes/pages/admin_groups.php
+++ b/includes/pages/admin_groups.php
@@ -81,7 +81,8 @@ function admin_groups()
'privileges[]',
$privilege['desc'] . ' (' . $privilege['name'] . ')',
$privilege['group_id'] != '',
- $privilege['id']
+ $privilege['id'],
+ 'privilege-' . $privilege['name']
);
$privileges_html .= sprintf(
'<tr><td><input type="checkbox" name="privileges[]" value="%s" %s /></td> <td>%s</td> <td>%s</td></tr>',
@@ -112,7 +113,7 @@ function admin_groups()
}
$group = DB::select('SELECT * FROM `Groups` WHERE `UID`=? LIMIT 1', [$group_id]);
- $privileges = $request->get('privileges');
+ $privileges = $request->postData('privileges');
if (!is_array($privileges)) {
$privileges = [];
}
diff --git a/includes/pages/admin_news.php b/includes/pages/admin_news.php
index a5354da7..64a54f4b 100644
--- a/includes/pages/admin_news.php
+++ b/includes/pages/admin_news.php
@@ -62,14 +62,15 @@ function admin_news()
',
[
time(),
- $request->post('eBetreff'),
- $request->post('eText'),
+ $request->postData('eBetreff'),
+ $request->postData('eText'),
$user['UID'],
$request->has('eTreffen') ? 1 : 0,
$news_id
]
);
- engelsystem_log('News updated: ' . $request->post('eBetreff'));
+
+ engelsystem_log('News updated: ' . $request->postData('eBetreff'));
success(_('News entry updated.'));
redirect(page_link_to('news'));
break;
diff --git a/includes/pages/admin_rooms.php b/includes/pages/admin_rooms.php
index 8a7720d8..457114a0 100644
--- a/includes/pages/admin_rooms.php
+++ b/includes/pages/admin_rooms.php
@@ -110,11 +110,14 @@ function admin_rooms()
}
foreach ($angeltypes as $angeltype_id => $angeltype) {
- if (
- $request->has('angeltype_count_' . $angeltype_id)
- && preg_match('/^\d{1,4}$/', $request->input('angeltype_count_' . $angeltype_id))
- ) {
- $angeltypes_count[$angeltype_id] = $request->input('angeltype_count_' . $angeltype_id);
+ $angeltypes_count[$angeltype_id] = 0;
+ $queryKey = 'angeltype_count_' . $angeltype_id;
+ if (!$request->has($queryKey)) {
+ continue;
+ }
+
+ if (preg_match('/^\d{1,4}$/', $request->input($queryKey))) {
+ $angeltypes_count[$angeltype_id] = $request->input($queryKey);
} else {
$valid = false;
$msg .= error(sprintf(_('Please enter needed angels for type %s.'), $angeltype), true);
diff --git a/includes/pages/admin_shifts.php b/includes/pages/admin_shifts.php
index 5b53f9cd..d36635f7 100644
--- a/includes/pages/admin_shifts.php
+++ b/includes/pages/admin_shifts.php
@@ -135,16 +135,14 @@ function admin_shifts()
} elseif ($request->input('angelmode') == 'manually') {
$angelmode = 'manually';
foreach ($types as $type) {
- if (
- $request->has('type_' . $type['id'])
- && preg_match('/^\d+$/', trim($request->input('type_' . $type['id'])))
- ) {
- $needed_angel_types[$type['id']] = trim($request->input('type_' . $type['id']));
+ if (preg_match('/^\d+$/', trim($request->input('type_' . $type['id'], 0)))) {
+ $needed_angel_types[$type['id']] = trim($request->input('type_' . $type['id'], 0));
} else {
$valid = false;
error(sprintf(_('Please check the needed angels for team %s.'), $type['name']));
}
}
+
if (array_sum($needed_angel_types) == 0) {
$valid = false;
error(_('There are 0 angels needed. Please enter the amounts of needed angels.'));
@@ -306,7 +304,7 @@ function admin_shifts()
}
} elseif ($request->has('submit')) {
if (
- !$request->has('admin_shifts_shifts')
+ !isset($_SESSION['admin_shifts_shifts'])
|| !isset($_SESSION['admin_shifts_types'])
|| !is_array($_SESSION['admin_shifts_shifts'])
|| !is_array($_SESSION['admin_shifts_types'])
diff --git a/includes/pages/admin_user.php b/includes/pages/admin_user.php
index 00113507..aea68f52 100644
--- a/includes/pages/admin_user.php
+++ b/includes/pages/admin_user.php
@@ -261,7 +261,7 @@ function admin_user()
`Handy` = ?,
`Alter` =?,
`DECT` = ?,
- ' . ($user_source['email_by_human_allowed'] ? '`email` = ' . DB::getPdo()->quote($request->post('eemail')) . ',' : '') . '
+ ' . ($user_source['email_by_human_allowed'] ? '`email` = ' . DB::getPdo()->quote($request->postData('eemail')) . ',' : '') . '
`jabber` = ?,
`Size` = ?,
`Gekommen`= ?,
@@ -272,34 +272,34 @@ function admin_user()
WHERE `UID` = ?
LIMIT 1';
DB::update($sql, [
- $request->post('eNick'),
- $request->post('eName'),
- $request->post('eVorname'),
- $request->post('eTelefon'),
- $request->post('eHandy'),
- $request->post('eAlter'),
- $request->post('eDECT'),
- $request->post('ejabber'),
- $request->post('eSize'),
- $request->post('eGekommen'),
- $request->post('eAktiv'),
+ $request->postData('eNick'),
+ $request->postData('eName'),
+ $request->postData('eVorname'),
+ $request->postData('eTelefon'),
+ $request->postData('eHandy'),
+ $request->postData('eAlter'),
+ $request->postData('eDECT'),
+ $request->postData('ejabber'),
+ $request->postData('eSize'),
+ $request->postData('eGekommen'),
+ $request->postData('eAktiv'),
$force_active,
- $request->post('eTshirt'),
- $request->post('Hometown'),
+ $request->postData('eTshirt'),
+ $request->postData('Hometown'),
$user_id,
]);
engelsystem_log(
- 'Updated user: ' . $request->post('eNick') . ', ' . $request->post('eSize')
- . ', arrived: ' . $request->post('eVorname')
- . ', active: ' . $request->post('eAktiv')
- . ', tshirt: ' . $request->post('eTshirt')
+ 'Updated user: ' . $request->postData('eNick') . ', ' . $request->postData('eSize')
+ . ', arrived: ' . $request->postData('eVorname')
+ . ', active: ' . $request->postData('eAktiv')
+ . ', tshirt: ' . $request->postData('eTshirt')
);
$html .= success('Ă„nderung wurde gespeichert...' . "\n", true);
break;
case 'change_pw':
- if ($request->post('new_pw') != '' && $request->post('new_pw') == $request->post('new_pw2')) {
- set_password($user_id, $request->post('new_pw'));
+ if ($request->postData('new_pw') != '' && $request->postData('new_pw') == $request->postData('new_pw2')) {
+ set_password($user_id, $request->postData('new_pw'));
$user_source = User($user_id);
engelsystem_log('Set new password for ' . User_Nick_render($user_source));
$html .= success('Passwort neu gesetzt.', true);
diff --git a/includes/pages/guest_login.php b/includes/pages/guest_login.php
index b83b8382..3966b55c 100644
--- a/includes/pages/guest_login.php
+++ b/includes/pages/guest_login.php
@@ -127,8 +127,8 @@ function guest_register()
}
}
- if ($request->has('password') && strlen($request->post('password')) >= $min_password_length) {
- if ($request->post('password') != $request->post('password2')) {
+ if ($request->has('password') && strlen($request->postData('password')) >= $min_password_length) {
+ if ($request->postData('password') != $request->postData('password2')) {
$valid = false;
$msg .= error(_('Your passwords don\'t match.'), true);
}
@@ -234,7 +234,7 @@ function guest_register()
// Assign user-group and set password
$user_id = DB::getPdo()->lastInsertId();
DB::insert('INSERT INTO `UserGroups` (`uid`, `group_id`) VALUES (?, -2)', [$user_id]);
- set_password($user_id, $request->post('password'));
+ set_password($user_id, $request->postData('password'));
// Assign angel-types
$user_angel_types_info = [];
@@ -403,7 +403,7 @@ function guest_login()
if (count($login_user) > 0) {
$login_user = $login_user[0];
if ($request->has('password')) {
- if (!verify_password($request->post('password'), $login_user['Passwort'], $login_user['UID'])) {
+ if (!verify_password($request->postData('password'), $login_user['Passwort'], $login_user['UID'])) {
$valid = false;
error(_('Your password is incorrect. Please try it again.'));
}
diff --git a/includes/pages/user_atom.php b/includes/pages/user_atom.php
index 98ace9cc..2991bdbf 100644
--- a/includes/pages/user_atom.php
+++ b/includes/pages/user_atom.php
@@ -1,6 +1,7 @@
<?php
use Engelsystem\Database\DB;
+use Engelsystem\Http\Request;
/**
* Publically available page to feed the news to feed readers
@@ -44,14 +45,15 @@ function user_atom()
*/
function make_atom_entries_from_news($news_entries)
{
+ $request = Request::getInstance();
$html = '<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>Engelsystem</title>
- <id>' . $_SERVER['HTTP_HOST']
+ <id>' . $request->getHttpHost()
. htmlspecialchars(preg_replace(
'#[&?]key=[a-f\d]{32}#',
'',
- $_SERVER['REQUEST_URI']
+ $request->getRequestUri()
))
. '</id>
<updated>' . date('Y-m-d\TH:i:sP', $news_entries[0]['Datum']) . '</updated>' . "\n";
@@ -64,11 +66,12 @@ function make_atom_entries_from_news($news_entries)
function make_atom_entry_from_news($news_entry)
{
- return ' <entry>
+ return '
+ <entry>
<title>' . htmlspecialchars($news_entry['Betreff']) . '</title>
- <link href="' . page_link_to_absolute('news_comments', ['nid' => $news_entry['ID']]) . '"/>
- <id>' . preg_replace('#^https?://#', '', page_link_to_absolute('news')) . '-' . $news_entry['ID'] . '</id>
- <updated>' . date('Y-m-d\TH:i:sP', $news_entry['Datum']) . '</updated>
+ <link href="' . page_link_to('news_comments', ['nid' => $news_entry['ID']]) . '"/>
+ <id>' . preg_replace('#^https?://#', '', page_link_to('news_comments', ['nid' => $news_entry['ID']])) . '</id>
+ <updated>' . date('Y-m-d\TH:i:sP', $news_entry['Datum']) . '</updated>
<summary>' . htmlspecialchars($news_entry['Text']) . '</summary>
- </entry>' . "\n";
+ </entry>' . "\n";
}
diff --git a/includes/pages/user_news.php b/includes/pages/user_news.php
index 2dd141ec..bdbb0645 100644
--- a/includes/pages/user_news.php
+++ b/includes/pages/user_news.php
@@ -186,9 +186,9 @@ function user_news()
$html = '<div class="col-md-12"><h1>' . news_title() . '</h1>' . msg();
- $isMeeting = $request->post('treffen');
+ $isMeeting = $request->postData('treffen');
if ($request->has('text') && $request->has('betreff') && in_array('admin_news', $privileges)) {
- if (!$request->has('treffen') || !in_array('admin_news', $privileges)) {
+ if (!$request->has('treffen')) {
$isMeeting = 0;
}
DB::insert('
@@ -197,13 +197,13 @@ function user_news()
',
[
time(),
- $request->post('betreff'),
- $request->post('text'),
+ $request->postData('betreff'),
+ $request->postData('text'),
$user['UID'],
$isMeeting,
]
);
- engelsystem_log('Created news: ' . $_POST['betreff'] . ', treffen: ' . $isMeeting);
+ engelsystem_log('Created news: ' . $request->postData('betreff') . ', treffen: ' . $isMeeting);
success(_('Entry saved.'));
redirect(page_link_to('news'));
}
diff --git a/includes/pages/user_settings.php b/includes/pages/user_settings.php
index 667e73d9..9a43f5ce 100644
--- a/includes/pages/user_settings.php
+++ b/includes/pages/user_settings.php
@@ -101,14 +101,14 @@ function user_settings_password($user_source)
$request = request();
if (
!$request->has('password')
- || !verify_password($request->post('password'), $user_source['Passwort'], $user_source['UID'])
+ || !verify_password($request->postData('password'), $user_source['Passwort'], $user_source['UID'])
) {
error(_('-> not OK. Please try again.'));
- } elseif (strlen($request->post('new_password')) < config('min_password_length')) {
+ } elseif (strlen($request->postData('new_password')) < config('min_password_length')) {
error(_('Your password is to short (please use at least 6 characters).'));
- } elseif ($request->post('new_password') != $request->post('new_password2')) {
+ } elseif ($request->postData('new_password') != $request->postData('new_password2')) {
error(_('Your passwords don\'t match.'));
- } elseif (set_password($user_source['UID'], $request->post('new_password'))) {
+ } elseif (set_password($user_source['UID'], $request->postData('new_password'))) {
success(_('Password saved.'));
} else {
error(_('Failed setting password.'));
diff --git a/includes/pages/user_shifts.php b/includes/pages/user_shifts.php
index cd18a037..db0bb193 100644
--- a/includes/pages/user_shifts.php
+++ b/includes/pages/user_shifts.php
@@ -229,8 +229,8 @@ function view_user_shifts()
'shifts_table' => msg() . $shiftCalendarRenderer->render(),
'ical_text' => '<h2>' . _('iCal export') . '</h2><p>' . sprintf(
_('Export of shown shifts. <a href="%s">iCal format</a> or <a href="%s">JSON format</a> available (please keep secret, otherwise <a href="%s">reset the api key</a>).'),
- page_link_to_absolute('ical', ['key' => $user['api_key']]),
- page_link_to_absolute('shifts_json_export', ['key' => $user['api_key']]),
+ page_link_to('ical', ['key' => $user['api_key']]),
+ page_link_to('shifts_json_export', ['key' => $user['api_key']]),
page_link_to('user_myshifts', ['reset' => 1])
) . '</p>',
'filter' => _('Filter')