| Current Path : /var/www/iplanru/data/www/i-plan.ru/templates/yoo_everest/warp/vendor/uikit/js/addons/ |
| Current File : /var/www/iplanru/data/www/i-plan.ru/templates/yoo_everest/warp/vendor/uikit/js/addons/notify.js |
(function(addon){if(typeof define=="function"&&define.amd){define("uikit-notify",["uikit"],function(){return jQuery.UIkit.notify||addon(window,window.jQuery,window.jQuery.UIkit)})}if(window&&window.jQuery&&window.jQuery.UIkit){addon(window,window.jQuery,window.jQuery.UIkit)}})(function(global,$,UI){var containers={},messages={},notify=function(options){if($.type(options)=="string"){options={message:options}}if(arguments[1]){options=$.extend(options,$.type(arguments[1])=="string"?{status:arguments[1]}:arguments[1])}return new Message(options).show()},closeAll=function(group,instantly){if(group){for(var id in messages){if(group===messages[id].group)messages[id].close(instantly)}}else{for(var id in messages){messages[id].close(instantly)}}};var Message=function(options){var $this=this;this.options=$.extend({},Message.defaults,options);this.uuid="ID"+(new Date).getTime()+"RAND"+Math.ceil(Math.random()*1e5);this.element=$(['<div class="uk-notify-message">','<a class="uk-close"></a>',"<div>"+this.options.message+"</div>","</div>"].join("")).data("notifyMessage",this);if(this.options.status){this.element.addClass("uk-notify-message-"+this.options.status);this.currentstatus=this.options.status}this.group=this.options.group;messages[this.uuid]=this;if(!containers[this.options.pos]){containers[this.options.pos]=$('<div class="uk-notify uk-notify-'+this.options.pos+'"></div>').appendTo("body").on("click",".uk-notify-message",function(){$(this).data("notifyMessage").close()})}};$.extend(Message.prototype,{uuid:false,element:false,timout:false,currentstatus:"",group:false,show:function(){if(this.element.is(":visible"))return;var $this=this;containers[this.options.pos].show().prepend(this.element);var marginbottom=parseInt(this.element.css("margin-bottom"),10);this.element.css({opacity:0,"margin-top":-1*this.element.outerHeight(),"margin-bottom":0}).animate({opacity:1,"margin-top":0,"margin-bottom":marginbottom},function(){if($this.options.timeout){var closefn=function(){$this.close()};$this.timeout=setTimeout(closefn,$this.options.timeout);$this.element.hover(function(){clearTimeout($this.timeout)},function(){$this.timeout=setTimeout(closefn,$this.options.timeout)})}});return this},close:function(instantly){var $this=this,finalize=function(){$this.element.remove();if(!containers[$this.options.pos].children().length){containers[$this.options.pos].hide()}delete messages[$this.uuid]};if(this.timeout)clearTimeout(this.timeout);if(instantly){finalize()}else{this.element.animate({opacity:0,"margin-top":-1*this.element.outerHeight(),"margin-bottom":0},function(){finalize()})}},content:function(html){var container=this.element.find(">div");if(!html){return container.html()}container.html(html);return this},status:function(status){if(!status){return this.currentstatus}this.element.removeClass("uk-notify-message-"+this.currentstatus).addClass("uk-notify-message-"+status);this.currentstatus=status;return this}});Message.defaults={message:"",status:"",timeout:5e3,group:null,pos:"top-center"};UI["notify"]=notify;UI["notify"].message=Message;UI["notify"].closeAll=closeAll;return notify});