And try to clarify a bit. 67af073c was the relevant commit.
This commit is contained in:
parent
3cc79a67f2
commit
ef5db595f9
@ -33,11 +33,7 @@ $(document).ready(function() {
|
||||
$('body').bind('keydown', 'a', function(){ addformShow(); return false; });
|
||||
$('body').bind('keydown', 'n', function(){ addformShow(); return false; });
|
||||
$('body').bind('keydown', 'f', function(){ $('#searchform input').focus(); return false; });
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl++', addformAddPosting);
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl+shift+=', addformAddPosting);
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl+=', addformAddPosting);
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl+-', addformDeletePosting);
|
||||
$('.amount-input:last').keypress(addformAddPosting);
|
||||
addformBindKeys();
|
||||
|
||||
// highlight the entry from the url hash
|
||||
if (window.location.hash && $(window.location.hash)[0]) {
|
||||
@ -52,6 +48,17 @@ $(document).ready(function() {
|
||||
});
|
||||
});
|
||||
|
||||
// Set up keybindings affecting the add form, everywhere they should be
|
||||
// (body, each add form input, and one more on the last amount input).
|
||||
// Called on page load and again each time an add form row is added.
|
||||
function addformBindKeys() {
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl++', addformAddPosting);
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl+shift+=', addformAddPosting);
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl+=', addformAddPosting);
|
||||
$('body, #addform input, #addform select').bind('keydown', 'ctrl+-', addformDeletePosting);
|
||||
$('.amount-input:last').keypress(addformAddPosting);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// REGISTER CHART
|
||||
|
||||
@ -168,27 +175,17 @@ function addformAddPosting() {
|
||||
return;
|
||||
}
|
||||
|
||||
var prevLastRow = $('#addform .account-group:last');
|
||||
prevLastRow.off('keypress');
|
||||
// Remove the add-new-row-on-keypress handler from the old last amount field
|
||||
$('.amount-input:last').off('keypress');
|
||||
|
||||
// Clone the currently last row
|
||||
$('#addform .account-postings').append(prevLastRow.clone());
|
||||
var num = $('#addform .account-group').length;
|
||||
|
||||
// clear and renumber the field, add keybindings
|
||||
// XXX Enable typehead on dynamically created inputs
|
||||
$('.amount-input:last')
|
||||
.val('')
|
||||
.prop('placeholder','Amount ' + num)
|
||||
.keypress(addformAddPosting);
|
||||
|
||||
$('.account-input:last')
|
||||
.val('')
|
||||
.prop('placeholder', 'Account ' + num)
|
||||
.bind('keydown', 'ctrl++', addformAddPosting)
|
||||
.bind('keydown', 'ctrl+shift+=', addformAddPosting)
|
||||
.bind('keydown', 'ctrl+=', addformAddPosting)
|
||||
.bind('keydown', 'ctrl+-', addformDeletePosting);
|
||||
// Clone the old last row to make a new last row
|
||||
$('#addform .account-postings').append( $('#addform .account-group:last').clone() );
|
||||
// renumber and clear the new last account and amount fields
|
||||
var n = $('#addform .account-group').length;
|
||||
$('.account-input:last').prop('placeholder', 'Account '+n).val('');
|
||||
$('.amount-input:last').prop('placeholder','Amount '+n).val(''); // XXX Enable typehead on dynamically created inputs
|
||||
// and ensure they have the proper keybindings
|
||||
addformBindKeys();
|
||||
}
|
||||
|
||||
// Remove the add form's last posting row, if empty, keeping at least two.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user