MediaWiki:Gadget-common-action-edit.js: различия между версиями

Содержимое удалено Содержимое добавлено
Викификатор теперь самдобавляет кнопки
создание секции для гаджетов в самое начало; мелкие исправления
Строка 1:
// Helper function for toolbar buttons
 
function wgImg ( img ) {
return '//upload.wikimedia.org/wikipedia/' + img;
}
 
function createFuncBtn ( id, func, img, tip ) {
$( '<img id="' + id + '" src="' + wgImg( img ) + '" style="cursor:pointer" ' +
'title="' + tip + '" alt="' + tip.substr( 0, 3 ) + '" />' )
.appendTo( '#gadget-toolbar' )
.click( func );
}
 
 
// Toolbar section for gadgets
 
if ( mw.user.options.get( 'usebetatoolbar' ) ) {
var gTlbLoc = '#wikiEditor-ui-toolbar';
mw.util.addCSS( '#gadget-toolbar {height:26px; border-right:1px solid #ddd; margin:3px; padding-right:6px} #gadget-toolbar img {padding:2px}' );
} else if ( document.getElementById( 'toolbar' ) ) {
var gTlbLoc = '#toolbar';
importMW( 'ToolbarOld' );
} else {
var gTlbLoc = '#editform';
importMW( 'ToolbarNone' );
}
 
function gToolbar() {
if ( !document.getElementById( 'gadget-toolbar' ) ) {
var $where = $( gTlbLoc );
if ( !$where.length ) {
return; //beta toolbar not ready yet
}
$( '<div id="gadget-toolbar" style="float:left" />' ).prependTo( $where );
}
for ( var id in mwCustomEditButtons ) {
var b = mwCustomEditButtons[id];
if ( !b.length ) {
continue;
}
createFuncBtn( id, b[0], b[1], b[2] );
delete mwCustomEditButtons[id];
}
}
 
$( function() {
gToolbar();
setTimeout( gToolbar, 2000 );
setTimeout( gToolbar, 6000 );
} );
 
 
// Summary buttons
 
Строка 6 ⟶ 59 :
}
var vv = $( '#wpSummary' ).val();
if ( vv.indexOf( txt ) !== -1 ) {
return;
}
Строка 26 ⟶ 79 :
$( function() {
var frm = document.getElementById( 'editform' );
if ( !mw.config.get( 'wgArticleId' ) || !frm || $( frm.wpSection ).val() === 'new' ) {
return;
}
Строка 51 ⟶ 104 :
// Wikificator
importMW( 'Wikificator' );
 
 
if ( mw.user.options.get('usebetatoolbar') ) {
var gTlbLoc = '#wikiEditor-ui-toolbar';
mw.util.addCSS( '#gadget-toolbar {height:26px; border-right:1px solid #ddd; margin:3px; padding-right:6px} #gadget-toolbar img {padding:2px}' );
} else if ( document.getElementById('toolbar') ) {
var gTlbLoc = '#toolbar';
importMW( 'ToolbarOld' );
} else {
var gTlbLoc = '#editform';
importMW( 'ToolbarNone' );
}
 
 
$( function() {
gToolbar();
setTimeout( gToolbar, 2000 );
setTimeout( gToolbar, 6000 );
} );
 
 
 
function gToolbar() {
if ( !document.getElementById('gadget-toolbar') ) {
var where = $( gTlbLoc );
if ( !where.length ) {
return; //beta toolbar not ready yet
}
$( '<div id=gadget-toolbar style="float:left" />' ).prependTo( where );
}
for ( var id in mwCustomEditButtons ) {
var b = mwCustomEditButtons[id];
if ( !b.length ) {
continue;
}
createFuncBtn( id, b[0], b[1], b[2] );
delete mwCustomEditButtons[id];
}
}
 
 
 
function createFuncBtn ( id, func, img, tip ) {
$( '<img id="' + id + '" src="' + wgImg( img ) + '" style="cursor:pointer" ' +
'title="' + tip + '" alt="' + tip.substr( 0, 3 ) + '" />' )
.appendTo( '#gadget-toolbar' )
.click( func );
}
 
 
function wgImg ( img ) {
return '//upload.wikimedia.org/wikipedia/' + img;
}
 
 
// For userscripts
function addFuncBtn ( id, func, img, tip ) {
if ( document.getElementById('gadget-toolbar') ) {
createFuncBtn( id, func, img, tip );
} else {
mwCustomEditButtons[id] = [ func, img, tip ];
}
}
 
 
 
// Sig reminder
if ( mw.config.get( 'wgNamespaceNumber' ) % 2 ||
mw.config.get( 'wgNamespaceNumber' ) === 4
) {
$( function () {
var cp = document.getElementById( 'editpage-copywarn' ),
wpSave = document.getElementById( 'wpSave' );
Строка 128 ⟶ 116 :
return;
}
if ( mw.config.get( 'wgNamespaceNumber' ) === 4 &&
( !mw.config.get( 'wgTitle' ).match( '^(Форум[/ ]|Голосования/|Опросы/|Обсуждение правил/|Заявки на .*|Запросы.|Кандидаты в .*/|К (удалению|объединению|переименованию|разделению|улучшению)/|Рецензирование/|Проверка участников/|Инкубатор/(Мини-рецензирование|Форум[/ ]))' ) ||
mw.config.get( 'wgTitle' ).match( '/Архив' ) )
Строка 135 ⟶ 123 :
}
// FIXME: Use of "insertTags" is deprecated. Use mw.toolbar.insertTags instead.
var ins = ' <a href=\'javascript:insertTags(" ~~\~~\","","")\'>~~\~~</a>';
cp.innerHTML += '&nbsp;&nbsp;Не забудьте добавить к вашему сообщению подпись с помощью' + ins;
if ( $.inArray( 'autoconfirmed', mw.config.get( 'wgUserGroups' ) ) !== -1 && !window.sigWarning ) {
Строка 144 ⟶ 132 :
wpSave.onclick = function() {
try {
if ( warningDone || document.editform.wpTextbox1.value.indexOf( '~~\~~' ) >!== 0-1 ) {
return true;
}
Строка 150 ⟶ 138 :
cp.innerHTML = 'Пожалуйста, <b>подпишитесь</b>, добавив в конце' +
' своего сообщения' + ins + ' (<a href="' +
mw.config.get( 'wgArticlePath' ).replace( /\$1/, 'Википедия:Подписывайтесь' ) +
'" title="(ссылка откроется в новом окне)" target=_blank>подробнее&nbsp;↗</a>)';
cp.style.background = '#FFD080';
Строка 159 ⟶ 147 :
}
};
} );
}
 
 
// Hack for Opera 11.6
if ( window.opera && /11\.6[01]/.test( window.opera.version() ) ) {
$( '#wpTextbox1' )
Строка 168 ⟶ 158 :
} )
.click( function() {
if ( this.scrollTop === 0 ) {
this.scrollTop = this.sT;
}