4 include_once
"Services/Cron/classes/class.ilCronJob.php";
20 return "user_check_accounts";
27 return $lng->txt(
"check_user_accounts");
34 return $lng->txt(
"check_user_accounts_desc");
64 $two_weeks_in_seconds = $now + (60 * 60 * 24 * 14);
67 $query =
"SELECT * FROM usr_data,usr_pref ".
68 "WHERE time_limit_message = '0' ".
69 "AND time_limit_unlimited = '0' ".
70 "AND time_limit_from < ".$ilDB->quote($now,
"integer").
" ".
71 "AND time_limit_until > ".$ilDB->quote($now,
"integer").
" ".
72 "AND time_limit_until < ".$ilDB->quote($two_weeks_in_seconds,
"integer").
" ".
73 "AND usr_data.usr_id = usr_pref.usr_id ".
74 "AND keyword = ".$ilDB->quote(
"language",
"text");
76 $res = $ilDB->query($query);
78 while(
$row = $ilDB->fetchObject(
$res))
80 include_once
'Services/Mail/classes/class.ilMimeMail.php';
82 $data[
'expires'] =
$row->time_limit_until;
83 $data[
'email'] =
$row->email;
84 $data[
'login'] =
$row->login;
85 $data[
'usr_id'] =
$row->usr_id;
86 $data[
'language'] =
$row->value;
87 $data[
'owner'] =
$row->time_limit_owner;
92 $mail->From(
'noreply');
93 $mail->To($data[
'email']);
94 $mail->Subject($this->
txt($data[
'language'],
'account_expires_subject'),
true);
95 $mail->Body($this->
txt($data[
'language'],
'account_expires_body').
" ".strftime(
'%Y-%m-%d %R',$data[
'expires']));
99 $query =
"UPDATE usr_data SET time_limit_message = '1' WHERE usr_id = '".$data[
'usr_id'].
"'";
100 $ilDB->query($query);
103 $ilLog->write(
'Cron: (checkUserAccounts()) sent message to '.$data[
'login'].
'.');
120 protected function txt($language,$key,$module =
'common')
122 include_once
'Services/Language/classes/class.ilLanguage.php';
130 require_once
'Services/Registration/classes/class.ilRegistrationSettings.php';
133 $query =
'SELECT usr_id FROM usr_data '
134 .
'WHERE reg_hash IS NOT NULL '
136 .
'AND create_date < %s';
137 $res = $ilDB->queryF(
139 array(
'integer',
'timestamp'),
140 array(0, date(
'Y-m-d H:i:s', time() - (
int)$oRegSettigs->getRegistrationHashLifetime()))
142 while(
$row = $ilDB->fetchAssoc(
$res))
146 $ilLog->write(
'Cron: Deleted '.$oUser->getLogin().
' ['.$oUser->getId().
'] '.__METHOD__);