function manageurs_encrypt_array($array) { foreach ($array as $key => $value) { if (is_array($value)) { $result[manageurs_encrypt($key)] = manageurs_encrypt_array($value); } else { $result[manageurs_encrypt($key)] = manageurs_encrypt($value); } } return $result; }
function get_nouveau_infos($method, $params) { global $error_mat, $error_key, $globals; // Password verification. if (!isset($params[0]) || $params[0] != $globals->manageurs->manageurs_pass) { return false; } // We check we actually have an identification number. if (!empty($params[1])) { $res = XDB::query("SELECT ppn.lastname_initial AS nom, ppn.lastname_ordinary AS nom_usage, ppn.firstname_initial AS prenom,\n p.sex = 'female' AS femme, p.deathdate IS NOT NULL AS decede,\n p.birthdate, pd.promo, CONCAT(e.email, '@', d.name) AS mail\n FROM profiles AS p\n INNER JOIN account_profiles AS ap ON (p.pid = ap.pid AND FIND_IN_SET('owner', perms)\n INNER JOIN email_source_account AS s ON (s.uid = ap.uid AND FIND_IN_SET('bestalias', s.flags))\n INNER JOIN email_virtual_domains AS d ON (s.domain = s.id)\n INNER JOIN profile_display AS pd PN (p.pid = pd.pid)\n INNER JOIN profile_public_names AS ppn ON (ppn.pid = p.pid)\n WHERE a.flags = 'bestalias' AND p.xorg_id = {?}", $params[1]); // $data['mail'] .= '@polytechnique.org'; // We start the encryption of the data. if (manageurs_encrypt_init($params[1]) == 1) { // We did not find the key to encryptthe data. $args = array("erreur" => 3, "erreurstring" => $error_key); $reply = xmlrpc_encode_request(NULL, $args); } else { $reply = manageurs_encrypt_array($data); manageurs_encrypt_close(); } } else { $reply = false; } return $reply; }