forked from cresjie/bsbox
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbsbox2-bundle.min.js
6 lines (6 loc) · 3.58 KB
/
bsbox2-bundle.min.js
1
2
3
4
5
6
/*
* bsbox 2.0.1.0
* required: jQuery
* Author: Cres Jie Labasano
* Email: [email protected]
*/!function(t,o){"use strict";if(!o)return console.error("jQuery is required"),0;var n={dialog:{title:"Message",type:""},notification:{sticky:!1,timeout:5e3,type:"success",closeBtn:!0,template:"alert",message:"Bsbox Notification",closeOnClick:!0,transitionIn:"slideDown",transitionOut:"slideUp",location:"bottom left"}},e={NotifContainerClass:".bsbox-notif-container"},i={dialog:function(t){var n="",e="";t.title&&(n='<div class="modal-header box-header box-'+t.type+'" ><button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button><h4 class="modal-title">'+t.title+"</h4></div>"),t.message&&(e='<div class="modal-body box-'+(t.type&&!t.title?t.type:"")+'">'+t.message+"</div>");var i='<div id="bsboxDialog" class="modal fade"><div class="modal-dialog"><div class="modal-content">'+n+e+"</div></div></div>",a=o(i);if(t.buttons){a.find(".modal-content").append('<div class="modal-footer"></div>');for(var s=0;s<t.buttons.length;s++){var r=t.buttons[s],d=o('<button class="btn"></button>').html(r.text).on(r.on);r["class"]&&d.addClass(r["class"]),r.attr&&d.attr(r.attr),a.find(".modal-footer").append(d)}}return a},notication:{alert:function(t){var n=o('<div class="alert alert-'+t.type+'" style="display:none"></div>').html(t.message);if(t.closeBtn){var e=o('<button class="close">×</button>');n.prepend(e)}return n}}},a=function(t){var n=function(t){t&&(t="."+t.replace(/ /gi,"."));var n=e.NotifContainerClass+t;if(o(n).length)return o(n);var i=o('<div class="'+n.replace(/\./gi," ")+'"></div>');return o("body").append(i),i},s=n(t.location),r=i.notication[t.template](t);return t.sticky||setTimeout(a.close,t.timeout,r,t),t.closeOnClick&&r.click(function(){a.close(o(this),t)}),s.append(r),r.data("bsboxNotif.options",t)[t.transitionIn]()};a.close=function(t,o){t[o.transitionOut]({complete:function(){this.remove()}})},t.bsbox={dialog:function(t){var t=t.constructor==Object?o.extend({},n.dialog,t):o.extend({},n.dialog,{message:t}),e=i.dialog(t).on("hidden.bs.modal",function(){this.remove()});return o("body").append(e),e.modal("show")},notif:function(t){return t=t.constructor==Object?o.extend({},n.notification,t):o.extend({},n.notification,{message:t}),a(t)},version:"2.0.1.0"},o.extend(bsbox.notif,{close:function(t){a.close(t,t.data("bsboxNotif.options"))},addTemplate:function(t,o){return i.notification[t]=o,this}})}(window,jQuery),function(t,o,n){"use strict";return"undefined"==typeof o&&"undefined"==typeof n?(console.error("jQuery and bsbox are required"),0):(n.alert=function(t,e){var i={title:"",buttons:[{text:"OK",attr:{"data-dismiss":"modal"},"class":"btn-primary"}]};t.constructor==String?i.message=t:i=o.extend(i,t);var a=n.dialog(i);return a.on("hidden.bs.modal",e),a},n.confirm=function(t,e){var i={message:"",buttons:[{text:"OK",attr:{"data-dismiss":"modal"},"class":"btn-primary",on:{click:function(){a=!0}}},{text:"Cancel",attr:{"data-dismiss":"modal"},"class":"btn-danger"}]};t.constructor==String?i.title=t:i=o.extend(i,t);var a=!1,s=n.dialog(i);return e&&s.on("hidden.bs.modal",function(t){e.call(this,a)}),s},void(n.prompt=function(t,e){var i={message:'<input type="text" class="form-control" id="bsbox_prompt_input">',buttons:[{text:"OK",attr:{"data-dismiss":"modal"},"class":"btn-primary",on:{click:function(){a=o(this).parents(".modal").find("#bsbox_prompt_input").val()}}},{text:"Cancel",attr:{"data-dismiss":"modal"},"class":"btn-danger"}]};t.constructor==String?i.title=t:i=o.extend(i,t);var a,s=n.dialog(i);return e&&s.on("hidden.bs.modal",function(t){e.call(this,a)}),s}))}(window,jQuery,bsbox);