﻿var CurrentDate=new Date();
function HolidayRec (d, m, y, desc){
this.d = d;
this.m = m;
this.y = y;
this.desc = desc;
};
var GuideCalendar={
target:null,
fixedX:-1,
fixedY:-1,
showWeekNumber:1,
showHours:0,
showToday :1,
imgDir: jsGuidePath + "/Images/blue/date/",
gotoString: "下月",
todayString: "今天：",
weekString: "周",
selectMonthMessage: "月份",
selectYearMessage : "年度",
bPageLoaded:false,
today :CurrentDate,
dateNow : CurrentDate.getDate(),
monthNow : CurrentDate.getMonth(),
yearNow	 : CurrentDate.getYear(),
bShow: false,
ie:$.browser.msie,
HolidaysCounter: 0,
Holidays: new Array(),
styleAnchor:"text-decoration:none;color:black;",
styleLightBorder:"border:1px solid red;",
addHoliday:function(d,m,y,desc){GuideCalendar.Holidays[GuideCalendar.HolidaysCounter++] = new HolidayRec (d,m,y,desc);},	
init:function(){
var a=new Array();
a.push("<div onclick='GuideCalendar.bShow=true' id='calendar' class='calListPlace'>");
a.push("<table width="+((GuideCalendar.showWeekNumber==1)?250:220)+" style='font-family:arial;font-size:9pt;border:solid 1px #a0a0a0;' bgcolor='#ffffff'>");
a.push("<tr bgcolor='#d0d0d0'><td><table width='100%'>");
a.push("<tr><td style='padding:2px;font-family:arial;font-size:9pt;'><span id='calendarCaption'></span></td><td align=right><a href='javascript:GuideCalendar.hideCalendar()'><img src='"+GuideCalendar.imgDir+"rq_close.gif' width='17' height='14' border='0'></a></td></tr></table></td></tr>");
a.push("<tr><td style='padding:5px' bgcolor='white'>");
a.push("<table width='100%' border='0' cellpadding='2' cellspacing='0'>");
a.push("<tr><td valign='top'><span id='content'></span></td>");
a.push("<td valign='top'><span id='contentHour' style='display:none'></span></td><td valign='top'><span id='contentMinth' style='display:none'></span></td></tr>");
a.push("</table></td></tr>");

if (GuideCalendar.showToday==1)
a.push("<tr bgcolor=#f0f0f0><td style='padding:5px;font-size:9pt;' align='center'><span id='lblToday'></span></td></tr>");
a.push("</table>");
a.push("<iframe id='calendarFrame' frameborder='no' scrolling='no' src='' style='position: absolute;top: 0px; left: 0px; width: "+((GuideCalendar.showWeekNumber==1)?256:226)+"px; height: 180px; z-index: -1;'></iframe>");
a.push("</div>");
a.push("<div id='selectMonth' class='calListPlace'></div><div id='selectYear' class='calListPlace'></div>");
$("body").append(a.join(""));		
GuideCalendar.monthName =new Array(" 1月"," 2月"," 3月"," 4月"," 5月"," 6月"," 7月"," 8月"," 9月","10月","11月","12月");
GuideCalendar.monthName2 = new Array("一","二","三","四","五","六","七","八","九","十","十一","十二");
GuideCalendar.dayName = new Array("日","一","二","三","四","五","六");
if (!GuideCalendar.ie) {GuideCalendar.yearNow += 1900;};
GuideCalendar.crossobj=$("#calendar");
GuideCalendar.hideCalendar();
GuideCalendar.crossMonthObj=$("#selectMonth");
GuideCalendar.crossYearObj=$("#selectYear");
GuideCalendar.monthConstructed=false;
GuideCalendar.yearConstructed=false;
if (GuideCalendar.showToday==1){
$("#lblToday").html(GuideCalendar.todayString + " <a title='"+GuideCalendar.gotoString+"' style='"+GuideCalendar.styleAnchor+"' href='javascript:GuideCalendar.monthSelected=GuideCalendar.monthNow;GuideCalendar.yearSelected=GuideCalendar.yearNow;GuideCalendar.constructCalendar();'>" +	GuideCalendar.yearNow + "年" + GuideCalendar.monthName[GuideCalendar.monthNow].substring(0,3) + GuideCalendar.dateNow + "日</a>");
};
var a1=new Array();
a1.push("<span id='spanLeft' class='calHead' onclick='javascript:GuideCalendar.decMonth()'  onmouseout='clearInterval(GuideCalendar.intervalID1);' onmousedown='clearTimeout(GuideCalendar.timeoutID1);GuideCalendar.timeoutID1=setTimeout(\"GuideCalendar.StartDecMonth()\",500)'	onmouseup='clearTimeout(GuideCalendar.timeoutID1);clearInterval(GuideCalendar.intervalID1)'>&nbsp<img id='changeLeft' src='"+GuideCalendar.imgDir+"rq_left1.gif' width='13' height='16' border='0' align='absmiddle'>&nbsp</span>&nbsp;");
a1.push("<span id='spanRight'class='calHead' onmouseout='clearInterval(GuideCalendar.intervalID1);' onclick='GuideCalendar.incMonth()'  onmousedown='clearTimeout(GuideCalendar.timeoutID1);GuideCalendar.timeoutID1=setTimeout(\"GuideCalendar.StartIncMonth()\",500)' 	onmouseup='clearTimeout(GuideCalendar.timeoutID1);clearInterval(GuideCalendar.intervalID1)'>&nbsp<img id='changeRight' src='"+GuideCalendar.imgDir+"rq_right1.gif'	width='13' height='16' border='0' align='absmiddle'>&nbsp</span>&nbsp");
a1.push("<span id='spanMonth' class='calHead' onclick='GuideCalendar.popUpMonth()'></span>&nbsp;");
a1.push("<span id='spanYear' class='calHead' onclick='GuideCalendar.popUpYear()'></span>&nbsp;");		
$("#calendarCaption").html(a1.join(""));
GuideCalendar.bPageLoaded=true;
},
hideCalendar:function(){
GuideCalendar.crossobj.hide();
if (GuideCalendar.crossMonthObj)GuideCalendar.crossMonthObj.hide();
if (GuideCalendar.crossYearObj)GuideCalendar.crossYearObj.hide();
if (GuideCalendar.target) GuideCalendar.target.focus();
GuideCalendar.target=null;
},
closeCalendar:function() {
if (GuideCalendar.showHours==1){
if (GuideCalendar.hourSelected==null) {
$("#contentHour").show();
return;
};
if (GuideCalendar.minthSelected==null) {
$("#contentHour").show();		  
$("#contentMinth").show();
return;
};
GuideCalendar.monthSelected++;
GuideCalendar.ctlToPlaceValue.value = GuideCalendar.yearSelected+"-"+GuideCalendar.monthSelected+"-"+GuideCalendar.dateSelected + " " + GuideCalendar.hourSelected + ":"+GuideCalendar.minthSelected;
}
else {
GuideCalendar.monthSelected++;
GuideCalendar.ctlToPlaceValue.value = GuideCalendar.yearSelected+"-"+GuideCalendar.monthSelected+"-"+GuideCalendar.dateSelected;
};
GuideCalendar.hideCalendar();
},
StartDecMonth:function(){
GuideCalendar.intervalID1=setInterval("GuideCalendar.decMonth()",80);
},
StartIncMonth:function(){
GuideCalendar.intervalID1=setInterval("GuideCalendar.incMonth()",80);
},
incMonth:function(){
GuideCalendar.monthSelected++;
if (GuideCalendar.monthSelected>11) {
GuideCalendar.monthSelected=0;
GuideCalendar.yearSelected++;
};
GuideCalendar.constructCalendar();
},
decMonth:function() {
GuideCalendar.monthSelected--;
if (GuideCalendar.monthSelected<0) {
GuideCalendar.monthSelected=11;
GuideCalendar.yearSelected--;
};
GuideCalendar.constructCalendar();
},
constructMonth:function() {
GuideCalendar.popDownYear();
if (!GuideCalendar.monthConstructed) {
var a=new Array();
var s;
for	(i=0; i<12;	i++) {
s =GuideCalendar.monthName[i];
if (i==GuideCalendar.monthSelected){s ="<strong>" +s +"</strong>";};
a.push("<tr><td id='m" + i + "' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='this.style.backgroundColor=\"\"' style='cursor:pointer' onclick='GuideCalendar.monthConstructed=false;GuideCalendar.monthSelected=" + i + ";GuideCalendar.constructCalendar();GuideCalendar.popDownMonth();event.cancelBubble=true'>&nbsp;" + s + "&nbsp;</td></tr>");
};
$("#selectMonth").html("<table width=50	 style='font-family:arial; font-size:9pt; border:solid 1px #a0a0a0;' bgcolor='#FFFFDD' cellspacing='0'>" +a.join("")+"</table>");
GuideCalendar.monthConstructed=true;
};
},
popUpMonth:function() {
GuideCalendar.constructMonth();
GuideCalendar.crossMonthObj.toggle();
GuideCalendar.crossMonthObj.css("left",parseInt(GuideCalendar.crossobj.css("left")) + 55);
GuideCalendar.crossMonthObj.css("top",parseInt(GuideCalendar.crossobj.css("top"))+26);
},
popDownMonth:function(){
GuideCalendar.crossMonthObj.hide();
},
incYear:function() {
var y;
for	(i=0; i<7; i++){
y = (i+GuideCalendar.nStartingYear)+1;
if (y==GuideCalendar.yearSelected){
y="&nbsp;<strong>"+ y +"</strong>&nbsp;";
}else{ 
y =	"&nbsp;" + y + "&nbsp;";
};
$("#y"+i).html(y);
};
GuideCalendar.nStartingYear++;
GuideCalendar.bShow=true;
},
decYear:function() {
var y;
for	(i=0; i<7; i++){
y	= (i+GuideCalendar.nStartingYear)-1;
if (y==GuideCalendar.yearSelected){
y = "&nbsp;<strong>"+ y +	"</strong>&nbsp;";
}else{ 
y = "&nbsp;" + y + "&nbsp;";
};
$("#y"+i).html(y);
};
GuideCalendar.nStartingYear--;
GuideCalendar.bShow=true;
},
selectYear:function(y) {
GuideCalendar.yearSelected=parseInt(y+GuideCalendar.nStartingYear);
GuideCalendar.yearConstructed=false;
GuideCalendar.constructCalendar();
GuideCalendar.popDownYear();
},
constructYear:function() {
GuideCalendar.popDownMonth();
var a=new Array();
if (!GuideCalendar.yearConstructed) {
a.push("<tr><td align='center' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='clearInterval(GuideCalendar.intervalID1);this.style.backgroundColor=\"\"' style='cursor:pointer'	onmousedown='clearInterval(GuideCalendar.intervalID1);GuideCalendar.intervalID1=setInterval(\"GuideCalendar.decYear()\",30)' onmouseup='clearInterval(GuideCalendar.intervalID1)'>-</td></tr>");
var s,j=0;
GuideCalendar.nStartingYear =GuideCalendar.yearSelected-3;
for	(var i=(GuideCalendar.yearSelected-3); i<=(GuideCalendar.yearSelected+3); i++) {
s =	i;
if (i==GuideCalendar.yearSelected){s ="<strong>"+s+"</strong>";};
a.push("<tr><td id='y" + j + "' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='this.style.backgroundColor=\"\"' style='cursor:pointer' onclick='GuideCalendar.selectYear("+j+");event.cancelBubble=true'>&nbsp;" + s + "&nbsp;</td></tr>");
j++;
};
a.push("<tr><td align='center' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='clearInterval(GuideCalendar.intervalID2);this.style.backgroundColor=\"\"' style='cursor:pointer' onmousedown='clearInterval(GuideCalendar.intervalID2);GuideCalendar.intervalID2=setInterval(\"GuideCalendar.incYear()\",30)'	onmouseup='clearInterval(GuideCalendar.intervalID2)'>+</td></tr>");
$("#selectYear").html("<table width=50 style='font-family:arial; font-size:9pt; borderh:solid 1px #a0a0a0;' bgcolor='#FFFFDD' cellspacing=0>" + a.join("")+ "</table>");
GuideCalendar.yearConstructed= true;
};
},
popDownYear:function() {
clearInterval(GuideCalendar.intervalID1);
clearTimeout(GuideCalendar.timeoutID1);
clearInterval(GuideCalendar.intervalID2);
clearTimeout(GuideCalendar.timeoutID2);
GuideCalendar.crossYearObj.hide();
},
popUpYear:function() {
var	l;
GuideCalendar.constructYear();
GuideCalendar.crossYearObj.toggle();	
l = parseInt(GuideCalendar.crossobj.css("left")) + document.getElementById("spanYear").offsetLeft;
GuideCalendar.crossYearObj.css("left",l+6);
GuideCalendar.crossYearObj.css("top",parseInt(GuideCalendar.crossobj.css("top"))+26);
},
WeekNbr:function(n) {
year = n.getFullYear();
month = n.getMonth() + 1;
day = n.getDate() + 1;
a = Math.floor((14-month) / 12);
y = year + 4800 - a;
m = month + 12 * a - 3;
b = Math.floor(y/4) - Math.floor(y/100) + Math.floor(y/400);
J = day + Math.floor((153 * m + 2) / 5) + 365 * y + b - 32045;
d4 = (((J + 31741 - (J % 7)) % 146097) % 36524) % 1461;
L = Math.floor(d4 / 1460);
d1 = ((d4 - L) % 365) + L;
week = Math.floor(d1/7) + 1;
return week;
},
constructCalendar:function() {
var aNumDays = Array (31,0,31,30,31,30,31,31,30,31,30,31);
var	startDate =	new	Date (GuideCalendar.yearSelected,GuideCalendar.monthSelected,1);
var endDate,numDaysInMonth;
if (GuideCalendar.monthSelected==1){
endDate	= new Date (GuideCalendar.yearSelected,GuideCalendar.monthSelected+1,1);
endDate	= new Date (endDate	- (24*60*60*1000));
numDaysInMonth = endDate.getDate();
}else{
numDaysInMonth = aNumDays[GuideCalendar.monthSelected];
};
var datePointer	= 0;
var dayPointer = startDate.getDay();
if (dayPointer<0) dayPointer = 6;
var a=new Array();
a.push("<table border=0 style='font-family:verdana;'><tr>");
if (GuideCalendar.showWeekNumber==1){
a.push("<td width=27><b>" + GuideCalendar.weekString + "</b></td><td width=1 rowspan=7 bgcolor='#d0d0d0' style='padding:0px'><img src='"+GuideCalendar.imgDir+"divider.gif' width=1></td>");
};
for	(i=0; i<7; i++)	{a.push("<td width='27' align='right'><B>"+ GuideCalendar.dayName[i]+"</B></td>");};
a.push("</tr><tr>");
if (GuideCalendar.showWeekNumber==1)	a.push("<td align=right>" + GuideCalendar.WeekNbr(startDate) + "&nbsp;</td>");
for	( var i=1; i<=dayPointer;i++ )	a.push("<td>&nbsp;</td>");
var s,sh;
for	(datePointer=1; datePointer<=numDaysInMonth; datePointer++ ){
dayPointer++;
a.push("<td align=right>");
s=GuideCalendar.styleAnchor;
if ((datePointer==GuideCalendar.odateSelected) &&	(GuideCalendar.monthSelected==GuideCalendar.omonthSelected)	&& (GuideCalendar.yearSelected==GuideCalendar.oyearSelected)) s+=GuideCalendar.styleLightBorder;
sh = "";
for (k=0;k<GuideCalendar.HolidaysCounter;k++)
{
if ((parseInt(GuideCalendar.Holidays[k].d)==datePointer)&&(parseInt(GuideCalendar.Holidays[k].m)==(GuideCalendar.monthSelected+1)))
{
if ((parseInt(GuideCalendar.Holidays[k].y)==0)||((parseInt(GuideCalendar.Holidays[k].y)==GuideCalendar.yearSelected)&&(parseInt(GuideCalendar.Holidays[k].y)!=0)))
{
s+="background-color:#FFDDDD;";
sh+=sh==""?GuideCalendar.Holidays[k].desc:"\n"+GuideCalendar.Holidays[k].desc;
}
}
};
var regexp= /\"/g;
sh=sh.replace(regexp,"&quot;");
if ((datePointer==GuideCalendar.dateNow)&&(GuideCalendar.monthSelected==GuideCalendar.monthNow)&&(GuideCalendar.yearSelected==GuideCalendar.yearNow)){ 
a.push("<b><a style='"+s+"' href='javascript:GuideCalendar.dateSelected="+datePointer+";GuideCalendar.closeCalendar();'><font color=#ff0000>&nbsp;" + datePointer + "</font>&nbsp;</a></b>");
}else if(dayPointer % 7 == 0){
a.push("<a style='"+s+"' href='javascript:GuideCalendar.dateSelected="+datePointer + ";GuideCalendar.closeCalendar();'>&nbsp;<span style='color:#909090'>" + datePointer + "</span>&nbsp;</a>");
}else{
a.push("<a style='"+s+"' href='javascript:GuideCalendar.dateSelected="+datePointer + ";GuideCalendar.closeCalendar();'>&nbsp;" + datePointer + "&nbsp;</a>");
};
if ((dayPointer) % 7 == 0) { 
a.push("</tr><tr>") ;
if ((GuideCalendar.showWeekNumber==1)&&(datePointer<numDaysInMonth)){
a.push("<td align=right>" + (GuideCalendar.WeekNbr(new Date(GuideCalendar.yearSelected,GuideCalendar.monthSelected,datePointer+1))) + "&nbsp;</td>");
}
};
};
$("#content").html(a.join(""));
var as=new Array();
if (GuideCalendar.showHours==1) {
GuideCalendar.drawHours();
as.push("<table	 border='0' bgcolor='#c0c0ef' cellpadding='2' cellspacing='0'>");
as.push("<tr><td align='center' colspan='2'><b>分钟</b></td></tr>");
for (var j=0;j<60;j++){
as.push("<tr>");
as.push(GuideCalendar.drawMinthList(j));
j=j+5;
as.push(GuideCalendar.drawMinthList(j));
as.push("</tr>");
j=j+4;
};
as.push("</table>");
GuideCalendar.minthSelected=null;
$("#contentMinth").html(as.join(""));
};
$("#spanMonth").html("&nbsp;" +GuideCalendar.monthName[GuideCalendar.monthSelected] + "&nbsp;<img id='changeMonth' src='"+GuideCalendar.imgDir+"rq_drop1.gif' width='13' height='12' border='0'>");
$("#spanYear").html("&nbsp;" + GuideCalendar.yearSelected	+ "&nbsp;<img id='changeYear' src='"+GuideCalendar.imgDir+"rq_drop1.gif' width='13' height='12' border='0'>");
},	
drawMinthList:function(n){
var a=new Array();
a.push("<td align='center' style='font-size:9pt;cursor:pointer;");
if (GuideCalendar.minthSelected==n) a.push(GuideCalendar.styleLightBorder);
a.push("' onmouseover=\"this.style.backgroundColor='white'\" onmouseout=\"this.style.backgroundColor=''\"");
a.push(" onclick='GuideCalendar.drawSelected(this);GuideCalendar.minthSelected="+n+";GuideCalendar.closeCalendar();'>" + n + "</td>");
return a.join("");
},
drawHours:function(){
var a=new Array();
a.push("<table border='0' bgcolor='#d0d0ff' cellpadding='2' cellspacing='0'>");
a.push("<tr><td align='center' colspan='4'><b>小时</b></td></tr>");
for (var j=0;j<24;j++){
a.push("<tr>");
a.push(GuideCalendar.drawHoursList(j));
j++;
a.push(GuideCalendar.drawHoursList(j));
j++;
a.push(GuideCalendar.drawHoursList(j));
j++;
a.push(GuideCalendar.drawHoursList(j));
a.push("</tr>");
};
a.push("</table>");
$("#contentHour").html(a.join(""));
},
drawHoursList:function(n){
var a=new Array();
a.push("<td align='center' style='font-size:9pt;cursor:pointer;");
if (GuideCalendar.hourSelected==n) a.push(GuideCalendar.styleLightBorder);
a.push("' onmouseover=\"this.style.backgroundColor='white'\" onmouseout=\"this.style.backgroundColor=''\"");
a.push(" onclick='GuideCalendar.drawSelected(this);GuideCalendar.hourSelected=" + n + ";GuideCalendar.closeCalendar();'>" + n + "</td>");
return a.join("");
},
drawSelected:function(o){
o.style.border='1px solid blue';
},
popUpCalendarEx:function(_n,_o,_os,_b) {
GuideCalendar.showHours = _b;
if (typeof _os == 'string') _os = document.getElementById(_os);
var	leftpos=0;
var	toppos=0;
if (!GuideCalendar.bPageLoaded){GuideCalendar.init();};
GuideCalendar.target=_os;
if (GuideCalendar.crossobj.css("display") == "none" ) {
GuideCalendar.ctlToPlaceValue= _os;
GuideCalendar.dateSelected = GuideCalendar.dateNow;
GuideCalendar.monthSelected =GuideCalendar.monthNow;
GuideCalendar.yearSelected = GuideCalendar.yearNow;			
if (_os.value!=""){
var arrDateTime	= _os.value.split(" ");
var arrDate	= arrDateTime[0].split("-");
GuideCalendar.yearSelected = parseInt(arrDate[0]);
GuideCalendar.monthSelected =parseInt(arrDate[1])-1;
GuideCalendar.dateSelected = parseInt(arrDate[2]);
if (arrDateTime.length>1){
var arrTime	= arrDateTime[1].split(":");
GuideCalendar.hourSelected =	parseInt(arrTime[0]);
GuideCalendar.minthSelected = parseInt(arrTime[1]);
};
};			
GuideCalendar.odateSelected=GuideCalendar.dateSelected;				
GuideCalendar.omonthSelected=GuideCalendar.monthSelected;				
GuideCalendar.oyearSelected=GuideCalendar.yearSelected;
o = _o;
do {
o = o.offsetParent;
leftpos	+= o.offsetLeft;
toppos += o.offsetTop;
} while(o.tagName!="BODY"&&o.tagName!="HTML");
switch (_n){
case 0:
GuideCalendar.crossobj.css("left",(GuideCalendar.fixedX==-1 ? _o.offsetLeft	+ _o.width + leftpos - ((GuideCalendar.showWeekNumber==1)?250:220) :	GuideCalendar.fixedX ));
GuideCalendar.crossobj.css("top",(GuideCalendar.fixedY==-1 ?	_o.offsetTop +	toppos + _o.offsetHeight +	2 :	GuideCalendar.fixedY));
break;
case 1:
GuideCalendar.crossobj.css("left",(GuideCalendar.fixedX==-1 ? _o.offsetLeft	+ leftpos :	GuideCalendar.fixedX));
GuideCalendar.crossobj.css("top",(GuideCalendar.fixedY==-1 ? _o.offsetTop +	toppos + _o.offsetHeight +	2 :	GuideCalendar.fixedY));
break;
case 2:
GuideCalendar.crossobj.css("left",(GuideCalendar.fixedX==-1 ? _o.offsetLeft	+ _o.width + leftpos - ((GuideCalendar.showWeekNumber==1)?250:220) :	GuideCalendar.fixedX));
GuideCalendar.crossobj.css("top",(GuideCalendar.fixedY==-1 ?	_o.offsetTop +	toppos - 185  :	GuideCalendar.fixedY));
break;
default :
GuideCalendar.crossobj.css("left",(GuideCalendar.fixedX==-1 ? _o.offsetLeft	+ leftpos :	GuideCalendar.fixedX));
GuideCalendar.crossobj.css("top",(GuideCalendar.fixedY==-1 ?	_o.offsetTop +	toppos  - 185  :GuideCalendar.fixedY));
break;
};
GuideCalendar.constructCalendar (1, GuideCalendar.monthSelected, GuideCalendar.yearSelected);
GuideCalendar.crossobj.toggle();
GuideCalendar.bShow = true;
}else{
GuideCalendar.hideCalendar();
if (GuideCalendar.ctlNow!= _o) {GuideCalendar.popUpCalendar(_n,_o,_os)}
};
GuideCalendar.ctlNow = _o;
},
popUpCalendar:function(_s,_o,_os) {
GuideCalendar.popUpCalendarEx(_s,_o,_os,0);
}
};
document.onclick = function() {
if(GuideCalendar.bPageLoaded){
if (!GuideCalendar.bShow) GuideCalendar.hideCalendar();
GuideCalendar.bShow = false;
}
};
var popUpCalendar=function(_s,_o,_os){GuideCalendar.popUpCalendar(_s,_o,_os);};
var popUpCalendarEx=function(_n,_o,_os,_b){GuideCalendar.popUpCalendarEx(_n,_o,_os,_b);}
