// JScript 文件
function calader(caladerId,elementId){
this.minDate=new Date(2008,9,1);
this.maxDate=new Date(2008,10,1);
this.title="线路报名:";
this.dateNow = new Date();
this.message =new Object();
this.message.M20081025="swnenngdafasfasdfasfdasfasdf";
this.message.M20081029="swnenngdafasfasdfasfdasfasdf";
this.message.M20081030="swnenngdafasfasdfasfdasfasdf";
this.event =new Object();
this.show = function (){};
this.close =function (){
SLib.getElement(elementId).style.display ='none';
}
this.monthAdd = function (){
var month =this.dateNow.getMonth()+1;
var year = this.dateNow.getFullYear();
if(month>11){
month = 0;
year +=1;
}
this.dateNow.setFullYear(year);
this.dateNow.setMonth(month);
this.show();
}
this.yearAdd = function (){
var year = this.dateNow .getFullYear()+1;
this.dateNow.setFullYear(year);
}
this.monthSub = function (){
var month = this.dateNow.getMonth() -1;
var year = this.dateNow.getFullYear();
if(month<0){
month=11;
year =year-1;
}
this.dateNow.setFullYear(year);
this.dateNow.setMonth(month);
this.show();
}
this.yearSub =function(){
var year = this.dateNow .getFullYear()-1;
this.dateNow.setFullYear(year);
}
this.FirstDayOfDateNow =function(){
var month = this.dateNow.getMonth();
var year =this.dateNow .getFullYear();
var dateSt = new Date();
dateSt.setMonth(month);
dateSt.setFullYear(year);
dateSt.setDate(1);
return dateSt.getDay();
}
this.DayCountOfMonthNow =function(){
var dateEt = this.dateNow;
var month =dateEt .getMonth()+1;
if("1,3,5,7,8,10,12".indexOf(month) !=-1){
return 31;
}
if("4,6,9,10,11".indexOf(month) !=-1){
return 30;
}
if(month ==2){
return 28;
}
}
this.showInfo =function(ele,info){
SLib.getElement(caladerId+"_showInfo").style.left=ele.offsetLeft//SLib.getXY(ele)[0];
SLib.getElement(caladerId+"_showInfo").style.top=ele.offsetTop//SLib.getXY(ele)[1];
SLib.getElement(caladerId+"_showInfo").innerHTML =info;
SLib.getElement(caladerId+"_showInfo").style.display ='';
}
this.show = function (){
var firstDay = this.FirstDayOfDateNow();
var DayCount =this.DayCountOfMonthNow();
var month =this.dateNow.getMonth();
var year = this.dateNow.getFullYear();
var dateRun =new Date(year,month,1);
var dateEnd =new Date(year,month,DayCount);
var ymonth =month+1;
if(ymonth<10){
ymonth ="0"+ymonth;
}
var cString="<div id='"+caladerId+"_showInfo' onclick='event.cancelBubble=true; ' style='display:none;position:absolute;background-color:#005500; 50px;word-break:break-all;' onmouseout=\"this.style.display='none';\"></div><table onclick='event.cancelBubble=true; ' id='"+caladerId +"_tb' class='cld' border=1>";
cString +="<tr style='background-color:#ccc;'><td colspan='7' style='word-break:keep-all;padding-top:5px;' border=0><div style='float:left;'>"+this.title+"</div><div style='float:right'onclick='"+caladerId+".close();'>关闭</div></td></tr>";
cString +="<tr><td colspan='7' > <span onclick='"+caladerId+".monthSub();'>上月</span><b> "+parseInt(year)+"年"+ymonth +"月</b> <span onclick='"+caladerId+".monthAdd();'>下月</span></td></tr>";
cString +="<tr><td>日</td><td>一</td><td>二</td><td>三</td><td>四</td><td>五</td><td>六</td></tr>";
var cStart=0;
for(var i =0;i<7;){
if(i==0){
cString +="<tr class='cltr'>"
}
if(cStart < firstDay||dateRun >dateEnd){
cString +="<td> </td>";
}
else{
var year = dateRun.getFullYear();
var month =dateRun.getMonth()+1;
var date =dateRun .getDate();
if(month<10){
month ="0"+month;
}
if(date<10){
date ="0"+date;
}
if(this.minDate < dateRun &&this.maxDate >dateRun){
if(eval("this.message.M"+year+month+date)){
cString +="<td )\" class='message'>"+dateRun .getDate()+"<br/>"+eval("this.message.M"+year+month+date) +"</td>";
}
else{
cString +="<td>"+ dateRun .getDate()+"</td>"
}
}
else{
cString +="<td class='dateOut'>"+ dateRun .getDate()+"</td>"
}
dateRun.setTime(dateRun.getTime()+1000*60*60*24);
}
i++;
if(i==7){
cString +="</tr>";
if(dateRun.getTime()>dateEnd.getTime()){
break;
}
else{
i =0;
}
}
cStart++;
}
cString +="</table>";
document.getElementById(elementId).innerHTML=cString ;
SLib.getElement(elementId).style.display ='';
}
var docE =document.body||document.documentElement ;
docE.attachEvent("onclick",this.close);
}