/Sources/ModSettings.php
// Reporting of personal messages?
array('check', 'enableReportPM'),
// Reporting of personal messages?
array('check', 'enableReportPM'),
array('check', 'recaptcha_enabled'),
array('select', 'recaptcha_theme', array('Clean' => 'Clean', 'Black Glass' => 'Black Glass', 'Red' => 'Red', 'White' => 'White')),
array('text', 'recaptcha_public_key','40'),
array('text', 'recaptcha_private_key','40'),
Sources/PersonalMessage.php
$_SESSION['visual_verification_code'] .= $character_range[array_rand($character_range)];
}
$_SESSION['visual_verification_code'] .= $character_range[array_rand($character_range)];
}
$context['use_recaptcha'] = !empty($modSettings['recaptcha_enabled']) && ($modSettings['recaptcha_enabled'] == 1 && !empty($modSettings['recaptcha_public_key']) && !empty($modSettings['recaptcha_private_key'])) && $user_info['posts'] < $modSettings['pm_posts_verification'] ;
if ($context['use_recaptcha'])
{
// Disable the built-in visual verification if we are using reCAPTCHA
$context['visual_verification'] = FALSE;
}
Themes/default/PersonalMessage.template.php
if ($context['visual_verification'])
{
echo '
<tr>
<td align="right" valign="top">
<b>', $txt['pm_visual_verification_label'], ':</b>
</td>
<td>';
if ($context['use_graphic_library'])
echo '
<img src="', $context['verificiation_image_href'], '" alt="', $txt['pm_visual_verification_desc'], '" /><br />';
else
echo '
<img src="', $context['verificiation_image_href'], ';letter=1" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=2" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=3" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=4" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=5" alt="', $txt['pm_visual_verification_desc'], '" /><br />';
echo '
<a href="', $context['verificiation_image_href'], ';sound" onclick="return reqWin(this.href, 400, 120);">', $txt['pm_visual_verification_listen'], '</a><br /><br />
<input type="text" name="visual_verification_code" size="30" tabindex="', $context['tabindex']++, '" />
<div class="smalltext">', $txt['pm_visual_verification_desc'], '</div>
</td>
</tr>';
}
if ($context['visual_verification'] || $context['use_recaptcha'])
{
echo '
<tr>
<td align="right" valign="top">
<b>', $txt['pm_visual_verification_label'], ':</b>
</td>
<td>';
if ($context['use_recaptcha'])
{
echo '
<script>
var RecaptchaOptions = {
theme : \'', empty($modSettings['recaptcha_theme']) ? 'clean' : $modSettings['recaptcha_theme'] , '\',
};
</script>
<script type="text/javascript"
src="http://api.recaptcha.net/challenge?k=', $modSettings['recaptcha_public_key'], '">
</script>
<noscript>
<iframe src="http://api.recaptcha.net/noscript?k=', $modSettings['recaptcha_public_key'], '"
height="300" width="500" frameborder="0"></iframe><br>
<textarea name="recaptcha_challenge_field" rows="3" cols="40">
</textarea>
<input type="hidden" name="recaptcha_response_field"
value="manual_challenge">
</noscript>';
}
else
{
if ($context['use_graphic_library'])
echo '
<img src="', $context['verificiation_image_href'], '" alt="', $txt['pm_visual_verification_desc'], '" /><br />';
else
echo '
<img src="', $context['verificiation_image_href'], ';letter=1" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=2" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=3" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=4" alt="', $txt['pm_visual_verification_desc'], '" />
<img src="', $context['verificiation_image_href'], ';letter=5" alt="', $txt['pm_visual_verification_desc'], '" /><br />';
echo '
<a href="', $context['verificiation_image_href'], ';sound" onclick="return reqWin(this.href, 400, 120);">', $txt['pm_visual_verification_listen'], '</a><br /><br />
<input type="text" name="visual_verification_code" size="30" tabindex="', $context['tabindex']++, '" />
<div class="smalltext">', $txt['pm_visual_verification_desc'], '</div>
</td>
</tr>';
}
}