$.extend($.ui.dialog.prototype,{load:function(src,title){var o=this;$(ajax.messages).bind('popupDialogCall',function(e,data){switch(data.action){case'message':o.showMessage(data.message);o.element.unblock();break;case'load':o.loadContent(data.src);break;case'close':o.close();break;case'jsCall':if(data.toEval){eval(data.toEval);}
break;}});return this.loadContent(src);},callback:function(state,a,b,c,d){if(!state){xAlert(txt_ajax_error_note,lbl_error);return false;}
return this.onload(a,'success');},loadContent:function(src){src+=(src.search(/\?/)===-1?'?':'&')+'open_in_layer=Y&is_ajax_request=Y&keep_https=Y';var o=this;return ajax.query.add({type:'GET',url:src,data:{},success:function(a,b,c,d){return o.callback(true,a,b,c,d);},error:function(a,b,c,d){this.close();return o.callback(false,a,b,c,d);}})!==false;},submitHandler:function(f){if(undefined!==f.onsubmit&&f.onsubmit&&f.onsubmit.constructor!=String&&!f.onsubmit()){return true;}
if(!checkFormFields(f)){return true;}
var elm=$(f).parents('.popup-dialog').get(0);$(elm).block();var url=f.action;url+=(url.search(/\?/)===-1?'?':'&')+'open_in_layer=Y&is_ajax_request=Y&keep_https=Y';var o=this;return ajax.query.add({type:f.method?f.method.toUpperCase():'GET',url:url,data:$(f).serialize(),success:function(a,b,c,d){return o.callback(true,a,b,c,d);},error:function(a,b,c,d){return o.callback(false,a,b,c,d);}})!==false;},clickHandler:function(l){var url=l.href;url+=(url.search(/\?/)===-1?'?':'&')+'open_in_layer=Y&is_ajax_request=Y&keep_https=Y';var o=this;return ajax.query.add({type:'GET',url:url,data:{},success:function(a,b,c,d){return o.callback(true,a,b,c,d);},error:function(a,b,c,d){return o.callback(false,a,b,c,d);}})!==false;},onload:function(data,s){if(s!='success'){return false;}
ajax.core.processMessages(data);if(!this.processResponse(data)){if(this.insertData(data)){this.processInsertData();this.activate();}}
return true;},activate:function(){if(!this.isOpen()){this.open();}
if($.browser.msie&&parseFloat($.browser.version)<7){var sw=this.element.get(0).scrollWidth;var ow=this.element.get(0).offsetWidth;if(sw>ow){this.option('width',sw);}
var sh=this.element.get(0).scrollHeight;var oh=this.element.get(0).offsetHeight
if(sh>oh){this.option('height',sh);}}
this.element.unblock();if(this.option('height')>this.option('maxHeight')){this.option('height',this.option('maxHeight'));}
if(this.option('width')>this.option('maxWidth')){this.option('width',this.option('maxWidth'));}
this._position('center');},showMessage:function(data){if(data===undefined||!data.type||!data.content){return false;}
var msgbox=$('.ajax-popup-error-message',this.element).get(0);if(msgbox!==undefined){var icon=$(document.createElement('span')).attr('class','ui-icon '+(data.type=='I'?'ui-icon-info':'ui-icon-alert'));var text=$(msgbox).children('p').get(0);if(data.type=='I'){$(msgbox).removeClass('ui-state-error').addClass('ui-state-highlight');}else{$(msgbox).removeClass('ui-state-highlight').addClass('ui-state-error');}
$(msgbox).width(this.element.width());$(text).html(data.content).prepend(icon);if($(msgbox).not(':visible')){$(msgbox).show();}}},processResponse:function(data){if(!data)
return false;var m,l;if(data.search(/\/\* CMD: opener_reload \*\//)!=-1){this.close();window.location.reload();return true;}
if(data.search(/\/\* CMD: opener_relocate \*\//)!=-1){this.close();if(m=data.match(/window.parent.location = '([^']+)'/)){window.location=m[1];}
return true;}
if(data.search(/\/\* CMD: window_close \*\//)!=-1){this.close();return true;}
try{if((m=data.match(/<meta http-equiv="Refresh" content="[0-9]+;URL=([^"]+)" \/>/))||(this._ajax&&(l=this._ajax.getResponseHeader('Location')))){if(m)
l=m[1];this.load(l);return true;}}catch(e){}
return false;},insertData:function(data){var m;data=data.replace(/\r/g,'');m=data.match(new RegExp("<!-- MAIN -->\n*((?:.*\n)+.*)<!-- \/MAIN -->"));if(!m)
m=data.match(new RegExp("<body[^>]*>\n*((?:.*\n)+.*)<\/body>",'i'));if(!m)
return false;this.element.html(m[1]);if(m=data.match(new RegExp("<title>(.+)<\/title>"))){this.setTitle(m[1]);this.element.find('h1:first').hide();this.element.prepend('<div class="ajax-popup-error-message ui-state-highlight ui-corner-all"><p><span class="ui-icon ui-icon-info"></span></p></div>');}
ajax.core.normalizeElements(this.element);return true;},setTitle:function(title){$(".ui-dialog-title",this.uiDialogTitlebar).html(title?title:'');},processInsertData:function(){$(this).trigger('onload');var o=this;$('form',this.element).bind('submit',function(){return!o.submitHandler(this);});$('a:not([href^="javascript:"])',this.element).bind('click',function(){return!o.clickHandler(this);});return true;}});function popupOpen(src,title,params){$('.popup-dialog').dialog('destroy').remove();var popup=$(document.createElement('div')).attr('class','popup-dialog').css('display','none').appendTo('body');var dialogOpts={modal:true,bgiframe:true,autoOpen:true,draggable:false,resizable:false,width:($.browser.msie&&parseFloat($.browser.version)<7)?'400':'auto',height:($.browser.msie&&parseFloat($.browser.version)<7)?'350':'auto',position:'center',maxHeight:600,maxWidth:800,zIndex:5000,closeOnEscape:false,open:function(event,ui){if($.browser.msie&&parseFloat($.browser.version)<7){if($(this).dialog('option','width')=='auto'){$(this).dialog('option','width',$(this).width());}}}};if(undefined!==params){for(var i in params){dialogOpts[i]=params[i];}}
try{$(popup).dialog(dialogOpts).block().dialog('load',src,title);}catch(e){return false;}
window.close=function(){$(popup).dialog('close');}
return true;}
