Skip to content
This repository has been archived by the owner on Dec 16, 2020. It is now read-only.

Commit

Permalink
Merge pull request #82 from wmde/improved-localStorage-check
Browse files Browse the repository at this point in the history
improved check for localStorage
  • Loading branch information
tobijat committed Oct 13, 2016
2 parents 0077081 + f6f7ef1 commit ec4bac2
Showing 1 changed file with 19 additions and 17 deletions.
36 changes: 19 additions & 17 deletions DeepCat.js
Original file line number Diff line number Diff line change
Expand Up @@ -508,27 +508,28 @@
}

function checkShouldHideHints() {
var storedData;
if( typeof Storage !== 'undefined' ) {
storedData = JSON.parse( localStorage.getItem( 'mw-deepcat-hintboxshown' ) );
return storedData
&& storedData.hash === makeHintToken( mw.msg( 'deepcat-hintbox-text' ) )
&& storedData.expires > $.now();
} else {
var storedData = mw.storage.get( 'mw-deepcat-hintboxshown' );

if( !storedData ) { // use cookie when localStorage is not available
return mw.cookie.get( '-deepcat-hintboxshown' ) === makeHintToken( mw.msg( 'deepcat-hintbox-text' ) );
}

storedData = JSON.parse( storedData );
return storedData
&& storedData.hash === makeHintToken( mw.msg( 'deepcat-hintbox-text' ) )
&& storedData.expires > $.now();
}

function storeHintSetting() {
if( typeof Storage !== 'undefined' ) {
localStorage.setItem(
'mw-deepcat-hintboxshown',
JSON.stringify( {
hash: makeHintToken( mw.msg( 'deepcat-hintbox-text' ) ),
expires: $.now() + ( 60 * 60 * 24 * 7 * 4 * 1000 ) // 4 weeks
} )
);
} else {
var success = mw.storage.set(
'mw-deepcat-hintboxshown',
JSON.stringify( {
hash: makeHintToken( mw.msg( 'deepcat-hintbox-text' ) ),
expires: $.now() + ( 60 * 60 * 24 * 7 * 4 * 1000 ) // 4 weeks
} )
);

if( !success ) { // use cookie when localStorage is not available
mw.cookie.set(
'-deepcat-hintboxshown',
makeHintToken( mw.msg( 'deepcat-hintbox-text' ) ),
Expand Down Expand Up @@ -671,7 +672,8 @@
'mediawiki.api.messages',
'mediawiki.cookie',
'mediawiki.util',
'mediawiki.jqueryMsg'
'mediawiki.jqueryMsg',
'mediawiki.storage'
],
function() {
$( deepCatMain );
Expand Down

0 comments on commit ec4bac2

Please sign in to comment.