Difference between revisions of "MediaWiki:Common.js"
Jump to navigation
Jump to search
(108 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
//open external links in new tab | //open external links in new tab | ||
− | |||
− | |||
− | |||
− | |||
+ | $( '.external' ).click( function (e) { | ||
+ | e.preventDefault(); | ||
+ | console.log($(this).attr('href')); | ||
+ | var url = $(this).attr('href'); | ||
+ | window.open(url, '_blank'); | ||
} ); | } ); | ||
+ | //hover | ||
+ | |||
+ | $('.fc-img').mouseenter(function(){ | ||
+ | $(this).parent().css('background','rgba(255, 255, 255, 0.9)') | ||
+ | }) | ||
+ | |||
+ | $('.fc-img').parent().mouseenter(function(){ | ||
+ | $(this).css('background','rgba(255, 255, 255, 0.9)') | ||
+ | }) | ||
+ | |||
+ | |||
+ | $('.fc-img').mouseleave(function(){ | ||
+ | $(this).parent().css('background','none') | ||
+ | }) | ||
+ | |||
+ | $('.fc-img').parent().mouseleave(function(){ | ||
+ | $(this).css('background','none') | ||
+ | }) | ||
+ | |||
+ | var imageList = $('.fc-img').children().children(); | ||
+ | console.log(imageList); | ||
+ | var name; | ||
+ | for (var i = 0; i<imageList.length; i++){ | ||
+ | var w = imageList[i].dataset.fileWidth; | ||
+ | var h = imageList[i].dataset.fileHeight | ||
+ | if(w-h>0){ | ||
+ | name = imageList[i].className | ||
+ | $('.'+name).css('height','100%'); | ||
+ | $('.'+name).css('max-width','none'); | ||
+ | } | ||
+ | |||
+ | console.log(imageList[i].dataset.fileWidth+","+imageList[i].dataset.fileHeight); | ||
+ | |||
+ | } | ||
+ | |||
+ | |||
+ | |||
mw.loader.using( 'mediawiki.api', function () { | mw.loader.using( 'mediawiki.api', function () { | ||
+ | var random; | ||
var params = { | var params = { | ||
action: 'query', | action: 'query', | ||
Line 27: | Line 66: | ||
console.log( randoms[ r ].title); | console.log( randoms[ r ].title); | ||
} | } | ||
− | |||
− | |||
− | |||
+ | randomsFiltered = randoms.filter(function(item) { | ||
+ | return item !== "Main Page" | ||
+ | }) | ||
+ | |||
+ | random = randomsFiltered[0].title; | ||
+ | |||
+ | var randomString = "<a href='http://lifeafterbob.wiki/view/"+random+"'>"+random+"</a>" | ||
+ | $("#randompage").append("<div style='padding:1em;text-align:center'>"+randomString+"</div>"); | ||
+ | var newparams = { | ||
+ | action: 'parse', | ||
+ | page: randoms[0].title, | ||
+ | section:0, | ||
+ | headhtml:'<p>', | ||
+ | format: 'json' | ||
+ | }, api = new mw.Api(); | ||
+ | |||
+ | api.get(newparams).done(function(data){ | ||
+ | |||
+ | var markup = data.parse.text["*"]; | ||
+ | |||
+ | var cleanup = markup.replace(/<(.|\n)*?>/g, ''); | ||
+ | arr = cleanup.split("\n"); | ||
+ | var filtered = arr.filter(function(entry) { return entry.trim() != ''; }); | ||
+ | |||
+ | |||
+ | for (var i = 0; i<filtered.length; i++){ | ||
+ | if (filtered[i].includes("\t")){ | ||
+ | console.log(filtered[i]); | ||
+ | filtered.splice(filtered.indexOf(filtered[i]), 1); | ||
+ | } | ||
+ | } | ||
+ | //var filtered = arr.filter(s => s.includes('\t') }); | ||
+ | var excerpt = filtered[filtered.length-1]; | ||
+ | console.log(filtered); | ||
+ | $("#randompage").append("<div style='padding:1em;'>"+excerpt +"...</div>"); | ||
+ | }); | ||
+ | }); | ||
− | |||
− | } ) | + | }); |
Latest revision as of 06:40, 23 June 2021
/* Any JavaScript here will be loaded for all users on every page load. */ //open external links in new tab $( '.external' ).click( function (e) { e.preventDefault(); console.log($(this).attr('href')); var url = $(this).attr('href'); window.open(url, '_blank'); } ); //hover $('.fc-img').mouseenter(function(){ $(this).parent().css('background','rgba(255, 255, 255, 0.9)') }) $('.fc-img').parent().mouseenter(function(){ $(this).css('background','rgba(255, 255, 255, 0.9)') }) $('.fc-img').mouseleave(function(){ $(this).parent().css('background','none') }) $('.fc-img').parent().mouseleave(function(){ $(this).css('background','none') }) var imageList = $('.fc-img').children().children(); console.log(imageList); var name; for (var i = 0; i<imageList.length; i++){ var w = imageList[i].dataset.fileWidth; var h = imageList[i].dataset.fileHeight if(w-h>0){ name = imageList[i].className $('.'+name).css('height','100%'); $('.'+name).css('max-width','none'); } console.log(imageList[i].dataset.fileWidth+","+imageList[i].dataset.fileHeight); } mw.loader.using( 'mediawiki.api', function () { var random; var params = { action: 'query', format: 'json', list: 'random', rnlimit: '1', rnnamespace:'0' }, api = new mw.Api(); api.get( params ).done( function ( data ) { var randoms = data.query.random, r; for ( r in randoms ) { console.log( randoms[ r ].title); } randomsFiltered = randoms.filter(function(item) { return item !== "Main Page" }) random = randomsFiltered[0].title; var randomString = "<a href='http://lifeafterbob.wiki/view/"+random+"'>"+random+"</a>" $("#randompage").append("<div style='padding:1em;text-align:center'>"+randomString+"</div>"); var newparams = { action: 'parse', page: randoms[0].title, section:0, headhtml:'<p>', format: 'json' }, api = new mw.Api(); api.get(newparams).done(function(data){ var markup = data.parse.text["*"]; var cleanup = markup.replace(/<(.|\n)*?>/g, ''); arr = cleanup.split("\n"); var filtered = arr.filter(function(entry) { return entry.trim() != ''; }); for (var i = 0; i<filtered.length; i++){ if (filtered[i].includes("\t")){ console.log(filtered[i]); filtered.splice(filtered.indexOf(filtered[i]), 1); } } //var filtered = arr.filter(s => s.includes('\t') }); var excerpt = filtered[filtered.length-1]; console.log(filtered); $("#randompage").append("<div style='padding:1em;'>"+excerpt +"...</div>"); }); }); });