                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                if(!window.__td){window.__MT=100;window.__ti=0;window.__td=[];window.__td.length=__MT;window.__noTrace=false;}


if(typeof(vp)=="undefined")
{
var vp={};
}

if(!vp.widget)
{
vp.widget={};
}

vp.widget.dialogButtons={};



var VP_WIDGET_DIALOG_BUTTON_ID_OK="okButton";
var VP_WIDGET_DIALOG_BUTTON_ID_CANCEL="cancelButton";
var VP_WIDGET_DIALOG_BUTTON_ID_NEXT="nextButton";
var VP_WIDGET_DIALOG_BUTTON_ID_BACK="backButton";
var VP_WIDGET_DIALOG_BUTTON_ID_DONE="doneButton";






vp.widget.dialogButtons.enable=function widget_dialogButtons_enable(vButton,bEnable)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oButton=vp.widget.dialogButtons.getButton(vButton);

if(oButton._isDisabled==!bEnable)
{
return;
}

var oDisabledButton=document.getElementById(oButton.id+"_disabled");

oButton.style.display=!bEnable?"none":"";
oDisabledButton.style.display=bEnable?"none":"";

oButton._isDisabled=!bEnable;

vp.ui.setStyleValue(oDisabledButton,"cursor","default");
};

vp.widget.dialogButtons.toggle=function widget_dialogButtons_toggle(vButton)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oButton=vp.widget.dialogButtons.getButton(vButton);
vp.widget.dialogButtons.enable(oButton,oButton._isDisabled);
};

vp.widget.dialogButtons.swapButtons=function widget_dialogButtons_swapButtons(vButtonToHide,vButtonToShow)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oButtonToHide=vp.widget.dialogButtons.getButton(vButtonToHide);
var oButtonToShow=vp.widget.dialogButtons.getButton(vButtonToShow);
oButtonToHide.parentNode.style.display="none";
oButtonToShow.parentNode.style.display="";
};

vp.widget.dialogButtons.getButton=function widget_dialogButtons_getButton(vButtonOrID)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oButton;


var oDialog=vp.dialog.getCurrent();
if(typeof(vButtonOrID)=="string"&&oDialog&&oDialog._buttons)
{
oButton=oDialog._buttons[vButtonOrID];
}
else
{
oButton=vp.core.getElement(vButtonOrID,"vp.widget.dialogButtons.enable");
}

return oButton;
};

vp.widget.dialogButtons.positionDialogButtons=function widget_dialogButtons_positionDialogButtons()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oFooter=null;


var aDivs=window.document.getElementsByTagName("div");
for(var i=0;i<aDivs.length;i++)
{
var oDiv=aDivs[i];
if(oDiv.className=="dialogButtons"&&!oDiv.getAttribute("dialogid"))
{
oFooter=oDiv;
break;
}
}


if(oFooter.parentNode!=window.document.body)
{
oFooter.parentNode.removeChild(oFooter);
window.document.body.appendChild(oFooter);
}

var oSize=window.vp.ui.getViewportSize();
oFooter.style.display="block";


oFooter.style.left="0px";
oFooter.style.top=(oSize.height-oFooter.offsetHeight-2)+"px";
oFooter.style.visibility="visible";
};

vp.widget.dialogButtons.init=function widget_dialogButtons_init()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(vp.dialog)
{
vp.dialog.addOnResizeHandlerToCurrent(vp.widget.dialogButtons.positionDialogButtons);
}
};



vp.core.markAsClosure(vp.widget.dialogButtons.positionDialogButtons);

vp.widget.dialogButtons.initForIFrameDialog=function widget_dialogButtons_initForIFrameDialog()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
vp.events.addOnDOMLoadHandler(vp.widget.dialogButtons.init);
vp.events.addOnDOMLoadHandler(vp.widget.dialogButtons.positionDialogButtons);
vp.events.add(window,"resize",vp.widget.dialogButtons.positionDialogButtons);
};

vp.widget.dialogButtons.initForNodeDialog=function widget_dialogButtons_initForNodeDialog(sDialogID)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oDialogNode=document.getElementById(sDialogID);
var oButtons=vp.ui.collectElementsByAttribute(oDialogNode,"dialog-button-type");

var oDialog=vp.dialog.get(sDialogID);
oDialog._buttons=oButtons;

var fnPositionButtons=function pv_fnPositionButtons(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oButtonsRect=vp.ui.getRect(oButtons.container);
var oDialogRect=vp.ui.getRect(oDialog.getContentContainer().parentNode);

var iDiff=oDialogRect.bottom-oButtonsRect.bottom;
if(iDiff>0)
{
oButtons.container.style.marginTop=iDiff+"px";
}
else if(iDiff<0)
{
oDialog.resizeToFitContent(false);
}
};

oDialog.onopen.addHandler(fnPositionButtons);
};
