Rozšíření:ConfirmAccount

This page is a translated version of the page Extension:ConfirmAccount and the translation is 100% complete.
Základní informace k tomuto rozšíření MediaWiki
OOjs UI icon advanced-invert.svg
ConfirmAccount
Stav rozšíření: stabilní
ConfirmAccounts.png
Zavádění Identita uživatele , Databáze , Speciální stránka
Popis Vyžaduje předložení a schválení účtů.
Napsal(i) Aaron Schulzdiskuse
Zásady kompatibility Vydání snímků následuje MediaWiki. Hlavní vývojová větev není zpětně kompatibilní.
MediaWiki >= 1.37.0
Změny v databázi dělá
Tabulky account_requests
account_credentials
Licence GNU General Public License 2.0 nebo pozdější
Zdrojový kód
README
  • $wgAutoWelcomeNewUsers
  • $wgAccountRequestTypes
  • $wgConfirmAccountNotice
  • $wgConfirmAccountCaptchas
  • $wgConfirmAdminEmailExtraFields
  • $wgConfirmAccountRequestFormItems
  • $wgConfirmAccountContact
  • $wgAccountRequestExts
  • $wgAccountRequestThrottle
  • $wgConfirmAccountFSRepos
  • $wgRejectedAccountMaxAge
  • $wgConfirmAccountSaveInfo
  • $wgConfirmAccountSortkey
  • $wgAutoUserBioText
  • $wgAccountRequestWhileBlocked
  • $wgConfirmAccountRejectAge
  • $wgMakeUserPageFromBio
Přeložte rozšíření ConfirmAccount, používá-li lokalizaci z translatewiki.net
Problémy Otevřené úkoly · Nahlásit chybu

Rozšíření ConfirmAccount vypíná přímé zakládání nových účtů a vyžaduje, aby byl každý nový účet nejprve schválen byrokratem. Pokud chcete, aby Administrátoři /Byrokraté měli i možnost založit nový účet bez žádosti, viz Příručka:Uživatelská práva .

Instalace

  • Stáhněte soubor/y a vložte je do adresáře pojmenovaného ConfirmAccount ve vaší složce extensions/.
  • Následující kód přidejte na konec vašeho souboru LocalSettings.php :
    wfLoadExtension( 'ConfirmAccount' );
    
  • Spusťte aktualizační skript, který automaticky provede všechny nezbytné databázové změny, jaké rozšíření vyžaduje.
  • Ujistěte se, že wiki má oprávnění k zápisu na $wgUploadDirectory .
  • Vyžaduje nastavení v konfiguračním souboru.
  • Pro MediaWiki 1.35+ se zdá být problém s oprávněními při použití wfLoadExtension(): Oprávnění createaccount nemusí být odebráno skupině všichni uživatelé (all users). Použijte $wgGroupPermissions['*']['createaccount'] = false; k zamezení vytvoření účtu, dokud to nebude vyřešeno.
Pokud chcete, aby byrokraté mohli přijímat nové požadavky, musíte oprávnění explicitně nastavit: $wgGroupPermissions['bureaucrat']['createaccount'] = true;, abyste je povolili.
  • Pokud provádíte aktualizaci', tak se ujistěte, že je ze souboru LocalSettings.php odstraněn řádek, který se natahoval původní soubor ConfirmAccount.php. A do stejného místa je nejlépe přidat wfLoadExtension()
  • Prostudujte si také část věnovanou známým problémům, protože by mohly mít vliv na vaši wiki.
  •   Dokončené – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.

Konfigurace

Volitelné

K dispozici je několik konfiguračních proměnných, které lze nakonfigurovat v souboru LocalSettings.php , za řádkem wfLoadExtension('ConfirmAccount');

Viz část "config" v souboru extension.json , kde jsou všechny proměnné, které lze překonfigurovat.

Ve výchozím stavu rozšíření použije obsah osobní biografie coby výchozí obsah uživatelské stránky. Tohle chování lze vypnout, pokud nastavíte $wgMakeUserPageFromBio = false;
Pokud chcet biografii z formuláře zcela vypustit, nastavte $wgConfirmAccountRequestFormItems['Biography']['enabled'] = false;
Ve výchozím nastavení se u nového uživatele při odeslání formuláře žádosti vyžaduje stručný životopis, který má minimálně 6 slov. Pokud chcete tento počet navýšit, např. na 10 slov nastavte $wgConfirmAccountRequestFormItems['Biography']['minWords'] = 10;
Sysops může stále zakládat účty přímo, pokud to nezakážete tím, že nastavíte
$wgGroupPermissions['sysop']['createaccount'] = false;
Pokud si mají po přihlášení uživatelé rovnou přečíst nějaké stránky, nezapomeňte je přidat $wgWhitelistRead .

