You are here

class views_handler_relationship_recommender_entity_type in Recommender API 6.3

Same name and namespace in other branches
  1. 7.3 recommender.views.inc \views_handler_relationship_recommender_entity_type
  2. 7.4 recommender.views.inc \views_handler_relationship_recommender_entity_type
  3. 7.5 recommender.views.inc \views_handler_relationship_recommender_entity_type

Argument by entity type [#1191904]

Hierarchy

Expanded class hierarchy of views_handler_relationship_recommender_entity_type

1 string reference to 'views_handler_relationship_recommender_entity_type'
recommender_views_data in views/recommender.views.inc
Implements hook_views_data().

File

views/views_handler_relationship_recommender_entity_type.inc, line 6

View source
class views_handler_relationship_recommender_entity_type extends views_handler_relationship {
  function init(&$view, &$options) {
    parent::init($view, $options);

    // change the base table and base table field based on user input.
    $base_type = isset($options['base_entity_type']) ? $options['base_entity_type'] : 'node';
    $base_table = views_fetch_data($base_type);
    $this->definition['base'] = $base_type;
    $this->definition['base field'] = $base_table['table']['base']['field'];
  }
  function option_definition() {
    $options = parent::option_definition();
    $options['base_entity_type'] = array(
      'default' => 'node',
    );
    return $options;
  }
  function options_form(&$form, &$form_state) {
    parent::options_form($form, $form_state);
    $base_tables = views_fetch_base_tables();
    $entity_options = array();
    foreach ($base_tables as $name => $table) {
      $entity_options[$name] = $table['title'];
    }
    $form['base_entity_type'] = array(
      '#type' => 'select',
      '#title' => t('Entity type (base table)'),
      '#default_value' => isset($this->options['base_entity_type']) ? $this->options['base_entity_type'] : 'node',
      '#options' => $entity_options,
      '#description' => t('Select the entity type (node, user, etc) of the recommended items.'),
    );
  }

}

Members