User:Krinkle/SplitRC2.js

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: press Ctrl-F5, Mozilla: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Opera/Konqueror: press F5, Safari: hold down Shift + Alt while clicking Reload, Chrome: hold down Shift while clicking Reload.
// Krinkle_SplitRC 2.1.2 ([[User:Krinkle/SplitRC2.js]])
//  - Show/Hide/Filter new pages in RecentChanges
// by User:Krinkle
var $ = jQuery;
jQuery(function(){

/* Get GET parameters */

function KrSr_getUrlVars(){
  var vars = [], hash;
  var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
  for(var i = 0; i < hashes.length; i++){
    hash = hashes[i].split('=');
    vars.push(hash[0]);
    vars[hash[0]] = hash[1];
  }
  return vars;
}
var KrSr_UrlVars = KrSr_getUrlVars();
var KrSr_UrlVarFrom = parseInt(KrSr_UrlVars["from"]);



/* Initialise */

// Identify New Pages
  $("ul.special li abbr.newpage").parent().addClass("krsr-newpages");

// Identify Tags - [[COM:AES]]
  $("ul.special li .comment:contains('Blanked the page')").parent().addClass("krsr-tagblank");
  $("ul.special li .comment:contains('Redirected page to')").parent().addClass("krsr-tagredirect");
  $("ul.special li .comment:contains('Replaced page with')").parent().addClass("krsr-tagreplace");

// Create UI
  $("fieldset.rcoptions").css({'position':'relative'});
  $("fieldset.rcoptions").append("<div id='KrSr_SplitRC_links'><a href='#' id='KrSr_SplitRC_Page' class='go-hide'>Hide New Pages</a><br /><a href='#' id='KrSr_SplitRC_Edit' class='go-hide'>Hide Normal Edits</a><hr /><span>Filter Tags:</span><br /><a href='#' id='KrSr_SplitRC_TagBlank' class='off'>Blanked -</a><br /><a href='#' id='KrSr_SplitRC_TagRedirect' class='off'>Redirected -</a><br /><a href='#' id='KrSr_SplitRC_TagReplace' class='off'>Replaced -</a></div>");
  $("#KrSr_SplitRC_links").css({'position':'absolute', 'top':'24px', 'right':'12px', 'width':'12%', 'text-align':'right', 'background':'white'});

/* Add warning */

if (KrSr_UrlVarFrom){
if(mw.config.get('wgUserGroups')["autopatrolled"]="patroller"){

  // Only show oldest day if more then 1 day visible
  $("ul.special:last").addClass("krsr-oldestday");
  $("ul.special:not(.krsr-oldestday)").remove();

  $("fieldset.rcoptions").append("<div id='KrSr_SplitRC_warning' style='display:none'><small>When patrolling <a href='http://commons.wikimedia.org/wiki/Commons:Counter_Vandalism_Unit#Anonymous_edits'>an anonymous edits checklist</a> new pages should also be patrolled !</small></div>");
  $("#KrSr_SplitRC_warning").css({'position':'absolute', 'top':'24px', 'right':'13%', 'width':'24%', 'text-align':'right'});
}
}

/* Events */

$("#KrSr_SplitRC_Page").click(function(){
  if($(this).hasClass("go-hide")){
    $(this).removeClass("go-hide").addClass("go-show");
    $(this).text("Show New Pages");
    $("#KrSr_SplitRC_warning").show();
    $("ul.special li.krsr-newpages").hide();
  }
  else {
    $(this).removeClass("go-show").addClass("go-hide");
    $(this).text("Hide New Pages");
    $("#KrSr_SplitRC_warning").hide();
    $("ul.special li. krsr-newpages").show();
  }
  return false;
});

$("#KrSr_SplitRC_Edit").click(function(){
  if($(this).hasClass("go-hide")){
    $(this).removeClass("go-hide").addClass("go-show");
    $(this).text("Show Normal Edits");
    $("ul.special li:not(.krsr-newpages)").hide();
  }
  else {
    $(this).removeClass("go-show").addClass("go-hide");
    $(this).text("Hide Normal Edits");
    $("ul.special li:not(.krsr-newpages)").show();
  }
  return false;
});

$("#KrSr_SplitRC_TagBlank").click(function(){
  if($(this).hasClass("off")){
    $(this).removeClass("off").addClass("searchmatch");
    $("ul.special li:not(.krsr-tagblank)").hide();
  }
  else {
    $(this).removeClass("searchmatch").addClass("off");
    $("ul.special li:not(.krsr-tagblank)").show();
  }
  return false;
});

$("#KrSr_SplitRC_TagRedirect").click(function(){
  if($(this).hasClass("off")){
    $(this).removeClass("off").addClass("searchmatch");
    $("ul.special li:not(.krsr-tagredirect)").hide();
  }
  else {
    $(this).removeClass("searchmatch").addClass("off");
    $("ul.special li:not(.krsr-tagredirect)").show();
  }
  return false;
});

$("#KrSr_SplitRC_TagReplace").click(function(){
  if($(this).hasClass("off")){
    $(this).removeClass("off").addClass("searchmatch");
    $("ul.special li:not(.krsr-tagreplace)").hide();
  }
  else {
    $(this).removeClass("searchmatch").addClass("off");
    $("ul.special li:not(.krsr-tagreplace)").show();
  }
  return false;
});


});
// EndOf("SplitRC")