summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--classes/feeds.php51
-rw-r--r--css/utility.css5
-rw-r--r--js/tt-rss.js10
3 files changed, 58 insertions, 8 deletions
diff --git a/classes/feeds.php b/classes/feeds.php
index 261538cd3..37a7cc89f 100644
--- a/classes/feeds.php
+++ b/classes/feeds.php
@@ -150,9 +150,6 @@ class Feeds extends Handler_Protected {
$next_unread_feed, $offset, $vgr_last_feed = false,
$override_order = false, $include_children = false) {
- if (isset($_REQUEST["DevForceUpdate"]))
- header("Content-Type: text/plain; charset=utf-8");
-
$disable_cache = false;
$reply = array();
@@ -179,7 +176,7 @@ class Feeds extends Handler_Protected {
$last_updated = strtotime($this->dbh->fetch_result($result, 0, "last_updated"));
$cache_images = sql_bool_to_bool($this->dbh->fetch_result($result, 0, "cache_images"));
- if (!$cache_images && time() - $last_updated > 120 || isset($_REQUEST['DevForceUpdate'])) {
+ if (!$cache_images && time() - $last_updated > 120) {
include "rssfuncs.php";
update_rss_feed($feed, true, true);
} else {
@@ -1167,6 +1164,52 @@ class Feeds extends Handler_Protected {
</div>";
}
+ function update_debugger() {
+ header("Content-type: text/html");
+
+ $feed_id = (int)$_REQUEST["feed_id"];
+ @$do_update = $_REQUEST["action"] == "do_update";
+ $csrf_token = $_REQUEST["csrf_token"];
+
+ $refetch_checked = isset($_REQUEST["force_refetch"]) ? "checked" : "";
+ $rehash_checked = isset($_REQUEST["force_rehash"]) ? "checked" : "";
+
+ ?>
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="css/utility.css">
+ <title>Feed Debugger</title>
+ </head>
+ <body class="small_margins">
+ <h1>Feed Debugger: <?php echo "$feed_id: " . getFeedTitle($feed_id) ?></h1>
+ <form method="GET" action="">
+ <input type="hidden" name="op" value="feeds">
+ <input type="hidden" name="method" value="update_debugger">
+ <input type="hidden" name="xdebug" value="1">
+ <input type="hidden" name="csrf_token" value="<?php echo $csrf_token ?>">
+ <input type="hidden" name="action" value="do_update">
+ <input type="hidden" name="feed_id" value="<?php echo $feed_id ?>">
+ <input type="checkbox" name="force_refetch" value="1" <?php echo $refetch_checked ?>> Force refetch<br/>
+ <input type="checkbox" name="force_rehash" value="1" <?php echo $rehash_checked ?>> Force rehash<br/>
+
+ <p/><button type="submit">Continue</button>
+ </form>
+
+ <hr>
+
+ <pre><?php
+
+ if ($do_update) {
+ include "rssfuncs.php";
+ update_rss_feed($feed_id, true, true);
+ }
+
+ ?></pre>
+ </body>
+ </html>
+ <?php
+
+ }
}
?>
diff --git a/css/utility.css b/css/utility.css
index 85f136ad9..77452a9a5 100644
--- a/css/utility.css
+++ b/css/utility.css
@@ -9,6 +9,11 @@ body {
max-width : 800px;
}
+body.small_margins {
+ margin : 1em;
+ max-width : none;
+}
+
form {
margin : 10px 0px 0px 0px;
padding : 0px;
diff --git a/js/tt-rss.js b/js/tt-rss.js
index 08602c8e5..602c953b1 100644
--- a/js/tt-rss.js
+++ b/js/tt-rss.js
@@ -422,10 +422,12 @@ function init() {
quickAddFeed();
};
hotkey_actions["feed_debug_update"] = function() {
- window.open("backend.php?op=feeds&method=view&feed=" + getActiveFeedId() +
- "&view_mode=adaptive&order_by=default&update=&m=ForceUpdate&cat=" +
- activeFeedIsCat() + "&DevForceUpdate=1&debug=1&xdebug=1&csrf_token=" +
- getInitParam("csrf_token"));
+ if (!activeFeedIsCat() && parseInt(getActiveFeedId()) > 0) {
+ window.open("backend.php?op=feeds&method=update_debugger&feed_id=" + getActiveFeedId() +
+ "&csrf_token=" + getInitParam("csrf_token"));
+ } else {
+ alert("You can't debug this kind of feed.");
+ }
};
hotkey_actions["feed_edit"] = function() {
if (activeFeedIsCat())