var eventTag= new Array('');
var eventTagIds = new Array('');
function kalender (wann, ident){
// wann = Timestamp des Startzeitpunktes an den der kalender Angezeigt werden soll.
// ident = id des Kalenders, dient der Registrierung des Kalenders innheralb des Frameworks.
this.datum = new Date(wann);
this.firstday = new Date(this.datum.getFullYear(), this.datum.getMonth(), 1);
this.tage = Array(31,0,31,30,31,30,31,31,30,31,30,31); // Array mit der Anzahl der Tage der Monate
this.Monate = Array('Januar','Februar','März','April', 'Mai','Juni','Juli','August','September','Oktober','November','Dezemebr');
this.anzahltage= function(){ // Interne Funktion zur Ausgabe der Anzahl des Aktuell gewählten Monats
if(1!=this.datum.getMonth()){ // Wenn der Monat nicht Februar ist.
outs=this.tage[this.datum.getMonth()]; // Gebe Anzahl der tage des Monats zurück
}
else{ // Ansonsten
if(this.datum.getFullYear()%400){ // Wenn das Jahr ein Schaltjahr ist
outs=29; // gebe 29 zurück
}
else{ // Ansonsten
outs=28; // gebe 28 zurück
}
}
return outs;
}
this.drawCalendar = function (){
var vergangen=true;
StartTag = this.firstday.getDay();
Started = false;
tag=0;
out='';
out+='
';
out+='';
out+='';
out+=' | So | ';
out+=' Mo | ';
out+=' Di | ';
out+=' Mi | ';
out+=' Do | ';
out+=' Fr | ';
out+=' Sa | ';
out+='
';
for(r=0; r<6; r++){
out+='';
for(d=0;d<7; d++){
if(vergangen){
dopac="opacity: 0.4; filter: Alpha(opacity=40);";
}
else {
dopac="";
}
if(!Started){
if(d!=StartTag){
out+='| | ';
}
else{
tag=tag+1;
if(eventTag[tag]){tagtitle=eventTag[tag].substr(10);}
else {tagtitle='';}
if(tag!=this.datum.getDate()){
if(eventTag[tag]){
out+=''+tag+'
| ';
}
else {
out+=''+tag+'
| ';
}
}
else{
out+=''+tag+'
| ';
vergangen=false;
}
Started=true;
}
}
else{
tag=tag+1;
if(eventTag[tag]){tagtitle=eventTag[tag].substr(10);}
else {tagtitle='';}
if(tag<(this.anzahltage()+1)){
if(tag!=this.datum.getDate()){
if(eventTag[tag]){
out+=''+tag+'
| ';
}
else {
out+=''+tag+'
| ';
}
}
else{
out+=''+tag+'
| ';
vergangen=false;
}
}
else{
out+=' | ';
}
}
}
out+='
';
}
out+='
';
return out;
}
this.drawLoadedCalendar = function (){
StartTag = this.firstday.getDay();
Started = false;
tag=0;
out='';
out+='';
out+=' ';
out+=' | '+this.Monate[this.datum.getMonth()]+' | ';
out+=' '+this.datum.getFullYear()+' | ';
out+='
';
out+='
';
out+='';
out+='';
out+=' | So | ';
out+=' Mo | ';
out+=' Di | ';
out+=' Mi | ';
out+=' Do | ';
out+=' Fr | ';
out+=' Sa | ';
out+='
';
for(r=0; r<6; r++){
out+='';
for(d=0;d<7; d++){
if(!Started){
if(d!=StartTag){
out+='| | ';
}
else{
tag=tag+1;
if(eventTag[tag]){tagtitle=eventTag[tag];}
tagtitle='1';
if(tag!=this.datum.getDate()){
out+=''+tag+'
| ';
}
else{
out+=''+tag+'
| ';
}
Started=true;
}
}
else{
tag=tag+1;
if(eventTag[tag]){tagtitle=eventTag[tag];}
tagtitle='1';
if(tag<(this.anzahltage()+1)){
if(tag!=this.datum.getDate()){
out+=''+tag+'
| ';
}
else{
out+=''+tag+'
| ';
}
}
else{
out+=' | ';
}
}
}
out+='
';
}
out+='
';
return out;
}
}
var cal = new kalender(Date());