1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
(function($){
//Constructeur de l'objet Modal Loader
function modalLoader($$,options) {
this.options = options;
if(options.close == true){
$$.remove();
}
else if(options.etat > 0 && options.txt != ''){
this.etat(options.etat,options.txt);
}
else{
$$.append(structure(this.options));
$$.dialog({modal:this.options.modal, width:this.options.width, height:this.options.height});
$(".ui-dialog-titlebar").hide();
$(".ui-dialog").css({padding:0,margin:0})
}
//console.log($(this));
};
function structure(opts){
r = '<div class="ui-helper-clearfix ui-state-default contentLoader-title" style="border:none;border-bottom:solid 1px #ddd;">'+opts.title+'</div>';
r += '<div class="dialog-content">Veuillez patientez pendant le chargement...</div>'
+ ' <div id="progressbar"></div>'
+ ' <div id="progresstxt" class="dialog-content"></div>';
return r;
}
//Cette methode permet de modifier l'état d'avancement
modalLoader.prototype.etat = function(s,t) {
$("#progressbar").progressbar({ value: s });
$("#progresstxt").html(t);
}
$.fn.modalLoader = function (options) {
//Nous étendons les options passé en paramètre avec nos par défauts (de telle manière à ce que ce soit les options passées en paramètre qui surcharge les options par défaut)
var optExtended = $.extend({
etat: 0,
title: 'Mon titre du dialog',
txt: '',
width: 500,
height: 300,
modal: true,
close: false,
}, options);
//Créé un objet slideshow pour chaque DOMObject sélectionné
return this.each(function () {
new modalLoader($(this), optExtended);
});
}
})(jQuery); |
Partager