Například:

$wgWhitelistRead = [
    'Special:RequestAccount',
    'Main Page'
];
V jiných jazycích musíte nahradit "Main Page" a "Special:RequestAccount" za lokalizované názvy, například "Hauptseite" a "Spezial:Benutzerkonto_beantragen", v případě německé wiki.

Pro další kategorizaci uživatelů na základě jejich zájmů můžete nastavit MediaWiki:Requestaccount-areas. Mělo by to být ve formátu jako:

*Téma|Stránka wiki s tématem|text, který se přidá do životopisu všech zainteresovaných uživatelů |text, který se přidá do životopisu všech zainteresovaných uživatelů ve skupině0|text, který se připojí ke skupině bios všech zainteresovaných uživatelů1|text, který se připojí ke všem zainteresovaným bios uživatele ve skupině2|...

Tato čísla skupin vycházejí z $wgAccountRequestTypes. Pokud je tedy 0 index pro 'autory', pak 'autoři' zajímající se o téma budou mít text skupiny 0 připojený k jejich biografii. To může být užitečné, řekněme, pokud uživatelé mohou být schváleni jako autoři nebo editoři. Autoři mohou mít "category:X authors", kde X je téma, například "matematika", a editoři mohou mít "category:x editors". Můžete mít tolik skupin, kolik chcete, ale potřebujete alespoň jednu.

Minimal

Aby se zabránilo spamu, namísto captchas, blacklistů a filtrů, ručně moderujte registrace nových uživatelů pomocí jednoduššího Request account (požádat o účet). Vyžaduje pouze uživatelské jméno, emailovou adresu a krátkou zprávu. Přidejte následující k LocalSettings.php za řádek require_once "$IP/extensions/ConfirmAccount/ConfirmAccount.php";.

 $wgMakeUserPageFromBio = false;
 $wgAutoWelcomeNewUsers = false;
 $wgConfirmAccountRequestFormItems = [
 	'UserName'        => [ 'enabled' => true ],
 	'RealName'        => [ 'enabled' => false ],
 	'Biography'       => [ 'enabled' => false, 'minWords' => 50 ],
 	'AreasOfInterest' => [ 'enabled' => false ],
 	'CV'              => [ 'enabled' => false ],
 	'Notes'           => [ 'enabled' => true ],
 	'Links'           => [ 'enabled' => false ],
 	'TermsOfService'  => [ 'enabled' => false ],
 ];

Volitelně dolaďte systémovou zprávu/zprávy: requestaccount-text, requestaccount-notes, requestaccount-ext-text, requestaccount-acc-text.

Použití

 
Schéma interakce úspěšného procesu vytvoření účtu.
 
Potvrzení žádostí o účet na Special:ConfirmAccounts (beta formulář)
  1. Jako byrokrat (nebo jiný uživatel s oprávněním confirmaccount) přejděte na Special:ConfirmAccounts.
  2. Klikněte na Review (recenze).
  3. Uvidíte celý formulář s údaji uživatelů. Pečlivě zkontrolujte formulář a pokračujte k vytvoření účtu nebo zamítnutí žádosti.
  4. Pokud se rozhodnete vytvořit účet, životopis uživatele se stane jeho uživatelskou stránkou a uživatelská stránka bude automaticky vytvořena s výchozím shrnutím Vytváření uživatelské stránky s biografií nového uživatele.
  5. Po vytvoření účtu lze na data zadaná uživatelem v době požadavku odkazovat zadáním uživatelského jména na Special:UserCredentials
Aby byli byrokrati informováni o nevyřízených žádostech, musíte nastavit email / seznam adres v LocalSettings.php:
$wgConfirmAccountContact = 'Bureaucrat@domain.com';

Sending notification email to multiple users

This extension allows sending emails to multiple approvers to confirm the account if these users have the confirmaccount-notify permission. This is in addition/alternative to the $wgConfirmAccountContact setting.

This can be achieved (for instance for bureaucrats) by providing them this permission by adding the following to the "LocalSettings.php" file:

$wgGroupPermissions['bureaucrat']['confirmaccount-notify'] = true;

