Revision d8a1906b
Von Bernd Bleßmann vor mehr als 9 Jahren hinzugefügt
templates/webpages/order/tabs/basic_data.html | ||
---|---|---|
$('#row_table_scroll_id').scrollTop($('#row_table_scroll_id')[0].scrollHeight);
|
||
}
|
||
|
||
function row_set_keyboard_events_by_id(item_id) {
|
||
var row = $('#item_' + item_id).parents("tbody").first();
|
||
|
||
row_set_keyboard_events(row);
|
||
}
|
||
|
||
function row_set_keyboard_events(rows) {
|
||
$(rows).keydown(function(event) {
|
||
if(event.keyCode == 40 && event.shiftKey == true) {
|
||
// shift arrow down
|
||
event.preventDefault();
|
||
var row = $(event.target).parents(".row_entry").first();
|
||
$(row).children().not(':first').show();
|
||
return false;
|
||
}
|
||
if(event.keyCode == 38 && event.shiftKey == true) {
|
||
// shift arrow up
|
||
event.preventDefault();
|
||
var row = $(event.target).parents(".row_entry").first();
|
||
$(row).children().not(':first').hide();
|
||
return false;
|
||
}
|
||
});
|
||
|
||
$(rows).dblclick(function(event) {
|
||
event.preventDefault();
|
||
var row = $(event.target).parents(".row_entry").first();
|
||
$(row).children().not(':first').toggle();
|
||
return false;
|
||
});
|
||
}
|
||
|
||
function set_unit_change_with_oldval_by_id(item_id) {
|
||
var row = $('#item_' + item_id).parents("tbody").first();
|
||
var select_elt = $(row).find('[name="order.orderitems[].unit"]');
|
||
|
||
set_unit_change_with_oldval(select_elt);
|
||
}
|
||
|
||
function set_unit_change_with_oldval(selects) {
|
||
selects.each(function(idx,elt) {
|
||
$(elt).data('oldval', $(elt).val());
|
||
});
|
||
|
||
selects.change(unit_change);
|
||
}
|
||
|
||
var email_dialog;
|
||
|
||
function show_email_dialog(html) {
|
||
... | ... | |
kivi.SalesPurchase.edit_longdescription_with_params(params);
|
||
}
|
||
|
||
function init_row_handlers() {
|
||
kivi.run_once_for('.recalc', 'on_change_recalc', function(elt) {
|
||
$(elt).change(recalc_amounts_and_taxes);
|
||
});
|
||
|
||
kivi.run_once_for('.reformat_number', 'on_change_reformat', function(elt) {
|
||
$(elt).change(reformat_number);
|
||
});
|
||
|
||
kivi.run_once_for('.unitselect', 'on_change_unit_with_oldval', function(elt) {
|
||
$(elt).data('oldval', $(elt).val());
|
||
$(elt).change(unit_change);
|
||
});
|
||
|
||
kivi.run_once_for('.row_entry', 'on_kbd_click_show_hide', function(elt) {
|
||
$(elt).keydown(function(event) {
|
||
if(event.keyCode == 40 && event.shiftKey == true) {
|
||
// shift arrow down
|
||
event.preventDefault();
|
||
var row = $(event.target).parents(".row_entry").first();
|
||
$(row).children().not(':first').show();
|
||
return false;
|
||
}
|
||
if(event.keyCode == 38 && event.shiftKey == true) {
|
||
// shift arrow up
|
||
event.preventDefault();
|
||
var row = $(event.target).parents(".row_entry").first();
|
||
$(row).children().not(':first').hide();
|
||
return false;
|
||
}
|
||
});
|
||
$(elt).dblclick(function(event) {
|
||
event.preventDefault();
|
||
var row = $(event.target).parents(".row_entry").first();
|
||
$(row).children().not(':first').toggle();
|
||
return false;
|
||
});
|
||
});
|
||
}
|
||
|
||
|
||
$(function(){
|
||
$('#order_[%- cv_id %]').change(reload_cv_dependend_selections);
|
||
[%- IF SELF.cv == 'customer' %]
|
||
... | ... | |
return false;
|
||
}
|
||
});
|
||
row_set_keyboard_events($('.row_entry'));
|
||
$('.recalc').change(recalc_amounts_and_taxes);
|
||
$('.reformat_number').change(reformat_number);
|
||
|
||
set_unit_change_with_oldval($('.unitselect'));
|
||
init_row_handlers();
|
||
});
|
||
|
||
$('#row_table_id').on('sortstop', function(event, ui) {
|
Auch abrufbar als: Unified diff
Auftrags-Controller: event bindings nicht mehrfach hinzufügen.
Dazu event handler für die Positions-Zeilen mit run_once_for registrieren und
in eine eigene Funktion init_row_handlers() ausgelagert. Damit kann
init_row_handlers() gefahrlos immer nach dem Hinzufügen neuer Positionen
aufgerufen werden, ohne einen Handler mehrmals zu registrieren.