summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2006-10-01 05:05:12 +0100
committerAndrew Dolgov <[email protected]>2006-10-01 05:05:12 +0100
commit461766f33ef735eca51d0bf63fa1557c59aa5451 (patch)
treea8705bc57d544fed10a1946d81257943136c1e3a
parent803cfab11a6f94bbd395d723c7522b5b5272b3db (diff)
add debug mode only fast user switcher
-rw-r--r--backend.php2
-rw-r--r--functions.php25
-rw-r--r--tt-rss.css7
-rw-r--r--tt-rss.js5
-rw-r--r--tt-rss.php10
5 files changed, 44 insertions, 5 deletions
diff --git a/backend.php b/backend.php
index 5e793f27f..e7e4d6bcf 100644
--- a/backend.php
+++ b/backend.php
@@ -1533,7 +1533,7 @@
}
print "
- <td width='40%'><a href=\"javascript:updateFeedList('title')\">Title</a></td>
+ <td width='35%'><a href=\"javascript:updateFeedList('title')\">Title</a></td>
<td width='35%'><a href=\"javascript:updateFeedList('feed_url')\">Feed</a></td>
<td width='15%'><a href=\"javascript:updateFeedList('last_article')\">Last&nbsp;Article</a></td>
<td width='15%' align='right'><a href=\"javascript:updateFeedList('last_updated')\">Updated</a></td>";
diff --git a/functions.php b/functions.php
index e408376b5..02228c886 100644
--- a/functions.php
+++ b/functions.php
@@ -1011,14 +1011,23 @@
return true;
}
- function authenticate_user($link, $login, $password) {
+ function authenticate_user($link, $login, $password, $force_auth = false) {
if (!SINGLE_USER_MODE) {
$pwd_hash = 'SHA1:' . sha1($password);
-
- $result = db_query($link, "SELECT id,login,access_level FROM ttrss_users WHERE
- login = '$login' AND pwd_hash = '$pwd_hash'");
+
+ if ($force_auth && defined('_DEBUG_USER_SWITCH')) {
+ $query = "SELECT id,login,access_level
+ FROM ttrss_users WHERE
+ login = '$login'";
+ } else {
+ $query = "SELECT id,login,access_level
+ FROM ttrss_users WHERE
+ login = '$login' AND pwd_hash = '$pwd_hash'";
+ }
+
+ $result = db_query($link, $query);
if (db_num_rows($result) == 1) {
$_SESSION["uid"] = db_fetch_result($result, 0, "id");
@@ -1145,6 +1154,14 @@
function login_sequence($link) {
if (!SINGLE_USER_MODE) {
+ if (defined('_DEBUG_USER_SWITCH') && $_SESSION["uid"]) {
+ $swu = db_escape_string($_REQUEST["swu"]);
+ if ($swu) {
+ $_SESSION["prefs_cache"] = false;
+ return authenticate_user($link, $swu, null, true);
+ }
+ }
+
if (!validate_session($link)) {
logout_user();
$redirect_uri = get_login_redirect();
diff --git a/tt-rss.css b/tt-rss.css
index 13d8cda0c..39d73a929 100644
--- a/tt-rss.css
+++ b/tt-rss.css
@@ -51,6 +51,7 @@ ul.feedList {
margin : 5px;
padding : 0px 0px 0px 5px;
font-size : small;
+ white-space : nowrap;
}
ul.feedList li.feedCat {
@@ -1244,3 +1245,9 @@ div.return a:hover {
border-style : solid;
}
+
+#userSwitch {
+ position : absolute;
+ bottom : 2px;
+ right : 2px;
+}
diff --git a/tt-rss.js b/tt-rss.js
index ed0f17924..2bd5068df 100644
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -564,3 +564,8 @@ function catchupCurrentFeed() {
}
}
+function userSwitch() {
+ var chooser = document.getElementById("userSwitch");
+ var user = chooser[chooser.selectedIndex].value;
+ window.location = "tt-rss.php?swu=" + user;
+}
diff --git a/tt-rss.php b/tt-rss.php
index a323922b4..4894cf92f 100644
--- a/tt-rss.php
+++ b/tt-rss.php
@@ -210,6 +210,16 @@ window.onload = init;
<?php } ?>
<div id="footer">
+ <?php if (defined('_DEBUG_USER_SWITCH')) { ?>
+ <select id="userSwitch" onchange="userSwitch()">
+ <?php
+ foreach (array('admin', 'fox', 'test') as $u) {
+ $op_sel = ($u == $_SESSION["name"]) ? "selected" : "";
+ print "<option $op_sel>$u</option>";
+ }
+ ?>
+ </select>
+ <? } ?>
<a href="http://tt-rss.spb.ru/">Tiny Tiny RSS</a> v<?php echo VERSION ?> &copy; 2005-2006 Andrew Dolgov
</div>