2015-02-10 19:41:24 +00:00
|
|
|
define(function(require, module, exports) {
|
|
|
|
main.consumes = ["Dialog", "util"];
|
|
|
|
main.provides = ["dialog.confirm"];
|
|
|
|
return main;
|
|
|
|
|
|
|
|
function main(options, imports, register) {
|
|
|
|
var Dialog = imports.Dialog;
|
|
|
|
var util = imports.util;
|
|
|
|
|
|
|
|
/***** Initialization *****/
|
|
|
|
|
|
|
|
var plugin = new Dialog("Ajax.org", main.consumes, {
|
|
|
|
name: "dialog.confirm",
|
|
|
|
allowClose: false,
|
|
|
|
modal: true,
|
|
|
|
elements: [
|
|
|
|
{ type: "button", id: "cancel", caption: "Cancel", hotkey: "ESC", onclick: function(){ plugin.hide() } },
|
|
|
|
{ type: "button", id: "ok", caption: "OK", color: "green", "default": true, onclick: function(){ plugin.hide() } }
|
|
|
|
]
|
|
|
|
});
|
|
|
|
|
|
|
|
/***** Methods *****/
|
|
|
|
|
2015-09-07 13:37:42 +00:00
|
|
|
function show(title, header, msg, onconfirm, oncancel, options) {
|
2015-02-10 19:41:24 +00:00
|
|
|
return plugin.queue(function(){
|
|
|
|
plugin.title = title;
|
2015-09-07 13:37:42 +00:00
|
|
|
plugin.heading = options && options.isHTML ? header : util.escapeXml(header);
|
2015-09-07 14:06:53 +00:00
|
|
|
plugin.body = options && options.isHTML ? msg : util.escapeXml(msg).replace(/\n/g, "<br>");
|
2015-02-10 19:41:24 +00:00
|
|
|
|
|
|
|
plugin.update([
|
|
|
|
{ id: "ok", onclick: function(){ plugin.hide(); onconfirm(); } },
|
|
|
|
{ id: "cancel", onclick: function(){ plugin.hide(); oncancel && oncancel(); } },
|
|
|
|
]);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
/***** Register *****/
|
|
|
|
|
|
|
|
plugin.freezePublicAPI({
|
|
|
|
show: show
|
|
|
|
});
|
|
|
|
|
|
|
|
register("", {
|
|
|
|
"dialog.confirm": plugin
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|