summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2007-04-25 16:00:08 +0100
committerAndrew Dolgov <[email protected]>2007-04-25 16:00:08 +0100
commitf27de5153111f07ecfa6204baa2b77c93b48a09d (patch)
treea6e606e9458ef6c5915fb060c153beebc02c27d3
parentbce7001fd1f1c2f105e7ebe9d1b533cf553bb3c5 (diff)
add auth support to subscribe-to-feed dialog
-rw-r--r--functions.js11
-rw-r--r--functions.php10
-rw-r--r--modules/popup-dialog.php13
-rw-r--r--modules/pref-feeds.php13
-rw-r--r--tt-rss.css4
5 files changed, 42 insertions, 9 deletions
diff --git a/functions.js b/functions.js
index 7fe79c9a8..b26f75fd8 100644
--- a/functions.js
+++ b/functions.js
@@ -1252,11 +1252,18 @@ function getRelativeFeedId(list, id, direction, unread_only) {
}
}
-function showBlockElement(id) {
+function showBlockElement(id, h_id) {
var elem = document.getElementById(id);
if (elem) {
elem.style.display = "block";
+
+ if (h_id) {
+ elem = document.getElementById(h_id);
+ if (elem) {
+ elem.style.display = "none";
+ }
+ }
} else {
alert("[showBlockElement] can't find element with id " + id);
}
@@ -1437,6 +1444,8 @@ function qaddFeed() {
var query = Form.serialize("feed_add_form");
+ debug("subscribe q: " + query);
+
/* xmlhttp.open("GET", "backend.php?" + query, true);
xmlhttp.onreadystatechange=dlg_frefresh_callback;
xmlhttp.send(null); */
diff --git a/functions.php b/functions.php
index 4044639a5..dee0d08c3 100644
--- a/functions.php
+++ b/functions.php
@@ -2023,7 +2023,8 @@
print "</rpc-reply>";
}
- function subscribe_to_feed($link, $feed_link, $cat_id = 0) {
+ function subscribe_to_feed($link, $feed_link, $cat_id = 0,
+ $auth_login = '', $auth_pass = '') {
# check for feed:http://url
$feed_link = trim(preg_replace("/^feed:/", "", $feed_link));
@@ -2048,13 +2049,14 @@
if (db_num_rows($result) == 0) {
$result = db_query($link,
- "INSERT INTO ttrss_feeds (owner_uid,feed_url,title,cat_id)
+ "INSERT INTO ttrss_feeds
+ (owner_uid,feed_url,title,cat_id, auth_login,auth_pass)
VALUES ('".$_SESSION["uid"]."', '$feed_link',
- '[Unknown]', $cat_qpart)");
+ '[Unknown]', $cat_qpart, '$auth_login', '$auth_pass')");
$result = db_query($link,
"SELECT id FROM ttrss_feeds WHERE feed_url = '$feed_link'
- AND owner_uid = " . $_SESSION["uid"]);
+ AND owner_uid = " . $_SESSION["uid"]);
$feed_id = db_fetch_result($result, 0, "id");
diff --git a/modules/popup-dialog.php b/modules/popup-dialog.php
index b69d36e2f..7eab1bae7 100644
--- a/modules/popup-dialog.php
+++ b/modules/popup-dialog.php
@@ -72,6 +72,19 @@
print "</div></td></tr>"; */
print "</table>";
+
+ print "<div id='fadd_login_prompt'><br/>
+ <a href='javascript:showBlockElement(\"fadd_login_container\",
+ \"fadd_login_prompt\")'>Click here if this feed requires authentication.</a></div>";
+
+ print "<div id='fadd_login_container'>
+ <table width='100%'>
+ <tr><td>Login:</td><td><input name='auth_login' class='iedit'></td></tr>
+ <tr><td>Password:</td><td><input type='password'
+ name='auth_pass' class='iedit'></td></tr>
+ </table>
+ </div>";
+
print "</form>";
print "<div align='right'>
diff --git a/modules/pref-feeds.php b/modules/pref-feeds.php
index 61fc2167c..c11ce2aa3 100644
--- a/modules/pref-feeds.php
+++ b/modules/pref-feeds.php
@@ -425,9 +425,14 @@
if (!WEB_DEMO_MODE) {
- $feed_url = db_escape_string(trim($_POST["feed_url"]));
- $cat_id = db_escape_string($_POST["cat_id"]);
- $p_from = db_escape_string($_POST["from"]);
+ $feed_url = db_escape_string(trim($_REQUEST["feed_url"]));
+ $cat_id = db_escape_string($_REQUEST["cat_id"]);
+ $p_from = db_escape_string($_REQUEST["from"]);
+
+ /* only read authentication information from POST */
+
+ $auth_login = db_escape_string(trim($_POST["auth_login"]));
+ $auth_pass = db_escape_string(trim($_POST["auth_pass"]));
if ($p_from != 'tt-rss') {
print "<html>
@@ -442,7 +447,7 @@
<div class=\"content\">";
}
- if (subscribe_to_feed($link, $feed_url, $cat_id)) {
+ if (subscribe_to_feed($link, $feed_url, $cat_id, $auth_login, $auth_pass)) {
print_notice(T_sprintf("Subscribed to <b>%s</b>.", $feed_url));
} else {
print_warning(T_sprintf("Already subscribed to <b>%s</b>.", $feed_url));
diff --git a/tt-rss.css b/tt-rss.css
index 94a99b304..0162638ba 100644
--- a/tt-rss.css
+++ b/tt-rss.css
@@ -1502,3 +1502,7 @@ a.helpLinkPic {
a.helpLinkPic img {
border-width : 0px;
}
+
+#fadd_login_container {
+ display : none;
+}