Exalea - Paramètre générique pour le P.D.O.
이 스크립트는 직접 설치하는 용도가 아닙니다. 다른 스크립트에서 메타 지시문 // @require https://update.greatest.deepsurf.us/scripts/4098/13110/setting-entryuserjs.js을(를) 사용하여 포함하는 라이브러리입니다.
/**
* Prototype d'un paramètre générique
*
* @author Exalea
*/
{
/**
* Constructeur
*
* @param {string} key Clef du cookie associé
* @param {string} defaultValue Valeur par défaut en cas d'absence de valeur enregistrée
* @returns {SettingEntry} this Instance courante (permet l'utilisation de méthodes chaînées)
* @constructor
*
* @author Exalea
*/
var SettingEntry = function(key, defaultValue) {
this.key = key;
this.defaultValue = defaultValue;
return this;
};
/**
* Assignation et persistance (durée de 100 ans par défaut) de la valeur du paramètre
*
* @param {string} value Valeur assignée et persistée
* @returns {SettingEntry} this Instance courante (permet l'utilisation de méthodes chaînées)
*
* @author Exalea
*/
SettingEntry.prototype.setValue = function (value) {
$.cookie(this.key, value, { expires : (100 * 365) });
return this;
};
/**
* Obtention de la valeur du paramètre
*
* @returns {string} Valeur du paramètre (chaîne de caractères)
*
* @author Exalea
*/
SettingEntry.prototype.getValue = function() {
return $.cookie(this.key);
}
/**
* Initialisation (assignation d'une valeur par défaut si nécessaire)
*
* @returns {SettingEntry} this Instance courante (permet l'utilisation de méthodes chaînées)
*
* @author Exalea
*/
SettingEntry.prototype.init = function() {
if(this.getValue() == null)
this.setValue(this.defaultValue);
return this;
}
}