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, biapar, Willr, Ingo

like tutorial 5, but with members


Go to End
Reply


1086 Views

Avatar
lekoala

Community Member, 30 Posts

30 April 2008 at 12:32am

Hi all,

I'm trying to do something similar to tutorial 5 but with members instead of students. The idea is to have an activitypage to which members can subscribe.

The code so far looks like this :

***

class ActivityPage extends Page {
static $db = array(
'Date' => 'Date',
'HeureDebut' => 'Time',
'HeureFin' => 'Time',
'Lieu' => 'HTMLText',
'Titre' => 'Varchar'
);
static $has_one = array(
'Photo' => 'Image'
);
static $has_many = array(
'Participants' => 'Member'
);
static $defaults = array(
'ShowInMenus' => false
);

function getCMSFields() {
$fields = parent::getCMSFields();

$fields->addFieldToTab("Root.Content.Images", new ImageField('Photo'));

$fields->addFieldToTab( 'Root.Content.Main', new CalendarDateField( 'Date' ) );
$fields->addFieldToTab( 'Root.Content.Main', new TimeField( 'HeureDebut' ) );
$fields->addFieldToTab( 'Root.Content.Main', new TimeField( 'HeureFin' ) );
$fields->addFieldToTab( 'Root.Content.Main', new TextField( 'Lieu' ) );
$fields->addFieldToTab( 'Root.Content.Main', new TextField( 'Titre' ) );

$tablefield = new HasManyComplexTableField(
$this,
'Participants',
'Member',
array(
'FirstName' => 'Prénom',
'Surname' => 'Nom',
),
'getCMSFields_forPopup'
);
$tablefield->setAddTitle( 'Member' );

$fields->addFieldToTab( 'Root.Content.Participants', $tablefield );

return $fields;
}

}

***

which is basically the same code that the one in the tutorial except that I have changed Students to Participants (the name) and Student to Member (the type)

But... it crashes.

FATAL ERROR: Missing argument 1 for DataObject::get(), called in E:\www\xemecercle\silverstripe\sapphire\core\ViewableData.php on line 99 and defined
At line 1431 in E:\www\xemecercle\silverstripe\sapphire\core\model\DataObject.php

Which argument for DataObject is missing ? Any hint is welcome!