MediaWiki:Script/mainpage.js

Материал из Справочника наблюдателя
Перейти к:навигация, поиск

Замечание. Возможно, после сохранения вам придётся очистить кэш своего браузера, чтобы увидеть изменения.

  • Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl-F5 или Ctrl-R (⌘-R на Mac)
  • Google Chrome: Нажмите Ctrl-Shift-R (⌘-Shift-R на Mac)
  • Internet Explorer: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl-F5
  • Opera: Выберите очистку кэша в меню Инструменты → Настройки
'use strict';
/*jshint jquery:true */
/* global mw */
var titi;
var offset=0;
var offsetObj = {};

function loadNewsP( offset, limit, ty ) {
	return JSON.parse(
	    $.ajax({
	        url:mw.util.wikiScript('api'),
	        data: { action: 'parse', format: 'json', text:'{{' + 'Chronicle:Select|limit=' + limit + '|stream=' + ty + '|offset=' + offset + '}}', prop: 'text' },
	        async:false
	    })
	    .responseText
	);
}

function loadNews( offset ) {
	return JSON.parse(
	    $.ajax({
	        url:mw.util.wikiScript('api'),
	        data: { action: 'parse', format: 'json', text:'{{' + 'Chronicle:Select|limit=5|offset=' + offset + '}}', prop: 'text' },
	        async:false
	    })
	    .responseText
	);
}

$('.mp-button').mouseenter( function () {
//	$(this).css('background-color','red');
//	$(this).children('.mp-text').animate({ opacity: "hide" }, "slow");
	var bu = this;
	$( this ).children( '.mp-text' ).append( '<i class="fa fa-spinner fa-pulse mp-indicator" style="margin-left: 1em"></i>' );
	titi = setTimeout ( function () {
	$(bu).css('background-color','#FFFFAA').children('.mp-text').css('display','none');
	$(bu).children('.mp-text-alt').css('display','table-cell');
//	$(this).children('.mp-text-alt').animate({ opacity: "show" }, "slow");
	}, 800);
});
$('.mp-button').mouseleave( function () {
	clearTimeout(titi);
	$( this ).find( '.mp-indicator' ).remove();

//	$(this).css('background-color','red');
//	$(this).children('.mp-text').animate({ opacity: "hide" }, "slow");
	$(this).css('background-color','#7F8F9F').children('.mp-text').css('display','table-cell');
	$(this).children('.mp-text-alt').css('display','none');
//	$(this).children('.mp-text-alt').animate({ opacity: "show" }, "slow");

});
$('#mp-ajax-news').click( function () {
	offset = offset+5;
	var news = loadNews( offset );
	$(this).before( news.parse.text['*'] );
});
$('.mp-ajax-news').click( function () {
	var ty = $(this).data('type');
	if ( offsetObj[ty] === undefined ) {
		offsetObj[ty] = $(this).data('limit');
	}
	var news = loadNewsP( offsetObj[ty], 2, ty );
	offsetObj[ty] += 2;
	$(this).before( news.parse.text['*'] );
	
});