You are here

function views_oai_pmh_plugin_row_etdms::validate in Views OAI-PMH 7

Same name and namespace in other branches
  1. 6.2 plugins/views_oai_pmh_plugin_row_etdms.inc \views_oai_pmh_plugin_row_etdms::validate()
  2. 6 plugins/views_oai_pmh_plugin_row_etdms.inc \views_oai_pmh_plugin_row_etdms::validate()
  3. 7.2 plugins/views_oai_pmh_plugin_row_etdms.inc \views_oai_pmh_plugin_row_etdms::validate()

Validate that the plugin is correct and can be saved.

Return value

array An array of error strings to tell the user what is wrong with this plugin.

Overrides views_plugin::validate

File

plugins/views_oai_pmh_plugin_row_etdms.inc, line 14

Class

views_oai_pmh_plugin_row_etdms

Code

function validate() {
  $errors = parent::validate();
  $etdms_errors = array();
  $link = $this->display->handler
    ->option_link('Row options', 'row_options');
  $field_handlers = $this->display->handler
    ->get_handlers('field');
  foreach ($field_handlers as $id => $field) {
    $ui_label = $field
      ->ui_name();
    $label = $field
      ->label();
    if (empty($label) || substr($label, 0, 3) != 'etdms:') {
      $etdms_errors[] = t('The field "@title" does not have a Dublin Core label associated with it. Go to the !link page to fix it.', array(
        '@title' => $ui_label,
        '!link' => $link,
      ));
    }
  }
  return array_merge($errors, $etdms_errors);
}