You are here

function _metatag_config_instance_get_available_options in Metatag 7

Build an FAPI #options array for the instance select field.

1 call to _metatag_config_instance_get_available_options()
metatag_config_add_form in ./metatag.admin.inc
Form API callback for adding a default configuration.

File

./metatag.admin.inc, line 204
Administration page callbacks for the metatag module.

Code

function _metatag_config_instance_get_available_options() {
  $options = array();
  $instances = metatag_config_instance_info();
  foreach ($instances as $instance => $instance_info) {
    if (metatag_config_load($instance)) {
      continue;
    }
    $parents = metatag_config_get_parent_instances($instance, FALSE);
    array_shift($parents);
    if (!empty($parents)) {
      $parent = reset($parents);
      $parent_label = isset($instances[$parent]['label']) ? $instances[$parent]['label'] : t('Unknown');
      if (!isset($options[$parent_label])) {
        $options[$parent_label] = array();
        if (!metatag_config_load($parent)) {
          $options[$parent_label][$parent] = t('All');
        }
      }
      $options[$parent_label][$instance] = $instance_info['label'];
      unset($options[$parent]);
    }
    else {
      $options[$instance] = $instance_info['label'];
    }
  }
  return $options;
}