Topic on Extension talk:ConfirmEdit

Force only and all anonymous IPs into a CAPTCHA?

4
Schiffy (talkcontribs)

So I'm trying to make it so anyone who is not logged in has to always answer a QuestyCaptcha, be it editing, creating pages, or making an account, but once a user is logged in they no longer have to.

I've tried the following method:

wfLoadExtensions( array( 'ConfirmEdit', 'ConfirmEdit/QuestyCaptcha' ) );
$wgCaptchaClass = 'QuestyCaptcha';
$arr = array (
        //Questions and answers are in this array
);
foreach ( $arr as $key => $value ) {
        $wgCaptchaQuestions[] = array( 'question' => $key, 'answer' => $value );
}

$wgGroupPermissions['user']['skipcaptcha'] = true;

This seems to have worked once, but now anonymous IPs can edit any page without running into a CAPTCHA, and only hit one on account creation. Is there a way to put this back how I intended, where only logged in users can bypass CAPTCHAs, and anonymous IPs run into them in all cases?

MarkAHershberger (talkcontribs)
Schiffy (talkcontribs)

I was looking at that, but I'm not clear on one thing - does that only apply to anonymous IPs like what I'm looking to do?

MarkAHershberger (talkcontribs)

Anonymous IPs and new users. So a bit more than just what you wanted, but it is pretty close and after users have made a few edits, the captcha goes away.

Also look at this patch (which should probably be put in the main code).

Also, note that you want the following, not $wmgEmergencyCaptcha:

$wgCaptchaTriggers['edit']          = true; 
$wgCaptchaTriggers['create']        = true;
Reply to "Force only and all anonymous IPs into a CAPTCHA?"