r2762 - getFileLinks(): switch from getUserInfo() to spotEntity()
authorDenis Ovsienko <infrastation@yandex.ru>
Sun, 17 May 2009 14:49:28 +0000 (14:49 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Sun, 17 May 2009 14:49:28 +0000 (14:49 +0000)
 - renderUser(): idem
 - renderFile(): idem
 - dynamic_title_decoder(): idem
 - updateUser(): idem
 - changeMyPassword(): idem
 - authenticate(): idem
 - authenticated_via_database(): idem
 - getUserInfo(): sayonara

inc/auth.php
inc/database.php
inc/interface.php
inc/ophandlers.php

index dd4ad5772dd14ac4ff6753e8450e74227847ee22..39034e656483fadcf67a19c24cfdc1cbeab10592 100644 (file)
@@ -60,10 +60,10 @@ function authenticate ()
        $remote_displayname = $remote_username;
        if (NULL !== ($remote_userid = getUserIDByUsername ($remote_username)))
        {
-               $user_given_tags = loadEntityTags ('user', $remote_userid);
                // Always set $remote_displayname, if a local account exists and has one.
                // This can be overloaded from LDAP later though.
-               $userinfo = getUserInfo ($remote_userid);
+               $userinfo = spotEntity ('user', $remote_userid);
+               $user_given_tags = $userinfo['etags'];
                if (!empty ($userinfo['user_realname']))
                        $remote_displayname = $userinfo['user_realname'];
        }
@@ -329,7 +329,9 @@ function authenticated_via_database ($username, $password)
 {
        if (NULL === ($userid = getUserIDByUsername ($username))) // user not found
                return FALSE;
-       if (NULL === ($userinfo = getUserInfo ($userid))) // user found, DB error
+       // FIXME: consider avoiding this DB call, because user data should be already
+       // available in authenticate().
+       if (NULL === ($userinfo = spotEntity ('user', $userid))) // user found, DB error
        {
                showError ('Cannot load user data', __FUNCTION__);
                die();
index 80139b00271285003366ebe3e8ed2c10d163e626..850613c01a12320d600c888a76e60521f630fa77 100644 (file)
@@ -3495,8 +3495,8 @@ function getFileLinks ($file_id = 0)
                        case 'user':
                                $page = 'user';
                                $id_name = 'user_id';
-                               $userinfo = getUserInfo ($row['entity_id']);
-                               $name = $userinfo['user_name'];
+                               $parent = spotEntity ($row['entity_type'], $row['entity_id']);
+                               $name = $parent['user_name'];
                                break;
                }
 
@@ -3748,17 +3748,4 @@ function getUserIDByUsername ($username)
        return NULL;
 }
 
-function getUserInfo ($user_id)
-{
-       $query = "select 'user' as realm, user_id, user_name, user_password_hash, user_realname from UserAccount where user_id = ${user_id}";
-       if (($result = useSelectBlade ($query, __FUNCTION__)) == NULL)
-       {
-               showError ('SQL query failed', __FUNCTION__);
-               die;
-       }
-       if ($row = $result->fetch (PDO::FETCH_ASSOC))
-               return $row;
-       return NULL;
-}
-
 ?>
index d63ab32c6aacc573a230ed2074c791970cf5f938..b98e31bb283facd670377c217eb2dd4055a04f11 100644 (file)
@@ -5163,7 +5163,7 @@ ENDJAVASCRIPT;
 function renderUser ($user_id)
 {
        global $target_given_tags;
-       $userinfo = getUserInfo ($user_id);
+       $userinfo = spotEntity ('user', $user_id);
 
        startPortlet ('summary');
        echo '<table border=0 align=center>';
@@ -5302,11 +5302,6 @@ function renderFile ($file_id)
                        switch ($link['entity_type'])
                        {
                                case 'user':
-                                       if (NULL === ($userinfo = getUserInfo ($link['entity_id'])))
-                                               echo "Internal error: user id ${link['entity_id']} not found";
-                                       else
-                                               renderCell ($userinfo);
-                                       break;
                                case 'ipv4net':
                                        renderCell (spotEntity ($link['entity_type'], $link['entity_id']));
                                        break;
@@ -5898,7 +5893,7 @@ function dynamic_title_decoder ($path_position)
                );
        case 'user':
                assertUIntArg ('user_id', __FUNCTION__);
-               $userinfo = getUserInfo ($_REQUEST['user_id']);
+               $userinfo = spotEntity ('user', $_REQUEST['user_id']);
                return array
                (
                        'name' => "Local user '" . $userinfo['user_name'] . "'",
index 45a251eafcb8b3359e5774e5f4de8ba5316a3fbe..0d90b0b1712612b8673c70cd6c628b01418976e8 100644 (file)
@@ -483,7 +483,7 @@ function updateUser ()
        assertStringArg ('password', __FUNCTION__);
        $username = $_REQUEST['username'];
        $new_password = $_REQUEST['password'];
-       if (NULL == ($userinfo = getUserInfo ($_REQUEST['user_id'])))
+       if (NULL == ($userinfo = spotEntity ('user', $_REQUEST['user_id'])))
                return buildRedirectURL (__FUNCTION__, 'ERR1');
        // Update user password only if provided password is not the same as current password hash.
        if ($new_password != $userinfo['user_password_hash'])
@@ -1476,7 +1476,7 @@ function changeMyPassword ()
        assertStringArg ('newpassword1', __FUNCTION__);
        assertStringArg ('newpassword2', __FUNCTION__);
        $remote_userid = getUserIDByUsername ($remote_username);
-       $userinfo = getUserInfo ($remote_userid);
+       $userinfo = spotEntity ('user', $remote_userid);
        if ($userinfo['user_password_hash'] != sha1 ($_REQUEST['oldpassword']))
                return buildRedirectURL (__FUNCTION__, 'ERR2');
        if ($_REQUEST['newpassword1'] != $_REQUEST['newpassword2'])