Difference between revisions of "MediaWiki:Common.js"
From ipswichmakerspace
m |
m |
||
Line 14: | Line 14: | ||
$(summary).append('<h4>Summary:</h4>'); | $(summary).append('<h4>Summary:</h4>'); | ||
+ | $subtotals.parents('table').addClass('magitable'); | ||
$subtotals.parents('tr').addClass('subtotal'); | $subtotals.parents('tr').addClass('subtotal'); | ||
$subtotals.each(function(i, e) { | $subtotals.each(function(i, e) { |
Revision as of 01:23, 14 July 2018
/* Any JavaScript here will be loaded for all users on every page load. */ if (mw.config.values.wgTitle == 'Wishlist' || mw.config.values.wgTitle == 'Current wishlist') { var $subtotals = $('tr td b').filter(function(i) { return $(this).text()=='£subtotal'; }); var running_total = 0; var stretch_total = 0; var later_total = 0; var prior = ''; var table = $subtotals.parents('table').first(); var summary = document.createElement('div'); $(summary).append('<h4>Summary:</h4>'); $subtotals.parents('table').addClass('magitable'); $subtotals.parents('tr').addClass('subtotal'); $subtotals.each(function(i, e) { //prior = $(e).parent().parent().prev().children('td:nth-child(3)').text().trim(); prior = $(e).parent().siblings('th').text().trim(); $costs = $('td:contains('+prior+')').filter(function(i) { return $(this).text().trim()==prior; }).nextAll('td:nth-child(7)'); var costotal = 0, cost = 0; $costs.each(function(ci,ce) { cost = parseFloat($(ce).text().trim().replace('£','')); costotal += cost; }); if (prior.indexOf(' Stretch')!=-1) { stretch_total += costotal; } else if (prior.indexOf(' Later')!=-1) { later_total += costotal; } else { running_total += costotal; } $(e).text('£' + costotal.toFixed(2)); $(summary).append('<p><strong>' + prior + '</strong> : £' + costotal.toFixed(2)); }); $('td b:contains(£tree.fiddy)').text('£'+running_total.toFixed(2)); if (mw.config.values.wgTitle == 'Wishlist') { $(table).after('<p><strong>Main + Stretch Total</strong> : £'+(running_total+stretch_total).toFixed(2)).after(summary); $(table).after('<p><strong>Later Total</strong> : £'+later_total.toFixed(2)).after(summary); $(table).after('<p><strong>Stretch Total</strong> : £'+stretch_total.toFixed(2)).after(summary); $(table).after('<p><strong>Total</strong> : £'+running_total.toFixed(2)).after(summary); } else if (mw.config.values.wgTitle == 'Current wishlist') { $(table).after('<p><strong>Total</strong> : £'+running_total.toFixed(2)).after(summary); } }