DHTML_modalMessage=function()
{var url;var htmlOfModalMessage;var divs_transparentDiv;var divs_content;var iframe;var layoutCss;var width;var height;var existingBodyOverFlowStyle;var dynContentObj;var cssClassOfMessageBox;var shadowDivVisible;var shadowOffset;var MSIE;this.url='';this.htmlOfModalMessage=null;this.layoutCss='modal-message.css';this.height=200;this.width=400;this.cssClassOfMessageBox=false;this.shadowDivVisible=true;this.shadowOffset=5;this.MSIE=false;if(navigator.userAgent.indexOf('MSIE')>=0)this.MSIE=true;}
DHTML_modalMessage.prototype={setSource:function(urlOfSource)
{this.url=urlOfSource;},setHtmlContent:function(contentDivId)
{var contentDiv=document.getElementById(contentDivId);this.htmlOfModalMessage=contentDiv.parentNode.removeChild(contentDiv);},setSize:function(width,height)
{if(width)this.width=width;if(height)this.height=height;},setCssClassMessageBox:function(newCssClass)
{this.cssClassOfMessageBox=newCssClass;if(this.divs_content){if(this.cssClassOfMessageBox)
this.divs_content.className=this.cssClassOfMessageBox;else
this.divs_content.className='modalDialog_contentDiv';}},setShadowOffset:function(newShadowOffset)
{this.shadowOffset=newShadowOffset},display:function()
{if(!this.divs_transparentDiv){this.__createDivs();}
this.divs_transparentDiv.style.display='block';this.divs_content.style.display='block';this.divs_shadow.style.display='block';if(this.MSIE)this.iframe.style.display='block';this.__resizeDivs();window.refToThisModalBoxObj=this;setTimeout('window.refToThisModalBoxObj.__resizeDivs()',150);this.__insertContent();},setShadowDivVisible:function(visible)
{this.shadowDivVisible=visible;},close:function()
{this.divs_transparentDiv.style.display='none';this.divs_content.style.display='none';this.divs_shadow.style.display='none';if(this.MSIE)this.iframe.style.display='none';},addEvent:function(whichObject,eventType,functionName,suffix)
{if(!suffix)suffix='';if(whichObject.attachEvent){whichObject['e'+eventType+functionName+suffix]=functionName;whichObject[eventType+functionName+suffix]=function(){whichObject['e'+eventType+functionName+suffix](window.event);}
whichObject.attachEvent('on'+eventType,whichObject[eventType+functionName+suffix]);}else
whichObject.addEventListener(eventType,functionName,false);},__createDivs:function()
{this.divs_transparentDiv=document.createElement('DIV');this.divs_transparentDiv.className='modalDialog_transparentDivs';this.divs_transparentDiv.style.left='0px';this.divs_transparentDiv.style.top='0px';document.forms[0].appendChild(this.divs_transparentDiv);this.divs_content=document.createElement('DIV');this.divs_content.className='modalDialog_contentDiv';this.divs_content.id='DHTMLSuite_modalBox_contentDiv';this.divs_content.style.zIndex=100000;if(this.MSIE){this.iframe=document.createElement('<IFRAME id="popupIFrame" src="about:blank" frameborder=0>');this.iframe.style.zIndex=90000;this.iframe.style.position='absolute';document.body.appendChild(this.iframe);}
document.forms[0].appendChild(this.divs_content);this.divs_shadow=document.createElement('DIV');this.divs_shadow.className='modalDialog_contentDiv_shadow';this.divs_shadow.style.zIndex=95000;document.forms[0].appendChild(this.divs_shadow);window.refToModMessage=this;this.addEvent(window,'scroll',function(e){window.refToModMessage.__repositionTransparentDiv()});this.addEvent(window,'resize',function(e){window.refToModMessage.__repositionTransparentDiv()});},__getBrowserSize:function()
{var bodyWidth=document.documentElement.clientWidth;var bodyHeight=document.documentElement.clientHeight;var bodyWidth,bodyHeight;if(self.innerHeight){bodyWidth=self.innerWidth;bodyHeight=self.innerHeight;}else if(document.documentElement&&document.documentElement.clientHeight){bodyWidth=document.documentElement.clientWidth;bodyHeight=document.documentElement.clientHeight;}else if(document.body){bodyWidth=document.body.clientWidth;bodyHeight=document.body.clientHeight;}
return[bodyWidth,bodyHeight];},__resizeDivs:function()
{var topOffset=Math.max(document.body.scrollTop,document.documentElement.scrollTop);if(this.cssClassOfMessageBox)
this.divs_content.className=this.cssClassOfMessageBox;else
this.divs_content.className='modalDialog_contentDiv';if(!this.divs_transparentDiv)return;var st=Math.max(document.body.scrollTop,document.documentElement.scrollTop);var sl=Math.max(document.body.scrollLeft,document.documentElement.scrollLeft);window.scrollTo(sl,st);setTimeout('window.scrollTo('+sl+','+st+');',10);this.__repositionTransparentDiv();var brSize=this.__getBrowserSize();var bodyWidth=brSize[0];var bodyHeight=brSize[1];this.divs_content.style.width=this.width+'px';this.divs_content.style.height=this.height+'px';var tmpWidth=this.divs_content.offsetWidth;var tmpHeight=this.divs_content.offsetHeight;this.divs_content.style.left=Math.ceil((bodyWidth-tmpWidth)/2)+'px';;this.divs_content.style.top=(Math.ceil((bodyHeight-tmpHeight)/2)+topOffset)+'px';if(this.MSIE){this.iframe.style.left=this.divs_content.style.left;this.iframe.style.top=this.divs_content.style.top;this.iframe.style.width=this.divs_content.style.width;this.iframe.style.height=this.divs_content.style.height;}
this.divs_shadow.style.left=(this.divs_content.style.left.replace('px','')/1+this.shadowOffset)+'px';this.divs_shadow.style.top=(this.divs_content.style.top.replace('px','')/1+this.shadowOffset)+'px';this.divs_shadow.style.height=tmpHeight+'px';this.divs_shadow.style.width=tmpWidth+'px';if(!this.shadowDivVisible)this.divs_shadow.style.display='none';},__repositionTransparentDiv:function()
{this.divs_transparentDiv.style.top=Math.max(document.body.scrollTop,document.documentElement.scrollTop)+'px';this.divs_transparentDiv.style.left=Math.max(document.body.scrollLeft,document.documentElement.scrollLeft)+'px';var brSize=this.__getBrowserSize();var bodyWidth=brSize[0];var bodyHeight=brSize[1];this.divs_transparentDiv.style.width=bodyWidth+'px';this.divs_transparentDiv.style.height=bodyHeight+'px';},__insertContent:function()
{if(this.url){ajax_loadContent('DHTMLSuite_modalBox_contentDiv',this.url);}else{this.divs_content.appendChild(this.htmlOfModalMessage);}}}


