Zum Inhalt springen

Calendar Base - Miniview - Probleme bei der Ansicht

Erstellt am 16. Januar 2007 · 19 Antworten · letzte Antwort am 23. Mai 2011

Tags: Kalender & Termine, Frage

cavalorn ·

hallo,

ich installiere gerade die calendar base und möchte in der rechten spalte ein "mini view" haben.

dazu habe ich ein sysordner erstellt (pid=5) und eine seite, auf der der minikalender erscheinen soll (pid=43). im sysordner habe ich einen kalender und eine news erstellt. den kalender habe ich als "month-view" deklariert...

folgende templates habe ich hochgeladen:

fileadmin/Templates/cal/monthmini.tmpl

<!-- monthmini.tmpl -->
<div id="minical" align="center">###MONTH_SMALL|+0### </div>

sowie

fileadmin/Templates/cal/monthteaser.tmpl

<!-- monthteaser.tmpl -->
<dl id="calteaser">
	<!-- ###SHOWBOTTOMEVENTS### start -->
	<!-- ###SHOWBOTTOMEVENTS_ODD### start -->
	<dt class="odd">###DAYLINK###<span class="V9G">###START_TIME###</span></dt>
	
	<dd class="odd">###EVENT_TEXT###</dd>
 
	
	<!-- ###SHOWBOTTOMEVENTS_ODD### end -->
	<!-- ###SHOWBOTTOMEVENTS_EVEN### start -->
	<dt class="even">###DAYLINK###<span class="V9G">###START_TIME###</span></dt>
	
	<dd class="even">###EVENT_TEXT###</dd>
	<!-- ###SHOWBOTTOMEVENTS_EVEN### end -->
	<!-- ###SHOWBOTTOMEVENTS### end -->
</dl>

Im TypoScript siehts wie folgt aus:

##############################################################
##############################################################  
  
# Einstellungen für den MiniCal

lib.minical >
lib.minical < plugin.tx_cal_controller
lib.minical {
	pages = 5
	view {
		defaultView = month 
		month.monthTemplate = fileadmin/Templates/cal/monthmini.tmpl
		calendar.defaultUid = 5
		isStatic = 1
		day.dayViewPid = PID_DER_KALENDERSEITE/TAGESANSICHT
		weekStartDay = Monday
	}	
}

lib.minicallist >
lib.minicallist < plugin.tx_cal_controller
lib.minicallist {
	pages = 5
	view {
		defaultView = list
		list.listTemplate = fileadmin/Templates/cal/monthteaser.tmpl		
		calendar.defaultUid = 5
		isStatic = 1
		event.eventViewPid = PID_DER_KALENDERSEITE/EVENTANSICHT
		weekStartDay = Monday
	}	
}

}

Das Resultat kann man hier betrachten (nach unten scrollen): http://p25465.typo3server.info

Typo3 zeigt mir nicht nur die gewünschte Monatsansicht an (also den kleinen Kalender, den ich über TypoScript eingebunden habe), sondern ein riesen Teil mir letzten und nächsten Monat 🙁

Wo läuft's hier verkehrt? Würde mich sehr über den einen oder anderen Tipp freuen.

Viele Grüße
cavalorn[/b]

cavalorn ·

weiß denn niemand woran das liegt?

vll habe ich mich auch falsch ausgedrückt: typo3 gibt irgendwie alle ansichten aus: monat in groß mit letzen um nächsten monat in klein...

dabei möchte ich nur den aktuellen monat als mini view angezeigt bekommen

inu ·

Hallo,

ich habe das selbe Problem, dass sowohl der aktuelle Monat in groß als auch der letzte und nächste Monat in klein dargestellt werden. Wie ich sehe, hast Du das scheinbar unter http://p25465.typo3server.info hinbekommen. Genau so eine Anzeige stelle ich mir vor. Kannst Du bitte mal Deinen Lösungsansatz posten?

nobbie ·

Hallo,

1. einen sysordner erstellen
2. die aktuellste Version cal 1.1.0 installieren
3. das Plugin "cal" an der gewünschten Stelle einfügen
4. unter "Allgemeine Einstellungen" "erlaubte Ansicht" den "Monat" auswählen
5. auf "Monatsansicht" ein Häkchen bei "als Minikalender anzeigen" einfügen
6. nach Bedarf "css" anpassen
7. als Ausgangspunkt den erstellten "sysordner" auswählen

und fertig ist der Minikalender. Mehr ist nicht notwendig.

Siehe http://emwallianz.syscp3.webhosting-franken.de/emw-allianz.html

