{% extends 'miningtaxes/base.html' %} {% load i18n %} {% load static %} {% load humanize %} {% load evelinks %} {% block details %}

Overall Monthly Tax Revenue

Monthly Taxes by Users

Taxes by User

{% translate 'Name' %} {% translate 'Corp' %} {% translate 'Balance' %} {% translate 'Last Paid' %} {% translate 'Actions' %}

Taxes by Character

{% translate 'Name' %} {% translate 'Corp' %} {% translate 'Main' %} {% translate 'Taxes' %} {% translate 'Credits' %} {% translate 'Balance' %}

Corp Ledgers

{% translate 'Date' %} {% translate 'Name' %} {% translate 'Amount' %} {% translate 'Reason' %}

Unregistered Characters (Missing from MiningTax)

{% translate 'Name' %} {% translate 'Approx. ISK' %} {% translate 'Ore Units' %} {% translate 'Last Mined' %}

Unknown Characters (Missing from Auth)

{% translate 'Name' %} {% translate 'Approx. ISK' %} {% translate 'Ore Units' %} {% translate 'Last Mined' %}

Corp Moon Records

{% translate 'Date' %} {% translate 'Name' %} {% translate 'Ore' %} {% translate 'Quantity' %} {% translate 'Location' %}
{% endblock details %} {% block extra_javascript %} {% include 'bundles/datatables-js.html' %} {% endblock %} {% block extra_css %} {% if NIGHT_MODE %} {% else %} {% endif %} {% endblock %} {% block extra_script %} var user_data; var user_table; var unregistered_table; var unknown_table; var corpmoon_table; var csv_data; var tax_csv_data; function exporttaxdata() { exportToCsv("miningtaxes-revenue.csv", tax_csv_data); } function exportdata() { exportToCsv("miningtaxes-usertaxes.csv", csv_data); } function exportToCsv(filename, rows) { var processRow = function (row) { var finalVal = ''; for (var j = 0; j < row.length; j++) { var innerValue = row[j] === null ? '' : row[j].toString(); if (row[j] instanceof Date) { innerValue = row[j].toLocaleString(); }; var result = innerValue.replace(/"/g, '""'); if (result.search(/("|,|\n)/g) >= 0) result = '"' + result + '"'; if (j > 0) finalVal += ','; finalVal += result; } return finalVal + '\n'; }; var csvFile = ''; for (var i = 0; i < rows.length; i++) { csvFile += processRow(rows[i]); } var blob = new Blob([csvFile], { type: 'text/csv;charset=utf-8;' }); if (navigator.msSaveBlob) { // IE 10+ navigator.msSaveBlob(blob, filename); } else { var link = document.createElement("a"); if (link.download !== undefined) { // feature detection // Browsers that support HTML5 download attribute var url = URL.createObjectURL(blob); link.setAttribute("href", url); link.setAttribute("download", filename); link.style.visibility = 'hidden'; document.body.appendChild(link); link.click(); document.body.removeChild(link); } } } function populate(rowi) { $("#user").html(user_data[rowi].name); $("#userid").val(user_data[rowi].user); const bal = Math.round((user_data[rowi].balance + Number.EPSILON) * 100) / 100 $("#creditbox").val(bal); } $(document).ready(function () { $.getJSON("{% url 'miningtaxes:admin_tax_revenue_json' %}", function (d) { var taxrevenue = bb.generate({ data: { x: "x", columns: [], axes: { isk: "y"}, type: "bar", }, bar: { width: { ratio: 0.5 } }, legend: { show: false }, axis: { x: { padding: { right: 5000*60*60*12 }, type: "timeseries", tick: { format: "%Y-%m", rotate: 45 } }, y: { tick: { format: function(x) { return d3.format(",")(x); } }, label: "ISK" }, }, bindto:"#taxrevenue" }); taxrevenue.load({columns: [d['xdata'], d['ydata']]}); tax_csv_data = d["csv"]; $("#taxcsv").click(exporttaxdata); } ); $.getJSON("{% url 'miningtaxes:admin_month_json' %}", function (d) { var iskchart = bb.generate({ data: { x: "x", columns: [], axes: { isk: "y"}, }, axis: { x: { padding: { right: 5000*60*60*12 }, type: "timeseries", tick: { format: "%Y-%m", rotate: 45 } }, y: { tick: { format: function(x) { return d3.format(",")(x); } }, label: "ISK" }, }, bindto:"#isk" }); for (var i = 0 ; i < d["ydata"].length; i++) { iskchart.load({columns: [d['xdata'], d['ydata'][i]]}); } csv_data = d["csv"]; $("#csv").click(exportdata); } ); $.getJSON("{% url 'miningtaxes:admin_main_json' %}", function (d) { user_data = d["data"]; user_data.forEach( function(row) { user_table.row.add(row); }); user_table.draw(); }); $.getJSON("{% url 'miningtaxes:admin_corp_mining_history' %}", function (d) { unregistered_table = $('#unregistered').DataTable({ columns: [ { data: 'name' }, { data: 'isk', render: $.fn.dataTable.render.number(',', '.', 2) }, { data: 'quantity', render: $.fn.dataTable.render.number(',', '.', 0) }, { data: 'last' }, ], order: [[1, "desc"]] }); unknown_table = $('#unknown').DataTable({ columns: [ { data: 'name' }, { data: 'isk', render: $.fn.dataTable.render.number(',', '.', 2) }, { data: 'quantity', render: $.fn.dataTable.render.number(',', '.', 0) }, { data: 'last' }, ], order: [[1, "desc"]] }); corpmoon_table = $('#corpmoon').DataTable({ columns: [ { data: 'date' }, { data: 'name' }, { data: 'ore' }, { data: 'quantity', render: $.fn.dataTable.render.number(',', '.', 0) }, { data: 'location' }, ], order: [[0, "desc"]] }); unknown_data = d["unknown_data"]; unknown_data.forEach( function(row) { unknown_table.row.add(row); }); unknown_table.draw(); unregistered_data = d["unregistered_data"]; unregistered_data.forEach( function(row) { unregistered_table.row.add(row); }); unregistered_table.draw(); mining_data = d["mining_log"]; mining_data.forEach( function(row) { corpmoon_table.row.add(row); }); corpmoon_table.draw(); }); user_table = $('#mains').DataTable({ columns: [ { data: 'name' }, { data: 'corp' }, { data: 'balance', render: $.fn.dataTable.render.number(',', '.', 2) }, { data: 'last_paid' }, { data: 'action' }, ], order: [[2, "desc"]] }); $('#corp_ledgers').DataTable({ ajax: { url: "{% url 'miningtaxes:admin_corp_ledger' %}", dataSrc: 'data', cache: false }, columns: [ { data: 'date' }, { data: 'name' }, { data: 'amount', render: $.fn.dataTable.render.number(',', '.', 2) }, { data: 'reason' }, ], order: [[0, "desc"]] }); $('#chars').DataTable({ ajax: { url: "{% url 'miningtaxes:admin_char_json' %}", dataSrc: 'data', cache: false }, columns: [ { data: 'name' }, { data: 'corp' }, { data: 'main_name' }, { data: 'taxes', render: $.fn.dataTable.render.number(',', '.', 2) }, { data: 'credits', render: $.fn.dataTable.render.number(',', '.', 2) }, { data: 'balance', render: $.fn.dataTable.render.number(',', '.', 2) } ], order: [[5, "desc"]] }); }); {% endblock %}