問題タブ [mediawiki-extensions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mediawiki - MediaWiki API + LDAP認証
アカウント管理 Web サイトと MediaWiki サイトの間に SSO を実装しようとしています。
MediaWiki サイトは LDAP を使用して認証し、ログインを管理者に制限します (編集、移動などの管理者権限を制限しますが、5000 人のユーザーがアカウントを更新したり、ディスク領域を表示したりするには、アカウント管理サイトにログインする必要があります。
これまでのところ、次の関数を使用して Mediawiki に正常に接続できますが、ユーザー名とパスワードを使用して認証することはできません。
私自身のデバッグ値を追加した後、私WrongPass
は 2 番目の後に戻っていることがわかりましdo_post_request
た。MediaWiki の LDAPAuthentication 拡張機能を使用しているため、API は認証に拡張機能を使用していないため、ユーザー名パスワードを見つけられません。 MediaWiki が使用するユーザー データベースの組み合わせ
LDAP 認証を使用しているときに、MediaWiki API を使用してユーザーの認証に成功した人はいますか?
これを可能にするために、上記のコード、LocalSettings.php、または api.php にどのような変更を加えますか?
php - Mediawiki プログラムによるユーザー作成の問題
UserLoadFromSession フックでプログラムでメディア wiki ユーザーを作成しようとしています。次のコードを使用してユーザーを作成します
ステータスを確認すると、DatabaseMysql で doQuery 関数までデバッグしますが、mysql データベースでユーザーを作成していません。この heppn は、私の開発環境 (mysql サーバーを搭載した Windows コンピューター) と本番環境 (Linux および amazon RDS) の両方で
これを整理するのを手伝ってください
shell - シェルのパス/構文に誤りがあります
Extension:Scribuntu をインストールしようとしていますが、#invoke などの単純なコマンドを実行しようとすると、エラーが発生します。
Lua エラー: 内部エラー: インタープリターはステータス 127 で終了しました。
これは私がエラーログファイルで見つけたものです:
私の質問は次のとおりです。パスが正しいかどうか教えてもらえますか? ファイルを確認しましたが、すべて揃っています。パスも絶対的なので、どこに問題があるのか わかりません。パスの前の「\」は正しいですか? これまでシェルを使用したことがないため、正しい構文さえ知りません。簡単な説明ありがとうございます。
css - mediawiki のページの存在に基づいて css を適用する
Extension:Proofread PageとExtension:Translateを組み合わせた文書の転写と翻訳のプロセスに取り組んでいます。校正ページは、ページのステータス (スキャン アップロード、文字起こし、校正など) に基づいて、リスト内の各リンクに異なる背景色を適用しますが、それを翻訳にも適用できるように拡張したいと考えています。
次のようなテンプレートを使用すると、背景色を簡単に変更できます。
問題は、{{PAGENAME}}/en
. この#ifexist:
関数はその問題を解決します:
しかし#ifexist
、「高価な」パーサー関数として分類され、1 ページあたり 100 個に制限されていますが、700 個以上のリンクを持つインデックスがいくつかあります。
明らかに、私が言及した最初のテンプレートを、翻訳が作成されるたびにページごとに手動で呼び出すように要求することもできます (つまり、一度に 1 つのリンクをインデックスに置き換え[[page: ]]
ます{{page| }}
)。各インデックスを最初に作成するときに使用できます。
どちらもありますか
- mediawiki の高価なパーサー関数の上限を超える方法はありますか?
- 呼び出さずにこの状況で条件付き css を適用するためのトリックはあり
#ifexist
ますか?
または、おそらく、
この問題を解決する Extension:Proofread Page の簡単なハックはありますか?
MediaWiki: 1.19.2
セマンティック MediaWiki: 1.8 ベータ 1
PHP: 5.3.10-1ubuntu3.6 (apache2handler)
MySQL: 5.5.29-0ubuntu0.12.04.2
php - FlaggedRevs では、コマンド ラインから .../mediawiki/maintenance/update.php を実行する必要があります。
実行するには何が必要ですか? ブラウザのアドレス行から実行するとメッセージが表示されるため
このスクリプトはコマンドラインから実行する必要があります
どういう意味ですか?
Windowsコマンドラインでこれを行った後:
ファイルを開くだけで、
コマンドラインとその使用方法についてあまり知りません。
php.exeを介して行うように提案された後、これを取得しました
mediawiki - MediaWiki のページリンクからページの一部を除外する
MediaWiki を使用しています。wiki の一部のページには、このページの下部にあるような 1 つ以上の大きなナビゲーション ブロックが含まれています。
このようなブロックは多くのページに含まれています。現在、ページが保存されると、他のページへのリンクのリストも更新されます (pagelinks
表)。これらの参照は、「What links here」の特別ページや、おそらく他の同様のページでも使用されています。
しかし、実際には、これらのブロック内のリンクがそのためにカウントされることは望んでいません。この他のページへのリンクの更新プロセスで、ページの一部を除外するように MediaWiki に影響を与える方法はありますか?
私はいくつかの拡張機能を作成し、特定のクラスをオーバーライドし、いくつかのフックを使用したので、それらがどのように機能するかの基本は知っていますが、プロセスのこの部分に影響を与える適切なフックを見つけることができません.
試みが行われる限り、ParserOutput::addLink
解析されたリンクを配列に格納するために使用される が見つかりました。次に、保存時に、この配列がデータベースにマージされます。addLink はいくつかの場所から呼び出されますが、特に からParser::replaceInternalLinks2
呼び出されParser::internalParse
ます。
私が正しく理解していればinternalParse
、テキストごとに個別に呼び出されます。これには、個別のインクルードだけでなく、ネストされたタグも含まれます。で呼び出されたフックを使用できるかもしれませinternalParse
んが、まだ聖杯を見つけていません。できれば Parser クラス自体を変更せずに、正しい方向へのプッシュを使用して解決できます。
rss - Mediawiki 拡張機能:RSS
MediaWiki Extension:RSS ( http://www.mediawiki.org/wiki/Extension:RSS ) は、plainlinks クラスを使用して RSS フィード リンクを表示します。MediaWiki:Rss-feed テンプレートを編集して、リンクを太字以外の形式で強制的に表示するなど、あらゆる検索方法を試しました。
誰かこの拡張機能を使っていて、RSS リンクのフォントを変更する方法を教えてくれませんか?
ありがとう