nobbie

inu ·

Okay, vielen Dank.

A-Bär: Ich möchte meinen Kallender auf allen Seiten angezeigt bekommen. Ich habe somit einen Marker ###MINICAL### in meinem HTML-Template eingefügt.

Zusatzfrage:
Wie gelingt es mir im Mini-Cal, die Tage, an welchen Termine vergeben sind, farblich zu unterlegen? Wie erstelle ich im Mini-Cal bei "belegten" Tagen einen Link (... zu einer Listenansicht)?

nobbie ·

Hallo,

also zunächst binde ich den folgenden TS als "Extension Template" ein.
Durch die Anweisung "eventLinkTarget = day" werden die Termine mit der Tagesansicht verknüpft.

plugin.tx_cal_controller.view.list.description.stdWrap.stripHtml = 1
plugin.tx_cal_controller.view.list.description.stdWrap.crop = 30|...|1
plugin.tx_cal_controller.view.location.event.dateFormat = %d.%m.%Y
plugin.tx_cal_controller.view.list.dontShowEndDateIfEqualsStartDate = 1
plugin.tx_cal_controller.view.list.starttime = today
plugin.tx_cal_controller.view.list.endtime = +12 month
plugin.tx_cal_controller.view.list.endtime_stdWrap {
noTrimWrap = | - ||
required = 1

}

lib.minical = COA
lib.minical {
    wrap =  <h2><img width="31" height="12" src="fileadmin/img/neutrans.gif"> Nächste Termine </h2> |

    5 < plugin.tx_cal_controller
    5 {

        pages = 34
        view {
            allowedViews = list
            list.listTemplate = fileadmin/templates/cal/listmini.tmpl
            eventLinkTarget = day
            day.dayViewPid = 57
            weekStartDay = Monday
            list.maxEvents = 6
            list.listViewPid = 51
            event.eventViewPid = 56
      
        }

    }
    10 < plugin.tx_cal_controller
    10 {
        pages = 34
        view {
            allowedViews = month
            month.monthTemplate = fileadmin/templates/cal/monthmini.tmpl
            day.dayViewPid = 57
            weekStartDay = Monday
            dayLinkTarget = day
            list.listViewPid = 51
            month.monthViewPid = 57
            event.listViewPid = 56
            event.createEventViewPid = 56
        }
    }
    
    20 = TEXT
    20.wrap= <p>|</p>
    20.value=weitere Termine
    20.typolink.parameter=51

}

Die folgende "CSS-Datei" habe ich eingebunden (hier nur auszugsweise betreffend "monthmini" und "listmini") und die Original auf "default" gesetzt.

table.month-small {
			border: 1px solid #A1A5A9;
			border-collapse: collapse;
			}
		.month-weeknums {
			border-right:1px solid #AAAAAA;
			background-color:#EFEFEF;
		}
		
		.month-weekdays {
			border-bottom:1px solid #AAAAAA;
			background-color:#EFEFEF;
		}
		.month-small a:link,.monthoff a:visited {
			color: #000000;
		}
		
		.month-small th,
		.month-small td {
			padding: 2px;
			width: 190px;
			font-size: 10px;
			text-align: right;
		}
		
		.month-small th{
			text-align: center;
			background-color:#EFEFEF;
		}
			
		
		
		

/*------------- list und listmini  styles------------*/
		
		
.tx-cal-controller .even{
			line-height: 1.25em;
			background-color: #DCDCDC;
			padding: 2px 2px;
			margin: 0px;
			font-size:0.920em;
			color: #000;

}
	
.tx-cal-controller dl dt {
			border-top:1px dotted #997C00;
			line-height:1.25em;
			background-color: #F8F8FF;
			font-size:0.920em;
			margin:0pt;
			padding:7px 0pt 0pt;
}
.tx-cal-controller dl dd {
			line-height:1.25em;
			background-color: #F8F8FF;
			font-size:0.920em;
			margin:0pt;
			padding:0pt 0pt 7px;
}

Dies ist der Minikalender

<!-- monthmini.tmpl -->
<br />
<div id="minical" align="center">###MONTH_SMALL|+0### </div>

und dies ist die minilist

<!--listmini.tmpl-->
<!-- ###LIST_TEMPLATE### begin -->

<dl>
	<!-- ###LIST### start -->
	
	<!-- ###LIST### end -->
</dl>
<!-- ###LIST_TEMPLATE### end -->
<!--/listmini.tmpl-->

Die hier aufgeführten Anweisungen und Dateien verwende ich auf

http://www.ssv-schwaebischhall.de/verein.html

