2

facebook 拡張機能を介してのみ、mediawiki で新しいアカウントの作成を許可する方法はありますか? つまり、Special:UserLogin/signup を介して通常のアカウント作成を無効にしたい (システム管理者が行った場合を除く) 一方で、Facebook 拡張機能が必要に応じて新しいアカウントを自動的に作成できるようにします。

これまでに試したことはすべて、すべてのケースでアカウントの作成を完全にブロックします (sysops を除く)。具体的には、次のように、wgGroupPermissions を介して通常のアカウント作成を無効にすると:

$wgGroupPermissions['*']['createaccount'] = false;

次に、facebook 拡張機能が次のエラーをスローします。

Non-string key given

Backtrace:

#0 /var/www-wiki.kostumekult.com/html/includes/GlobalFunctions.php(1183): MessageCache->get(Array, true, false)
#1 /var/www-wiki.kostumekult.com/html/includes/GlobalFunctions.php(1163): wfMsgGetKey(Array, true, false, true)
#2 /var/www-wiki.kostumekult.com/html/includes/GlobalFunctions.php(1081): wfMsgReal(Array, Array)
#3 /var/www-wiki.kostumekult.com/html/extensions/Facebook/FacebookUser.php(41): wfMsg(Array)
#4 /var/www-wiki.kostumekult.com/html/extensions/Facebook/FacebookUser.php(327): FacebookUserException->__construct(Array, 'createaccount')
#5 /var/www-wiki.kostumekult.com/html/extensions/Facebook/SpecialConnect.php(235): FacebookUser->createUser('rommel.hoop.1', '')
#6 /var/www-wiki.kostumekult.com/html/includes/SpecialPageFactory.php(458): SpecialConnect->execute('ChooseName')
#7 /var/www-wiki.kostumekult.com/html/includes/Wiki.php(240): SpecialPageFactory::executePath(Object(Title), Object(RequestContext))
#8 /var/www-wiki.kostumekult.com/html/includes/Wiki.php(640): MediaWiki->performRequest()
#9 /var/www-wiki.kostumekult.com/html/includes/Wiki.php(547): MediaWiki->main()
#10 /var/www-wiki.kostumekult.com/html/index.php(57): MediaWiki->run()
#11 {main}
4

1 に答える 1