Merge branch 'develop' into master

This commit is contained in:
James Cole
2020-05-16 14:27:31 +00:00
committed by GitHub
82 changed files with 1701 additions and 364 deletions

View File

@@ -8471,4 +8471,4 @@ module.exports = __webpack_require__(/*! C:\Users\Florian\github\firefly-iii\res
/***/ })
/******/ });
/******/ });

View File

@@ -8531,4 +8531,4 @@ module.exports = __webpack_require__(/*! C:\Users\Florian\github\firefly-iii\res
/***/ })
/******/ });
/******/ });

View File

@@ -71,6 +71,44 @@ $(function () {
});
function selectAllReconcile(e) {
// loop all, check.
var el = $(e.target);
var doCheck = true;
if (el.prop('checked') === true) {
$('.check_all_btn').prop('checked', true);
}
if (el.prop('checked') === false) {
$('.check_all_btn').prop('checked', false);
doCheck = false;
}
$('.reconcile_checkbox').each(function (i, v) {
var check = $(v);
var amount = parseFloat(check.val());
var journalId = parseInt(check.data('id'));
var identifier = 'checked_' + journalId;
console.log('in selectAllReconcile(' + journalId + ') with amount ' + amount + ' and selected amount ' + selectedAmount);
check.prop('checked', doCheck);
// if checked, add to selected amount
if (doCheck === true && check.data('younger') === false) {
selectedAmount = selectedAmount - amount;
console.log('checked = true and younger = false so selected amount = ' + selectedAmount);
localStorage.setItem(identifier, 'true');
}
if (doCheck === false && check.data('younger') === false) {
selectedAmount = selectedAmount + amount;
console.log('checked = false and younger = false so selected amount = ' + selectedAmount);
localStorage.setItem(identifier, 'false');
}
difference = balanceDifference - selectedAmount;
console.log('Difference is now ' + difference);
});
updateDifference();
}
function storeReconcile() {
console.log('in storeReconcile()');
// get modal HTML:
@@ -116,15 +154,19 @@ function checkReconciledBox(e) {
var el = $(e.target);
var amount = parseFloat(el.val());
console.log('in checkReconciledBox() with amount ' + amount + ' and selected amount ' + selectedAmount);
var journalId = parseInt(el.data('id'));
var identifier = 'checked_' + journalId;
console.log('in checkReconciledBox(' + journalId + ') with amount ' + amount + ' and selected amount ' + selectedAmount);
// if checked, add to selected amount
if (el.prop('checked') === true && el.data('younger') === false) {
selectedAmount = selectedAmount - amount;
console.log('checked = true and younger = false so selected amount = ' + selectedAmount);
localStorage.setItem(identifier, 'true');
}
if (el.prop('checked') === false && el.data('younger') === false) {
selectedAmount = selectedAmount + amount;
console.log('checked = false and younger = false so selected amount = ' + selectedAmount);
localStorage.setItem(identifier, 'false');
}
difference = balanceDifference - selectedAmount;
console.log('Difference is now ' + difference);
@@ -198,6 +240,10 @@ function includeClearedTransactions() {
function placeTransactions(data) {
console.log('in placeTransactions()');
$('#transactions_holder').empty().html(data.html);
// add checkbox thing
$('.check_all_btn').click(selectAllReconcile);
selectedAmount = 0;
// update start + end balance when user has not touched them.
if (!changedBalances) {
@@ -214,6 +260,10 @@ function placeTransactions(data) {
difference = balanceDifference - selectedAmount;
updateDifference();
// loop al placed checkboxes and check them if necessary.
restoreFromLocalStorage();
// enable the check buttons:
$('.reconcile_checkbox').prop('disabled', false).unbind('change').change(checkReconciledBox);
@@ -223,6 +273,30 @@ function placeTransactions(data) {
$('.store_reconcile').prop('disabled', false);
}
function restoreFromLocalStorage() {
$('.reconcile_checkbox').each(function (i, v) {
var el = $(v);
var journalId = el.data('id')
var identifier = 'checked_' + journalId;
var amount = parseFloat(el.val());
if (localStorage.getItem(identifier) === 'true') {
el.prop('checked', true);
// do balance thing:
console.log('in restoreFromLocalStorage(' + journalId + ') with amount ' + amount + ' and selected amount ' + selectedAmount);
// if checked, add to selected amount
if (el.data('younger') === false) {
selectedAmount = selectedAmount - amount;
console.log('checked = true and younger = false so selected amount = ' + selectedAmount);
localStorage.setItem(identifier, 'true');
}
difference = balanceDifference - selectedAmount;
console.log('Difference is now ' + difference);
}
});
updateDifference();
}
/**
*
* @returns {boolean}
@@ -259,4 +333,4 @@ function updateDifference() {
addClass = 'text-danger';
}
$('#difference').addClass(addClass).text(accounting.formatMoney(difference));
}
}

View File

@@ -233,6 +233,7 @@ function updateActionInput(selectList) {
case 'clear_category':
case 'clear_budget':
case 'clear_notes':
case 'delete_transaction':
case 'remove_all_tags':
console.log('Select list value is ' + selectList.val() + ', so input needs to be disabled.');
inputResult.attr('disabled', 'disabled');
@@ -274,6 +275,10 @@ function updateActionInput(selectList) {
console.log('Select list value is ' + selectList.val() + ', so input needs auto complete.');
createAutoComplete(inputResult, 'json/bills');
break;
case 'update_piggy':
console.log('Select list value is ' + selectList.val() + ', so input needs auto complete.');
createAutoComplete(inputResult, 'json/piggy-banks');
break;
default:
console.log('Select list value is ' + selectList.val() + ', destroy auto complete, do nothing else.');
inputResult.typeahead('destroy');