nobbie

inu ·

okay, Danke erst einmal bis hier her.

Welchen Parameter muss man wo einstellen, damit Tage im MiniCal anklickbar werden, wenn Termine hinterlegt sind?

nobbie ·

Hallo inu,

im oben aufgeführten TypoScript steht der Parameter "eventLinkTarget = day"

Durch die Anweisung "eventLinkTarget = day" werden die Termine mit der Tagesansicht verknüpft

Durch den gemeinsamen "sysordner" in dem die Termine angelegt, werden in allen Ansichten (Minikalender, Monats usw.) die Termine eingetragen und entsprechend zu den verschiedenen Ansichten verlinkt.

Du musst noch eine Seite erstellen, auf der "cal" mit den verschiedenen Ansichten wie Jahresansicht, Monatsansicht, Wochenansicht, Tagesansicht, Listenansicht und Einzel- oder Terminansicht installiert ist. Dies lässt sich alles auf einer Seite unterbringen.

Auf diese Seite wird dann mit dem o.a. Parameter vom Minikalender auf die Tagesansicht verlinkt.

nobbie

steffenk ·

Du kannst doch auch einfach irgendwo das plugin einfügen, entsprechend konfigurieren und per Typoscript mit RECORDS auf jeder Seite anzeigen.

inu ·

Scheinbar stelle ich mich total schräg an.

Also: Ich habe einen Sysordner (ID 394) und folgendes TYPO3-Sceript hinterlegt:

...
lib.minical < plugin.tx_cal_controller 
lib.minical {
  pages = 394
  pidList = 394
  calendarName = Veranstaltungen & Termine
  view {
    allowedViews = month
    month.monthTemplate = fileadmin/layout/meineseite/monthmini.tmpl
    month.monthSmallTemplate=fileadmin/layout/meineseite/month_small.tmpl
    month.monthViewPid = 394
    weekStartDay = Monday
    eventLinkTarget = day  
  }	
}
...

Ebenfalls habe ich eine Seite (ID 395) erstellt, auf der ich das Kalenderplugin eingefügt habe. In dioesem Plugin habe ich unter "Erwiterungsoptionen - Allgemeine Einstellungen" alle erdenklichen Ansichten zugelassen.

Dennoch: Im Minikalender werden keine Links "sichtbar". Ich kann dort einfach nichts anklicken! Auch das Vor- bzw- Rückwärtsbrowsen druch die Monate des Minicals funktioniert nicht, obwohl ich diese Marker in meiner month_small.tmpl eingefügt habe. Die Pfeile werden jedoch dargestellt.

<!--month_small.tmpl-->
<!-- ###MONTH_TEMPLATE### start -->
<table class="month-small">
<thead>
	<tr>
		<th colspan="8" class="sideback">
			<!-- ###PREV_MONTHLINK### start-->
				<!-- ###PREV_MONTHLINKTEXT### start-->
				<img src="###IMG_PATH###/left_day.gif" alt="[Previous Month]" />
				<!-- ###PREV_MONTHLINKTEXT### end-->
			<!-- ###PREV_MONTHLINK### end-->
			###MONTH_TITLE###
			<!-- ###NEXT_MONTHLINK### start-->
				<!-- ###NEXT_MONTHLINKTEXT### start-->
				<img src="###IMG_PATH###/right_day.gif" alt="[Next Month]" />
				<!-- ###NEXT_MONTHLINKTEXT### end-->
			<!-- ###NEXT_MONTHLINK### end-->
		</th>
	</tr>
</thead>
<tbody>
	<tr>
		<!-- ###LOOPWEEKDAY### start -->
		<th class="month-weekdays###ADDITIONAL_CLASSES###">###WEEKDAY###</th>
		<!-- ###LOOPWEEKDAY### end -->
		<!-- ###LOOPMONTHWEEKS_DAYS### start -->
	<tr>
		<!-- ###LOOPMONTHWEEKS_DAYS### end -->
		<!-- ###LOOPWEEK_NUMS### start -->
		<th class="month-weeknums %s">%s</th>
		<!-- ###LOOPWEEK_NUMS### end -->
		<!-- ###LOOPMONTHWEEKS### start -->
	<tr>
		<!-- ###SWITCHMONTHDAY### start -->
		<td class="###STYLE###">
			###LINK###
		</td>
		<!-- ###SWITCHMONTHDAY### end -->
		<!-- ###LOOPMONTHDAYS_WEEKS### start -->
	</tr>
	<!-- ###LOOPMONTHDAYS_WEEKS### end -->
	<!-- ###LOOPMONTHWEEKS### end -->
