Skip to content

Commit b83450d

Browse files
committed
Fix redirections
1 parent d2c0108 commit b83450d

29 files changed

+126
-106
lines changed

featherbb/Controller/Admin/Categories.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,13 @@ public function add($req, $res, $args)
2929

3030
$cat_name = Utils::trim(Input::post('cat_name'));
3131
if ($cat_name == '') {
32-
Router::redirect(Router::pathFor('adminCategories'), __('Must enter name message'));
32+
return Router::redirect(Router::pathFor('adminCategories'), __('Must enter name message'));
3333
}
3434

3535
if ($this->model->add_category($cat_name)) {
36-
Router::redirect(Router::pathFor('adminCategories'), __('Category added redirect'));
36+
return Router::redirect(Router::pathFor('adminCategories'), __('Category added redirect'));
3737
} else { //TODO, add error message
38-
Router::redirect(Router::pathFor('adminCategories'), __('Category added redirect'));
38+
return Router::redirect(Router::pathFor('adminCategories'), __('Category added redirect'));
3939
}
4040
}
4141

@@ -52,15 +52,15 @@ public function edit($req, $res, $args)
5252
'name' => Utils::escape($properties['name']),
5353
'order' => (int) $properties['order'], );
5454
if ($category['name'] == '') {
55-
Router::redirect(Router::pathFor('adminCategories'), __('Must enter name message'));
55+
return Router::redirect(Router::pathFor('adminCategories'), __('Must enter name message'));
5656
}
5757
$this->model->update_category($category);
5858
}
5959

6060
// Regenerate the quick jump cache
6161
Container::get('cache')->store('quickjump', Cache::get_quickjump());
6262

63-
Router::redirect(Router::pathFor('adminCategories'), __('Categories updated redirect'));
63+
return Router::redirect(Router::pathFor('adminCategories'), __('Categories updated redirect'));
6464

6565
}
6666

@@ -75,13 +75,13 @@ public function delete($req, $res, $args)
7575
}
7676

7777
if (intval(Input::post('disclaimer')) != 1) {
78-
Router::redirect(Router::pathFor('adminCategories'), __('Delete category not validated'));
78+
return Router::redirect(Router::pathFor('adminCategories'), __('Delete category not validated'));
7979
}
8080

8181
if ($this->model->delete_category($cat_to_delete)) {
82-
Router::redirect(Router::pathFor('adminCategories'), __('Category deleted redirect'));
82+
return Router::redirect(Router::pathFor('adminCategories'), __('Category deleted redirect'));
8383
} else {
84-
Router::redirect(Router::pathFor('adminCategories'), __('Unable to delete category'));
84+
return Router::redirect(Router::pathFor('adminCategories'), __('Unable to delete category'));
8585
}
8686
}
8787

featherbb/Controller/Admin/Forums.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,16 +29,16 @@ public function add()
2929
$cat_id = (int) Input::post('cat');
3030

3131
if ($cat_id < 1) {
32-
Router::redirect(Router::pathFor('adminForums'), __('Must be valid category'));
32+
return Router::redirect(Router::pathFor('adminForums'), __('Must be valid category'));
3333
}
3434

3535
if ($fid = $this->model->add_forum($cat_id, __('New forum'))) {
3636
// Regenerate the quick jump cache
3737
Container::get('cache')->store('quickjump', Cache::get_quickjump());
3838

39-
Router::redirect(Router::pathFor('editForum', array('id' => $fid)), __('Forum added redirect'));
39+
return Router::redirect(Router::pathFor('editForum', array('id' => $fid)), __('Forum added redirect'));
4040
} else {
41-
Router::redirect(Router::pathFor('adminForums'), __('Unable to add forum'));
41+
return Router::redirect(Router::pathFor('adminForums'), __('Unable to add forum'));
4242
}
4343
}
4444

@@ -57,10 +57,10 @@ public function edit($req, $res, $args)
5757
'redirect_url' => Url::is_valid(Input::post('redirect_url')) ? Utils::escape(Input::post('redirect_url')) : NULL);
5858

