Index: openidurl.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openidurl/Attic/openidurl.install,v
retrieving revision 1.1.2.3
diff -u -r1.1.2.3 openidurl.install
--- openidurl.install	26 Aug 2009 21:03:29 -0000	1.1.2.3
+++ openidurl.install	4 Oct 2009 09:00:14 -0000
@@ -25,3 +25,11 @@
   }
   return $items;
 }
+
+/**
+ * Remove the OpenID compatibility settings and the external XRDS document URL.
+ */
+function openidurl_update_6001() {
+  variable_del('openidurl_version');
+  variable_del('openidurl_xrds');
+}
Index: openidurl.info
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openidurl/Attic/openidurl.info,v
retrieving revision 1.3.2.1
diff -u -r1.3.2.1 openidurl.info
--- openidurl.info	26 Aug 2009 20:56:12 -0000	1.3.2.1
+++ openidurl.info	4 Oct 2009 09:00:14 -0000
@@ -2,3 +2,4 @@
 name = OpenID URL
 description = Delegate your website as an OpenID.
 core = 6.x
+dependencies[] = xrds_simple
Index: openidurl.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openidurl/Attic/openidurl.admin.inc,v
retrieving revision 1.1.2.3
diff -u -r1.1.2.3 openidurl.admin.inc
--- openidurl.admin.inc	12 Sep 2008 17:50:09 -0000	1.1.2.3
+++ openidurl.admin.inc	4 Oct 2009 09:00:14 -0000
@@ -11,17 +11,6 @@
  */
 function openidurl_settings() {
   $form = array();
-  $form['openidurl_version'] = array(
-    '#type' => 'checkboxes',
-    '#required' => TRUE,
-    '#title' => t('Version Compatibility'),
-    '#default_value' => variable_get('openidurl_version', array(11, 20)),
-    '#description' => t("Which versions of OpenID compatibility you would like to support."),
-    '#options' => array(
-      11 => t('1.1'),
-      20 => t('2.0'),
-    ),
-  );
   $form['openidurl_server'] = array(
     '#type' => 'textfield',
     '#title' => t('OpenID Server'),
@@ -34,11 +23,5 @@
     '#default_value' => variable_get('openidurl_delegate', ''),
     '#description' => t("This is the OpenID delegate (e.g. http://yourname.myopenid.com/)."),
   );
-  $form['openidurl_xrds'] = array(
-    '#type' => 'textfield',
-    '#title' => t('OpenID XRDS Location'),
-    '#default_value' => variable_get('openidurl_xrds', ''),
-    '#description' => t("This is the OpenID XRDS location (e.g. http://yourname.myopenid.com/xrds)."),
-  );
   return system_settings_form($form);
 }
Index: openidurl.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/openidurl/Attic/openidurl.module,v
retrieving revision 1.7.2.13
diff -u -r1.7.2.13 openidurl.module
--- openidurl.module	10 Sep 2009 21:44:43 -0000	1.7.2.13
+++ openidurl.module	4 Oct 2009 09:00:14 -0000
@@ -24,18 +24,6 @@
 }
 
 /**
- * Implementation of hook_init
- */ 
-function openidurl_init() {
-  if (drupal_is_front_page()) { // only display global one on front page
-    $server = variable_get('openidurl_server', NULL);
-    $delegate = variable_get('openidurl_delegate', NULL);
-    $xrds = variable_get('openidurl_xrds', NULL);
-    _openidurl_set_html_head($server, $delegate, $xrds);
-  }
-}
-
-/**
  * Implementation of hook_menu
  */ 
 function openidurl_menu() {
@@ -52,26 +40,6 @@
 }
 
 /**
- * Adds the required HTML to delegate the OpenID authentication
- */ 
-function _openidurl_set_html_head($server = NULL, $delegate = NULL, $xrds = NULL) {
-  if (!empty($server) || !empty($delegate)) {
-    $versions = variable_get('openidurl_version', array(11, 20));
-    if (in_array(11, $versions)) {
-      drupal_set_html_head('<link rel="openid.server" href="'. check_url($server) .'" />');
-      drupal_set_html_head('<link rel="openid.delegate" href="'. check_url($delegate) .'" />');
-    }
-    if (in_array(20, $versions)) {
-      drupal_set_html_head('<link rel="openid2.provider" href="'. check_url($server) .'" />');
-      drupal_set_html_head('<link rel="openid2.local_id" href="'. check_url($delegate) .'" />');
-    }
-  }
-  if (!empty($xrds)) {
-    drupal_set_html_head('<meta http-equiv="X-XRDS-Location" content="'. check_url($xrds) .'" />');
-  }
-}
-
-/**
  * Implementation of hook_perm()
  */
 function openidurl_perm() {
@@ -83,8 +51,6 @@
  */
 function openidurl_user($type, &$edit, &$user, $category = NULL) {
   switch ($type) {
-    case 'view':
-      return openidurl_view_profile($user);
     case 'form':
       return openidurl_form_profile($edit, $user, $category);
   }
@@ -115,25 +81,64 @@
       '#description' => t('This is your personal OpenID delegate (e.g. http://yourname.myopenid.com/).'),
       '#default_value' => isset($edit['openidurl_delegate']) ? $edit['openidurl_delegate'] : '',
     );
-    $fields['openidurl']['openidurl_xrds'] = array(
-      '#type' => 'textfield',
-      '#title' => 'XRDS Location',
-      '#description' => t('This is your personal OpenID XRDS location (e.g. http://yourname.myopenid.com/xrds).'),
-      '#default_value' => isset($edit['openidurl_xrds']) ? $edit['openidurl_xrds'] : '',
-    );
   }
   return $fields;
 }
 
 /**
- * Loads and constructs the openidurl information to be displayed
+ * Implementation of hook_xrds().
+ *
+ * See the XRDS Simple module: http://drupal.org/project/xrds_simple
  */
-function openidurl_view_profile($user) {
-  $fields = array();
-  _openidurl_set_html_head(
-    isset($user->openidurl_server) ? $user->openidurl_server : '',
-    isset($user->openidurl_delegate) ? $user->openidurl_delegate : '',
-    isset($user->openidurl_xrds) ? $user->openidurl_xrds : ''
-  );
-  return $fields;
+function openidurl_xrds($account = NULL) {
+  $server = '';
+  $delegate = '';
+  if (isset($account)) {
+    if (isset($account->openidurl_server, $account->openidurl_delegate)) {
+      $server = $account->openidurl_server;
+      $delegate = $account->openidurl_delegate;
+    }
+  }
+  else {
+    $server = variable_get('openidurl_server', NULL);
+    $delegate = variable_get('openidurl_delegate', NULL);
+  }
+  if (!empty($server) && !empty($delegate)) {
+    $xrds['openidurl'] = array(
+      'namespaces' => array(
+        'xmlns:openid' => 'http://openid.net/xmlns/1.0',
+      ),
+      'services' => array(
+        array(
+          'priority' => 50,
+          'data' => array(
+            'Type' => array(
+              'data' => 'http://openid.net/signon/1.0',
+            ),
+            'URI' => array(
+              'data' => $server,
+            ),
+            'openid:Delegate' => array(
+              'data' => $delegate,
+            ),
+          ),
+        ),
+        array(
+          'priority' => 10,
+          'data' => array(
+            'Type' => array(
+              'data' => 'http://specs.openid.net/auth/2.0/signon',
+            ),
+            'URI' => array(
+              'data' => $server,
+            ),
+            'LocalID' => array(
+              'data' => $delegate,
+            ),
+          ),
+        ),
+      ),
+    );
+    return $xrds;
+  }
 }
