mirror of
https://github.com/kiwix/kiwix-js-pwa.git
synced 2025-09-10 12:53:54 -04:00
Improve cookie detection
Still not perfect: doesn't test for session-only cookies... Former-commit-id: e15897f2c8868e75b1f69f6c5542353515441261 [formerly 4ac21dd677fd3d9aa301be2396afe3277ab29807] Former-commit-id: 96a6fc0b37e7d13fd4860dd268e6d891ab87463a
This commit is contained in:
parent
a333560ad4
commit
3e7ca51946
@ -190,8 +190,13 @@ function getCookie(name) {
|
|||||||
function checkCookies() {
|
function checkCookies() {
|
||||||
// Test for cookie support
|
// Test for cookie support
|
||||||
var storeType = 'cookie';
|
var storeType = 'cookie';
|
||||||
document.cookie = "kiwixCookie=working";
|
document.cookie = 'kiwixCookie=working;expires=Fri, 31 Dec 9999 23:59:59 GMT';
|
||||||
var kiwixCookie = /kiwixCookie=working/i.test(document.cookie);
|
var kiwixCookie = /kiwixCookie=working/i.test(document.cookie);
|
||||||
|
if (kiwixCookie) {
|
||||||
|
document.cookie = 'kiwixCookie=broken;expires=Fri, 31 Dec 9999 23:59:59 GMT';
|
||||||
|
kiwixCookie = !/kiwixCookie=working/i.test(document.cookie);
|
||||||
|
}
|
||||||
|
document.cookie = 'kiwixCookie=;expires=Thu, 01 Jan 1970 00:00:00 GMT';
|
||||||
if (!kiwixCookie) {
|
if (!kiwixCookie) {
|
||||||
// Cookies appear to be blocked, so test for localStorage support
|
// Cookies appear to be blocked, so test for localStorage support
|
||||||
var result = false;
|
var result = false;
|
||||||
@ -202,6 +207,7 @@ function checkCookies() {
|
|||||||
}
|
}
|
||||||
if (result) storeType = 'local_storage';
|
if (result) storeType = 'local_storage';
|
||||||
}
|
}
|
||||||
|
console.log('Test1: storeType: ' + storeType);
|
||||||
return storeType;
|
return storeType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -23,8 +23,13 @@ define([], function() {
|
|||||||
|
|
||||||
// Test for cookie support
|
// Test for cookie support
|
||||||
var storeType = 'cookie';
|
var storeType = 'cookie';
|
||||||
document.cookie = "kiwixCookie=working";
|
document.cookie = 'kiwixCookie=working;expires=Fri, 31 Dec 9999 23:59:59 GMT';
|
||||||
var kiwixCookie = /kiwixCookie=working/i.test(document.cookie);
|
var kiwixCookie = /kiwixCookie=working/i.test(document.cookie);
|
||||||
|
if (kiwixCookie) {
|
||||||
|
document.cookie = 'kiwixCookie=broken;expires=Fri, 31 Dec 9999 23:59:59 GMT';
|
||||||
|
kiwixCookie = !/kiwixCookie=working/i.test(document.cookie);
|
||||||
|
}
|
||||||
|
document.cookie = 'kiwixCookie=;expires=Thu, 01 Jan 1970 00:00:00 GMT';
|
||||||
if (!kiwixCookie) {
|
if (!kiwixCookie) {
|
||||||
// Cookies appear to be blocked, so test for localStorage support
|
// Cookies appear to be blocked, so test for localStorage support
|
||||||
var result = false;
|
var result = false;
|
||||||
@ -35,6 +40,7 @@ if (!kiwixCookie) {
|
|||||||
}
|
}
|
||||||
if (result) storeType = 'local_storage';
|
if (result) storeType = 'local_storage';
|
||||||
}
|
}
|
||||||
|
console.log('Test2: storeType: ' + storeType);
|
||||||
|
|
||||||
var docCookies = {
|
var docCookies = {
|
||||||
getItem: function (sKey) {
|
getItem: function (sKey) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user