# QUELLCODE VOM KALENDER MIT AUSLESEN DER TXT DATEI
```htmlmixed=
<html>
<head>
<title>Meine Kalenderansicht</title>
</head>
<body>
<h1> K A L E N D E R </h1>
<!-- Wir brauchen das aktuelle auch, Datum um im Kalender den aktuellen Tag hervorzuheben.-->
<!-- Falls KalenderMonat oder KalenderJahr nicht gesetzt ist mache folgendes: --hier müssen jetzt anhand von --now()-- die Berechnungen stattfinden.-->
<cfif not IsDefined("AktuellerMonat") or not IsDefined("AktuellesJahr")>
<cfset AktuellesDatum = now()>
<!-- Alle folgenden Variablen, werden in Abhängigkeit von "AktuellesDatum" erzeugt -->
<cfset AktuellerMonat=Month(AktuellesDatum)>
<cfset AktuellerTag=Day(AktuellesDatum)>
<cfset AktuellesJahr=Year(AktuellesDatum)>
</cfif>
<cfset AktuellesDatum = CreateDate(2019,AktuellerMonat,1)>
<cfset zuruckDatum = DateAdd("m", -1, AktuellesDatum)>
<cfset vorDatum = DateAdd("m", +1, AktuellesDatum)>
<cfset zuruckMonat = Month(zuruckDatum)>
<cfset vorMonat = Month(vorDatum)>
<cfset zuruckJahr = Year(zuruckDatum)>
<cfset vorJahr = Year(vorDatum)>
<cfset TageImAktuellenMonat=DaysInMonth(AktuellesDatum)>
<!-- Hier wird das Startdatum festgelegt. Das ist immer der 1.Tag im Monat. -->
<cfset StartDatum = CreateDate(AktuellesJahr, AktuellerMonat, 1)>
<!-- Hier wird festgelegt welcher Wochentag das Startdatum hat. Der Wochentag kann die Zahlen 1,..,7 annehmen, wobei 1 = Sonntag und 7 = Samstag, entspricht. -->
<cfset StartWochentag = DayOfWeek(StartDatum)>
<!-- Hier wird das Zieldatum festgelegt. Das ist immer der letzte Tag im Monat. -->
<cfset ZielDatum = StartDatum + TageImAktuellenMonat-1>
<!-- Hier wird festgelegt welcher Wochentag das Zieldatum hat. Der Wochentag kann die Zahlen 1,..,7 annehmen, wobei 1 = Sonntag und 7 = Samstag, entspricht. -->
<cfset ZielWochentag = DayOfWeek(ZielDatum)>
<cfset TagesSchrittweite = CreateTimeSpan(1, 0, 0, 0)>
<cfset AktuellerMonatString = MonthAsString(AktuellerMonat)>
<style>
.kalender-table-border {
border-width: 10px;
border-style: solid;
}
.kalender-table-cell {
vertical-align: middle;
text-align: center;
padding: 15px;
}
</style>
<cffile action="read" file="Termine.txt" variable="Termine">
<cfset aTermine = ListToArray(Termine, "#Chr(10)##Chr(13)#")>
<cfset bTermine = ArrayNew(1)>
<cfloop array="#aTermine#" index="Row">
<cfset bTermine.Append(ListToArray(Row, ";;"))>
</cfloop>
<table class="kalender-table-border">
<tr><a href="/kalender_wochenansicht.cfm">Hier gehts zur Wochenansicht</a></tr>
<caption align=top><h1><cfoutput> #AktuellerMonatString# #AktuellesJahr# </cfoutput></h1></caption>
<head><th>MO</th><th>DI</th><th>MI</th><th>DO</th><th>FR</th><th>SA</th><th>SO</th></head><br>
<body>
<tr>
<cfloop list="2,3,4,5,6,7,1" index="Wochentag">
<cfif StartWochentag EQ Wochentag>
<cfbreak>
<cfelse>
<td bgcolor=#BDBDBD> </td>
</cfif>
</cfloop>
<cfloop from="#StartDatum#" to="#ZielDatum#" index="loopDate" step="#TagesSchrittweite#">
<cfset TERMIN_GEFUNDEN = 0>
<cfloop array="#bTermine#" index="Row">
<cfif Year(loopDate) EQ Row[1] AND Month(loopDate) EQ Row[2] and Day(loopDate) EQ Row[3]>
<cfset TERMIN_GEFUNDEN = 1>
</cfif>
</cfloop>
<cfif Day(loopDate) EQ Day(now()) AND Month(loopDate) EQ Month(now())> <!--aktuellen Tag hervorheben-->
<cfif TERMIN_GEFUNDEN EQ 1>
<td class="kalender-table-cell" bgcolor=#ffff00# style="border-style: solid; border-width: 5px; text-align: center"><b><cfoutput>#Day(loopDate)#</cfoutput><br>X</b>
<cfelse>
<td class="kalender-table-cell" bgcolor=#BDBDBD# style="border-style: solid; border-width: 1px; text-align: center"><b><cfoutput>#Day(loopDate)#</cfoutput>
</cfif>
<form method="post" name="NeuerTermin" action="kalender_termineingabe.cfm">
<cfoutput>
<input type="hidden" name="Tag" value="#Day(loopDate)#">
<input type="hidden" name="Monat" value="#Month(loopDate)#">
<input type="hidden" name="Jahr" value="#Year(loopDate)#">
</cfoutput>
<input type="submit" value="+">
</form>
</td>
<cfelse>
<cfif TERMIN_GEFUNDEN EQ 1>
<td class="kalender-table-cell" bgcolor=#ffff00#><cfoutput>#Day(loopDate)#<br><b>X</b></cfoutput>
<cfelse>
<td class="kalender-table-cell"><cfoutput>#Day(loopDate)#</cfoutput>
</cfif>
<form method="post" name="NeuerTermin" action="kalender_termineingabe.cfm">
<cfoutput>
<input type="hidden" name="Tag" value="#Day(loopDate)#">
<input type="hidden" name="Monat" value="#Month(loopDate)#">
<input type="hidden" name="Jahr" value="#Year(loopDate)#">
</cfoutput>
<input type="submit" value="+">
</form>
</td>
</cfif>
<cfif (DayOfWeek(loopDate)) EQ 1>
</tr>
</cfif>
</cfloop>
<cfloop index="i" from="#ZielWochentag#" to="7" >
<td class="kalender-table-cell" bgcolor=#BDBDBD> </td>
</cfloop>
<br>
</body>
</table>
<!-- 1. Form: Monat zurück -->
<table>
<body>
<tr>
<td>
<form method="post" name="form1" action>
<cfoutput>
<input type="hidden" name="AktuellerMonat" value=#zuruckMonat#>
<input type="hidden" name="AktuellesJahr" value="#zuruckJahr#">
</cfoutput>
<input type="submit" value="Zuruck">
</form>
</td>
<!-- 2. Form: Monat vor -->
<td>
<form method="post" name="form2" action>
<cfoutput>
<input type="hidden" name="AktuellerMonat" value=#vorMonat#>
<input type="hidden" name="AktuellesJahr" value="#vorJahr#">
</cfoutput>
<input type="submit" value="Vor">
</form>
</td>
</tr>
</body>
</table>
<br>
</body>
</html>
```