5959
if ($forum_data['forum_name'] == '') {
60-
Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Must enter name message'));
60+
return Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Must enter name message'));
6161
}
6262
if ($forum_data['cat_id'] < 1) {
63-
Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Must be valid category'));
63+
return Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Must be valid category'));
6464
}
6565

6666
$this->model->update_forum($args['forum_id'], $forum_data);
@@ -96,15 +96,15 @@ public function edit($req, $res, $args)
9696
// Regenerate the quick jump cache
9797
Container::get('cache')->store('quickjump', Cache::get_quickjump());
9898

99-
Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Forum updated redirect'));
99+
return Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Forum updated redirect'));
100100

101101
} elseif (Input::post('revert_perms')) {
102102
$this->model->delete_permissions($args['forum_id']);
103103

104104
// Regenerate the quick jump cache
105105
Container::get('cache')->store('quickjump', Cache::get_quickjump());
106106

107-
Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Perms reverted redirect'));
107+
return Router::redirect(Router::pathFor('editForum', array('id' => $args['forum_id'])), __('Perms reverted redirect'));
108108
}
109109

110110
} else {
@@ -132,7 +132,7 @@ public function delete($req, $res, $args)
132132
// Regenerate the quick jump cache
133133
Container::get('cache')->store('quickjump', Cache::get_quickjump());
134134

135-
Router::redirect(Router::pathFor('adminForums'), __('Forum deleted redirect'));
135+
return Router::redirect(Router::pathFor('adminForums'), __('Forum deleted redirect'));
136136

137137
} else { // If the user hasn't confirmed
138138

@@ -160,7 +160,7 @@ public function edit_positions($req, $res, $args)
160160
// Regenerate the quick jump cache
161161
Container::get('cache')->store('quickjump', Cache::get_quickjump());
162162

163-
Router::redirect(Router::pathFor('adminForums'), __('Forums updated redirect'));
163+
return Router::redirect(Router::pathFor('adminForums'), __('Forums updated redirect'));
164164
}
165165

166166
public function display($req, $res, $args)

featherbb/Controller/Admin/Index.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ public function display($req, $res, $args)
3737
}
3838

3939
if (version_compare(Config::get('forum_settings')['o_cur_version'], $latest_version, '>=')) {
40-
Router::redirect(Router::pathFor('adminIndex'), __('Running latest version message'));
40+
return Router::redirect(Router::pathFor('adminIndex'), __('Running latest version message'));
4141
} else {
42-
Router::redirect(Router::pathFor('adminIndex'), sprintf(__('New version available message'), '<a href="proxy.php?url=http%3A%2F%2Ffeatherbb.org%2F">FeatherBB.org</a>'));
42+
return Router::redirect(Router::pathFor('adminIndex'), sprintf(__('New version available message'), '<a href="proxy.php?url=http%3A%2F%2Ffeatherbb.org%2F">FeatherBB.org</a>'));
4343
}
4444
}
4545

featherbb/Controller/Admin/Parser.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public function display($req, $res, $args)
3838
if (Input::post('reset') || !file_exists($cache_file)) {
3939
require_once(Config::get('forum_env')['FEATHER_ROOT'].'featherbb/Core/parser/bbcd_source.php');
4040
require_once(Config::get('forum_env')['FEATHER_ROOT'].'featherbb/Core/parser/bbcd_compile.php');
41-
Router::redirect(Router::pathFor('adminParser'), $lang_admin_parser['reset_success']);
41+
return Router::redirect(Router::pathFor('adminParser'), $lang_admin_parser['reset_success']);
4242
}
4343

