Difference between revisions of "MediaWiki:Common.js"

From Taskman Wiki
Jump to navigation Jump to search
m (i think this code should be classified as a war crime)
m (get that shit outta here)
Tag: Blanking
Line 1: Line 1:
$().ready(function() {
 
  // Replace linkline spans with individual links
 
  $("span.mw-linkline").each(function(index) {
 
    $(this).html($(this).html().replace(/(.+?)(<br>|$)/g, '<a class="external text" href="' + $(this).data("format") + '">$1</a>$2'));
 
  });
 
  
  //Things like IDs in infoboxes should be linklined but also put in an (invisible) table for compression
 
  $("span.mw-multicol-linkline").each(function(index) {
 
    var format = $(this).data("format");
 
    var cols = $(this).data("columns");
 
    var rows = Math.ceil(($(this).html().match(/(.+?)<br>/g).length + 1) / cols);
 
    var table = "<table>";
 
    for (var i = 0; i < rows; i++) {
 
      table += "<tr>";
 
      for (var j = 0; j < cols; j++) {
 
        table += "<td>";
 
        if (i == rows - 1 && j == cols - 1) {
 
          table += format ? '<a class="external text" href="' + format.replace("$1", $(this).html().match(/<br>(.+?)$/g)[0])+ '">TEST</a>' : $(this).html().match(/<br>(.+?)$/g)[0];
 
        } else {
 
          table += format ? '<a class="external text" href="' + format.replace("$1", $(this).html().match(/(.+?)<br>/g)[cols*i+j])+ '">TEST</a>' : $(this).html().match(/(.+?)<br>/g)[cols*i+j];
 
        }
 
        table += "</td>";
 
      }
 
      table += "</tr>";
 
    }
 
    $(this).html(table + "</table>");
 
  });
 
});
 

Revision as of 15:28, 18 May 2020