Vylepšení

Frekvence omezování

Aby bylo možné bojovat proti robotickým žádostem, výchozí nastavení brání odmítnutým emailovým účtům v opětovném vyžádání účtu po náhodnou dobu po zamítnutí. Pokud chcete, aby odmítnutými emaily bylo možné znovu žádat o účty ihned po zamítnutí nebo po pevně stanovené době čekání (dny, týdny, měsíce nebo dokonce roky po odmítnutí), použijte následující 2 kroky:

1) V souboru "LocalSettings.php" po požadované deklaraci nastavte Rejected-Age na 0 (pro okamžité vypršení při odmítnutí), nebo na vámi požadovanou dobu čekání v sekundách:

require_once "$IP/extensions/ConfirmAccount/ConfirmAccount.php";
$wgRejectedAccountMaxAge = 0;

2) Přidejte jeden řádek do souboru /frontend/specialpages/actions/RequestAccount_body.php na úplný konec funkce showForm(), která zobrazuje formulář požadavku, abyste vynutili omezení přímo před každým novým požadavkem:

původní kód:

$out->addWikiMsg( 'requestaccount-footer' );
}

nový kód:

$out->addWikiMsg( 'requestaccount-footer' );		
# PRUNE
ConfirmAccount::runAutoMaintenance();
}

Odkaz "Request account" (požádat o účet)

Pokud byste chtěli přidat přihlašovací odkaz "Vyžádat účet", nejnovější verze rozšíření jej již přidala za vás. However, if that doesn't work, you will need to update to the latest version of your branch of ConfirmAccount from Git. For instance, if you are using MediaWiki 1.35, you should stay on the REL1_35 branch but pull from Git to retrieve the latest changes.

Známé problémy

  • Pro ne nastavte $wgGroupPermissions['*']['createaccount'] na true v LocalSettings, přepíšete tím požadavek přihlášení a umožní uživatelům zaregistrovat se bez potvrzení.
  • Nenastavujte/nevytvářejte MediaWiki:Requestaccount-areas/xx, kde xx je kód jazyka, první část každého řádku se používá jako klíč k uložení do DB pro položky, které žadatelé o účty kontrolují.
  • Starší verze MediaWiki nemusí v přihlašovacím formuláři uživatele zobrazovat odkaz na Special:RequestAccount. Chcete-li to napravit, můžete upravit MediaWiki:loginprompt.
  • Pokud váš emailový klient ztratí data pošty před jejím odesláním, uživatelé nedostanou svá hesla, ale mohou mít účet. Protože nikdo nezná hesla, možná budete chtít použít Special:ResetPassword a poslat jim nová.
  • Pokud stránku potvrzení účtů zobrazí pouze několik lidí, náhodně spouštěné omezování starých požadavků se nespustí často, takže staré zamítnuté požadavky mohou přetrvávat. Tím se zabrání tomu, aby emailové adresy znovu požadovaly účty na neznámé časové období. Toto chování můžete potlačit a povolit okamžité opětovné požadavky vynucením omezování těsně před odesláním jakéhokoli nového požadavku. Pokyny zde.
  • Integrace s rozšířením LDAP Authentication
  • [vyřešeno] Captcha: před verzí 1.40 se captcha neověřovala (viz úkol T168783), nyní existuje speciální záplata pro hCaptcha (viz Topic:W449yd63slfossl2#flow-post-w457lxnfmrb51gct).

Řešení problémů

Emaily s upozorněním se neodesílají

Pokud testujete, mějte na paměti, že uživatel musí nejprve potvrdit svou emailovou adresu prostřednictvím odkazu, který mu byl zaslán emailem, a poté bude email odeslán byrokratovi k potvrzení účtu.

Ujistěte se, že nastavení související s rozšířením jsou zavedena po řádku require_once. Dříve ne, jinak rozšíření tato nastavení nevidí a tiše selžou. např.

require_once "$IP/extensions/ConfirmAccount/ConfirmAccount.php";
$wgConfirmAccountContact = "admin@example.com";

Také si uvědomte, že při použitím nastavení 'confirmaccount-notify' nebude každý uživatel ve skupině (např. sysop) dostávat oznámení, pokud jejich Nastavení e-mailu v Special:Preferences nepovolí "Dovolit ostatním uživatelům posílat mi e-maily" a že potvrdí svou emailovou adresu ve stejném formuláři.

Související odkazy