Skip to content

Instantly share code, notes, and snippets.

@ramytamer
Last active August 29, 2015 14:20
Show Gist options
  • Select an option

  • Save ramytamer/677e477da65da393dfb2 to your computer and use it in GitHub Desktop.

Select an option

Save ramytamer/677e477da65da393dfb2 to your computer and use it in GitHub Desktop.
mainjs
var nw = require('nw.gui');
var win = nw.Window.get();
$(function() {
$('#prntbtn').click(function() {
$('.prnthide').hide();
window.print();
var num = parseInt($('#invNumber').text(), 10) + 1;
var fs = require('fs');
fs.writeFile('invoices.txt', num.toString(), function(err) {
if (err) alert(err);
});
$('#invNumber').text(paddZeros(num));
});
$('input').keyup(function() {
$('#' + $(this).attr('name')).text($(this).val());
});
$('#date').text(moment().format('YYYY-MMMM-DD'));
var inv1, inv2, inv, t1, t2, t;
$('input[name="invoice-1"], input[name="invoice-2"]').keyup(function() {
// alert('here');
inv1 = $('input[name="invoice-1"]').val();
inv2 = $('input[name="invoice-2"]').val();
inv = inv1 + '.' + inv2;
inv = parseFloat(inv);
var tax1 = $('input[name="tax-1"]').val();
var tax2 = $('input[name="tax-2"]').val();
var tax = parseFloat(tax1 + '.' + tax2) || 0;
t = inv + tax;
t = t.toString().split('.');
t1 = t[0];
t2 = t.length === 2 ? t[1] : 0;
$('#tax-1').text(tax1);
$('#tax-2').text(tax2);
$('#total-1').text(t1);
$('#total-2').text((t2 && t2.length >= 2) ? t2[0] + '' + t2[1] : t2);
});
var sum;
$('.payable').keyup(function() {
sum = 0;
$.each($('.payable'), function(index, val) {
if (index % 2 === 0) {
var x = (parseInt($('.payable').eq(index).val(), 10) || 0) + '.' + (parseInt($('.payable').eq(index + 1).val(), 10) || 0);
sum += parseFloat(x);
}
});
var tot = sum.toString().split('.');
var sum1 = tot[0];
var sum2 = tot[1];
// console.info(typeof sum2, tot[1][0], tot[1]);
$('input[name="invoice-1"]').val(sum1);
$('input[name="invoice-2"]').val((sum2 && sum2.length >= 2) ? sum2[0] + '' + sum2[1] : sum2);
$('input[name="invoice-1"], input[name="invoice-2"]').trigger('keyup');
});
});
if (window.matchMedia) {
var mediaQueryList = window.matchMedia('print');
mediaQueryList.addListener(function(mql) {
if (mql.matches) {
// beforePrint();
// alert('before');
$('.prnthide').hide();
} else {
$('.prnthide').show();
}
});
}
function paddZeros(number) {
var str = "";
for (var i = 0; i < 6 - number.toString().length; i++)
str += "0";
str += number.toString();
return str;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment