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.

Archive /

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo

Control children by condition

Go to End

2 Posts   1376 Views


25 Posts

27 June 2008 at 8:34pm


after reading a while, i was trying to access children of an EventHolderPage from within that page. but my function seem's not to work. thus i think this is basic functionality. what do i make wrong?
here is the code:

class EventHolder extends SiteTree {
static $db = array(
static $has_one = array(

static $allowed_children = array('EventPage');

class EventHolder_Controller extends ContentController {
function init() {

function validEvents()
return DataObject::get('EventPage', "Verfallsdatum > " . date('Y-m-d'));

in i try the following:

<% control validEvents %>
<div><h2 style="margin-bottom: 0px; text-align: left; font-family: Arial;">$Ueberschrift</h2></div>
<div style="width: 530px;">$Bild.SetWidth(100) $Content</div>
<div style="clear: both">&nbsp;</div>
<% end_control %>

the result is every event-page is shown no matter which value i use as condition.
i think there is no mistake inside the code, may be the system clock of my provider goes wrong?
Thank you,


Forum Moderator, 5523 Posts

27 June 2008 at 8:55pm

rather then usingn date() you best bet is to use MySQL Friendly NOW() so you would rewrite that as

function validEvents() { 
return DataObject::get('EventPage', "Verfallsdatum > NOW()");