mirror of
https://github.com/scratchfoundation/swiki-confirmaccount.git
synced 2024-12-04 21:01:02 -05:00
added limited alt account checking (#14)
This commit is contained in:
parent
a942ee5f63
commit
8768a7ae96
3 changed files with 33 additions and 2 deletions
|
@ -294,10 +294,10 @@ class AccountConfirmSubmission {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Actually send out the email (@TODO: rollback on failure including $wgAuth)
|
# Actually send out the email (@TODO: rollback on failure including $wgAuth)
|
||||||
$result = $user->sendMail(
|
/*$result = $user->sendMail(
|
||||||
$context->msg( 'confirmaccount-email-subj' )->inContentLanguage()->text(),
|
$context->msg( 'confirmaccount-email-subj' )->inContentLanguage()->text(),
|
||||||
$ebody
|
$ebody
|
||||||
);
|
);*/
|
||||||
|
|
||||||
# Update user count
|
# Update user count
|
||||||
$ssUpdate = new SiteStatsUpdate( 0, 0, 0, 0, 1 );
|
$ssUpdate = new SiteStatsUpdate( 0, 0, 0, 0, 1 );
|
||||||
|
|
|
@ -135,6 +135,8 @@ There may be contact lists on site that you can use if you want to know more abo
|
||||||
$2
|
$2
|
||||||
|
|
||||||
There may be contact lists on site that you can use if you want to know more about user account policy.',
|
There may be contact lists on site that you can use if you want to know more about user account policy.',
|
||||||
|
'confirmaccount-altwarning' => 'The following accounts have made edits from the same IP address as this user:',
|
||||||
|
'confirmaccount-warning' => 'Warning',
|
||||||
|
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -421,6 +421,20 @@ class ConfirmAccountsPage extends SpecialPage {
|
||||||
}
|
}
|
||||||
$form .= '</fieldset>';
|
$form .= '</fieldset>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//search for possible alt accounts
|
||||||
|
$ip = $accountReq->getIP();
|
||||||
|
$alts = $this->getUsersFromIP($ip);
|
||||||
|
if (!empty($alts)) {
|
||||||
|
foreach ($alts as &$user) {
|
||||||
|
|
||||||
|
}
|
||||||
|
$form .= '<fieldset>';
|
||||||
|
$form .= '<legend style="color:#F00; font-weight:bold">' . $this->msg('confirmaccount-warning') . '</legend>';
|
||||||
|
$form .= '<strong>' . $this->msg('confirmaccount-altwarning') . '</strong>';
|
||||||
|
$form .= '<ul><li>' . implode('</li><li>', $alts) . '</li></ul>';
|
||||||
|
$form .= '</fieldset>';
|
||||||
|
}
|
||||||
|
|
||||||
$form .= '<fieldset>';
|
$form .= '<fieldset>';
|
||||||
$form .= '<legend>' . $this->msg( 'confirmaccount-legend' )->escaped() . '</legend>';
|
$form .= '<legend>' . $this->msg( 'confirmaccount-legend' )->escaped() . '</legend>';
|
||||||
|
@ -746,6 +760,21 @@ class ConfirmAccountsPage extends SpecialPage {
|
||||||
|
|
||||||
return $r;
|
return $r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getUsersFromIP($ip) {
|
||||||
|
global $wgShowExceptionDetails ;
|
||||||
|
$wgShowExceptionDetails = true;
|
||||||
|
$dbr = wfGetDB( DB_SLAVE );
|
||||||
|
$result = $dbr->select('recentchanges', array('DISTINCT(rc_user_text)'), 'rc_ip=\'' . $ip . '\'');
|
||||||
|
|
||||||
|
$return = array();
|
||||||
|
foreach ($result as $row) {
|
||||||
|
$return[] = (string)$row->rc_user_text;
|
||||||
|
}
|
||||||
|
array_unique($return);
|
||||||
|
|
||||||
|
return $return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue