You are here

function views_rss_plugin_style_fields::option_definition in Views RSS 7.2

Same name and namespace in other branches
  1. 6.2 views/views_rss_plugin_style_fields.inc \views_rss_plugin_style_fields::option_definition()

Information about options for all kinds of purposes will be held here.

@code 'option_name' => array(

  • 'default' => default value,
  • 'translatable' => (optional) TRUE/FALSE (wrap in t() on export if true),
  • 'contains' => (optional) array of items this contains, with its own defaults, etc. If contains is set, the default will be ignored and assumed to be array().
  • 'bool' => (optional) TRUE/FALSE Is the value a boolean value. This will change the export format to TRUE/FALSE instead of 1/0.
  • 'export' => (optional) FALSE or a callback for special export handling if necessary.
  • 'unpack_translatable' => (optional) callback for special handling for translating data within the option, if necessary.

),

Return value

array Returns the options of this handler/plugin.

Overrides views_plugin_style::option_definition

See also

views_object::export_option()

views_object::export_option_always()

views_object::unpack_translatable()

File

views/views_rss_plugin_style_fields.inc, line 45
Extends the view_plugin_style class to provide new RSS view style.

Class

views_rss_plugin_style_fields
@file Extends the view_plugin_style class to provide new RSS view style.

Code

function option_definition() {
  $options = parent::option_definition();

  // Namespace defaults.
  $namespaces = views_rss_get('namespaces');
  if (count($namespaces)) {
    foreach ($namespaces as $module => $module_namespaces) {
      foreach (array_keys($module_namespaces) as $namespace) {
        $options['namespaces'][$module][$namespace] = array(
          'default' => NULL,
        );
      }
    }
  }

  // Channel element defaults.
  $channel_elements = views_rss_get('channel_elements');
  if (count($channel_elements)) {
    foreach ($channel_elements as $module => $module_channel_elements) {
      foreach (array_keys($module_channel_elements) as $element) {
        list($namespace, $element_name) = views_rss_extract_element_names($element, 'core');
        $options['channel'][$namespace][$module][$element_name] = array(
          'default' => NULL,
        );
      }
    }
  }

  // Item element defaults.
  $item_elements = views_rss_get('item_elements');
  if (count($item_elements)) {
    foreach ($item_elements as $module => $module_item_elements) {
      foreach (array_keys($module_item_elements) as $element) {
        list($namespace, $element_name) = views_rss_extract_element_names($element, 'core');
        $options['item'][$namespace][$module][$element_name] = array(
          'default' => NULL,
        );
      }
    }
  }

  // Other feed settings defaults.
  $options['feed_settings']['feed_in_links'] = array(
    'default' => 0,
  );
  return $options;
}