MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 13: | Line 13: | ||
})(); | })(); | ||
onload = function() { | |||
function include(url | 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; | ||
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); | ||
} | } | ||
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 61: | Line 88: | ||
var diagram = Seqdiag.DiagramBuilder.build(ast); | var diagram = Seqdiag.DiagramBuilder.build(ast); | ||
var svg = document.createElementNS("http://www.w3.org/2000/svg", "svg"); | var svg = document.createElementNS("http://www.w3.org/2000/svg", "svg"); | ||
svg.setAttribute(" | svg.setAttribute("height", $(this).height()); | ||
svg.setAttribute("width", $(this).width()); | svg.setAttribute("width", $(this).width()); | ||
var drawer = new Seqdiag.Drawer.SVG(diagram, svg, document); | var drawer = new Seqdiag.Drawer.SVG(diagram, svg, document); | ||
Line 70: | Line 97: | ||
} | } | ||
var seqCheck = setInterval(checkLoad, 500); | 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'); | |||
} | } | ||
Latest revision as of 21:11, 5 September 2015
/* 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("height", $(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');
}