3

MediawikiのWikiEditor拡張機能についての質問です。
公開モジュールをアクティブにして、右上隅に[公開]ボタンと[キャンセル]ボタンを表示しました。

$ wgDefaultUserOptions ['wikieditor-publish'] = 1;

残念ながら、期待どおりに機能しません。[公開]ボタンは何も実行せず、[キャンセル]ボタンは公開します。
jquery.wikiEditor.publish.jsファイルを調べましたが、公開モジュールのコードソースがよくわかりません。

context.fn.addButton({
    'captionMsg':'wikieditor-publish-button-publish'、
    'アクション':関数(){
        $('#' + dialogID).dialog('open');
        falseを返します。
    }
});

context.fn.addButton({
    'captionMsg':'wikieditor-publish-button-cancel'、
    'アクション':関数(){}
});

誰かがそれがどのように機能するか知っていますか?

4

2 に答える 2

3

このバグは bugzilla に追加されました: https://bugzilla.wikimedia.org/show_bug.cgi?id=42198
そして、修正がコミットされました: https://gerrit.wikimedia.org/r/#/c/44989

それで問題は解決しました:)

于 2013-02-12T14:15:04.793 に答える
2

MediaWiki 1.20.0 でこれを簡単なハックで修正し、コードを次のように変更しました。

context.fn.addButton( {
  'captionMsg': 'wikieditor-publish-button-publish',
  'action': function () {
    $( '#' + dialogID ).dialog( 'open' );
  }
} );

context.fn.addButton( {
  'captionMsg': 'wikieditor-publish-button-cancel',
  'action': function () {
    window.location = $("*").find("a[id='mw-editform-cancel']").first().attr("href");
    return false;
  }
} );

これにより、両方のボタンが期待どおりに機能し、1.19 でも機能するはずです。jQuery を実際に知っている人は、おそらくこれをよりうまく行うことができます。

記録として、変更するコードは Mediawiki ディストリビューションの次のファイルの最後にあります:

extensions/WikiEditor/modules/jquery.wikiEditor.publish.js
于 2012-11-21T08:33:24.673 に答える