Source code taken from cacert-20130129.tar.bz2
[cacert.git] / includes / lib / general.php
index d91b24e..85b132d 100644 (file)
@@ -130,3 +130,34 @@ function runCommand($command, $input = "", &$output = null, &$errors = true) {
        }
 }
 
+       // returns 0 if $userID is an Assurer
+       // Otherwise :
+       //       Bit 0 is always set
+       //       Bit 1 is set if 100 Assurance Points are not reached
+       //       Bit 2 is set if Assurer Test is missing
+       //       Bit 3 is set if the user is not allowed to be an Assurer (assurer_blocked > 0)
+       function get_assurer_status($userID)
+       {
+               $Result = 0;
+               $query = mysql_query('SELECT * FROM `cats_passed` AS `tp`, `cats_variant` AS `cv` '.
+                       '  WHERE `tp`.`variant_id` = `cv`.`id` AND `cv`.`type_id` = 1 AND `tp`.`user_id` = \''.(int)intval($userID).'\'');
+               if(mysql_num_rows($query) < 1)
+               {
+                       $Result |= 5;
+               }
+               
+               $query = mysql_query('SELECT SUM(`points`) AS `points` FROM `notary` AS `n` WHERE `n`.`to` = \''.(int)intval($userID).'\' AND `n`.`expire` < now()');
+               $row = mysql_fetch_assoc($query);
+               if ($row['points'] < 100) {
+                       $Result |= 3;
+               }
+               
+               $query = mysql_query('SELECT `assurer_blocked` FROM `users` WHERE `id` = \''.(int)intval($userID).'\'');
+               $row = mysql_fetch_assoc($query);
+               if ($row['assurer_blocked'] > 0) {
+                       $Result |= 9;
+               }
+               
+               return $Result;
+       }
+       
\ No newline at end of file