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


Reply


23 Posts   4038 Views

Avatar
UncleCheese

4085 Posts

2 July 2009 at 4:41am

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.

Avatar
OutrunTheWolf

Community Member, 34 Posts

3 July 2009 at 2:11am

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

http://www.srmpromotions.com/dj-factory/2009-08-08

So back to my previous question:

http://www.silverstripe.org/all-other-modules/show/263522?start=8#post263758

Avatar
Hankins

Community Member, 11 Posts

24 October 2009 at 6:38am

Edited: 24/10/2009 7:59am

Hello OutrunTheWolf,

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

Updated Solution:

In your Template "CustomEventCalendar_Holder.ss" Use this convention: $Event.ItemName
In your Template "CustomEvent_Entry.ss" 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.

Avatar
tchintchie

Community Member, 63 Posts

29 May 2011 at 5:45am

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!!!

Avatar
tchintchie

Community Member, 63 Posts

29 May 2011 at 6:10am

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

Avatar
UncleCheese

4085 Posts

31 May 2011 at 3:34pm

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

CalendarEventDecorator.php

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:

Object::add_extension("CalendarEvent","CalendarEventDecorator");

Do a /dev/build

Then on your template:

$Event.Image

or..

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

---------------
Silverstripe tips, tutorials, screencasts, and more. http://www.leftandmain.com

Avatar
tchintchie

Community Member, 63 Posts

1 June 2011 at 1:11am

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
tchintchie