MediaWiki:Common.js/w/Wikibooks:Dialog/echo
外观
/* 适用于 Wikibooks:Dialog/echo。请参阅 Special:WhatLinksHere/w/Wikibooks:Dialog/echo. */
function reservedParams() { return { 'DIALOG-ECHO-VERSION': '0.3 (2015-11-10)' }; }
function primaryVerb() {
function doEcho(actionParams, authData, other) { function handleRollback() { $('input.wikidialog-echo-rollback').attr('disabled',true); if (window.wikidialog.rollback()) return; alert("Sorry, something's gone wrong; unable to go back using this button."); $('input.wikidialog-echo-rollback').attr('disabled',false); } // // message at the top // var s = 'Echo dialog data'; if (window.wikidialog.canRollback()) {
s += '\n
若要返回之前显示的内容,请使用此按钮: ' + 'x' + ';或使用浏览器中的“后退”导航功能。
';
} // // data fields // for (var p in actionParams) { if (actionParams[p]) {
s += '\n
\n
' + p + '
\n
' + window.wikidialog.safeHtml(actionParams[p]) + '
';
} else {
s += '\n
\n
' + p + '
';
} } // // authentication //
s += '\n
\n
'; s += '\n
origin: ' + authData.origin + '
'; s += '
proxy: ' + authData.proxy + '
';
// // other // if (other.length > 0) {
s += '\n
\n
';
for (var k = 0; k < other.length; k++) { if (k > 0) s += ','; s += '
' + other[k]; } } // // message at the bottom //
s += '\n
\n
' +
'To examine dialog states currently stored, you can consult the <a href="' + mw.util.getUrl(mw.config.get('wgSiteName') + ':Dialog/diagnostic panel') + '">diagnostic panel</a>; if you have just arrived here, ' + 'the most recently listed dialog state on the panel should be the one ' + "you got here from. The data set shown here won't be listed on the " + "panel, but should be accessible using the panel's expert mode."; // // show // $('div.wikidialog-echo').replaceWith(s); $('.wikidialog-echo-rollback').replaceWith(function () { return $(document.createElement('input')).attr('type','button') .addClass('wikidialog-echo-rollback').val('back') .attr('title','back').click(handleRollback); }); } window.wikidialog.receiveAnonymous( function () { var actionParams = this; var r = reservedParams(); for (var p in r) { actionParams[p] = r[p]; } var authData = arguments[0]; var other = []; for (var k = 1; k < arguments.length; k++) { other[k - 1] = arguments[k]; } doEcho(actionParams, authData, other); } );
}
$.getScript( // MediaWiki:Dialog/receive
mw.config.get('wgScript') + '?title=' + mw.util.wikiUrlencode('MediaWiki:Dialog/receive') + '&action=raw&ctype=text/javascript', primaryVerb
);