Extension:ReCAPTCHA/ru

From MediaWiki.org
Jump to: navigation, search
MediaWiki Extension
Crystal Clear action run.png
reCAPTCHA

Статус: stable

Области применения Идентификация пользователей
Описание Помещает сложную CAPTCHA (в том числе и звуковую) на ваш Вики-сайт
Автор(ы) reCAPTCHA
Лицензия MIT License[1]
Ссылка для скачивания http://recaptcha.net/plugins/mediawiki/

Contents

[edit] Что же это расширение делает?

reCAPTCHA помещает сложную CAPTCHA на ваш Вики-сайт. Помогает вычитке книг, которые сканируют такие проекты, как archive.org. CAPTCHA также включает в себя доступную звуковую версию. Исследователи из Университета Карнеги-Меллона считают, что эта CAPTCHA не может быть прочитана с помощью имеющихся технологий оптического распознавания.

Требуется MediaWiki 1.8 или выше.

[edit] Использование

См. http://code.google.com/intl/ru-RU/apis/recaptcha/docs/mediawiki.html для справки.

[edit] Конфигурация

Следующие правила, устанавливают правильный баланс между защитой от спама и разрешением доступа пользователям:

  1. Любой пользователь может править Вики-сайт.
  2. Незарегистрированные пользователи всегда видят CAPTCHA.
  3. Для регистрации необходима CAPTCHA.
  4. Зарегистрированные пользователи никогда не видят CAPTCHA.

В конфигурации MediaWiki эти правила выглядят следующим образом:

// Изменение стандартного поведения CAPTCHA
$wgGroupPermissions['*'            ]['skipcaptcha'] = false;
$wgGroupPermissions['user'         ]['skipcaptcha'] = true;
$wgGroupPermissions['autoconfirmed']['skipcaptcha'] = true;
$wgGroupPermissions['bot'          ]['skipcaptcha'] = true; // зарегистрированные боты
$wgGroupPermissions['sysop'        ]['skipcaptcha'] = true;

$wgCaptchaTriggers['edit']          = true;
$wgCaptchaTriggers['create']        = true;
$wgCaptchaTriggers['createaccount'] = true;

(все остальные права остаются с их стандартными значениями)

[edit] Поиск неисправностей

[edit] Проблема размещения ключей

Если после определения в LocalSettings.php ключей $recaptcha_public_key и $recaptcha_private_key вы получите следующую ошибку,

You need to set $recaptcha_private_key and $recaptcha_public_key in LocalSettings.php to use the reCAPTCHA plugin.

то нужно поместить определения $recaptcha_public_key и $recaptcha_private_key после

require_once( "$IP/extensions/recaptcha/ReCaptcha.php" );

[edit] Макет поля CAPTCHA в RTL-языках (иврит) выглядит неправильно

ReCaptcha был разработан для LTR. До выхода версии, которая поддерживает RTL, можно внести следующие изменения в recaptchalib.php:

(1) Перейти к функции recaptcha_get_html (строка 124 в версии 1.7)

(2) Измените тег div dir="ltr"

[edit] Parameter 1 to ReCaptcha::confirmEdit() expected to be a reference

В PHP 5.3.2 и ReCaptcha-MediaWiki-1.7 может появиться следующее сообщение об ошибке.

Warning: Parameter 1 to ReCaptcha::confirmEdit() expected to be a reference,
value given in [...]/includes/Hooks.php on line 117

Это может быть исправлено путем применения следующего патча (см. Manual:Hooks/EditFilter).

--- ConfirmEdit.php     2010/06/04 16:08:21     1.1
+++ ConfirmEdit.php     2010/06/04 16:08:27
@@ -483,7 +483,7 @@
         * @param string $section
         * @param bool true to continue saving, false to abort and show a captcha form
         */
