/** * Returns a new action object built using the information described in $action. * * @param object $json a JSON action returned by AppEngine. * * @return NelioABPageAccessedAction the new action containing all the information in `$action`. * * @since PHPDOC * @Override */ public static function decode_from_appengine($json) { $internal = isset($json->internal) && $json->internal; $indirect = isset($json->indirect) && $json->indirect; $ref = $json->reference; $title = __('Undefined', 'nelioab'); if (isset($json->title)) { $title = $json->title; } $action = new NelioABPageAccessedAction($ref, $internal); $action->set_title($title); $action->set_indirect_navigations_enabled($indirect); if (isset($json->key->id)) { $action->set_id($json->key->id); } return $action; }