/** * Binds a named array/hash to this object * * Can be overloaded/supplemented by the child class * * @access public * @param $from mixed An associative array or object * @param $ignore mixed An array or space separated list of fields not to bind * @return boolean */ public function bind($from, $ignore = array(), $public = true) { //initializing variables $type = false; $fromArray = is_array($from); $fromObject = is_object($from); if ($fromArray && isset($from['type'])) { $type = $from['type']; } if ($type) { //setting object properties $class = ucfirst($type) . 'Webpage'; $path = EBOOK_EVERY . DS . 'webpage_types' . DS . $type . '.php'; if (file_exists($path)) { require_once $path; $obj = new $class(); $this->setProperties($obj); } } if (!parent::bind($from, $ignore, $public)) { return false; } return true; }
/** * Overloaded bind function * * @access public * @param array $hash named array * @return null|string null is operation was satisfactory, otherwise returns an error * @see JTable:bind * @since 1.5 */ function bind($array, $ignore = '') { if (key_exists('params', $array) && is_array($array['params'])) { $registry = new JRegistry(); $registry->loadArray($array['params']); $array['params'] = $registry->toString(); } return parent::bind($array, $ignore); }