MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
added brackets code |
credit to thesupremecommander for this JS |
||
Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
/* brackets code */ | /* brackets code */var highlighted; | ||
$.fn.justtext = function() { | |||
return $(this).clone().children().remove('div').end().text().trim(); | |||
}; | |||
var bracketGame; | |||
$(document).ready(function() { | |||
$('.bracket-game').each( function() { | |||
if ($(this).find('.bracket-game-details').length > 0) { | |||
var margin = $(this).find(':first-child').height() - 6; | |||
$(this).prepend('<div class="icon" style="margin-top:' + margin + 'px;"></div>'); | |||
} | |||
}); | |||
$('.match-row').each( function() { | |||
if ($(this).find('.bracket-game-details').length > 0) { | |||
$(this).find('td:eq(2)').prepend('<div style="position:relative"><div class="match-row-icon"></div></div>'); | |||
} | |||
}); | |||
$('.match-row').hover(function () { | |||
$(this).addClass('bracket-hover'); | |||
if ($(this).closest('.match-row').find('.bracket-game-details').length) { | |||
$(this).css('cursor', 'pointer'); | |||
} | |||
}, | |||
function () { | |||
$(this).removeClass('bracket-hover'); | |||
}); | |||
$('.bracket-team-top, .bracket-team-bottom, .bracket-game .icon').hover(function () { | |||
t = $(this); | |||
var text = t.justtext(); | |||
if (text) { | |||
highlighted = t.parents('.bracket').find('.bracket-team-top, .bracket-team-bottom').filter(function () { | |||
return $(this).justtext() == text; | |||
}); | |||
highlighted.css('background', '#cecece'); | |||
} | |||
}, | |||
function() { | |||
highlighted.css('background', ''); | |||
}); | |||
$('html').click(function () { | |||
if (bracketGame != null) { | |||
bracketGame.find('.bracket-game-details').toggle(); | |||
bracketGame = null; | |||
} | |||
}); | |||
$('.bracket-team-top, .bracket-team-bottom, .bracket-game .icon').click( | |||
function (event) { | |||
var bracket = $(this).closest('.bracket'), | |||
detailsHeight, detailsWidth, spaceOnTheRight; | |||
if (bracketGame != null) { | |||
bracketGame.children('.bracket-game-details').toggle(); | |||
if (bracketGame[0] === $(this).closest('.bracket-game')[0]) { | |||
bracketGame = null; | |||
return; | |||
} | |||
} | |||
bracketGame = $(this).closest('.bracket-game'); | |||
detailsHeight= bracketGame.children('.bracket-game-details').height(); | |||
detailsWidth = bracketGame.children('.bracket-game-details').width(); | |||
bracketGame.children('.bracket-game-details').css('margin-top', -detailsHeight / 2); | |||
spaceOnTheRight = Math.max($(window).width(), bracket.offset().left + bracket.outerWidth()) - (bracketGame.offset().left + bracketGame.outerWidth()); | |||
if (spaceOnTheRight < detailsWidth && bracketGame.offset().left > detailsWidth) { | |||
bracketGame.children('.bracket-game-details').css('margin-left', -detailsWidth - 1); | |||
} else { | |||
bracketGame.children('.bracket-game-details').css('margin-left', bracketGame.width()); | |||
} | |||
bracketGame.children('.bracket-game-details').fadeToggle(0); | |||
event.stopPropagation(); | |||
}); | |||
$('.match-row').click(function (event) { | |||
if (bracketGame != null) { | |||
bracketGame.find('.bracket-game-details').toggle(); | |||
if (bracketGame[0] === $(this)[0]) { | |||
bracketGame = null; | |||
return; | |||
} | |||
} | |||
bracketGame = $(this); | |||
var height = bracketGame.find('.bracket-game-details').height(); | |||
bracketGame.find('.bracket-game-details').css('margin-top', 3); | |||
bracketGame.find('.bracket-game-details').toggle(); | |||
event.stopPropagation(); | |||
}); | |||
$('.bracket-game-details').click(function (event) { | |||
event.stopPropagation(); | |||
}); | |||
}); |
Revision as of 16:34, 21 August 2014
/* Any JavaScript here will be loaded for all users on every page load. */ /* brackets code */var highlighted; $.fn.justtext = function() { return $(this).clone().children().remove('div').end().text().trim(); }; var bracketGame; $(document).ready(function() { $('.bracket-game').each( function() { if ($(this).find('.bracket-game-details').length > 0) { var margin = $(this).find(':first-child').height() - 6; $(this).prepend('<div class="icon" style="margin-top:' + margin + 'px;"></div>'); } }); $('.match-row').each( function() { if ($(this).find('.bracket-game-details').length > 0) { $(this).find('td:eq(2)').prepend('<div style="position:relative"><div class="match-row-icon"></div></div>'); } }); $('.match-row').hover(function () { $(this).addClass('bracket-hover'); if ($(this).closest('.match-row').find('.bracket-game-details').length) { $(this).css('cursor', 'pointer'); } }, function () { $(this).removeClass('bracket-hover'); }); $('.bracket-team-top, .bracket-team-bottom, .bracket-game .icon').hover(function () { t = $(this); var text = t.justtext(); if (text) { highlighted = t.parents('.bracket').find('.bracket-team-top, .bracket-team-bottom').filter(function () { return $(this).justtext() == text; }); highlighted.css('background', '#cecece'); } }, function() { highlighted.css('background', ''); }); $('html').click(function () { if (bracketGame != null) { bracketGame.find('.bracket-game-details').toggle(); bracketGame = null; } }); $('.bracket-team-top, .bracket-team-bottom, .bracket-game .icon').click( function (event) { var bracket = $(this).closest('.bracket'), detailsHeight, detailsWidth, spaceOnTheRight; if (bracketGame != null) { bracketGame.children('.bracket-game-details').toggle(); if (bracketGame[0] === $(this).closest('.bracket-game')[0]) { bracketGame = null; return; } } bracketGame = $(this).closest('.bracket-game'); detailsHeight= bracketGame.children('.bracket-game-details').height(); detailsWidth = bracketGame.children('.bracket-game-details').width(); bracketGame.children('.bracket-game-details').css('margin-top', -detailsHeight / 2); spaceOnTheRight = Math.max($(window).width(), bracket.offset().left + bracket.outerWidth()) - (bracketGame.offset().left + bracketGame.outerWidth()); if (spaceOnTheRight < detailsWidth && bracketGame.offset().left > detailsWidth) { bracketGame.children('.bracket-game-details').css('margin-left', -detailsWidth - 1); } else { bracketGame.children('.bracket-game-details').css('margin-left', bracketGame.width()); } bracketGame.children('.bracket-game-details').fadeToggle(0); event.stopPropagation(); }); $('.match-row').click(function (event) { if (bracketGame != null) { bracketGame.find('.bracket-game-details').toggle(); if (bracketGame[0] === $(this)[0]) { bracketGame = null; return; } } bracketGame = $(this); var height = bracketGame.find('.bracket-game-details').height(); bracketGame.find('.bracket-game-details').css('margin-top', 3); bracketGame.find('.bracket-game-details').toggle(); event.stopPropagation(); }); $('.bracket-game-details').click(function (event) { event.stopPropagation(); }); });