Revision e39679e4
Von Moritz Bunkus vor etwa 8 Jahren hinzugefügt
js/kivi.js | ||
---|---|---|
|
||
params = params || { };
|
||
var id = params.id || 'jqueryui_popup_dialog';
|
||
var custom_close = params.dialog ? params.dialog.close : undefined;
|
||
var dialog_params = $.extend(
|
||
{ // kivitendo default parameters:
|
||
width: 800
|
||
... | ... | |
// User supplied options:
|
||
params.dialog || { },
|
||
{ // Options that must not be changed:
|
||
close: function(event, ui) { if (params.url || params.html) dialog.remove(); else dialog.dialog('close'); }
|
||
close: function(event, ui) {
|
||
if (custom_close)
|
||
custom_close();
|
||
|
||
if (params.url || params.html)
|
||
dialog.remove();
|
||
else
|
||
dialog.dialog('close');
|
||
}
|
||
});
|
||
|
||
if (!params.url && !params.html) {
|
Auch abrufbar als: Unified diff
kivi.popup_dialog(): übergebenen close-Handler auch ausführen
Die Funktion kivi.popup_dialog() installiert ihren eigenen
close-Handler, um den in dem Moment noch vorhandenen Dialog zu
entfernen (sofern der Dialog aus HTML-Code erzeugt oder von einer URL
nachgeladen wurde) bzw. zu schließen (sofern ein vorher bereits im DOM
existierendes Element angezeigt wurde). Dadurch werden vom Aufrufer
vergebene close-Handler überschrieben.
Da es mehrere Stellen im Programm gibt, an denen ein close-Handler
übergeben wird, wurde kivi.popup_dialog() nun so erweitert, dass es den
übergebenen Handler speichert und zuerst ausführt und erst anschließend
das Entfernen respektive Schließen durchführt.