mirror of
https://github.com/the-djmaze/snappymail.git
synced 2025-01-09 00:08:18 +08:00
76 lines
1.1 KiB
JavaScript
76 lines
1.1 KiB
JavaScript
|
/* RainLoop Webmail (c) RainLoop Team | Licensed under CC BY-NC-SA 3.0 */
|
||
|
|
||
|
/**
|
||
|
* @constructor
|
||
|
*/
|
||
|
function CookieDriver()
|
||
|
{
|
||
|
|
||
|
}
|
||
|
|
||
|
CookieDriver.supported = function ()
|
||
|
{
|
||
|
return true;
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* @param {string} sKey
|
||
|
* @param {*} mData
|
||
|
* @returns {boolean}
|
||
|
*/
|
||
|
CookieDriver.prototype.set = function (sKey, mData)
|
||
|
{
|
||
|
var
|
||
|
mCokieValue = $.cookie(Consts.Values.ClientSideCookieIndexName),
|
||
|
bResult = false,
|
||
|
mResult = null
|
||
|
;
|
||
|
|
||
|
try
|
||
|
{
|
||
|
mResult = null === mCokieValue ? null : JSON.parse(mCokieValue);
|
||
|
if (!mResult)
|
||
|
{
|
||
|
mResult = {};
|
||
|
}
|
||
|
|
||
|
mResult[sKey] = mData;
|
||
|
$.cookie(Consts.Values.ClientSideCookieIndexName, JSON.stringify(mResult), {
|
||
|
'expires': 30
|
||
|
});
|
||
|
|
||
|
bResult = true;
|
||
|
}
|
||
|
catch (oException) {}
|
||
|
|
||
|
return bResult;
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* @param {string} sKey
|
||
|
* @returns {*}
|
||
|
*/
|
||
|
CookieDriver.prototype.get = function (sKey)
|
||
|
{
|
||
|
var
|
||
|
mCokieValue = $.cookie(Consts.Values.ClientSideCookieIndexName),
|
||
|
mResult = null
|
||
|
;
|
||
|
|
||
|
try
|
||
|
{
|
||
|
mResult = null === mCokieValue ? null : JSON.parse(mCokieValue);
|
||
|
if (mResult && !Utils.isUnd(mResult[sKey]))
|
||
|
{
|
||
|
mResult = mResult[sKey];
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
mResult = null;
|
||
|
}
|
||
|
}
|
||
|
catch (oException) {}
|
||
|
|
||
|
return mResult;
|
||
|
};
|