Kill calls to auth_user... in module profile.
[platal.git] / modules / openid / openid.inc.php
index 5271684..d5f7c5c 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2008 Polytechnique.org                              *
+ *  Copyright (C) 2003-2009 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -48,6 +48,17 @@ function get_user($x) {
 
 }
 
+function get_user_by_alias($x) {
+    if (is_null($x)) {
+        return null;
+    }
+    global $globals;
+    // Should we check the publicity of the alias?
+    $user = User::getSilent($x . '@' . $globals->mail->alias_dom);
+    return $user ? $user : null;
+
+}
+
 function get_user_openid_url($user)
 {
     if (is_null($user)) {
@@ -57,6 +68,12 @@ function get_user_openid_url($user)
     return $globals->baseurl . '/openid/' . $user->hruid;
 }
 
+function get_idp_xrds_url()
+{
+    global $globals;
+    return $globals->baseurl . '/openid/idp_xrds';
+}
+
 function get_user_xrds_url($user)
 {
     if (is_null($user)) {
@@ -82,6 +99,22 @@ function get_sreg_data($user)
                  'timezone' => null);
 }
 
+function is_trusted_site($user, $url)
+{
+    $res = XDB::query('SELECT  COUNT(*)
+                         FROM  openid_trusted
+                        WHERE  (user_id = {?} OR user_id IS NULL)
+                          AND  url = {?}',
+                               $user->id(), $url);
+    return $res->fetchOneCell() > 0;
+}
+
+function add_trusted_site($user, $url)
+{
+    XDB::execute("INSERT IGNORE INTO openid_trusted
+                      SET user_id={?}, url={?}",
+                  $user->id(), $url);
+}
 
 // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
-?>
\ No newline at end of file
+?>