You are here

function metatags_quick_upgrade_submit in Meta tags quick 8.3

Same name and namespace in other branches
  1. 7.2 metatags_quick_import.admin.inc \metatags_quick_upgrade_submit()

File

./metatags_quick_import.admin.inc, line 50
upgrade path from the D6 nodewords module @author maxiorel <http://drupal.org/user/49016> @author valthebald <http://drupal.org/user/239562>

Code

function metatags_quick_upgrade_submit($form, &$form_state) {

  // Step 1. Create fields if they don't exist.
  if ($form_state['values']['create_fields']) {

    // Note: we upgrade only node data!
    $node_bundles = field_info_bundles('node');
    if (empty($node_bundles)) {
      form_set_error(t('No content types found. !define them first', array(
        '!define' => l(t('define'), 'admin/structure/types'),
      )));
      return;
    }
    module_load_include('inc', 'metatags_quick', 'metatags_quick.admin');
    foreach ($form_state['values']['fields_select'] as $field_name => $value) {
      if (!$value) {
        continue;
      }
      foreach ($node_bundles as $bundle_name => $bundle) {
        _metatags_quick_field_attach('node', $bundle_name, $field_name);
      }
    }
  }
  $fields_to_import = array();
  foreach ($form_state['values']['fields_select'] as $field_name => $value) {
    if ($value) {
      $fields_to_import[] = $field_name;
    }
  }
  $batch = metatags_quick_upgrade_batch($form_state['values']['batch_size'], $fields_to_import);
  $_SESSION['nodewords_iterations'] = count($batch['operations']);
  batch_set($batch);
}