-       function confirmEdit( &$editPage, $newtext, $section ) {
+       function confirmEdit( $editPage, $newtext, $section ) {
                if( $this->shouldCheck( $editPage, $newtext, $section ) ) {
                        if( $this->passCaptcha() ) {
                                return true;
--- ReCaptcha.php       2010/06/04 16:04:15     1.1
+++ ReCaptcha.php       2010/06/04 16:04:19
@@ -97,7 +97,7 @@
          * Called on all edit page saves. (EditFilter events)
          * @return boolean - true if page save should continue, false if should display Captcha widget.
          */
-        function confirmEdit( &$editPage, $newtext, $section ) {
+        function confirmEdit( $editPage, $newtext, $section ) {
                 if( $this->shouldCheck( $editPage, $newtext, $section ) ) {
 
                         if (!isset($_POST['recaptcha_response_field'])) {

[edit] ReCaptcha.i18n.php

<?php
/**
 * Internationalisation file for the reCAPTCHA extension.
 *
 * @addtogroup Extensions
*/

function efReCaptchaMessages() {
        return array(

/* English */
'en' => array(
     'recaptcha-edit' => 'To help protect against automated edit spam, please type the two words you see in the box below:', 
     'recaptcha-addurl' => 'Your edit includes new external links. To help protect against automated spam, please type the two words you see in the box below:',
     'recaptcha-badpass' => 'To help protect against automated password cracking, please type the two words you see in the box below:',
        'recaptcha-createaccount' => 'To help protect against automated account creation, please type the two words you see in the box below:',
        'recaptcha-createaccount-fail' => "Incorrect or missing reCAPTCHA answer.",
        'recaptcha-create' => 'To help protect against automated page creation, please type the two words you see in the box below:', 
),

/* French */
'fr' => array(
     'recaptcha-edit' => "Pour nous protéger des robots, merci d'écrire les deux mots visibles dans le cadre qui suit:", 
     'recaptcha-addurl' => "Votre contribution contient des liens vers un site externe. Pour nous protéger des robots, merci d'écrire les deux mots visibles dans le cadre qui suit:",
     'recaptcha-badpass' => "Pour nous protéger des essais automatiques de cassage de mot de passe, merci d'écrire les deux mots visibles dans le cadre qui suit:",
        'recaptcha-createaccount' => "Pour nous protéger des créations automatiques de compte, merci d'écrire les deux mots visibles dans le cadre qui suit:",
        'recaptcha-createaccount-fail' => "Réponse de reCAPTCHA fausse ou manquante.",
        'recaptcha-create' => "Pour nous protéger des créations automatiques de pages, merci d'écrire les deux mots visibles dans le cadre qui suit:",
),

/* Spanish */
'es' => array(
     'recaptcha-edit' => 'Para protegernos de los robots, escribid por favor las dos palabras visibles en el cuadro abajo:', 
     'recaptcha-addurl' => 'Su aportación contiene enlaces externos. Para protegernos de los robots, escribid por favor las dos palabras visibles en el cuadro abajo:',
     'recaptcha-badpass' => 'Para protegernos de los robots que intentan adivinar contraseñas, escribid por favor las dos palabras visibles en el cuadro abajo:',
        'recaptcha-createaccount' => 'Para protegernos de la creación automática de cuentas, escribid por favor las dos palabras visibles en el cuadro abajo:',
        'recaptcha-createaccount-fail' => "La respuesta al reCAPTCHA esta falsa o faltante.",
        'recaptcha-create' => 'Para protegernos de la creación automática de páginas, escribid por favor las dos palabras visibles en el cuadro abajo:', 
),

/* Polish */
'pl' => array(
     'recaptcha-edit' => 'Aby uchronić nas przed robotami, proszę wpisać dwa widoczne słowa w poniższym polu:', 
     'recaptcha-addurl' => 'Twoja edycja zawiera linki zewnętrzne. Aby uchronić nas przed robotami, proszę wpisać dwa widoczne słowa w poniższym polu:',
     'recaptcha-badpass' => 'Aby uchronić nas przed złamaniem automatycznym haseł, proszę wpisać dwa widoczne słowa w poniższym polu:',
        'recaptcha-createaccount' => 'Aby uchronić nas przed automatycznym stworzeniem użytkowników, proszę wpisać dwa widoczne słowa w poniższym polu:',
        'recaptcha-createaccount-fail' => "Odpowiedź na reCAPTCHA jest fałszywa lub brakująca.",
        'recaptcha-create' => 'Aby uchronić nas przed tworzeniem stron przez robotów, proszę wpisać dwa widoczne słowa w poniższym polu:', 
),

/* German */
'de' => array(
     'recaptcha-edit' => 'Zum Schutz vor automatisiertem Spam gebe bitte die beiden folgenden Wörter in das untenstehende Feld ein:', 
     'recaptcha-addurl' => 'Deine Bearbeitung enthält neue externe Links. Zum Schutz vor automatisiertem Spam gebe bitte die beiden folgenden Wörter in das untenstehende Feld ein:',
     'recaptcha-badpass' => 'Zum Schutz gegen automatisiertes Knacken von Passwörtern, gebe bitte die beiden folgenden Wörter in das untenstehende Feld ein:',
        'recaptcha-createaccount' => 'Zum Schutz gegen automatisierte Erstellung von Benutzerkonten gebe bitte die beiden folgenden Wörter in das untenstehende Feld ein:',
        'recaptcha-createaccount-fail' => "Fehlerhafte oder fehlende reCAPTCHA Antwort.",
        'recaptcha-create' => 'Zum Schutz gegen automatisierte Erstellung von Seiten gebe bitte die beiden folgenden Wörter in das untenstehende Feld ein:', 
),

/* Portuguese */
'pt' => array(
     'recaptcha-edit' => 'Para proteger-nos de spam, por favor escreva  as duas palavras visíveis abaixo:',
     'recaptcha-addurl' => 'A sua edição contem ligações externas. Para proteger-nos de spam, por favor escreva  as duas palavras visíveis abaixo:',
     'recaptcha-badpass' => 'Para proteger-nos de robots que tentam adivinhar senhas, por favor escreva  as duas palavras visíveis abaixo:',
        'recaptcha-createaccount' => 'Para proteger-nos de criação automática de contas, por favor escreva  as duas palavras visíveis abaixo:',
        'recaptcha-createaccount-fail' => "A resposta ao reCAPTCHA é errada.",
        'recaptcha-create' => 'Para proteger-nos da criação automática de páginas, por favor escreva  as duas palavras visíveis abaixo:',
),

/* Brazilian Portuguese */
'pt_br' => array(
        'recaptcha-edit' => 'Para ajudar a prevenir contra vandalismos, por favor digite as duas palavras que você vê na caixa abaixo:', 
        'recaptcha-addurl' => 'A sua edição inclui ligações externas. Para ajudar a prevenir contra vandalismos, por favor digite as duas palavras que você vê na caixa abaixo:',
    'recaptcha-badpass' => 'Para ajudar a prevenir contra tentativas de desbloquear senhas, por favor digite as duas palavras que você vê na caixa abaixo:',
        'recaptcha-createaccount' => 'Para ajudar a prevenir contra criação automatizada de usuários, por favor digite as duas palavras que você vê na caixa abaixo:',
        'recaptcha-createaccount-fail' => "Resposta incorreta ao reCAPTCHA.",
        'recaptcha-create' => 'Para ajudar a prevenir contra criação automatizada de páginas, por favor digite as duas palavras que você vê na caixa abaixo:', 

),

/* Swedish */
'sv' => array(
     'recaptcha-edit' => 'Den här sidan skyddas mot spam-robotar, bevisa att du är en människa genom att skriva de två orden du ser i boxen nedan:', 
     'recaptcha-addurl' => 'Din förändring av sidan innehåller nya externa länkar, vilket är typiskt för spam. Bevisa att du är en människa genom att skriva de två orden du ser i boxen nedan:',
     'recaptcha-badpass' => 'För att skydda wikin mot robotar som gissar användares lösenord behöver användare bevisa att de är människor. Skriv ner de två orden som du ser i boxen nedan:',
        'recaptcha-createaccount' => 'För att skydda wikin mot robotar som skapar konton behöver användare bevisa att de är människor. Var vänlig och skriv ner de två orden du ser i boxen nedan:',
        'recaptcha-createaccount-fail' => "Du har angivit ett felaktig svar för reCAPTCHA.",
        'recaptcha-create' => 'För att skydda wikin mot robotar som skapar nya artiklar. Var vänlig och skriv ner de två orden som finns i boxen nedan:', 
),

/* Vietnamese */
'vi' => array(
     'recaptcha-edit' => 'Để giúp tránh các sửa đổi rác tự động, xin hãy gõ hai từ mà bạn nhìn thấy vào ô dưới đây:', 
     'recaptcha-addurl' => 'Sửa đổi của bạn có chứa liên kết ngoài mới. Để giúp tránh các sửa đổi rác tự động, xin hãy gõ hai từ mà bạn nhìn vào ô dưới đây:',
     'recaptcha-badpass' => 'Để giúp tránh bẻ khóa mật khẩu tự động, xin hãy gõ hai từ mà bạn nhìn vào ô dưới đây:',
        'recaptcha-createaccount' => 'Để giúp tránh việc mở tài khoản tự động, xin hãy gõ hai từ mà bạn nhìn vào ô dưới đây:',
        'recaptcha-createaccount-fail' => "Thiếu câu trả lời reCAPTCHA hoặc câu trả lời không đúng.",
        'recaptcha-create' => 'Để giúp tránh việc tạo trang tự động, xin hãy gõ hai từ mà bạn nhìn vào ô dưới đây:', 
),
'he' => array(
         'recaptcha-edit' => 'אינכם משתמש רשום.כהגנה מפני ספאם אוטומטי, אנא הקלידו את שתי המילים שלהלן. תודה.',
         'recaptcha-addurl' => 'אינכם משתמש רשום.כהגנה מפני ספאם אוטומטי, אנא הקלידו את שתי המילים שלהלן. תודה.',
         'recaptcha-badpass' => 'כהגנה מפני מפצחי סיסמאות אוטומטיים אנא הקלידו את שתי המילים שלהלן:',
        'recaptcha-createaccount' => 'כהגנה מפני יצירת חשבונות פיקטיביים ע"י אוטומטים אנא הקלידו את שתי המילים שלהלן:',
        'recaptcha-createaccount-fail' => 'לא הוקלדו מילות האישור, או שהוקלדו מילים לא נכונות. נסו שנית.',
        'recaptcha-create' => 'אינכם משתמש רשום.כהגנה מפני ספאם אוטומטי, אנא הקלידו את שתי המילים שלהלן. תודה.',

),

/* Russian */
'ru' => array(
     'recaptcha-edit' => 'Для защиты от автоматизированных спам-правок, пожалуйста, введите два слова, которые вы видите на картинке ниже:', 
     'recaptcha-addurl' => 'Ваша правка включает в себя новые внешние ссылки. Для защиты от автоматизированного спама, пожалуйста, введите два слова, которые вы видите на картинке ниже:',
     'recaptcha-badpass' => 'Для защиты от автоматического взламывания паролей, пожалуйста, введите два слова, которые вы видите на картинке ниже:',
        'recaptcha-createaccount' => 'Для защиты от автоматического создания учётной записи, пожалуйста, введите два слова, которые вы видите на картинке ниже:',
        'recaptcha-createaccount-fail' => "Ответ неправильный или отсутствует.",
        'recaptcha-create' => 'Для защиты от автоматизированного создания страниц, пожалуйста, введите два слова, которые вы видите на картинке ниже:', 
),

/* TODO - more languages */
);

}
?>

[edit] Замечание

ReCaptcha опирается, и идёт в комплекте с расширением ConfirmEdit. Его версия может быть устаревшей, поэтому обновите его, если у вас есть проблемы.

[edit] Примечания

  1. Google Code page
Язык: English  • Русский
Personal tools
Namespaces

Variants
Actions
Navigation
Support
Download
Development
Communication
Print/export
Toolbox