Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

All other Modules

Discuss all other Modules here.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Adding an Image to the Event Calendar


23 Posts   4002 Views


2 July 2009 at 4:41am 4085 Posts

Well that's not the point. I'm just saying it's not just the values that are missing from your template. It's not even rendering the structure that you say you're using. If you view the source of your page, there is no <dl> tag that is supposed to be containing those values, so you might want to double check your template. Something isn't in the right place.


3 July 2009 at 2:11am Community Member, 34 Posts

I'm sorry UncleCheese, This is all my fault, I gave you the wrong URL. :( pls forgive me, here we go:

So back to my previous question:


24 October 2009 at 6:38am (Last edited: 24 October 2009 7:59am), Community Member, 11 Posts

Hello OutrunTheWolf,

I had a similar problem and fixed it using the following:

Updated Solution:

In your Template "" Use this convention: $Event.ItemName
In your Template "" Use this convention: $ItemName

@UncleCheese, Is there a particular reason I am having to use these two different methods to display the variables in each template? There does not appear to be any difference between my two templates and I give control to Event before referencing any of the Custom Data.


29 May 2011 at 5:45am Community Member, 63 Posts

sorry for warming up this years old threat but...

... I also had the wish to include a "teaser" pic to my events. I´ve read the Workshop tutorial but couldn´t get it to work (probably because I suck at .php). So I tried to modify the CalendarEvent.php (even though it´s recommended not to, but I have loads of events and all of them should get a pic ... I don´t wanna re-do all events in a workshop calendar again) and got it running so far... meaning it let´s me upload images but I don´t get them to show on my event pages :-(
I´ve already tried to insert images via CMS content field but this is horrible. No matter how I align the images they always stick to the left and act as block elements dividing my text!!! I would choose that over the event.image method but somehow it doesn´t seem to work (or is it just me?)
any help would be much appreciated!!!


29 May 2011 at 6:10am Community Member, 63 Posts

btw I just found this .vevent #eventImage img { float:right; } in the calendar.css ... so does this mean it´s supposed to contain images?


31 May 2011 at 3:34pm 4085 Posts

You can decorate on to the event class to add an image field.


CalendarEventDecorator extends DataObjectDecorator {

public function extraStatics() {
return array (
'has_one' => array ('Image' => 'Image')


public function updateCMSFields(&$fields) {
$fields->addFieldToTab("Root.Content.Image", new ImageField('Image'));

Apply the decorator in your _config:


Do a /dev/build

Then on your template:



<% control Event %>$Image.SetWidth(200)<% end_control %>

Silverstripe tips, tutorials, screencasts, and more.


1 June 2011 at 1:11am Community Member, 63 Posts

Thanks Uncle Cheese!

Did exactly what you said...only that $Event.Image didn´t work for me. I changed that to $Image and there was my image :-)

thanks again for the code!!
kind regards