home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1998 February
/
CHIP_2_98.iso
/
software
/
pelne
/
optionp
/
iis4_03.cab
/
calendar.asp
< prev
next >
Wrap
Text File
|
1997-11-14
|
8KB
|
245 lines
<%@ LANGUAGE=VBScript %>
<% Option Explicit %>
<% Response.Expires = 0 %>
<%
On Error Resume Next
Dim datecntrl, Dy, Mo, Yr, nextmonth, startwith, thisMo, thisYr, thisDate
Dim prevMonthLastDate, currMonthLastDate, i, j, lastnum, AnyDate
datecntrl= Request("cntrl")
if (Request("currentDate") = "") then
Dy = CInt(Request("Dy"))
Mo = CInt(Request("Mo"))
Yr = CInt(Request("Yr"))
else
AnyDate = Request("currentDate")
AnyDate = Mid(AnyDate,InStr(AnyDate,",")+1)
thisDate = CDate(AnyDate)
if err <> 0 then
thisDate = Date
end if
Dy = CInt(Day(CDate(thisDate)))
Mo = CInt(Month(CDate(thisDate)))
Yr = CInt(Year(CDate(thisDate)))
end if
nextmonth = false
%>
<HTML>
<HEAD>
<TITLE>Calendar</TITLE>
<SCRIPT LANGUAGE="JavaScript">
function setDate(Dy,Mo,Yr)
{
self.location.href="calendar.asp?cntrl=<%= datecntrl %>&Dy=" + Dy + "&Mo=" + Mo + "&Yr=" + Yr;
}
function saveDate()
{
top.opener.<%= datecntrl %>.value ="<%= WeekDayName(WeekDay(Mo & "/" & Dy & "/" & Yr),False,vbUseSystem) %>," + " " + "<%= MonthName(Mo, False) %>" + " " + "<%= Dy %>," + " " + "<%= Yr %>"
//force execution of onblur event proc on output field..
top.opener.<%= datecntrl %>.focus();
top.opener.<%= datecntrl %>.blur();
top.window.close();
}
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#CCCCCC" LINK="Navy">
<FORM NAME="userform">
<TABLE WIDTH = 100% CELLPADDING=2 CELLSPACING=0>
<TR>
<TD ALIGN="left">
<FONT SIZE=1 FACE="Helv,Arial">
<%= writeMonths(Mo) %>
</FONT>
</TD>
<TD ALIGN="right">
<FONT SIZE=1 FACE="Helv,Arial">
<%= writeYears(Yr) %>
</FONT>
</TD>
</TR>
</TABLE>
<TABLE WIDTH = 100% BORDER=1 BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#CCCCCC" BORDERCOLORLIGHT="#CCCCCC" CELLPADDING=2 CELLSPACING=0>
<%
function GetWeekDayName(Dy)
Select Case Dy
Case 1
GetWeekDayName = "Sunday"
Case 2
GetWeekDayName = "Monday"
Case 3
GetWeekDayName = "Tuesday"
Case 4
GetWeekDayName = "Wednesday"
Case 5
GetWeekDayName = "Thursday"
Case 6
GetWeekDayName = "Friday"
Case 7
GetWeekDayName = "Saturday"
End Select
end function
function nextDate(startwith, maxdays)
startwith = startwith + 1
if startwith > maxdays then
startwith = 1
end if
nextDate = startwith
end function
function GetLastDay(Mo,Yr)
if Mo=2 then
if (Yr Mod 4)=0 then
GetLastDay = 29
else
GetLastDay = 28
end if
elseif ((Mo = 0) OR (Mo = 1) OR (Mo = 3) OR (Mo = 5) OR (Mo = 7) OR (Mo = 8) OR (Mo = 10) OR (Mo = 12)) then
GetLastDay = 31
else
GetLastDay = 30
end if
end function
function GetFirstDayOffset(Mo,Yr)
GetFirstDayOffset = weekday(Mo & "/01/" & Yr)-1
end function
function writeMonths(selMo)
dim i, selstr
selstr = "<SELECT NAME='Months' onChange='setDate(" & Dy & ",this.selectedIndex+1," & Yr & ");'>"
for i=1 to 12
if selMo = i then
selstr = selstr & "<OPTION SELECTED>" & MonthName(i)
else
selstr = selstr & "<OPTION>" & MonthName(i)
end if
next
selstr = selstr & "</SELECT>"
writeMonths = selstr
end function
function writeYears(selYear)
dim i, selstr
selstr = "<SELECT NAME='Years' onChange='setDate(" & Dy & "," & Mo & ",this.options[this.selectedIndex].value);'>"
for i=1900 to 2100
if selYear = i then
selstr = selstr & "<OPTION SELECTED VALUE=" & i & ">" & i
else
selstr = selstr & "<OPTION VALUE=" & i & ">" & i
end if
next
selstr = selstr & "</SELECT>"
writeYears = selstr
end function
prevMonthLastDate=GetLastDay((Mo-1),Yr)
currMonthLastDate=GetLastDay(Mo,Yr)
startwith=(prevMonthLastDate-GetFirstDayOffset(Mo, Yr))
%>
<TR>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="Gray" BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<FONT SIZE=1 FACE="HELV,ARIAL" COLOR="#FFFFFF"><B>Su</B></FONT>
</TD>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="Gray" BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<FONT SIZE=1 FACE="HELV,ARIAL" COLOR="#FFFFFF"><B>Mo</B></FONT>
</TD>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="Gray" BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<FONT SIZE=1 FACE="HELV,ARIAL" COLOR="#FFFFFF"><B>Tu</B></FONT>
</TD>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="Gray" BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<FONT SIZE=1 FACE="HELV,ARIAL" COLOR="#FFFFFF"><B>We</B></FONT>
</TD>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="Gray" BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<FONT SIZE=1 FACE="HELV,ARIAL" COLOR="#FFFFFF"><B>Th</B></FONT>
</TD>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="Gray" BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<FONT SIZE=1 FACE="HELV,ARIAL" COLOR="#FFFFFF"><B>Fr</B></FONT>
</TD>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="Gray" BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" style="font-family: Helv,Arial; font-size: 10pt;">
<FONT SIZE=1 FACE="HELV,ARIAL" COLOR="#FFFFFF"><B>Sa</B></FONT>
</TD>
</TR>
<% For j = 1 to 6 %>
<TR>
<% For i = 1 to 7 %>
<% if j = 1 then %>
<% startwith = nextDate(startwith, prevMonthLastDate) %>
<% if startwith = Dy and startwith < 7 then %>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="#AAAAAA" BORDERCOLOR="#AAAAAA" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#AAAAAA" STYLE="font-face: Helv,Arial; font-size:10pt;">
<% else %>
<TD WIDTH = 20 HEIGHT = 20 BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<% end if %>
<% thisYr = Yr %>
<FONT SIZE=1 FACE="HELV,ARIAL">
<% if startwith < 7 then %>
<B>
<% thisMo = Mo %>
<% else %>
<% thisMo = Mo - 1 %>
<% if thisMo = 0 then %>
<% thisMo = 12 %>
<% thisYr = Yr-1 %>
<% end if %>
<% end if %>
<A HREF="javascript:setDate( <%= startwith %>, <%= thisMo %>,<%= thisYr %>);">
<% response.write startwith %>
</A>
</FONT>
</TD>
<% else %>
<% lastnum = startwith %>
<% startwith = nextDate(startwith, currMonthLastDate) %>
<% if lastnum > startwith then%>
<% nextmonth = true %>
<% end if %>
<% if startwith = Dy and not nextmonth then %>
<TD WIDTH = 20 HEIGHT = 20 BGCOLOR="#AAAAAA" BORDERCOLOR="#AAAAAA" BORDERCOLORDARK="#AAAAAA" BORDERCOLORLIGHT="#FFFFFF" STYLE="font-face: Helv,Arial; font-size:10pt;">
<% else %>
<TD WIDTH = 20 HEIGHT = 20 BORDERCOLOR="#CCCCCC" BORDERCOLORDARK="#FFFFFF" BORDERCOLORLIGHT="#000000" STYLE="font-face: Helv,Arial; font-size:10pt;">
<% end if %>
<% thisYr = Yr %>
<% if not nextmonth then %>
<B>
<% thisMo = Mo %>
<% else %>
<% thisMo = Mo + 1 %>
<% if thisMo = 13 then %>
<% thisMo = 1 %>
<% thisYr = Yr+1 %>
<% end if %>
<% end if %>
<FONT SIZE=1 FACE="HELV,ARIAL">
<A HREF="javascript:setDate(<%= startwith %>, <%= thisMo %>, <%= thisYr %>);">
<% response.write startwith %>
</A>
</FONT>
</TD>
<% end if %>
<% Next %>
</TR>
<% Next %>
</TABLE>
<P>
<CENTER>
<INPUT TYPE="button" VALUE=" OK " onClick="saveDate();">
<INPUT TYPE="button" VALUE="Cancel" onClick="top.window.close();">
</CENTER>
</FORM>
</BODY>
</HTML>