var skdialog={dialogs:new Array(),mask:null,alert:function(A,B,C){if(!C){C={}}Object.extend(C,{title:C.title==null?"":C.title,content:A,buttons:{skdialog_ok:{html:'<a href="javascript:void(0)"><img class="btn-ok" alt="OK" title="OK" src="/img/btn_ok_en.gif" onmouseover="img_change(this, \u0027/img/btn_ok_en_hover.gif\u0027)" onmouseout="img_restore(this)" /></a>'}},onClose:B,addCloseButton:true});return this.show(C)},confirm:function(A,B,C){if(!C){C={}}Object.extend(C,{title:C.title==null?"確認":C.title,content:A,buttons:{skdialog_ok:{html:'<a href="javascript:void(0)"><img class="btn-ok" alt="OK" title="OK" src="/img/btn_ok_en.gif" onmouseover="img_change(this, \u0027/img/btn_ok_en_hover.gif\u0027)" onmouseout="img_restore(this)" /></a>',onclick:B},skdialog_cancel:{html:'<a id="skdialogButtonCancel" href="javascript:void(0)"><img class="btn-cancel" alt="Cancel" title="Cancel" src="/img/btn_cancel.gif" onmouseover="img_change(this, \u0027/img/btn_cancel_hover.gif\u0027)" onmouseout="img_restore(this)" /></a>'}},addCloseButton:true});return this.show(C)},prompt:function(A,B,C,D){if(!B){B=""}if(!D){D={}}Object.extend(D,{title:D.title==null?"入力":D.title,content:A+'<p><input id="skdialogPromptInput" value="'+B+'" /></p>',buttons:{skdialog_ok:{html:'<a href="javascript:void(0)"><img class="btn-ok" alt="OK" title="OK" src="/img/btn_ok_en.gif" onmouseover="img_change(this, \u0027/img/btn_ok_en_hover.gif\u0027)" onmouseout="img_restore(this)" /></a>',onclick:function(){C($("skdialogPromptInput").value)}},skdialog_cancel:{html:'<a href="javascript:void(0)"><img class="btn-cancel" alt="Cancel" title="Cancel" src="/img/btn_cancel.gif" onmouseover="img_change(this, \u0027/img/btn_cancel_hover.gif\u0027)" onmouseout="img_restore(this)" /></a>'}},focusId:"skdialogPromptInput",addCloseButton:true});return this.show(D)},show:function(A){A=Object.extend({},A||{});this._init();if(this.mask.style.visibility=="hidden"){this.mask.style.width="0px";this.mask.style.height="0px";document.body.appendChild(this.mask);this._onResize();this.mask.style.visibility="";Event.observe(document,"keypress",this.__onKeypress);Event.observe(window,"resize",this.__onResize);this._workaround()}this._hiddenSelectBox();var C=new skdialog._Dialog();if(this.dialogs.length>0){this.dialogs.last().dialogWindow.style.zIndex=999}this.dialogs.push(C);C.show(A);var B;var D;new Draggable(C.dialogWindow,{handle:"title",starteffect:function(){B=document.documentElement.scrollWidth;D=document.documentElement.scrollHeight},snap:function(E,F){if(E<-15){E=-15}if(E>B-C.dialogWindow.offsetWidth-15){E=B-C.dialogWindow.offsetWidth-15}if(F<0){F=0}if(F>D-C.dialogWindow.offsetHeight-15){F=D-C.dialogWindow.offsetHeight-15}return[E,F]}});C.title.style.cursor="move";Event.observe(C.title,"mousedown",function(){new Effect.Opacity(C.dialogWindow,{duration:0.2,from:Element.getOpacity(C.dialogWindow),to:0.4})});Event.observe(C.title,"mouseup",function(){new Effect.Opacity(C.dialogWindow,{duration:0.2,from:Element.getOpacity(C.dialogWindow),to:1})});if(A.onOpen){setTimeout(function(){A.onOpen()},0)}return false},changeContent:function(A){this.dialogs.last().changeContent(A);if(A.focusId&&$(A.focusId)){setTimeout(function(){$(A.focusId).focus()},0)}},revalidate:function(){this._onResize()},close:function(){var A=this.dialogs.pop();if(A){A.close()}if(this.dialogs.length==0){Event.stopObserving(document,"keypress",this.__onKeypress);Event.stopObserving(window,"resize",this.__onResize);try{this.mask.style.visibility="hidden";document.body.removeChild(this.mask)}catch(B){}this._workaround_recovery()}else{var C=this.dialogs.last();C.dialogWindow.style.zIndex=1001;if(C.buttonPanel&&C.buttonPanel.firstChild){C.buttonPanel.firstChild.focus()}}this._showSelectBox()},_init:function(){if(this.mask){return }this.mask=createDiv("skdialogMask","skdialogMask");this.mask.style.position="absolute";this.mask.style.left="0px";this.mask.style.top="0px";this.mask.style.zIndex=1000;Element.setStyle(this.mask,{opacity:0.5});this.mask.style.visibility="hidden";Event.observe(this.mask,"click",function(A){Event.stop(A);return false}.bindAsEventListener(this));this.__onKeypress=this._onKeypress.bindAsEventListener(this);this.__onResize=this._onResize.bindAsEventListener(this)},_workaround:function(){if(navigator.userAgent.match(/Macintosh.*Firefox/)){elem=$("empInner");if(elem){Element.setStyle(elem,{visibility:"hidden"})}elem=$("HomeColA");if(elem){Element.setStyle(elem,{visibility:"hidden"})}}if(Prototype.Browser.WebKit){if($("skybanner-block")){Element.setStyle("skybanner-block",{visibility:"hidden"})}}if(Prototype.Browser.Opera||navigator.userAgent.match(/Firefox/)){this.scrollPanes=new Array();this._traverse(document.body)}},_traverse:function(C){try{var A=Element.getStyle(C,"overflow");switch(A){case"auto":case"scroll":case null:this.scrollPanes.push({e:C,v:{overflow:A?A:"auto"}});Element.setStyle(C,{overflow:"hidden"})}var A=Element.getStyle(C,"overflow-x");switch(A){case"auto":case"scroll":case null:this.scrollPanes.push({e:C,v:{"overflow-x":A?A:"auto"}});Element.setStyle(C,{"overflow-x":"hidden"})}var A=Element.getStyle(C,"overflow-y");switch(A){case"auto":case"scroll":case null:this.scrollPanes.push({e:C,v:{"overflow-y":A?A:"auto"}});Element.setStyle(C,{"overflow-y":"hidden"})}}catch(B){alert(B)}var D=C.firstChild;for(;D;D=D.nextSibling){if(D.nodeType!=1){continue}this._traverse(D)}},_workaround_recovery:function(){if(navigator.userAgent.match(/Macintosh.*Firefox/)){elem=$("empInner");if(elem){Element.setStyle(elem,{visibility:"visible"})}elem=$("HomeColA");if(elem){Element.setStyle(elem,{visibility:"visible"})}}if(Prototype.Browser.WebKit){if($("skybanner-block")){Element.setStyle("skybanner-block",{visibility:"visible"})}}if(this.scrollPanes){for(var A=0;A<this.scrollPanes.length;A++){Element.setStyle(this.scrollPanes[A].e,this.scrollPanes[A].v)}}},_onResize:function(B){if(!this.mask){return }var A=new Viewport();this.mask.style.width=A.pageWidth+"px";this.mask.style.height=A.pageHeight+"px";this.dialogs.each(function(C){C._onResize(A)})},_onKeypress:function(B){var A;if(!B){A=event.keyCode}else{A=B.keyCode}if(A==27){this.close();Event.stop(B);return false}return true},_showSelectBox:function(){if(Prototype.Browser.IE){var B;if(this.dialogs.length==0){selectElements=document.getElementsByTagName("select")}else{selectElements=this.dialogs.last().dialogWindow.getElementsByTagName("select")}for(var A=0;A<selectElements.length;A++){Element.setStyle(selectElements[A],{visibility:"visible"})}}},_hiddenSelectBox:function(){if(Prototype.Browser.IE){var B=document.getElementsByTagName("select");for(var A=0;A<B.length;A++){Element.setStyle(B[A],{visibility:"hidden"})}}}};skdialog._Dialog=Class.create();skdialog._Dialog.prototype={initialize:function(){this.dialogWindow=createDiv("skdialogWindow");this.dialogWindow.id="skdialogWindowId";this.dialogWindow.style.position="absolute";this.dialogWindow.style.zIndex=1001;var A;var B=createElement("table",null,"table_window",A=createElement("tbody"));var C;C=createElement("tr");C.appendChild(createElement("td",null,"dialog_nw"));C.appendChild(this.title=createElement("td",null,"dialog_n title"));C.appendChild(createElement("td",null,"dialog_ne"));A.appendChild(C);C=createElement("tr");C.appendChild(createElement("td",null,"dialog_w"));var D=createElement("td",null,null,this.body=createDiv("dialog_content"));D.style.backgroundColor="#FFFFFF";C.appendChild(D);C.appendChild(createElement("td",null,"dialog_e"));A.appendChild(C);C=createElement("tr");C.appendChild(createElement("td",null,"dialog_sw"));C.appendChild(this.titleEl=createElement("td",null,"dialog_s"));C.appendChild(createElement("td",null,"dialog_se"));A.appendChild(C);this.dialogWindow.appendChild(B)},show:function(A){this.dialogWindow.style.left="-5000px";this.dialogWindow.style.top="0px";document.body.appendChild(this.dialogWindow);this.changeContent(A,true);this.dialogWindow.style.visibility="hidden";this._onResize(new Viewport());if(Prototype.Browser.WebKit){input_list=this.dialogWindow.getElementsByTagName("input");for(i=0;i<input_list.length;++i){input_list[i].onkeypress=function(C){evt=C;var B=(evt.charCode)?evt.charCode:((evt.which)?evt.which:evt.keyCode);if(B==13||B==3){return false}else{return true}}}}this.dialogWindow.style.display="none";this.dialogWindow.style.visibility="visible";new Effect.Appear(this.dialogWindow,{duration:0.2,afterFinish:function(){if(A.focusId&&$(A.focusId)){$(A.focusId).focus()}else{if(this.buttonPanel&&this.buttonPanel.firstChild){this.buttonPanel.firstChild.focus()}else{if($("skdialog_close_button")){$("skdialog_close_button").focus()}}}}.bind(this)})},changeContent:function(A,B){if(A.width){this.dialogWindow.style.width=A.width+"px"}if(A.title){Element.update(this.title,A.title)}if(A.html){Element.update(this.dialogWindow,A.html.replace(/_extended="true"/g,""))}if(A.htmlURL){Element.update(this.dialogWindow,responseTextFilter(ajaxGet(A.htmlURL).responseText))}if(A.content){Element.update(this.body,A.content.replace(/_extended="true"/g,""))}if(A.contentURL){Element.update(this.body,responseTextFilter(ajaxGet(A.contentURL).responseText))}if(A.onOpen){this.onOpen=A.onOpen}if(A.onClose){this.onClose=A.onClose}if(A.buttons){this._addButtons(A.buttons)}if(A.addCloseButton){this._addCloseButton()}if(!B){this._onResize(new Viewport())}},close_:function(){if(this.onClose){this.onClose()}new Effect.Fade(this.dialogWindow,{duration:0.2,afterFinish:function(){document.body.removeChild(this.dialogWindow)}.bind(this)})},close:function(){if(Prototype.Browser.WebKit){this.close_()}else{this.close_()}},_addButtons:function(C){this.body.style.paddingBottom="25px";if(!this.buttonPanel){this.buttonPanel=createDiv("skdialogButtons");this.buttonPanel.style.padding="6px";this.buttonPanel.style.position="absolute";this.buttonPanel.style.right="10px";this.buttonPanel.style.bottom="5px"}else{this.buttonPanel.innerHTML=""}this.body.appendChild(this.buttonPanel);for(var B in C){var D=C[B];var F=$(B);if(!F){if(D&&D.html){var E=createDiv();Element.update(E,D.html);F=firstChildElement(E);this.buttonPanel.appendChild(F)}else{var A=D.tag?D.tag:"button";F=document.createElement(A);if(A=="button"){Element.update(F,B)}this.buttonPanel.appendChild(F)}}Element.addClassName(F,"skdialogButton");Event.observe(F,"click",function(H){var G=false;if(this.fn){G=this.fn()}if(!G){skdialog.close()}Event.stop(H);return G}.bindAsEventListener(F));if(D){if(typeof (D)=="function"){F.fn=D}else{if(D.onclick){F.fn=D.onclick}}}}},_onResize:function(A){this.dialogWindow.style.left=((A.windowWidth-Element.getWidth(this.dialogWindow))/2+A.scrollX)+"px";if(Prototype.Browser.Opera){this.dialogWindow.style.top=(A.scrollY+40)+"px"}else{this.dialogWindow.style.top=((A.windowHeight-Element.getHeight(this.dialogWindow))/2+A.scrollY)+"px"}},_addCloseButton:function(){var B=createDiv("dialog_close");var A=createElement("a");A.appendChild(document.createTextNode("終了"));A.href="javascript:void(skdialog.close());";B.appendChild(A);this.body.appendChild(B)}};
