14 lines
2.8 KiB
JavaScript
14 lines
2.8 KiB
JavaScript
/*!
|
|
* jquery.confirm
|
|
*
|
|
* @version 2.7.0
|
|
*
|
|
* @author My C-Labs
|
|
* @author Matthieu Napoli <matthieu@mnapoli.fr>
|
|
* @author Russel Vela
|
|
* @author Marcus Schwarz <msspamfang@gmx.de>
|
|
*
|
|
* @license MIT
|
|
* @url https://myclabs.github.io/jquery.confirm/
|
|
*/ !function(o){o.fn.confirm=function(t){return void 0===t&&(t={}),this.click(function(n){n.preventDefault();var i=o.extend({button:o(this)},t);o.confirm(i,n)}),this},o.confirm=function(t,n){if(void 0===t){console.error("No options given.");return}if(!(o(".confirmation-modal").length>0)){var i={};t.button&&o.each({title:"title",text:"text","confirm-button":"confirmButton","submit-form":"submitForm","cancel-button":"cancelButton","confirm-button-class":"confirmButtonClass","cancel-button-class":"cancelButtonClass","dialog-class":"dialogClass","modal-options-backdrop":"modalOptionsBackdrop","modal-options-keyboard":"modalOptionsKeyboard"},function(o,n){var a=t.button.data(o);void 0!==a&&(i[n]=a)});var a=o.extend({},o.confirm.options,{confirm:function(){if(i.submitForm||void 0===i.submitForm&&t.submitForm||void 0===i.submitForm&&void 0===t.submitForm&&o.confirm.options.submitForm)n.target.closest("form").submit();else{var a=n&&("string"==typeof n&&n||n.currentTarget&&n.currentTarget.attributes.href.value);if(a){if(t.post){var s=o('<form method="post" class="hide" action="'+a+'"></form>');o("body").append(s),s.submit()}else window.location=a}}},cancel:function(o){},button:null},t,i),s="";""!==a.title&&(s='<div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button><h4 class="modal-title">'+a.title+"</h4></div>");var c="";a.cancelButton&&(c='<button class="cancel btn '+a.cancelButtonClass+'" type="button" data-dismiss="modal">'+a.cancelButton+"</button>");var d=o('<div class="confirmation-modal modal fade" tabindex="-1" role="dialog"><div class="'+a.dialogClass+'"><div class="modal-content">'+s+'<div class="modal-body">'+a.text+'</div><div class="modal-footer"><button class="confirm btn '+a.confirmButtonClass+'" type="button" data-dismiss="modal">'+a.confirmButton+"</button>"+c+"</div></div></div></div>");(void 0!==a.modalOptionsBackdrop||void 0!==a.modalOptionsKeyboard)&&d.modal({backdrop:a.modalOptionsBackdrop,keyboard:a.modalOptionsKeyboard}),d.on("shown.bs.modal",function(){d.find(".btn-primary:first").focus()}),d.on("hidden.bs.modal",function(){d.remove()}),d.find(".confirm").click(function(){a.confirm(a.button)}),d.find(".cancel").click(function(){a.cancel(a.button)}),o("body").append(d),d.modal("show")}},o.confirm.options={text:"Are you sure?",title:"",confirmButton:"Yes",cancelButton:"Cancel",post:!1,submitForm:!1,confirmButtonClass:"btn-primary",cancelButtonClass:"btn-default",dialogClass:"modal-dialog",modalOptionsBackdrop:!0,modalOptionsKeyboard:!0}}(jQuery);
|