diff options
author | Andrew Dolgov <[email protected]> | 2006-10-01 11:19:39 +0100 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2006-10-01 11:19:39 +0100 |
commit | f27d955a58bffbb9f24c82fcca427e0ac7d37312 (patch) | |
tree | 6bc1b1db35c9377d8f7ef1453c91dec4585e9281 | |
parent | c4d6b6b7ff73c0d3a1cc7636f646edcd65912336 (diff) |
module fixes
-rw-r--r-- | backend.php | 177 | ||||
-rw-r--r-- | modules/pref-feed-browser.php | 158 | ||||
-rw-r--r-- | modules/pref-prefs.php | 40 |
3 files changed, 181 insertions, 194 deletions
diff --git a/backend.php b/backend.php index ac9847053..24295769a 100644 --- a/backend.php +++ b/backend.php @@ -80,13 +80,14 @@ 0 => "User", 10 => "Administrator"); + require_once "modules/pref-prefs.php"; require_once "modules/popup-dialog.php"; require_once "modules/help.php"; require_once "modules/pref-feeds.php"; require_once "modules/pref-filters.php"; require_once "modules/pref-labels.php"; require_once "modules/pref-users.php"; - require_once "modules/pref-prefs.php"; + require_once "modules/pref-feed-browser.php"; require_once "modules/backend-rpc.php"; $script_started = getmicrotime(); @@ -579,11 +580,12 @@ module_pref_labels($link); } - if ($op == "error") { - print "<div width=\"100%\" align='center'>"; - $msg = $_GET["msg"]; - print $msg; - print "</div>"; + if ($op == "pref-prefs") { + module_pref_prefs($link); + } + + if ($op == "pref-users") { + module_pref_users($link); } if ($op == "help") { @@ -611,14 +613,6 @@ } - if ($op == "pref-prefs") { - module_pref_prefs($link); - } - - if ($op == "pref-users") { - module_pref_users($link); - } - if ($op == "user-details") { if (WEB_DEMO_MODE || $_SESSION["access_level"] < 10) { @@ -730,160 +724,7 @@ } if ($op == "pref-feed-browser") { - - if (!ENABLE_FEED_BROWSER) { - print "Feed browser is administratively disabled."; - return; - } - - $subop = $_REQUEST["subop"]; - - if ($subop == "details") { - $id = db_escape_string($_GET["id"]); - - print "<div class=\"browserFeedInfo\">"; - print "<b>Feed information:</b>"; - print "<div class=\"detailsPart\">"; - - $result = db_query($link, "SELECT - feed_url,site_url, - SUBSTRING(last_updated,1,19) AS last_updated - FROM ttrss_feeds WHERE id = '$id'"); - - $feed_url = db_fetch_result($result, 0, "feed_url"); - $site_url = db_fetch_result($result, 0, "site_url"); - $last_updated = db_fetch_result($result, 0, "last_updated"); - - if (get_pref($link, 'HEADLINES_SMART_DATE')) { - $last_updated = smart_date_time(strtotime($last_updated)); - } else { - $short_date = get_pref($link, 'SHORT_DATE_FORMAT'); - $last_updated = date($short_date, strtotime($last_updated)); - } - - print "Site: <a target=\"_new\" href='$site_url'>$site_url</a> ". - "(<a target=\"_new\" href='$feed_url'>feed</a>), ". - "Last updated: $last_updated"; - - print "</div>"; - - $result = db_query($link, "SELECT - ttrss_entries.title, - content,link, - substring(date_entered,1,19) as date_entered, - substring(updated,1,19) as updated - FROM ttrss_entries,ttrss_user_entries - WHERE ttrss_entries.id = ref_id AND feed_id = '$id' - ORDER BY updated DESC LIMIT 5"); - - if (db_num_rows($result) > 0) { - - print "<b>Last headlines:</b><br>"; - - print "<div class=\"detailsPart\">"; - print "<ul class=\"compact\">"; - while ($line = db_fetch_assoc($result)) { - - if (get_pref($link, 'HEADLINES_SMART_DATE')) { - $entry_dt = smart_date_time(strtotime($line["updated"])); - } else { - $short_date = get_pref($link, 'SHORT_DATE_FORMAT'); - $entry_dt = date($short_date, strtotime($line["updated"])); - } - - print "<li><a target=\"_new\" href=\"" . $line["link"] . "\">" . $line["title"] . "</a>" . - " <span class=\"insensitive\">($entry_dt)</span></li>"; - } - print "</ul></div>"; - } - - print "</div>"; - - return; - } - - print "<p>This panel shows feeds subscribed by other users of this system, just in case you are interested in some of them too.</p>"; - - $limit = db_escape_string($_GET["limit"]); - - if (!$limit) $limit = 25; - - $owner_uid = $_SESSION["uid"]; - - $result = db_query($link, "SELECT feed_url,COUNT(id) AS subscribers - FROM ttrss_feeds WHERE (SELECT COUNT(id) = 0 FROM ttrss_feeds AS tf - WHERE tf.feed_url = ttrss_feeds.feed_url - AND owner_uid = '$owner_uid') GROUP BY feed_url - ORDER BY subscribers DESC LIMIT $limit"); - - - print "<div style=\"float : right\"> - Top <select id=\"feedBrowserLimit\">"; - - foreach (array(25, 50, 100) as $l) { - $issel = ($l == $limit) ? "selected" : ""; - print "<option $issel>$l</option>"; - } - - print "</select> - <input type=\"submit\" class=\"button\" - onclick=\"updateBigFeedBrowser()\" value=\"Show\"> - </div>"; - - print "<p id=\"fbrOpToolbar\">Selection: - <input type='submit' class='button' onclick=\"feedBrowserSubscribe()\" - disabled=\"true\" value=\"Subscribe\">"; - - print "<ul class='nomarks' id='browseBigFeedList'>"; - - $feedctr = 0; - - while ($line = db_fetch_assoc($result)) { - $feed_url = $line["feed_url"]; - $subscribers = $line["subscribers"]; - - $det_result = db_query($link, "SELECT site_url,title,id - FROM ttrss_feeds WHERE feed_url = '$feed_url' LIMIT 1"); - - $details = db_fetch_assoc($det_result); - - $icon_file = ICONS_DIR . "/" . $details["id"] . ".ico"; - - if (file_exists($icon_file) && filesize($icon_file) > 0) { - $feed_icon = "<img class=\"tinyFeedIcon\" src=\"" . ICONS_URL . - "/".$details["id"].".ico\">"; - } else { - $feed_icon = "<img class=\"tinyFeedIcon\" src=\"images/blank_icon.gif\">"; - } - - $check_box = "<input onclick='toggleSelectFBListRow(this)' class='feedBrowseCB' - type=\"checkbox\" id=\"FBCHK-" . $details["id"] . "\">"; - - $class = ($feedctr % 2) ? "even" : "odd"; - - print "<li class='$class' id=\"FBROW-".$details["id"]."\">$check_box". - "$feed_icon "; - - print "<a href=\"javascript:browserToggleExpand('".$details["id"]."')\">" . - $details["title"] ."</a> " . - "<span class='subscribers'>($subscribers)</span>"; - - print "<div class=\"browserDetails\" id=\"BRDET-" . $details["id"] . "\">"; - print "</div>"; - - print "</li>"; - - ++$feedctr; - } - - if ($feedctr == 0) { - print "<li>No feeds found to subscribe.</li>"; - } - - print "</ul>"; - - print "</div>"; - + module_pref_feed_browser($link); } if ($op == "rss") { diff --git a/modules/pref-feed-browser.php b/modules/pref-feed-browser.php new file mode 100644 index 000000000..4086822b8 --- /dev/null +++ b/modules/pref-feed-browser.php @@ -0,0 +1,158 @@ +<?php + function module_pref_feed_browser($link) { + + if (!ENABLE_FEED_BROWSER) { + print "Feed browser is administratively disabled."; + return; + } + + $subop = $_REQUEST["subop"]; + + if ($subop == "details") { + $id = db_escape_string($_GET["id"]); + + print "<div class=\"browserFeedInfo\">"; + print "<b>Feed information:</b>"; + print "<div class=\"detailsPart\">"; + + $result = db_query($link, "SELECT + feed_url,site_url, + SUBSTRING(last_updated,1,19) AS last_updated + FROM ttrss_feeds WHERE id = '$id'"); + + $feed_url = db_fetch_result($result, 0, "feed_url"); + $site_url = db_fetch_result($result, 0, "site_url"); + $last_updated = db_fetch_result($result, 0, "last_updated"); + + if (get_pref($link, 'HEADLINES_SMART_DATE')) { + $last_updated = smart_date_time(strtotime($last_updated)); + } else { + $short_date = get_pref($link, 'SHORT_DATE_FORMAT'); + $last_updated = date($short_date, strtotime($last_updated)); + } + + print "Site: <a target=\"_new\" href='$site_url'>$site_url</a> ". + "(<a target=\"_new\" href='$feed_url'>feed</a>), ". + "Last updated: $last_updated"; + + print "</div>"; + + $result = db_query($link, "SELECT + ttrss_entries.title, + content,link, + substring(date_entered,1,19) as date_entered, + substring(updated,1,19) as updated + FROM ttrss_entries,ttrss_user_entries + WHERE ttrss_entries.id = ref_id AND feed_id = '$id' + ORDER BY updated DESC LIMIT 5"); + + if (db_num_rows($result) > 0) { + + print "<b>Last headlines:</b><br>"; + + print "<div class=\"detailsPart\">"; + print "<ul class=\"compact\">"; + while ($line = db_fetch_assoc($result)) { + + if (get_pref($link, 'HEADLINES_SMART_DATE')) { + $entry_dt = smart_date_time(strtotime($line["updated"])); + } else { + $short_date = get_pref($link, 'SHORT_DATE_FORMAT'); + $entry_dt = date($short_date, strtotime($line["updated"])); + } + + print "<li><a target=\"_new\" href=\"" . $line["link"] . "\">" . $line["title"] . "</a>" . + " <span class=\"insensitive\">($entry_dt)</span></li>"; + } + print "</ul></div>"; + } + + print "</div>"; + + return; + } + + print "<p>This panel shows feeds subscribed by other users of this system, just in case you are interested in some of them too.</p>"; + + $limit = db_escape_string($_GET["limit"]); + + if (!$limit) $limit = 25; + + $owner_uid = $_SESSION["uid"]; + + $result = db_query($link, "SELECT feed_url,COUNT(id) AS subscribers + FROM ttrss_feeds WHERE (SELECT COUNT(id) = 0 FROM ttrss_feeds AS tf + WHERE tf.feed_url = ttrss_feeds.feed_url + AND owner_uid = '$owner_uid') GROUP BY feed_url + ORDER BY subscribers DESC LIMIT $limit"); + + + print "<div style=\"float : right\"> + Top <select id=\"feedBrowserLimit\">"; + + foreach (array(25, 50, 100) as $l) { + $issel = ($l == $limit) ? "selected" : ""; + print "<option $issel>$l</option>"; + } + + print "</select> + <input type=\"submit\" class=\"button\" + onclick=\"updateBigFeedBrowser()\" value=\"Show\"> + </div>"; + + print "<p id=\"fbrOpToolbar\">Selection: + <input type='submit' class='button' onclick=\"feedBrowserSubscribe()\" + disabled=\"true\" value=\"Subscribe\">"; + + print "<ul class='nomarks' id='browseBigFeedList'>"; + + $feedctr = 0; + + while ($line = db_fetch_assoc($result)) { + $feed_url = $line["feed_url"]; + $subscribers = $line["subscribers"]; + + $det_result = db_query($link, "SELECT site_url,title,id + FROM ttrss_feeds WHERE feed_url = '$feed_url' LIMIT 1"); + + $details = db_fetch_assoc($det_result); + + $icon_file = ICONS_DIR . "/" . $details["id"] . ".ico"; + + if (file_exists($icon_file) && filesize($icon_file) > 0) { + $feed_icon = "<img class=\"tinyFeedIcon\" src=\"" . ICONS_URL . + "/".$details["id"].".ico\">"; + } else { + $feed_icon = "<img class=\"tinyFeedIcon\" src=\"images/blank_icon.gif\">"; + } + + $check_box = "<input onclick='toggleSelectFBListRow(this)' class='feedBrowseCB' + type=\"checkbox\" id=\"FBCHK-" . $details["id"] . "\">"; + + $class = ($feedctr % 2) ? "even" : "odd"; + + print "<li class='$class' id=\"FBROW-".$details["id"]."\">$check_box". + "$feed_icon "; + + print "<a href=\"javascript:browserToggleExpand('".$details["id"]."')\">" . + $details["title"] ."</a> " . + "<span class='subscribers'>($subscribers)</span>"; + + print "<div class=\"browserDetails\" id=\"BRDET-" . $details["id"] . "\">"; + print "</div>"; + + print "</li>"; + + ++$feedctr; + } + + if ($feedctr == 0) { + print "<li>No feeds found to subscribe.</li>"; + } + + print "</ul>"; + + print "</div>"; + } +?> + diff --git a/modules/pref-prefs.php b/modules/pref-prefs.php index 8573b4c1c..78bee5fa2 100644 --- a/modules/pref-prefs.php +++ b/modules/pref-prefs.php @@ -1,14 +1,17 @@ <?php + function prefs_js_redirect() { + print "<html><body> + <script type=\"text/javascript\"> + window.location = 'prefs.php'; + </script> + </body></html>"; + } + function module_pref_prefs($link) { $subop = $_REQUEST["subop"]; if ($subop == "Save configuration") { - if (WEB_DEMO_MODE) { - header("Location: prefs.php"); - return; - } - $_SESSION["prefs_op_result"] = "save-config"; $_SESSION["prefs_cache"] = false; @@ -45,10 +48,10 @@ } - header("Location: prefs.php"); - } + return prefs_js_redirect(); + } else if ($subop == "getHelp") { $pref_name = db_escape_string($_GET["pn"]); @@ -65,11 +68,6 @@ } else if ($subop == "Change e-mail") { - if (WEB_DEMO_MODE) { - header("Location: prefs.php"); - return; - } - $email = db_escape_string($_GET["email"]); $active_uid = $_SESSION["uid"]; @@ -78,15 +76,10 @@ WHERE id = '$active_uid'"); } - header("Location: prefs.php"); + return prefs_js_redirect(); } else if ($subop == "Change password") { - if (WEB_DEMO_MODE) { - header("Location: prefs.php"); - return; - } - $old_pw = $_POST["OLD_PASSWORD"]; $new_pw = $_POST["OLD_PASSWORD"]; @@ -113,15 +106,10 @@ } } - header("Location: prefs.php"); + return prefs_js_redirect(); } else if ($subop == "Reset to defaults") { - if (WEB_DEMO_MODE) { - header("Location: prefs.php"); - return; - } - $_SESSION["prefs_op_result"] = "reset-to-defaults"; if (DB_TYPE == "pgsql") { @@ -135,7 +123,7 @@ initialize_user_prefs($link, $_SESSION["uid"]); } - header("Location: prefs.php"); + return prefs_js_redirect(); } else if ($subop == "Change theme") { @@ -163,7 +151,7 @@ $_SESSION["theme"] = $theme_path; - header("Location: prefs.php"); + return prefs_js_redirect(); } else { |