var datePickerDivID="datepicker";var iFrameDivID="datepickeriframe";var dayArrayShort=new Array('Su','Mo','Tu','We','Th','Fr','Sa');var dayArrayMed=new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');var dayArrayLong=new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');var monthArrayShort=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');var monthArrayMed=new Array('Jan','Feb','Mar','Apr','May','June','July','Aug','Sept','Oct','Nov','Dec');var monthArrayLong=new Array('January','February','March','April','May','June','July','August','September','October','November','December');var defaultDateSeparator="/";var defaultDateFormat="mdy"
var dateSeparator=defaultDateSeparator;var dateFormat=defaultDateFormat;function displayDatePicker(dateFieldName,displayBelowThisObject,dtFormat,dtSep)
{var targetDateField=document.getElementsByName(dateFieldName).item(0);if(!displayBelowThisObject)
displayBelowThisObject=targetDateField;if(dtSep)
dateSeparator=dtSep;else
dateSeparator=defaultDateSeparator;if(dtFormat)
dateFormat=dtFormat;else
dateFormat=defaultDateFormat;var x=displayBelowThisObject.offsetLeft;var y=displayBelowThisObject.offsetTop+displayBelowThisObject.offsetHeight;var parent=displayBelowThisObject;while(parent.offsetParent){parent=parent.offsetParent;x+=parent.offsetLeft;y+=parent.offsetTop;}
drawDatePicker(targetDateField,x,y);}
function drawDatePicker(targetDateField,x,y)
{var dt=getFieldDate(targetDateField.value);if(!document.getElementById(datePickerDivID)){var newNode=document.createElement("div");newNode.setAttribute("id",datePickerDivID);newNode.setAttribute("class","dpDiv");newNode.setAttribute("style","visibility: hidden;z-index:100005;!z-index:10005");document.body.appendChild(newNode);}
var pickerDiv=document.getElementById(datePickerDivID);pickerDiv.style.position="absolute";pickerDiv.style.left=x+"px";pickerDiv.style.top=y+"px";pickerDiv.style.visibility=(pickerDiv.style.visibility=="visible"?"hidden":"visible");pickerDiv.style.display=(pickerDiv.style.display=="block"?"none":"block");pickerDiv.style.zIndex=100005;refreshDatePicker(targetDateField.name,dt.getFullYear(),dt.getMonth(),dt.getDate());}
function refreshDatePicker(dateFieldName,year,month,day)
{var thisDay=new Date();if((month>=0)&&(year>0)){thisDay=new Date(year,month,1);}else{day=thisDay.getDate();thisDay.setDate(1);}
var crlf="\r\n";var TABLE="<table cols=7 class='dpTable'>"+crlf;var xTABLE="</table>"+crlf;var TR="<tr class='dpTR'>";var TR_title="<tr class='dpTitleTR'>";var TR_days="<tr class='dpDayTR'>";var TR_todaybutton="<tr class='dpTodayButtonTR'>";var xTR="</tr>"+crlf;var TD="<td class='dpTD' onMouseOut='this.className=\"dpTD\";' onMouseOver=' this.className=\"dpTDHover\";' ";var TD_title="<td colspan=5 class='dpTitleTD'>";var TD_buttons="<td class='dpButtonTD'>";var TD_todaybutton="<td colspan=7 class='dpTodayButtonTD'>";var TD_days="<td class='dpDayTD'>";var TD_selected="<td class='dpDayHighlightTD' onMouseOut='this.className=\"dpDayHighlightTD\";' onMouseOver='this.className=\"dpTDHover\";' ";var xTD="</td>"+crlf;var DIV_title="<div class='dpTitleText'>";var DIV_selected="<div class='dpDayHighlight'>";var xDIV="</div>";var html=TABLE;html+=TR_title;html+=TD_buttons+getButtonCode(dateFieldName,thisDay,-1,"&lt;")+xTD;html+=TD_title+DIV_title+monthArrayLong[thisDay.getMonth()]+" "+thisDay.getFullYear()+xDIV+xTD;html+=TD_buttons+getButtonCode(dateFieldName,thisDay,1,"&gt;")+xTD;html+=xTR;html+=TR_days;for(i=0;i<dayArrayShort.length;i++)
html+=TD_days+dayArrayShort[i]+xTD;html+=xTR;html+=TR;for(i=0;i<thisDay.getDay();i++)
html+=TD+"&nbsp;"+xTD;do{dayNum=thisDay.getDate();TD_onclick=" onclick=\"updateDateField('"+dateFieldName+"', '"+getDateString(thisDay)+"');\">";if(dayNum==day)
html+=TD_selected+TD_onclick+DIV_selected+dayNum+xDIV+xTD;else
html+=TD+TD_onclick+dayNum+xTD;if(thisDay.getDay()==6)
html+=xTR+TR;thisDay.setDate(thisDay.getDate()+1);}while(thisDay.getDate()>1)
if(thisDay.getDay()>0){for(i=6;i>thisDay.getDay();i--)
html+=TD+"&nbsp;"+xTD;}
html+=xTR;var today=new Date();var todayString="Today is "+dayArrayMed[today.getDay()]+", "+monthArrayMed[today.getMonth()]+" "+today.getDate();html+=TR_todaybutton+TD_todaybutton;html+="<button class='dpTodayButton' onClick='refreshDatePicker(\""+dateFieldName+"\");'>Current month</button> ";html+="<button class='dpTodayButton' onClick='updateDateField(\""+dateFieldName+"\");'>Close</button>";html+=xTD+xTR;html+=xTABLE;document.getElementById(datePickerDivID).innerHTML=html;adjustiFrame();}
function getButtonCode(dateFieldName,dateVal,adjust,label)
{var newMonth=(dateVal.getMonth()+adjust)%12;var newYear=dateVal.getFullYear()+parseInt((dateVal.getMonth()+adjust)/12);if(newMonth<0){newMonth+=12;newYear+=-1;}
return"<button class='dpButton' onClick='refreshDatePicker(\""+dateFieldName+"\", "+newYear+", "+newMonth+");'>"+label+"</button>";}
function getDateString(dateVal)
{var dayString="00"+dateVal.getDate();var monthString="00"+(dateVal.getMonth()+1);dayString=dayString.substring(dayString.length-2);monthString=monthString.substring(monthString.length-2);switch(dateFormat){case"dmy":return dayString+dateSeparator+monthString+dateSeparator+dateVal.getFullYear();case"ymd":return dateVal.getFullYear()+dateSeparator+monthString+dateSeparator+dayString;case"mdy":default:return monthString+dateSeparator+dayString+dateSeparator+dateVal.getFullYear();}}
function getFieldDate(dateString)
{var dateVal;var dArray;var d,m,y;try{dArray=splitDateString(dateString);if(dArray){switch(dateFormat){case"dmy":d=parseInt(dArray[0],10);m=parseInt(dArray[1],10)-1;y=parseInt(dArray[2],10);break;case"ymd":d=parseInt(dArray[2],10);m=parseInt(dArray[1],10)-1;y=parseInt(dArray[0],10);break;case"mdy":default:d=parseInt(dArray[1],10);m=parseInt(dArray[0],10)-1;y=parseInt(dArray[2],10);break;}
dateVal=new Date(y,m,d);}else if(dateString){dateVal=new Date(dateString);}else{dateVal=new Date();}}catch(e){dateVal=new Date();}
return dateVal;}
function splitDateString(dateString)
{var dArray;if(dateString.indexOf("/")>=0)
dArray=dateString.split("/");else if(dateString.indexOf(".")>=0)
dArray=dateString.split(".");else if(dateString.indexOf("-")>=0)
dArray=dateString.split("-");else if(dateString.indexOf("\\")>=0)
dArray=dateString.split("\\");else
dArray=false;return dArray;}
function updateDateField(dateFieldName,dateString)
{var targetDateField=document.getElementsByName(dateFieldName).item(0);if(dateString)
targetDateField.value=dateString;var pickerDiv=document.getElementById(datePickerDivID);pickerDiv.style.visibility="hidden";pickerDiv.style.display="none";adjustiFrame();targetDateField.focus();if((dateString)&&(typeof(datePickerClosed)=="function"))
datePickerClosed(targetDateField);}
function adjustiFrame(pickerDiv,iFrameDiv)
{var is_opera=(navigator.userAgent.toLowerCase().indexOf("opera")!=-1);if(is_opera)
return;try{if(!document.getElementById(iFrameDivID)){var newNode=document.createElement("iFrame");newNode.setAttribute("id",iFrameDivID);newNode.setAttribute("src","javascript:false;");newNode.setAttribute("scrolling","no");newNode.setAttribute("frameborder","0");document.body.appendChild(newNode);}
if(!pickerDiv)
pickerDiv=document.getElementById(datePickerDivID);if(!iFrameDiv)
iFrameDiv=document.getElementById(iFrameDivID);try{iFrameDiv.style.position="absolute";iFrameDiv.style.width=pickerDiv.offsetWidth;iFrameDiv.style.height=pickerDiv.offsetHeight;iFrameDiv.style.top=pickerDiv.style.top;iFrameDiv.style.left=pickerDiv.style.left;if(pickerDiv.style.zIndex<=0)
iFrameDiv.setAttribute("style",iFrameDiv.style.cssText+";z-index:10004");else
iFrameDiv.style.zIndex=pickerDiv.style.zIndex-1;iFrameDiv.style.visibility=pickerDiv.style.visibility;iFrameDiv.style.display=pickerDiv.style.display;}catch(e){}}catch(ee){}}


