Better that way
[platal.git] / include / user.func.inc.php
index 9870f46..d0fe12e 100644 (file)
@@ -57,12 +57,9 @@ function user_clear_all_subs($user_id, $really_del=true)
     XDB::execute("DELETE FROM requests        WHERE user_id={?}", $uid);
     XDB::execute("DELETE FROM user_changes    WHERE user_id={?}", $uid);
     XDB::execute("DELETE FROM watch_sub       WHERE uid={?}", $uid);
-    
-    include_once('lists.inc.php');
-    if (function_exists(lists_xmlrpc)) {
-        $client =& lists_xmlrpc(S::v('id'), S::v('password'));
-        $client->kill($alias, $really_del);
-    }
+
+    $mmlist = new MMList(S::v('id'), S::v('password'));
+    $mmlist->kill($alias, $really_del);
 }
 
 // }}}
@@ -150,6 +147,29 @@ function get_user_forlife($data) {
 }
 
 // }}}
+// {{{ function get_users_forlife_list()
+
+function get_users_forlife_list($members, $strict = false)
+{
+    if (strlen(trim($members)) == 0) {
+        return null;
+    }
+    $members = explode(' ', $members);
+    if ($members) {
+        $list = array();
+        foreach ($members as $i => $alias) {
+            if (($login = get_user_forlife($alias)) !== false) {
+                $list[$i] = $login;
+            } else if(!$strict) {
+                $list[$i] = $alias;
+            }
+        }
+        return $list;
+    }
+    return null;
+}
+
+// }}}
 // {{{ function has_user_right()
 function has_user_right($pub, $view = 'private') {
     if ($pub == $view) return true;
@@ -660,5 +680,22 @@ function user_reindex($uid) {
 }
 
 // }}}
+
+function set_new_usage($uid, $usage, $alias=false) { 
+    XDB::execute("UPDATE auth_user_md5 set nom_usage={?} WHERE user_id={?}",$usage ,$uid);
+    XDB::execute("DELETE FROM aliases WHERE FIND_IN_SET('usage',flags) AND id={?}", $uid);
+    if ($alias && $usage) {
+        XDB::execute("UPDATE aliases SET flags=flags & 255-1 WHERE id={?}", $uid);
+        XDB::execute("INSERT INTO aliases VALUES({?}, 'alias', 'usage,bestalias', {?}, null)",
+            $alias, $uid);
+    }
+    $r = XDB::query("SELECT alias FROM aliases WHERE FIND_IN_SET('bestalias', flags) AND id = {?}", $uid);
+    if ($r->fetchOneCell() == "") {
+        XDB::execute("UPDATE aliases SET flags = 1 | flags WHERE id = {?} LIMIT 1", $uid);
+    }
+    require_once 'user.func.inc.php';
+    user_reindex($uid);
+}
+
 // vim:set et sw=4 sts=4 sws=4 foldmethod=marker:
 ?>