function validate() { $result = parent::validate(); $bookmarks = ShareThisOptions::get_page_specific_data("", "", ""); if (!isset($bookmarks[$this->Title])) { $result->error(sprintf(_t('ShareThisDataObject.NON_EXISTING_TITLE', 'This social plaform "%s" does not exist. Please change / delete the this entry.'), $this->Title)); } return $result; }
protected function makeBookmarks($field) { $finalBookmarks = array(); $bookmarks = ShareThisOptions::get_page_specific_data($this->owner->Title, $this->owner->Link(), $this->owner->MetaDescription); $objects = ShareThisDataObject::get()->filter($field, 1)->sort(array('Sort' => 'ASC', 'Title' => 'ASC')); if ($objects->count()) { foreach ($objects as $obj) { if (isset($bookmarks[$obj->Title])) { $finalBookmarks[$obj->Title] = $bookmarks[$obj->Title]; if ($obj->AlternativeIconID && $obj->AlternativeIcon()->exists()) { $finalBookmarks[$obj->Title]['icon'] = $obj->AlternativeIcon()->Link(); } } } } else { $finalBookmarks = $bookmarks; } return $finalBookmarks; }