I’m going to spend something that will change your life with JavaScript
and a Script in jQuery
to create Session
with this you can pass your variables and much more via JavaScript
by the website.
Script for Creating Sessions:
(function($) {
$.session = {
_id: null,
_cookieCache: undefined,
_init: function() {
if (!window.name) {
window.name = Math.random();
}
this._id = window.name;
this._initCache();
// See if we've changed protcols
var matches = (new RegExp(this._generatePrefix() + "=([^;]+);")).exec(document.cookie);
if (matches && document.location.protocol !== matches[1]) {
this._clearSession();
for (var key in this._cookieCache) {
try {
window.sessionStorage.setItem(key, this._cookieCache[key]);
} catch (e) {};
}
}
document.cookie = this._generatePrefix() + "=" + document.location.protocol + ';path=/;expires=' + (new Date((new Date).getTime() + 120000)).toUTCString();
},
_generatePrefix: function() {
return '__session:' + this._id + ':';
},
_initCache: function() {
var cookies = document.cookie.split(';');
this._cookieCache = {};
for (var i in cookies) {
var kv = cookies[i].split('=');
if ((new RegExp(this._generatePrefix() + '.+')).test(kv[0]) && kv[1]) {
this._cookieCache[kv[0].split(':', 3)[2]] = kv[1];
}
}
},
_setFallback: function(key, value, onceOnly) {
var cookie = this._generatePrefix() + key + "=" + value + "; path=/";
if (onceOnly) {
cookie += "; expires=" + (new Date(Date.now() + 120000)).toUTCString();
}
document.cookie = cookie;
this._cookieCache[key] = value;
return this;
},
_getFallback: function(key) {
if (!this._cookieCache) {
this._initCache();
}
return this._cookieCache[key];
},
_clearFallback: function() {
for (var i in this._cookieCache) {
document.cookie = this._generatePrefix() + i + '=; path=/; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
this._cookieCache = {};
},
_deleteFallback: function(key) {
document.cookie = this._generatePrefix() + key + '=; path=/; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
delete this._cookieCache[key];
},
get: function(key) {
return window.sessionStorage.getItem(key) || this._getFallback(key);
},
set: function(key, value, onceOnly) {
try {
window.sessionStorage.setItem(key, value);
} catch (e) {}
this._setFallback(key, value, onceOnly || false);
return this;
},
'delete': function(key) {
return this.remove(key);
},
remove: function(key) {
try {
window.sessionStorage.removeItem(key);
} catch (e) {};
this._deleteFallback(key);
return this;
},
_clearSession: function() {
try {
window.sessionStorage.clear();
} catch (e) {
for (var i in window.sessionStorage) {
window.sessionStorage.removeItem(i);
}
}
},
clear: function() {
this._clearSession();
this._clearFallback();
return this;
}
};
$.session._init();
})(jQuery);
How to use:
// DEFINIR SESSÃO
$.session.set('nome_da_session', 'valor_da_session');
// RECUPERAR SESSÃO
$.session.get('nome_da_session');
// OUTPUT "valor_da_session"
// LIMPAR TODAS AS SESSÕES
$.session.clear();
// CRIAR E RECUPERAR SESSÃO AO MESMO TEMPO
$.session.set('nome_da_session', 'valor_da_session').get('nome_da_session');
// OUTPUT > "valor_da_session"
// REMOVER SESSÃO ESPECÍFICA
$.session.remove('nome_da_session');
I hope it helps.
You use
JQuery
in your project? Or onlyAngularJS
?– MoisesGama
Yes I do a query in my BD, before starting this for
– Vinicius VAz
Not
Query
and yesJQuery
http://jquery.com/– MoisesGama
You understood what I said?
– MoisesGama
Got it, I use it
– Vinicius VAz
Blz, I have to pass a script for session creation via
jQuery
pear there.– MoisesGama