4444
// Load the current BBCode $pd array from featherbb/Core/parser/parser_data.inc.php.
@@ -61,7 +61,7 @@ public function display($req, $res, $args)
6161
if (preg_match('%^image/%', $f['type'])) { // If we have an image file type?
6262
if ($f['size'] > 0 && $f['size'] <= Config::get('forum_settings')['o_avatars_size']) {
6363
if (move_uploaded_file($f['tmp_name'], Config::get('forum_env')['FEATHER_ROOT'] .'style/img/smilies/'. $name)) {
64-
Router::redirect(Router::pathFor('adminParser'), $lang_admin_parser['upload success']);
64+
return Router::redirect(Router::pathFor('adminParser'), $lang_admin_parser['upload success']);
6565
} else { // Error #1: 'Smiley upload failed. Unable to move to smiley folder.'.
6666
throw new Error($lang_admin_parser['upload_err_1'], 500);
6767
}
@@ -195,7 +195,7 @@ public function display($req, $res, $args)
195195
}
196196

197197
require_once('featherbb/Core/parser/bbcd_compile.php'); // Compile $bbcd and save into $pd['bbcd']
198-
Router::redirect(Router::pathFor('adminParser'), $lang_admin_parser['save_success']);
198+
return Router::redirect(Router::pathFor('adminParser'), $lang_admin_parser['save_success']);
199199
}
200200

201201
AdminUtils::generateAdminMenu('parser');

featherbb/Controller/Admin/Plugins.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public function download($req, $res, $args)
6767
}
6868
rename(Config::get('forum_env')['FEATHER_ROOT'].'plugins'.DIRECTORY_SEPARATOR.$args['name']."-".$args['version'], Config::get('forum_env')['FEATHER_ROOT'].'plugins'.DIRECTORY_SEPARATOR.$args['name']);
6969
unlink(Config::get('forum_env')['FEATHER_ROOT'].'plugins'.DIRECTORY_SEPARATOR.$args['name']."-".$args['version'].'.zip');
70-
Router::redirect(Router::pathFor('adminPlugins'), 'Plugin downloaded!');
70+
return Router::redirect(Router::pathFor('adminPlugins'), 'Plugin downloaded!');
7171
}
7272

7373
public function index($req, $res, $args)
@@ -104,7 +104,7 @@ public function activate($req, $res, $args)
104104

105105
$this->model->activate($args['plugin']);
106106
// Plugin has been activated, confirm and redirect
107-
Router::redirect(Router::pathFor('adminPlugins'), 'Plugin activated!');
107+
return Router::redirect(Router::pathFor('adminPlugins'), 'Plugin activated!');
108108
}
109109

110110
public function deactivate($req, $res, $args)
@@ -117,7 +117,7 @@ public function deactivate($req, $res, $args)
117117

118118
$this->model->deactivate($args['plugin']);
119119
// // Plugin has been deactivated, confirm and redirect
120-
Router::redirect(Router::pathFor('adminPlugins'), array('warning', 'Plugin deactivated!'));
120+
return Router::redirect(Router::pathFor('adminPlugins'), array('warning', 'Plugin deactivated!'));
121121
}
122122

123123
public function uninstall($req, $res, $args)
@@ -130,7 +130,7 @@ public function uninstall($req, $res, $args)
130130

131131
$this->model->uninstall($args['plugin']);
132132
// Plugin has been deactivated, confirm and redirect
133-
Router::redirect(Router::pathFor('adminPlugins'), array('warning', 'Plugin uninstalled!'));
133+
return Router::redirect(Router::pathFor('adminPlugins'), array('warning', 'Plugin uninstalled!'));
134134
}
135135

