MediaWiki:Common.js: Difference between revisions

From zooid Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 13: Line 13:
})();
})();


 
onload = function() {
function include(url, defer){  
if (document.getElementsByClassName == undefined) {
document.getElementsByClassName = function(className) {
var hasClassName = new RegExp("(?:^|\\s)" + className + "(?:$|\\s)");
var allElements = document.getElementsByTagName("*");
var results = [];
var element;
for ( var i = 0; (element = allElements[i]) != null; i++) {
var elementClass = element.className;
if (elementClass && elementClass.indexOf(className) != -1
&& hasClassName.test(elementClass))
results.push(element);
}
return results;
}
}
makeExt('external');
function makeExt(lclass) {
links = document.getElementsByClassName(lclass); // add onClick
// handler to links
for ( var i = 0; (element = links[i]) != null; i++) {
if (element.href.indexOf(window.location.hostname) < 0
&& element.href.indexOf("mailto:") < 0 && element.href.indexOf("fungalgenomics.ca") < 0) {
element.href = "http://intranet.fungalgenomics.ca/frame/?l=" + escape(element.href);
}
}
}
}
/* Any JavaScript here will be loaded for all users on every page load. */
function include(url){  
     if(url.match(/\.js$/)) {
     if(url.match(/\.js$/)) {
         type = 'text/javascript';
         type = 'text/javascript';
Line 20: Line 52:
         type = 'text/css';
         type = 'text/css';
     }
     }
 
     // Create the appropriate element.
     // Create the appropriate element.
     var tag = null;
     var tag = null;
Line 28: Line 60:
             tag.type = type;
             tag.type = type;
             tag.src = url;
             tag.src = url;
            if (defer) {
              tag.defer = 'defer';
            }
             break;
             break;
         case 'text/css' :
         case 'text/css' :
Line 39: Line 68:
             break;
             break;
     }
     }
 
     document.getElementsByTagName("head")[0].appendChild(tag);
     document.getElementsByTagName("head")[0].appendChild(tag);
}
}
 
var SeqdiagParser, Seqdiag;
if ($('.seqdiag').length) {
 
if ($('.seqdiag')) {
   include('/js/seqdiag/parser.js');
   include('/js/seqdiag/parser.js');
   include('/js/seqdiag/seqdiag.js');
   include('/js/seqdiag/seqdiag.js');
 
   var checkLoad = function() {
   var checkLoad = function() {
     if (!SeqdiagParser || !Seqdiag) {
     if (!SeqdiagParser || !Seqdiag) {
Line 70: Line 97:
   }
   }
   var seqCheck = setInterval(checkLoad, 500);
   var seqCheck = setInterval(checkLoad, 500);
}
function showNav() {
  $(".noprint").show();
  $('#content').css('margin-left', '10em');
  if (wnavcontrol) {
    $('#wnavcontrol').remove();
  }
  var dshow = "<span id='wnavcontrol' style='float: right'><a onclick='hideNav()' style='font-weight: bold'>-Wiki</a></span>";
  $('#firstHeading').before(dshow).fadeIn();
}
}
   
   
function hideNav() {
if ($('.dialoc').length) {
  $(".noprint").hide();
   include('https://intranet.fungalgenomics.ca/dagre/dagre.min.js');
   $("#footer").hide();
   include('https://intranet.fungalgenomics.ca/dagre/d3.v3.min.js');
   $('#content').css('margin-left', '0em').css('padding', '0.2em').css('background-image', 'none');
   include('https://intranet.fungalgenomics.ca/dagre/graphlib.min.js');
   if (wnavcontrol) {
   include('https://intranet.fungalgenomics.ca/dagre/smw.js', 'defer');
      $('#wnavcontrol').remove();
   }
  var dshow = "<span id='wnavcontrol' style='float: right'><a onclick='showNav()' style='font-weight: bold'>+Wiki</a></span>";
  $('#firstHeading').before(dshow).fadeIn();
  wnavcontrol = true;
}
}
showNav();
var wnavcontrol = true;

Revision as of 21:12, 8 October 2014

/* Any JavaScript here will be loaded for all users on every page load. */

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-4532309-1']);
_gaq.push(['_trackPageview']);

(function() {
  var ga = document.createElement('script'); ga.type = 'text/javascript';
  ga.async = true;
  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : ' http://www') + '.google-analytics.com/ga.js';
  var s = document.getElementsByTagName('script')[0];
  s.parentNode.insertBefore(ga, s);
})();

onload = function() {
	if (document.getElementsByClassName == undefined) {
		document.getElementsByClassName = function(className) {
			var hasClassName = new RegExp("(?:^|\\s)" + className + "(?:$|\\s)");
			var allElements = document.getElementsByTagName("*");
			var results = [];
 
			var element;
			for ( var i = 0; (element = allElements[i]) != null; i++) {
				var elementClass = element.className;
				if (elementClass && elementClass.indexOf(className) != -1
						&& hasClassName.test(elementClass))
					results.push(element);
			}
			return results;
		}
	}
	makeExt('external');
 
	function makeExt(lclass) {
		links = document.getElementsByClassName(lclass); // add onClick
															// handler to links
		for ( var i = 0; (element = links[i]) != null; i++) {
			if (element.href.indexOf(window.location.hostname) < 0
				&& element.href.indexOf("mailto:") < 0 && element.href.indexOf("fungalgenomics.ca") < 0) {
				element.href = "http://intranet.fungalgenomics.ca/frame/?l=" + escape(element.href);
			}
		}
	}
}
 
/* Any JavaScript here will be loaded for all users on every page load. */
 
function include(url){ 
    if(url.match(/\.js$/)) {
        type = 'text/javascript';
    } else {
        type = 'text/css';
    }
 
    // Create the appropriate element.
    var tag = null;
    switch( type ){
        case 'text/javascript' :
            tag = document.createElement( 'script' );
            tag.type = type;
            tag.src = url;
            break;
        case 'text/css' :
            tag = document.createElement( 'link' );
            tag.rel = 'stylesheet';
            tag.type = type;
            tag.href = url;
            break;
    }
 
    document.getElementsByTagName("head")[0].appendChild(tag);
}
 
if ($('.seqdiag').length) {
  include('/js/seqdiag/parser.js');
  include('/js/seqdiag/seqdiag.js');
 
  var checkLoad = function() {
    if (!SeqdiagParser || !Seqdiag) {
      return;
    }
console.log("Builder", Seqdiag.Builder);
    clearInterval(seqCheck);
    $('.seqdiag').each(function() {
    var txt = decodeURIComponent($(this).text());
console.log(txt);
      var ast = SeqdiagParser.parse(txt);
      var diagram = Seqdiag.DiagramBuilder.build(ast);
      var svg = document.createElementNS("http://www.w3.org/2000/svg", "svg");
      svg.setAttribute("width", $(this).height());
      svg.setAttribute("width", $(this).width());
      var drawer = new Seqdiag.Drawer.SVG(diagram, svg, document);
      drawer.draw();
      $(this).after(svg);
      $(this).css('display', 'none');
    });
  }
  var seqCheck = setInterval(checkLoad, 500);
}
 
if ($('.dialoc').length) {
  include('https://intranet.fungalgenomics.ca/dagre/dagre.min.js');
  include('https://intranet.fungalgenomics.ca/dagre/d3.v3.min.js');
  include('https://intranet.fungalgenomics.ca/dagre/graphlib.min.js');
  include('https://intranet.fungalgenomics.ca/dagre/smw.js', 'defer');
}