Index: site_verify.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/site_verify/site_verify.install,v
retrieving revision 1.10.2.1
diff -u -p -r1.10.2.1 site_verify.install
--- site_verify.install	4 Feb 2010 04:50:37 -0000	1.10.2.1
+++ site_verify.install	15 Jan 2011 20:54:11 -0000
@@ -94,6 +94,18 @@ function site_verify_update_3() {
 }
 
 /**
+ * Implementation of hook_update_N().
+ * Convert the Nodewords settings.
+ * Also fix the update sequence to start with the module number, e.g. "61" for
+ * modules of version 6.x-1.x.
+ */
+function site_verify_update_6104() {
+  $ret = array();
+  site_verify_import_nodewords($ret);
+  return $ret;
+}
+
+/**
  * Import data from XML sitemap engines.
  */
 function site_verify_import_xmlsitemap(&$ret) {
@@ -121,3 +133,35 @@ function site_verify_import_ghs(&$ret) {
   }
   variable_del('ghs_string_verify');
 }
+
+/**
+ * Import data from Nodewords.
+ */
+function site_verify_import_nodewords(&$ret) {
+  // Only proceed if the Nodewords module is installed.
+  if (module_exists('nodewords')) {
+    $engines = array(
+      'alexa_verification_code' => 'alexa',
+      'bing_webmaster_center' => 'bing',
+      'google_webmaster_tools' => 'google',
+      'yahoo_site_explorer' => 'yahoo',
+    );
+    foreach ($engines as $tag => $engine) {
+      // Only proceed if there isn't a Google verification tag already.
+      if (db_result(db_query("SELECT 1 FROM {site_verify} WHERE engine = '%d'", $engine))) {
+        drupal_set_message("Skipped importing any Nodewords settings for {$engine} as it was already configured.");
+      }
+      // Convert the setting.
+      else {
+        $data = db_result(db_query("SELECT content FROM {nodewords} WHERE name = ''", $tag));
+        $settings = unserialize($data);
+        // Only proceed if there's a valid setting.
+        if (!empty($settings['value'])) {
+          $string = db_escape_string($settings['value']);
+          $ret[] = update_sql("INSERT INTO {site_verify} (engine, meta) VALUES ('{$engine}', '{$string}')");
+          $ret[] = update_sql("DELETE FROM {nodewords} WHERE name = '{$tag}')");
+        }
+      }
+    }
+  }
+}
