/** * convert an options array into an object * * @since 1.1 * @param array $values associative array * @return Facebook_Recommendations_Box recommendations box object */ public static function fromArray($values) { if (!is_array($values) || empty($values)) { return; } $box = new Facebook_Recommendations_Box(); if (isset($values['site'])) { $box->setSite($values['site']); } if (isset($values['action'])) { if (is_string($values['action'])) { $box->addAction($values['action']); } else { if (is_array($values['action'])) { foreach ($values['action'] as $action) { $box->addAction($action); } } } } if (isset($values['app_id'])) { $box->setAppID($values['app_id']); } if (isset($values['width'])) { $box->setWidth(absint($values['width'])); } if (isset($values['height'])) { $box->setHeight(absint($values['height'])); } if (isset($values['header']) && ($values['header'] === true || $values['header'] == 1 || $values['header'] === 'true')) { $box->showHeader(); } else { $box->hideHeader(); } if (isset($values['border_color'])) { $box->setBorderColor($values['border_color']); } if (isset($values['linktarget'])) { $box->setLinkTarget($values['linktarget']); } if (isset($values['max_age'])) { $box->setMaxAge(absint($values['max_age'])); } if (isset($values['font'])) { $box->setFont($values['font']); } if (isset($values['colorscheme'])) { $box->setColorScheme($values['colorscheme']); } if (isset($values['ref'])) { $box->setReference($values['ref']); } return $box; }