public function getCMSFields() { $fields = parent::getCMSFields(); // Validate The Fact That an Actual E-mail Has Been Used $fields->replaceField("Email", new EmailField("Email", "Email")); $fields->removeByName('DoubleOptIn'); $fields->removeByName('MCMemberID'); $fields->removeByName('MCListID'); $fields->removeByName('MemberID'); if (empty($this->ID)) { $fields->removeByName('Subscribed'); } if (empty($this->UnsubscribeReason)) { $fields->removeByName('UnsubscribeReason'); } $lists = new DataList("MCList"); $lists->sort("\"MCList\".\"Name\" ASC"); $map = $lists->map("ID", "Name"); $mcListID = new DropdownField('MCListID', 'MailChimp List', $map); // Calculate What Parent Object We Are Adding This Subscription record Under (A Specific MCList or A Member) $params = Director::get_current_page()->getURLParams(); $FormParentObject = end($params); // If Already Set Don't Allow It To Be Modified if (!empty($this->MCListID)) { $mcListID = $mcListID->performReadonlyTransformation(); } // If Already Set And Read Only Or If Unset But Adding Subscription Record Under Member Object Show The MCListID Filed if (!empty($this->MCListID) || $FormParentObject == "Members") { $fields->addFieldToTab('Root.Main', $mcListID); } $MCMemberID = new TextField('MCMemberID', 'MailChimp Member ID'); $MCMemberID = $MCMemberID->performReadonlyTransformation(); $MCEmailID = new TextField('MCEmailID', 'MailChimp Email ID'); $MCEmailID = $MCEmailID->performReadonlyTransformation(); $fields->addFieldToTab('Root.Main', $MCMemberID, 'FirstName'); $fields->addFieldToTab('Root.Main', $MCEmailID, 'FirstName'); return $fields; }
<?php require_once "DataList.php"; $testArray = array(array('name' => 'Anna', 'age' => 22, 'owns' => array('type' => 'furniture', 'label' => 'chair')), array('name' => 'Bill', 'age' => 12, 'owns' => array('type' => 'fruit', 'label' => 'apple')), array('name' => 'Cedric', 'age' => 33, 'owns' => array('type' => 'furniture', 'label' => 'sofa'))); $test = new DataList($testArray); $test->where('age', '> 15'); $test->where('name', '^[AaBbCc](.*)$'); $test->find(); if ($test->length()) { $people = $test->sort('name'); foreach ($people as $person) { echo $person['name'] . ", " . $person['age'] . "\n"; } }