From 3d0fa5968d0595cf16e105e73c72bd70be05d838 Mon Sep 17 00:00:00 2001 From: r888888888 Date: Thu, 8 May 2014 17:04:11 -0700 Subject: [PATCH] fixes #2147 --- app/assets/javascripts/autocomplete.js | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/app/assets/javascripts/autocomplete.js b/app/assets/javascripts/autocomplete.js index 9a8841708..e5deccba9 100644 --- a/app/assets/javascripts/autocomplete.js +++ b/app/assets/javascripts/autocomplete.js @@ -11,8 +11,8 @@ Danbooru.Autocomplete.test_local_storage = function() { try { - localStorage.setItem("test", "test"); - localStorage.removeItem("test"); + $.localStorage.set("test", "test"); + $.localStorage.remove("test"); return true; } catch(e) { return false; @@ -20,8 +20,18 @@ } Danbooru.Autocomplete.prune_local_storage = function() { - if (this.enable_local_storage && localStorage.length > 10000) { - $.localStorage.removeAll(); + if (this.enable_local_storage) { + var now = new Date().getTime(); + $.each($.localStorage.keys(), function(i, key) { + var expiry = Date.parse($.localStorage.get(key)); + if (expiry < now) { + $.localStorage.remove(key); + } + }); + + if ($.localStorage.keys().length > 4000) { + $.localStorage.removeAll(); + } } }