summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend.php2
-rw-r--r--feedlist.js4
-rw-r--r--functions.js25
-rw-r--r--login.php11
-rw-r--r--tt-rss.js5
5 files changed, 42 insertions, 5 deletions
diff --git a/backend.php b/backend.php
index b83ea4496..0d65c1ce7 100644
--- a/backend.php
+++ b/backend.php
@@ -102,7 +102,7 @@
$fetch = $_GET["fetch"];
- setcookie("ttrss_icons_url", ICONS_URL);
+// setcookie("ttrss_icons_url", ICONS_URL);
if (!sanity_check($link)) { return; }
diff --git a/feedlist.js b/feedlist.js
index 1be1020c6..6224e9ce0 100644
--- a/feedlist.js
+++ b/feedlist.js
@@ -65,7 +65,7 @@ function viewfeed(feed, skip, subop, doc, is_cat) {
view_mode = "All Posts";
}
- setCookie("ttrss_vf_vmode", view_mode);
+ setCookie("ttrss_vf_vmode", view_mode, getCookie("ttrss_cltime"));
var limitbox = doc.getElementById("limitbox");
@@ -73,7 +73,7 @@ function viewfeed(feed, skip, subop, doc, is_cat) {
if (limitbox) {
limit = limitbox[limitbox.selectedIndex].text;
- setCookie("ttrss_vf_limit", limit);
+ setCookie("ttrss_vf_limit", limit, getCookie("ttrss_cltime"));
} else {
limit = "All";
}
diff --git a/functions.js b/functions.js
index 1d45b1cbf..e016d8c8a 100644
--- a/functions.js
+++ b/functions.js
@@ -267,7 +267,20 @@ function getFeedIds() {
return rows;
}
-function setCookie(name, value, expires, path, domain, secure) {
+function setCookie(name, value, lifetime, path, domain, secure) {
+
+ var d = false;
+
+ if (lifetime) {
+ d = new Date();
+ d.setTime(lifetime * 1000);
+ }
+
+ int_setCookie(name, value, d, path, domain, secure);
+
+}
+
+function int_setCookie(name, value, expires, path, domain, secure) {
document.cookie= name + "=" + escape(value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
@@ -275,6 +288,16 @@ function setCookie(name, value, expires, path, domain, secure) {
((secure) ? "; secure" : "");
}
+function delCookie(name, path, domain) {
+ if (getCookie(name)) {
+ document.cookie = name + "=" +
+ ((path) ? ";path=" + path : "") +
+ ((domain) ? ";domain=" + domain : "" ) +
+ ";expires=Thu, 01-Jan-1970 00:00:01 GMT";
+ }
+}
+
+
function getCookie(name) {
var dc = document.cookie;
diff --git a/login.php b/login.php
index 733be8c9d..06b95353f 100644
--- a/login.php
+++ b/login.php
@@ -41,7 +41,16 @@
if (authenticate_user($link, $login, $password)) {
initialize_user_prefs($link, $_SESSION["uid"]);
-
+
+ if ($_POST["remember_me"]) {
+ $_SESSION["cookie_lifetime"] = time() + SESSION_COOKIE_LIFETIME_REMEMBER;
+ } else {
+ $_SESSION["cookie_lifetime"] = time() + SESSION_COOKIE_LIFETIME;
+ }
+
+ setcookie("ttrss_cltime", $_SESSION["cookie_lifetime"],
+ $_SESSION["cookie_lifetime"]);
+
if (!$return_to) {
$return_to = "tt-rss.php";
}
diff --git a/tt-rss.js b/tt-rss.js
index 7648b8e18..7958291f9 100644
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -9,6 +9,7 @@ var daemon_enabled = false;
var _qfd_deleted_feed = 0;
var firsttime_update = true;
var last_refetch = 0;
+var cookie_lifetime = 0;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
@@ -438,6 +439,10 @@ function init_second_stage() {
try {
+ cookie_lifetime = getCookie("ttrss_cltime");
+
+ delCookie("ttrss_vf_test");
+
setCookie("ttrss_vf_actfeed", "");
updateFeedList(false, false);