Difference between revisions of "MediaWiki:Common.js"

From limswiki
Jump to navigation Jump to search
Line 20: Line 20:
       var title = window.location.search.replace(/^.*title=([^&]*).*$/, "$1");
       var title = window.location.search.replace(/^.*title=([^&]*).*$/, "$1");
       var self = toc.find("a[href$='title=" + title + "']");
       var self = toc.find("a[href$='title=" + title + "']");
       console.log(self);
       self.each(function() { $(this).before($("<strong />").addClass('selflink').text($(this).text())).remove(); });
       self.before($("<strong />").addClass('selflink').text(self.text())).remove();
       //self.before($("<strong />").addClass('selflink').text(self.text())).remove();
       toc.find('li:has(ul) > a, li:has(ul) > .selflink').each(function() {
       toc.find('li:has(ul) > a, li:has(ul) > .selflink').each(function() {
         var span = $('<span class="toggle-button"></span>');
         var span = $('<span class="toggle-button"></span>');

Revision as of 16:20, 8 November 2012

/* Any JavaScript here will be loaded for all users on every page load. */
 
$(document).ready(function() {

    $('.iframe-body #saved-book-links a.external').click(function(e) {
        e.preventDefault();
        var href = $(this).attr('href').replace(/^([^\:]*\:\/\/)[^\/]*(.*)$/, '$1' + window.location.hostname + '$2');
        console.log(href);
        window.open(href, 'Saved_book');
    });

  $('.iframe-body a.image').attr('target', '_blank');

  var ph = $('.table-of-contents-placeholder');
  if (ph.length) {
    $.get('/wiki/index.php?title=Contents', function(data) {
      var toc = $(data).find('.table-of-contents-full').attr('class', 'table-of-contents');
      ph.before(toc).remove();
      toc.find('ul ul').hide();
      var title = window.location.search.replace(/^.*title=([^&]*).*$/, "$1");
      var self = toc.find("a[href$='title=" + title + "']");
      self.each(function() { $(this).before($("<strong />").addClass('selflink').text($(this).text())).remove(); });
      //self.before($("<strong />").addClass('selflink').text(self.text())).remove();
      toc.find('li:has(ul) > a, li:has(ul) > .selflink').each(function() {
        var span = $('<span class="toggle-button"></span>');
        $(this).addClass('expandable-link').before(span);
        span.click(function() {
          $(this).toggleClass('toggle-button-open');
          $(this).siblings('ul').slideToggle(100);
        });
      });
      toc.find('.selflink').parents('li').each(function() {
        $(this).children('.toggle-button').addClass('toggle-button-open');
        $(this).children('ul').show();
      });
    });
  }
});

$(window).load(function() {
    if (parent && parent.setIframeHeight) {
        parent.setIframeHeight('wiki-iframe', 150);
        parent.setIframeHeight('wiki-iframe', $(document).height());
    }
});