veja em http://moodle.org/bugs/bug.php?op=show&bugid=3309
isso deve ajudar
eh uma funcao q vai estar na versao 1.6, ela apaga contas com perfil incompleto e que nao foram acessadas dentro de um periodo de tempo... a unidade de tempo eh em milissegundos...
1. Added a new function in /moodle/lib/datalib.php after function
get_users_unconfirmed, essentially a mod of function
get_users_unconfirmed. It does the same verification as function
not_fully_set_up_users.
function get_users_not_fully_set_up($cutofftime=2000000000) {
global $CFG;
return get_records_sql("SELECT *
FROM {$CFG->prefix}user
WHERE confirmed = 1
AND lastaccess > 0
AND lastaccess < '$cutofftime'
AND deleted = 0
AND ( lastname = '' OR firstname = '' OR email = '')");
}
2. Added the following code in /moodle/admin/cron.php after deleting
unconfirmed users, essentially a duplication of that code. Note that it
uses the same threshold as unconfirmed email registration since I
consider these users in the same category as users who did not confirm
through email.
/// Delete users who haven't completed profile within required period
$oneweek = $timenow - ($CFG->deleteunconfirmed * 3600);
if ($users = get_users_not_fully_set_up($oneweek)) {
foreach ($users as $user) {
if (delete_records("user", "id", $user->id)) {
mtrace("Deleted not fully setup user $user->username ($user->id)");
}
}
}
flush();