Difference between revisions of "MediaWiki:Common.js"

From Life After BOB Wiki
Jump to navigation Jump to search
(Created page with "→‎Any JavaScript here will be loaded for all users on every page load.: $('#randompage').click(function(){ var URL = $('a', this).attr('href'); console.log(URL);...")
 
 
(132 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
/* Any JavaScript here will be loaded for all users on every page load. */
 
/* Any JavaScript here will be loaded for all users on every page load. */
$('#randompage').click(function(){
+
 
    var URL = $('a', this).attr('href');
+
//open external links in new tab
    console.log(URL);
+
 
   
+
 
 +
$( '.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>");
 +
});
 +
});
 +
 
 +
 
 +
 
 
});
 
});

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>");
});
});



});