its prosbile to call up the fields without scaning with a foreach if I know the fields names been given already. How would I do it?
I am using assign to save the value for later use. I am showing a image if only a description (ALT) is pesent.
The code works below, I just want to make it simple and faster.
Thank you.
Code: Select all
{if $page_alias != "eventss"}
{foreach from=$events key=key item=event}
{if $event.fields.Summary.field_value != '' || $event.event_details != ''}
<div class="eventbox">
<a href="{$event.url}" title="{$event.event_title}">
<div class="eventpic">
{if isset($event.fields)}
{foreach $event.fields as $fieldname => $fieldrec}
{if $fieldname == "Image"}
{assign var="cal_image" value=$fieldrec.field_value}
{/if}
{if $fieldname == "Image description"}
{assign var="cal_des" value=$fieldrec.field_value}
{/if}
{/foreach}
{/if}
{if $cal_des != '' && $cal_image != "" }
{CGSmartImage src={$cal_image} alt={$cal_des} filter_crop2size="300,140" }
{else}
{CGSmartImage src="https://www.webiste.org.uk/uploads/images/cal.jpg" alt={$event.event_title} filter_crop="300,140" }
{/if}
<p class="imgdate" ><span class="imgmonth">{$event.event_date_start|date_format:"M"}</span><br/><span class="imgday">{$event.event_date_start|date_format:"d"}</span></p>
{$event.event_date_start|date_format:"M d"}
</div>
{if $event.fgcolor != '' && $event.bgcolor != ''}
<h3 >{$event.event_title}</h3>
{else}
<h3>{$event.event_title}</h3>
{/if}
{if $event.event_date_start == $event.event_date_end || $event.event_date_end == 0}
{* event has no end date *}
<p class="eventdate">{$event.event_date_start|date_format:"l dS F"}
</p>
{if $event.event_all_day == "0"}
<p class="eventtime">{$event.event_date_start|date_format:"%H:%M"}</p>{/if}
{else}
{if $event.event_date_start|date_format:"%d%m%Y" == $event.event_date_end|date_format:"%d%m%Y"}
{* event starts and ends on the same day *}
<p class="eventdate">{$event.event_date_start|date_format:"l dS F"}</p><p class="eventtime">{$event.event_date_start|date_format:"%H:%M"} - {$event.event_date_end|date_format:"%H:%M"}</p>
{else}
{* event staarts and ends on different dates *}
<p class="eventdate">{$event.event_date_start|date_format:"dS F"} - {$event.event_date_end|date_format:"dS F"}</p>
{/if}
{/if}
{if $event.fields.Summary.field_value != ''}
<p>{$event.fields.Summary.field_value|strip_tags|truncate:300}</p>
<p class="more">More Details</p>
{elseif $event.event_details != ''}
<p>{$event.event_details|strip_tags|truncate:300}</p>
<p class="more">More Details</p>
{else}<p>Sorry no infornation on this event</p>
{/if}
</a></div>
{/if}
{/foreach}
{/if}