</tbody>
</table>
<!-- ###MONTH_TEMPLATE### end -->
<!--/month_small.tmpl-->
steffenk ·

Du hast ja auch keine PID angegeben.

Nobbie sagte doch "verlinkt zur Tagesansicht"
Und wo ist die bei Dir?
day.dayViewPid = xyz

inu ·

Jaja, wer lesen kann... Habe nun mein TX wie folgt abgeändert:

lib.minical < plugin.tx_cal_controller 
lib.minical {
  pages = 394
  pidList = 394
  calendarName = Veranstaltungen & Termine
  view {
    allowedViews = month
    month.monthTemplate = fileadmin/layout/meineseite/monthmini.tmpl
    month.monthSmallTemplate=fileadmin/layout/meine/month_small.tmpl
    month.monthViewPid = 394
    weekStartDay = Monday
    eventLinkTarget = day  
    day.dayViewPid = 395
    list.listViewPid = 395
    event.listViewPid = 395
    dayLinkTarget = day  
  }	
}

Das zumindest funktioniert erst einmal. Jetzt erhalte ich die Tageslinks in meinem MiniCal und kann dann auch zum entsprechenden Tageseintrag beim Anklicken springen. Bin ich dann im Tageskalender, sehe ich rechts ebenfalls wieder MiniCals. Diese schauen aber etwas anders aus, als der meinige, obwohl ich layoutmäßig nix verändert habe. Zum Beispiel werden bei mir alle Tage fett angezeigt und in den anderen MiniCals nur die Tage, wo es Links gibt.

Woran liegt das?

inu ·

Hat realurl gegenüber SimulateStatic Vorteile? Was muss ich bei einer Umstellung aus realurl beachten?

Noch ein Frage zum eigentlichen Thema: Gern möchte ich beim Anklicken im MiniCal auf eine Tages-LISTE gelangen und nicht in einen Tageskalender. Grundsätzlich kann ich ja in eine Liste dort einbinden. Wie aber jedoch wird dort der angeklickte Tag berücksichtigt? Ich kann zwar so etwas wie "heute", "gestern" auswählen, aber das hilft ja nicht weiter...

nobbie ·

Hallo inu,

zum ersten Teil Deiner Frage

Hat realurl gegenüber SimulateStatic Vorteile?

Dies ist eine "Glaubensfrage", die sich so nicht beantworten lässt.

Was muss ich bei einer Umstellung aus realurl beachten?

Im Grunde genommen nur: die ".htaccess" und die Extension "realurl"
konfigurieren, aber hier fängt das Dilemma an, denn jede Server- und TYPO3-Installation reagiert anders.
Hier im Forum sind etliche Postings zum Thema "realurl" dazu.

Zum 2. Teil Deiner Frage.
Wenn ich Dich richtig verstanden habe,
möchtest Du die Termine vom Minikalender mit einer "Einzelansicht"
verbinden. Hierzu kann ich Dir leider keine Lösung anbieten.
Aber ich würde die Newsgruppe "typo3.projects.calendar" abonnieren,
dort bekommst Du auf diese Frage sicher ein Antwort.

nobbie

inu ·

Ich versuche es sicher über den von Dir vogeschlagenen Weg. Zumindest erst einmal vielen Dank, für die "Führung".

untouch ·

hi, erstmal vielen dank hat mir sehr weitergeholfen bisher..

hatte genau das selbe problem - wennn ich im mini cal nun ueber nen termin fahre erscheint jedoch im tooltop das wort "day view"

hier möchte ich immer als tooltip die beschreibung des events haben

wie mach ich das denn??

lg

rea ·

oh ja, das hätte ich auch gern.
Statt Tagesansicht einfach der oder die Titel der Events an dem Tag. Geht das, wo muss ich da anfangen? java script oder css, und gibt es dafür einen Marker oder Label?

richie676 ·

Hallo!

Ich hoffe es ist ok wenn ich dieses alte Thema wieder aufwärme, aber hier wurde genau das gefragt was ich suche.

Ich hätte gerne dass wenn man im Month Mini Calendar über einen Tag mit einem Event fährt dass man nicht das Wort Tagesansicht (engl. Day View) angezeigt bekommt sondern die Termin Eventeinzelheiten bzw wenn es mehrere sind alle untereinander.

Kann man den Tooltip irgendwie mit den Daten füllen? Oder gibt es eine Javascript Möglichkeit dazu (da dies ja schneller aufpopt als der Tooltip)?

lg
Richie