Browse Source

PostHider: moved to localstorage

pull/40/head
asiekierka 11 years ago
parent
commit
7839d53b3a
  1. 3
      inc/config.php
  2. 72
      js/jquery.cookie.js
  3. 6
      js/post-hider.js

3
inc/config.php

@ -604,8 +604,7 @@
// $config['additional_javascript'][] = 'js/jquery.min.js';
// $config['additional_javascript'][] = 'js/auto-reload.js';
// Enable hiding posts. Remember to put this /AFTER/ jQuery.
// $config['additional_javascript'][] = 'js/jquery.cookie.js';
// Enable hiding posts. Remember to put this AFTER jQuery.
// $config['additional_javascript'][] = 'js/post-hider.js';
// Where these script files are located on the web (defaults to $config['root']).

72
js/jquery.cookie.js

@ -1,72 +0,0 @@
/*!
* jQuery Cookie Plugin v1.3
* https://github.com/carhartl/jquery-cookie
*
* Copyright 2011, Klaus Hartl
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://www.opensource.org/licenses/mit-license.php
* http://www.opensource.org/licenses/GPL-2.0
*/
(function ($, document, undefined) {
var pluses = /\+/g;
function raw(s) {
return s;
}
function decoded(s) {
return decodeURIComponent(s.replace(pluses, ' '));
}
var config = $.cookie = function (key, value, options) {
// write
if (value !== undefined) {
options = $.extend({}, config.defaults, options);
if (value === null) {
options.expires = -1;
}
if (typeof options.expires === 'number') {
var days = options.expires, t = options.expires = new Date();
t.setDate(t.getDate() + days);
}
value = config.json ? JSON.stringify(value) : String(value);
return (document.cookie = [
encodeURIComponent(key), '=', config.raw ? value : encodeURIComponent(value),
options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
options.path ? '; path=' + options.path : '',
options.domain ? '; domain=' + options.domain : '',
options.secure ? '; secure' : ''
].join(''));
}
// read
var decode = config.raw ? raw : decoded;
var cookies = document.cookie.split('; ');
for (var i = 0, l = cookies.length; i < l; i++) {
var parts = cookies[i].split('=');
if (decode(parts.shift()) === key) {
var cookie = decode(parts.join('='));
return config.json ? JSON.parse(cookie) : cookie;
}
}
return null;
};
config.defaults = {};
$.removeCookie = function (key, options) {
if ($.cookie(key) !== null) {
$.cookie(key, null, options);
return true;
}
return false;
};
})(jQuery, document);

6
js/post-hider.js

@ -2,11 +2,11 @@ function phGetCookieName(id) {
return "ph_hide_" + id;
}
function phPostHidden(id) {
return ($.cookie(phGetCookieName(id)) != null);
return (localStorage.getItem(phGetCookieName(id)) != null);
}
function phPostToggle(id) {
if(phPostHidden(id)) { $.cookie(phGetCookieName(id),null); }
else { $.cookie(phGetCookieName(id),"yes"); }
if(phPostHidden(id)) { localStorage.removeItem(phGetCookieName(id)); }
else { localStorage.setItem(phGetCookieName(id),"yes"); }
}
function phGetInnerText(id) {
if(phPostHidden(id)) { return "[+]"; }

Loading…
Cancel
Save