<% ' Name: ASP Calendar ' Author: Manohar Kamath ' Version: 1.0 ' Copyright Manohar Kamath. Original calendar copyright Wrox Press %> <% '------------------------------------------------------------ ' This function finds the last date of the given month '------------------------------------------------------------ Function GetLastDay(intMonthNum, intYearNum) Dim dNextStart If CInt(intMonthNum) = 12 Then dNextStart = CDate( "1/1/" & intYearNum) Else dNextStart = CDate(intMonthNum + 1 & "/1/" & intYearNum) End If GetLastDay = Day(dNextStart - 1) End Function '------------------------------------------------------------------------- ' This routine prints the individual table divisions for days of the month '------------------------------------------------------------------------- Sub Write_TD(sValue, sClass) Response.Write " " & sValue & "" & vbCrLf End Sub ' Constants for the days of the week Const cSUN = 1, cMON = 2, cTUE = 3, cWED = 4, cTHU = 5, cFRI = 6, cSAT = 7 ' Get the name of this file sScript = Request.ServerVariables("SCRIPT_NAME") ' Check for valid month input If IsEmpty(Request("MONTH")) OR NOT IsNumeric(Request("MONTH")) Then datToday = Date() intThisMonth = Month(datToday) ElseIf CInt(Request("MONTH")) < 1 OR CInt(Request("MONTH")) > 12 Then datToday = Date() intThisMonth = Month(datToday) Else intThisMonth = CInt(Request("MONTH")) End If ' Check for valid year input If IsEmpty(Request("YEAR")) OR NOT IsNumeric(Request("YEAR")) Then datToday = Date() intThisYear = Year(datToday) Else intThisYear = CInt(Request("YEAR")) End If strMonthName = MonthName(intThisMonth) Select Case strMonthName Case "January" strMonthName = "Enero" Case "February" strMonthName = "Febrero" Case "March" strMonthName = "Marzo" Case "April" strMonthName = "Abril" Case "May" strMonthName = "Mayo" Case "June" strMonthName = "Junio" Case "July" strMonthName = "Julio" Case "August" strMonthName = "Agosto" Case "September" strMonthName = "Septiembre" Case "October" strMonthName = "Octubre" Case "November" strMonthName = "Noviembre" Case "December" strMonthName = "Diciembre" End Select datFirstDay = DateSerial(intThisYear, intThisMonth, 1) intFirstWeekDay = WeekDay(datFirstDay, vbSunday) intLastDay = GetLastDay(intThisMonth, intThisYear) ' Get the previous month and year intPrevMonth = intThisMonth - 1 If intPrevMonth = 0 Then intPrevMonth = 12 intPrevYear = intThisYear - 1 Else intPrevYear = intThisYear End If ' Get the next month and year intNextMonth = intThisMonth + 1 If intNextMonth > 12 Then intNextMonth = 1 intNextYear = intThisYear + 1 Else intNextYear = intThisYear End If ' Get the last day of previous month. Using this, find the sunday of ' last week of last month LastMonthDate = GetLastDay(intLastMonth, intPrevYear) - intFirstWeekDay + 2 NextMonthDate = 1 ' Initialize the print day to 1 intPrintDay = 1 ' Open a record set of schedules Set Rs = Server.CreateObject("ADODB.RecordSet") ' These dates are used in the SQL dFirstDay = intThisMonth & "/1/" & intThisYear dLastDay = intThisMonth & "/" & intLastDay & "/" & intThisYear sSQL = "SELECT DISTINCT Start_Date, End_Date, Event_Type FROM tEvents WHERE " & _ "(Start_Date >=#" & dFirstDay & "# AND Start_Date <= #" & dLastDay & "#) " & _ "OR " & _ "(End_Date >=#" & dFirstDay & "# AND End_Date <= #" & dLastDay & "#) " & _ "OR " & _ "(Start_Date < #" & dFirstDay & "# AND End_Date > #" & dLastDay & "# )" & _ "ORDER BY Start_Date" 'Response.Write sSQL ' Open the RecordSet with a static cursor. This cursor provides bi-directional navigation Rs.Open sSQL, sDSN, adOpenStatic, adLockReadOnly, adCmdText %> Cursos de Gelatinas Artísticas

(Tres niveles)
Fechas programables cada jueves y sábado del mes.
Horarios para los tres niveles de 9:30 a 16:00 hrs.


Básico
· Costo: $350.00
· Próximas fechas disponibles: jueves 6 y sábado 8 de mayo
· Contenido:
· Hidratación de la grenetina
· Elaboración de gelatinas de jugos de frutas (naranjas y sandías)
· Cualidades y propiedades de la grenetina
<% ' Initialize the end of rows flag to false EndRows = False Response.Write vbCrLf ' Loop until all the rows are exhausted Do While EndRows = False ' Start a table row Response.Write " " & vbCrLf ' This is the loop for the days in the week For intLoopDay = cSUN To cSAT ' If the first day is not sunday then print the last days of previous month in grayed font If intFirstWeekDay > cSUN Then Write_TD LastMonthDate, "NON" LastMonthDate = LastMonthDate + 1 intFirstWeekDay = intFirstWeekDay - 1 ' The month starts on a sunday Else ' If the dates for the month are exhausted, start printing next month's dates ' in grayed font If intPrintDay > intLastDay Then Write_TD NextMonthDate, "NON" NextMonthDate = NextMonthDate + 1 EndRows = True Else ' If last day of the month, flag the end of the row If intPrintDay = intLastDay Then EndRows = True End If dToday = CDate(intThisMonth & "/" & intPrintDay & "/" & intThisYear) If NOT Rs.EOF Then ' Set events flag to false. This means the day has no event in it bEvents = False Do While NOT Rs.EOF AND bEvents = False ' If the date falls within the range of dates in the recordset, then ' the day has an event. Make the events flag True If dToday >= Rs("Start_Date") AND dToday <= Rs("End_Date") Then ' Print the date in a highlighted font Write_TD " " & intPrintDay & "", "T" & Rs("Event_Type") bEvents = True ' If the Start date is greater than the date itself, there is no point ' checking other records. Exit the loop ElseIf dToday < Rs("Start_Date") Then Exit Do ' Move to the next record Else Rs.MoveNext End If Loop ' Checks for that day Rs.MoveFirst End If ' If the event flag is not raise for that day, print it in a plain font If bEvents = False Then Write_TD " " & intPrintDay & "", "SOME" End If End If ' Increment the date. Done once in the loop. intPrintDay = intPrintDay + 1 End If ' Move to the next day in the week Next Response.Write " " & vbCrLf Loop Rs.Close Set Rs = Nothing %>
Previous Month <% = strMonthName & " " & intThisYear %> Next Month
D L M M J V S
Intermedio
· Costo: $450.00
· Próxima fecha disponible: jueves 13 y sábado 15 de mayo
· Contenido:
· Unión de moldes
· Encapsulado
· Elaboración de gelatinas de vinos de fresa y manzana
· Elaboración de un paisaje en tercera dimensión (Desierto)
 
Avanzado:
· Costo $550.00
· Próximas fechas disponibles: jueves 20 y sábado 22 de mayo
· Contenido:
· Trabajar el injerto en gelatina
· Elaboración de una flor tridimensional (rosa) “Técnica de espátulas”
· Elaboración de una mariposa con moldes