additional_fields['nid'] = 'nid'; $this->additional_fields['uri'] = array('table' => 'project_projects', 'field' => 'uri'); } function option_definition() { $options = parent::option_definition(); $options['link_type'] = array('default' => 'issue', 'translatable' => FALSE); return $options; } function options_form(&$form, &$form_state) { parent::options_form($form, $form_state); $form['link_type'] = array( '#type' => 'radios', '#title' => t('Type of link to display'), '#options' => $this->get_link_type_options(), '#default_value' => $this->options['link_type'], ); } function get_link_type_options() { return array( 'issues' => t('Link to issue queue'), 'search' => t('Link to advanced search'), ); } function render($values) { $basepath = 'project/issues/'; if ($this->options['link_type'] == 'search') { $basepath .= 'search/'; } return l($values->{$this->field_alias}, $basepath . $values->{$this->aliases['uri']}); } }