var styleTargetObject = null; var styleDivShim = getStyleObject('DivShim'); var PeriodStart = "01-01-0001"; var PeriodEnd = "08-01-2011"; var LastStartDate = "07-09-2010"; var language= "DE"; var IsIE = false; var aMatches = window.navigator.userAgent.match( /MSIE ([\d]+\.[\d]+)/ ); if( aMatches != null ) if( parseFloat( aMatches[ 1 ] ) >= 5 ) IsIE = true; function showPopup (targetObjectId, eventObj, ascxControlID) { startdateID=ascxControlID; var startdate = document.getElementById(startdateID); if(!styleTargetObject) styleTargetObject = getStyleObject(targetObjectId); if(eventObj && styleTargetObject && styleDivShim) { doCal('show',null, startdate.value); // Asyn eventObj.cancelBubble = true;// stop event from bubbling up any farther var pos = YAHOO.util.Dom.getXY(startdate.id); styleTargetObject.position = 'absolute'; styleTargetObject.display = 'block'; styleTargetObject.zIndex =2500; YAHOO.util.Dom.setXY(targetObjectId, pos); if(IsIE) { styleDivShim.position = 'absolute'; styleDivShim.width = styleTargetObject.width; styleDivShim.display = 'block'; styleDivShim.zIndex = styleTargetObject.zIndex -1; YAHOO.util.Dom.setXY('DivShim', pos); } } else { return false; } } function writeit(text,id) { var x; if (document.getElementById) { x = document.getElementById(id); if(x) { x.innerHTML = ''; x.innerHTML = text; } } else if (document.all) { x = document.all[id]; if(x) x.innerHTML = text; } else if (document.layers) { x = document.layers[id]; if(x) { x.document.open(); x.document.write(text); x.document.close(); } } } function doCal(func, parms, showStartDate) { var httpRequest; if (window.XMLHttpRequest) { // Mozilla, Safari, ... httpRequest = new XMLHttpRequest(); } else if (window.ActiveXObject) { // IE try { httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!httpRequest) { return false; } httpRequest.onreadystatechange = function() { responseCal(func,httpRequest, showStartDate); }; if(func == 'show') { httpRequest.open("GET", "/nlajax/daysearchcalendar.aspx?lang="+ language + "&f="+ func +"&p="+ showStartDate +":"+ parms +"&ps=" + PeriodStart +"&pe=" + PeriodEnd, true); } else { httpRequest.open("GET", "/nlajax/daysearchcalendar.aspx?lang="+ language + "&f="+ func +"&p="+ LastStartDate +":"+ parms +"&ps=" + PeriodStart +"&pe=" + PeriodEnd, true); } httpRequest.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT" ); httpRequest.send(null); } function responseCal(func,httpRequest, showStartDate) { if (httpRequest.readyState == 4) { if (httpRequest.status == 200) { var Data = eval('(' + httpRequest.responseText + ')'); LastStartDate = Data.calendar[0].startdate; writeit(Data.calendar[0].html,"docCal"); // JSON if(func=='day') { var startdate = document.getElementById(startdateID); //old value var tmpSD= startdate.value; //new value startdate.value = Data.calendar[0].startdate; if(tmpSD != startdate.value) //search { startdate.onchange(); } hidePopup(); } } } }