136136
/**

featherbb/Controller/Admin/Reports.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public function display($req, $res, $args)
2929
if (Request::isPost()) {
3030
$zap_id = intval(key(Input::post('zap_id')));
3131
$this->model->zap_report($zap_id);
32-
Router::redirect(Router::pathFor('adminReports'), __('Report zapped redirect'));
32+
return Router::redirect(Router::pathFor('adminReports'), __('Report zapped redirect'));
3333
}
3434

3535
AdminUtils::generateAdminMenu('reports');

featherbb/Controller/Auth.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public function logout($req, $res, $args)
101101
public function forget($req, $res, $args)
102102
{
103103
if (!Container::get('user')->is_guest) {
104-
Router::redirect(Router::pathFor('home'), 'Already logged in');
104+
return Router::redirect(Router::pathFor('home'), 'Already logged in');
105105
}
106106

107107
if (Request::isPost()) {
@@ -146,7 +146,7 @@ public function forget($req, $res, $args)
146146

147147
Container::get('email')->feather_mail($email, $mail_subject, $cur_mail_message);
148148

149-
Router::redirect(Router::pathFor('home'), __('Forget mail').' <a href="proxy.php?url=https%3A%2F%2Fgithub.com%2Fmailto%3A%3C%2Fspan%3E%27%3C%2Fspan%3E.Utils%3A%3A%3Cspan+class%3D"pl-en">escape(Config::get('forum_settings')['o_admin_email']).'">'.Utils::escape(Config::get('forum_settings')['o_admin_email']).'</a>.', 200);
149+
return Router::redirect(Router::pathFor('home'), __('Forget mail').' <a href="proxy.php?url=https%3A%2F%2Fgithub.com%2Fmailto%3A%3C%2Fspan%3E%27%3C%2Fspan%3E.Utils%3A%3A%3Cspan+class%3D"pl-en">escape(Config::get('forum_settings')['o_admin_email']).'">'.Utils::escape(Config::get('forum_settings')['o_admin_email']).'</a>.', 200);
150150
} else {
151151
throw new Error(__('No email match').' '.Utils::escape($email).'.', 400);
152152
}

featherbb/Controller/Forum.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public function display($req, $res, $args)
3232

3333
// Is this a redirect forum? In that case, redirect!
3434
if ($cur_forum['redirect_url'] != '') {
35-
Router::redirect(Router::pathFor('Forum', ['id' => $cur_forum['redirect_url']]));
35+
return Router::redirect(Router::pathFor('Forum', ['id' => $cur_forum['redirect_url']]));
3636
}
3737

3838
// Sort out who the moderators are and if we are currently a moderator (or an admin)
@@ -145,23 +145,23 @@ public function markread($req, $res, $args)
145145
$tracked_topics['forums'][$args['id']] = time();
146146
Track::set_tracked_topics($tracked_topics);
147147

148-
Router::redirect(Router::pathFor('Forum', ['id' => $args['id']]), __('Mark forum read redirect'));
148+
return Router::redirect(Router::pathFor('Forum', ['id' => $args['id']]), __('Mark forum read redirect'));
149149
}
150150

151151
public function subscribe($req, $res, $args)
152152
{
153153
Container::get('hooks')->fire('controller.forum.subscribe');
154154

155155
$this->model->subscribe($args['id']);
156-
Router::redirect(Router::pathFor('Forum', ['id' => $args['id']]), __('Subscribe redirect'));
156+
return Router::redirect(Router::pathFor('Forum', ['id' => $args['id']]), __('Subscribe redirect'));
157157
}
158158

159159
public function unsubscribe($req, $res, $args)
160160
{
161161
Container::get('hooks')->fire('controller.forum.unsubscribe');
162162

163163
$this->model->unsubscribe($args['id']);
164-
Router::redirect(Router::pathFor('Forum', ['id' => $args['id']]), __('Unsubscribe redirect'));
164+
return Router::redirect(Router::pathFor('Forum', ['id' => $args['id']]), __('Unsubscribe redirect'));
165165
}
166166

167167
public function dealposts($req, $res, $args)
@@ -188,7 +188,7 @@ public function dealposts($req, $res, $args)
188188
if ($new_fid = Input::post('move_to_forum')) {
189189
$topics = explode(',', $topics);
190190
$topicModel->move_to($args['fid'], $new_fid, $topics);
191-
Router::redirect(Router::pathFor('Forum', ['id' => $new_fid]), __('Move topics redirect'));
191+
return Router::redirect(Router::pathFor('Forum', ['id' => $new_fid]), __('Move topics redirect'));
192192
}
193193

194194
// Check if there are enough forums to move the topic
@@ -211,7 +211,7 @@ public function dealposts($req, $res, $args)
211211
elseif (Input::post('merge_topics') || Input::post('merge_topics_comply')) {
212212
if (Input::post('merge_topics_comply')) {
213213
$this->model->merge_topics($args['fid']);
214-
Router::redirect(Router::pathFor('Forum', array('id' => $args['fid'])), __('Merge topics redirect'));
214+
return Router::redirect(Router::pathFor('Forum', array('id' => $args['fid'])), __('Merge topics redirect'));
215215
}
216216

217217
$topics = Input::post('topics') ? Input::post('topics') : array();
@@ -237,7 +237,7 @@ public function dealposts($req, $res, $args)
237237

238238
if (Input::post('delete_topics_comply')) {
239239
$this->model->delete_topics($topics, $args['fid']);
240-
Router::redirect(Router::pathFor('Forum', array('id' => $args['fid'])), __('Delete topics redirect'));
240+
return Router::redirect(Router::pathFor('Forum', array('id' => $args['fid'])), __('Delete topics redirect'));
241241
}
242242

243243
View::setPageInfo(array(
@@ -264,7 +264,7 @@ public function dealposts($req, $res, $args)
264264
$this->model->close_multiple_topics($action, $topics);
265265

266266
$redirect_msg = ($action) ? __('Close topics redirect') : __('Open topics redirect');
267-
Router::redirect(Router::pathFor('moderateForum', array('fid' => $args['fid'], 'page' => $args['page'])), $redirect_msg);
267+
return Router::redirect(Router::pathFor('moderateForum', array('fid' => $args['fid'], 'page' => $args['page'])), $redirect_msg);
268268
}
269269
}
270270
}

featherbb/Controller/Index.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,6 @@ public function markread()
6060
Auth::set_last_visit(Container::get('user')->id, Container::get('user')->logged);
6161
// Reset tracked topics
6262
Track::set_tracked_topics(null);
63-
Router::redirect(Router::pathFor('home'), __('Mark read redirect'));
63+
return Router::redirect(Router::pathFor('home'), __('Mark read redirect'));
6464
}
6565
}

featherbb/Controller/Post.php

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,18 @@ public function newreply($req, $res, $args)
3636

3737
public function newpost($req, $res, $args)
3838
{
39+
if (!isset($args['fid'])) {
40+
$args['fid'] = null;
41+
}
42+
43+
if (!isset($args['tid'])) {
44+
$args['tid'] = null;
45+
}
46+
47+
if (!isset($args['qid'])) {
48+
$args['qid'] = null;
49+
}
50+
3951
Container::get('hooks')->fire('controller.post.create', $args['fid'], $args['tid'], $args['qid']);
4052

4153
// Antispam feature
@@ -129,7 +141,7 @@ public function newpost($req, $res, $args)
129141
$this->model->increment_post_count($post, $new['tid']);
130142
}
131143

132-
Router::redirect(Router::pathFor('viewPost', ['pid' => $new['pid']]).'#p'.$new['pid'], __('Post redirect'));
144+
return Router::redirect(Router::pathFor('viewPost', ['pid' => $new['pid']]).'#p'.$new['pid'], __('Post redirect'));
133145
}
134146
}
135147

@@ -302,7 +314,7 @@ public function editpost($req, $res, $args)
302314
// Edit the post
303315
$this->model->edit_post($args['id'], $can_edit_subject, $post, $cur_post, $is_admmod);
304316

305-
Router::redirect(Router::pathFor('viewPost', ['pid' => $args['id']]).'#p'.$args['id'], __('Post redirect'));
317+
return Router::redirect(Router::pathFor('viewPost', ['pid' => $args['id']]).'#p'.$args['id'], __('Post redirect'));
306318
}
307319
} else {
308320
$post = '';

0 commit comments

Comments
 (0)