summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-09-19 19:44:40 +0200
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-09-19 19:44:40 +0200
commitd284958d52f633738e8cc736f7f4a50e0c984ecf (patch)
tree2580fd65e1250284095ef4ab07e492930df29322
parent921dd88e646621a0118c97716cae6b34a0ed26b1 (diff)
Improve redirection when deleting an idle feed
-rwxr-xr-xapp/Controllers/feedController.php9
-rw-r--r--app/views/stats/idle.phtml6
-rw-r--r--lib/Minz/Request.php5
3 files changed, 16 insertions, 4 deletions
diff --git a/app/Controllers/feedController.php b/app/Controllers/feedController.php
index 3326b2059..65d4b3a37 100755
--- a/app/Controllers/feedController.php
+++ b/app/Controllers/feedController.php
@@ -412,10 +412,13 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
Minz_Session::_param ('notification', $notif);
- if ($type == 'category') {
- Minz_Request::forward (array ('c' => 'configure', 'a' => 'categorize'), true);
+ $redirect_url = Minz_Request::param('r', false, true);
+ if ($redirect_url) {
+ Minz_Request::forward($redirect_url);
+ } elseif ($type == 'category') {
+ Minz_Request::forward(array ('c' => 'configure', 'a' => 'categorize'), true);
} else {
- Minz_Request::forward (array ('c' => 'configure', 'a' => 'feed'), true);
+ Minz_Request::forward(array ('c' => 'configure', 'a' => 'feed'), true);
}
}
}
diff --git a/app/views/stats/idle.phtml b/app/views/stats/idle.phtml
index 3ce8d3d3e..6f3d4a117 100644
--- a/app/views/stats/idle.phtml
+++ b/app/views/stats/idle.phtml
@@ -6,6 +6,10 @@
<h1><?php echo _t('stats_idle'); ?></h1>
<?php
+ $current_url = urlencode(Minz_Url::display(
+ array('c' => 'stats', 'a' => 'idle'),
+ 'php', true
+ ));
$nothing = true;
foreach ($this->idleFeeds as $period => $feeds) {
if (!empty($feeds)) {
@@ -22,7 +26,7 @@
<div class="stick">
<a class="btn" href="<?php echo _url('index', 'index', 'get', 'f_' . $feed['id']); ?>"><?php echo _i('link'); ?> <?php echo _t('filter'); ?></a>
<a class="btn" href="<?php echo _url('configure', 'feed', 'id', $feed['id']); ?>"><?php echo _i('configure'); ?> <?php echo _t('administration'); ?></a>
- <button class="btn btn-attention confirm" form="form-delete" formaction="<?php echo _url('feed', 'delete', 'id', $feed['id']); ?>"><?php echo _t('delete'); ?></button>
+ <button class="btn btn-attention confirm" form="form-delete" formaction="<?php echo _url('feed', 'delete', 'id', $feed['id'], 'r', $current_url); ?>"><?php echo _t('delete'); ?></button>
</div>
</li>
<li class="item">
diff --git a/lib/Minz/Request.php b/lib/Minz/Request.php
index 52f53012f..f7a24c026 100644
--- a/lib/Minz/Request.php
+++ b/lib/Minz/Request.php
@@ -124,6 +124,11 @@ class Minz_Request {
* > sinon, le dispatcher recharge en interne
*/
public static function forward($url = array(), $redirect = false) {
+ if (!is_array($url)) {
+ header('Location: ' . $url);
+ exit();
+ }
+
$url = Minz_Url::checkUrl($url);
if ($redirect) {