User:Codswick/common.js
Jump to navigation
Jump to search
Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: press Ctrl-F5, Mozilla: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Opera/Konqueror: press F5, Safari: hold down Shift + Alt while clicking Reload, Chrome: hold down Shift while clicking Reload.
The accompanying .css page for this skin can be added at User:Codswick/common.css. |
//mw.loader.load('https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js');
$(document).ready(function(){
// Initials
var now = new Date();
var curdate = new Date(now.getTime()+now.getTimezoneOffset()*60000);
var fs_count = 0;
var fm_table_count = 0;
var otd_table_count = 0;
var fs_check_year = 2011;
var prevyear = 0;
var fs_month_count = [0,0,0,0,0,0,0,0,0,0,0,0];
var fs_month_count_row = [0,0,0,0,0,0,0,0,0,0,0,0];
var fs_year_count = 0;
var sd_cal_date = curdate.getDate();
var sd_cal_month = curdate.getMonth();
var errors = [];
var temp_string = '';
temp_string += '<tr>';
temp_string += '<th>Year</th>';
for (var i=0;i<12;i++) {
temp_string += '<th>'+getMonthNameSmall(i)+'</th>';
}
temp_string += '<th>Total</th>';
temp_string += '</tr>';
$('#fsyear').append(temp_string);
temp_string='';
$(".fs-table").each(function(){
var trcount = 0;
var fs_section_count = 0;
$(this).children('tbody').children('tr').each(function(){
trcount++;
if (trcount!=1) {
fs_count++;
fs_section_count++;
//Adding Counter
$(this).prepend('<th>'+fs_section_count+'</th>');
//Storing Table Cells
var fs_name = $(this).children('td:nth-child(2)');
var fm_name = $(this).children('td:nth-child(3)');
var fm_name_linked = '<a href="/wiki/User:Yasir72.multan/FM?name='+fm_name.text()+'">'+fm_name.html()+'<a>';
var fr_date = $(this).children('td:nth-child(4)');
var sd_date = $(this).children('td:nth-child(5)');
var fs_date = $(this).children('td:nth-child(6)');
//Linking FM
fm_name.html(fm_name_linked);
//Showing FM to FM Table
var fm_name_param = getUrlParam("name").toLowerCase();
if (fm_name.text().toLowerCase()==fm_name_param) {
fm_table_count++;
temp_string = '';
temp_string += '<tr>';
temp_string += '<th>'+fm_table_count+'</th>';
temp_string += '<td>'+fs_name.html()+'</td>';
temp_string += '<td>'+sd_date.text()+'</td>';
temp_string += '<td>'+fs_date.html()+'</td>';
temp_string += '</tr>';
$('.fm-table').append(temp_string);
$('#FM').html(fm_name.text());
$('#frdate').html('<h3>Release Date: '+fr_date.text()+'</h3>');
}
// Showing "On This Day" table
var sd_date_param = new Date();
sd_date_param.setFullYear(2000);
if (getUrlParam("date")==="") {
sd_date_param.setDate(curdate.getDate());
sd_date_param.setMonth(curdate.getMonth());
} else {
temp_date = new Date(getUrlParam("date").replace('_', ' ')+' 2000');
sd_date_param.setDate(temp_date.getDate());
sd_date_param.setMonth(temp_date.getMonth());
}
check_sd_date = new Date(sd_date.text());
sd_cal_date = sd_date_param.getDate();
sd_cal_month = sd_date_param.getMonth();
if (check_sd_date.getDate()==sd_date_param.getDate()&&check_sd_date.getMonth()==sd_date_param.getMonth()) {
otd_table_count++;
temp_string = '';
temp_string += '<tr>';
temp_string += '<th>'+otd_table_count+'</th>';
temp_string += '<td>'+fs_name.html()+'</td>';
temp_string += '<td>'+fm_name.html()+'</td>';
temp_string += '<td>'+fr_date.text()+'</td>';
temp_string += '<td><center><a href="/wiki/User:Yasir72.multan/FS/Archives/'+check_sd_date.getFullYear()+'">'+check_sd_date.getFullYear()+'</a></center></td>';
temp_string += '<td>'+fs_date.html()+'</td>';
temp_string += '</tr>';
$('#otd-table').append(temp_string);
}
$('#On_This_Day').html(getMonthName(sd_date_param.getMonth())+' '+sd_date_param.getDate());
// Showing Next and Previous Arrows below OTD
var previousdate = new Date();
var nextdate = new Date();
previousdate.setTime(sd_date_param.getTime()-86400000);
nextdate.setTime(sd_date_param.getTime()+86400000);
$('#np1').html("<a href='/wiki/User:Yasir72.multan/On_This_Day?date="+getMonthName(previousdate.getMonth())+"_"+previousdate.getDate()+"'>← "+getMonthName(previousdate.getMonth())+" "+previousdate.getDate()+"</a>");
$('#np2').html("<a href='/wiki/User:Yasir72.multan/On_This_Day?date="+getMonthName(nextdate.getMonth())+"_"+nextdate.getDate()+"'>"+getMonthName(nextdate.getMonth())+" "+nextdate.getDate()+" →</a>");
//Showing FS Year Statistics
if (fs_check_year!=check_sd_date.getFullYear()) {
if (!parseInt(check_sd_date.getFullYear())) {
errors.push('SD Date Error: <i>`'+sd_date.text()+'`</i>');
sd_date.css({'border':'5px solid red'});
}
printFSYrow(fs_month_count_row, prevyear);
fs_check_year = check_sd_date.getFullYear();
fs_month_count_row = [0,0,0,0,0,0,0,0,0,0,0,0];
}
fs_month_count[check_sd_date.getMonth()]++;
fs_month_count_row[check_sd_date.getMonth()]++;
fs_year_count++;
prevyear = check_sd_date.getFullYear();
// -------
} else {
$(this).prepend('<th>No.</th>');
}
});
});
// FS Year Last row (neccassry)
printFSYrow(fs_month_count_row, prevyear);
// Showing SD Cal
var sdcal = $('#sdcal');
temp_string = '';
temp_string += '<tr>';
temp_string += '<th>Months</th><th>Total FS</th><th>Dates</th>';
temp_string += '</tr>';
sdcal.append(temp_string);
temp_string = '';
for (i=0;i<12;i++) {
temp_string += '<tr>';
temp_string += '<th>'+getMonthName(i)+'</th>';
temp_string += '<td><center>'+fs_month_count[i]+'</center></td>';
temp_string += '<td>';
var days = 0;
if (i===0||i==2||i==4||i==6||i==7||i==9||i==11) {
days = 31;
} else if (i==3||i==5||i==8||i==10) {
days = 30;
} else if (i==1) {
days = 29;
}
for (var k=1;k<=days;k++) {
if (sd_cal_date==k&&sd_cal_month==i) {
temp_string += '<b>'+k+'</b> '
} else {
temp_string += "<a href='/wiki/User:Yasir72.multan/On_This_Day?date="+getMonthName(i)+"_"+k+"'>"+k+"</a> ";
}
}
temp_string += '</td>';
temp_string += '</tr>';
}
sdcal.append(temp_string);
//Other Single Line Objects
$('#FS').append(' ('+fs_count+')');
$('#seetoday').html("<a href='/wiki/User:Yasir72.multan/On_This_Day'>See Today</a> ("+getMonthName(curdate.getMonth())+" "+curdate.getDate()+")");
$('#totalfscount').html('Total <b>'+fs_count+'</b> FS');
//Accuracy
var all_month_count = 0;
for (i=0;i<12;i++) {
all_month_count += fs_month_count[i];
}
if (all_month_count!=fs_count) {
errors.push('Rows Error: '+fs_count+' != '+all_month_count);
}
if (errors.length!==0) {
temp_string = '';
temp_string += '<h3>Results are Not Accurate!</h3>';
temp_string += '<ul>';
for (i=0;i<errors.length;i++) {
temp_string += '<li>'+errors[i]+'</li>';
}
temp_string += '</ul>';
$('#resultalert').html(temp_string);
$('#resultalert').css({
'background':'lightpink',
'font-weight':'bold',
'border':'3px solid red',
'padding':'8px'
});
} else {
$('#resultalert').html('<b style="color:green">Accurate!</b>');
}
});
/* Functions */
function printFSYrow(array, year) {
var ysum = 0;
var t_str = '<tr>';
t_str += '<th>'+year+'</th>';
for (var i=0;i<12;i++) {
ysum = ysum + array[i];
if (array[i]!==0) {
t_str += '<td><center>'+array[i]+'</center></td>';
} else {
t_str += '<td></td>';
}
}
t_str += '<th>'+ysum+'</th>';
t_str += '</tr>';
$('#fsyear').append(t_str);
}
function getUrlParam(name) {
var ans = "";
var url = decodeURIComponent(window.location.href);
var urlparts = url.split("?");
if (urlparts.length>=2) {
var urlparams = urlparts[1].split("&");
for (var c=0;c<urlparams.length;c++) {
var keyvar = urlparams[c].split("=");
if (name.toLowerCase()==keyvar[0].toLowerCase()) {
ans = keyvar[1];
}
}
}
return ans;
}
function getMonthName(i) {
var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
return months[i];
}
function getMonthNameSmall(i) {
var monthsm = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
return monthsm[i];
}