Користувач:Максим Підліснюк/resize.js

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Увага: Після публікування слід очистити кеш браузера, щоб побачити зміни.

  • Firefox / Safari: тримайте Shift, коли натискаєте Оновити, або натисніть Ctrl-F5 чи Ctrl-Shift-R (⌘-R на Apple Mac)
  • Google Chrome: натисніть Ctrl-Shift-R (⌘-Shift-R на Apple Mac)
  • Internet Explorer / Edge: тримайте Ctrl, коли натискаєте Оновити, або натисніть Ctrl-F5
  • Opera: натисніть Ctrl-F5
$(document).ready(function () {
   if(mw.config.get( 'wgNamespaceNumber' ) == 6 || mw.config.get( 'wgPageName' ) == 'Користувач:LRBot/tests') {
   		lrbGlobalDefs();
        mw.util.addPortletLink('p-cactions', 'javascript:lrbShowDialog();', 'Змешити зображення');
    }
});

function lrbGlobalDefs() {
	window.lrbTemplate = 'User:LRBot/resize';
}

function lrbShowDialog() {
	if($('#lrb-resize-dialog').length == 0) {
        $( "#mw-content-text" ).append("<div id=\"lrb-resize-dialog\" style=\"display:none;\" title=\"Зменшити зображення\"><p>Введіть ширину зображення в пікселях і невдовзі бот перевантажить нову версію файлу автоматично</p><p>Ширина:</p><input id=\"lrb-width\" value=\"220\" /><br /><input id=\"lrb-uploadlog\" type=\"checkbox\" checked=\"checked\"/> Додати журнал завантажень в опис зображення</div>");
    }
	 mw.loader.using( 'jquery.ui', function () {
        $( "#lrb-resize-dialog" ).dialog({
            buttons: {
                "Зменшити": function() {
                    lrbAddTemplate();
                }
            }
        });
    });
}

function lrbAddTemplate() {
	var lrbPageName = mw.config.get( 'wgPageName' );
	var lrbWidth = $('#lrb-width').val();
	var lrblog = '';
	if( $('#lrb-uploadlog').is(':checked') ) {
		lrblog = '|log';
	}
	$('#lrb-resize-dialog').html('Зачекайте, будь ласка...');
	lrbWriteInPage(lrbPageName, '{{' + lrbTemplate + '|' + lrbWidth + lrblog + '}}', 'Запит на зменшення файлу', 'appendtext', false, function() {
		location.reload();
	});
}

function lrbWriteInPage(title, content, summary, option, section, success) {
        var param = {
        	action: 'edit', 
                title: title, 
                summary: summary, 
                watchlist: 'watch',
                token: mw.user.tokens.get('csrfToken'),
                format: 'json'
        }
        param[option || 'text'] = content;
        if (section)
                param.section = section;
        $.post(mw.util.wikiScript('api'), param, function() {
                if (typeof(success) === 'function')
                        success();
        }); 
}