function addItem( node, unique_item_fields ) {
- var index = $(node).parent().attr('id');
+ var index = $(node).closest("div").attr('id');
var current_qty = parseInt($("#quantity").val());
var max_qty;
if($("#quantity_to_receive").length != 0){
if ( current_qty < max_qty - 1 )
cloneItemBlock(index, unique_item_fields);
addItemInList(index, unique_item_fields);
- $("#" + index).find("a[name='buttonPlus']").text("Update");
- $("#quantity").val(current_qty + 1);
+ $("#" + index).find("input[name='buttonPlus']").val("Update");
+ $("#quantity").val(current_qty + 1).change();
} else if ( current_qty >= max_qty ) {
alert(window.MSG_ADDITEM_JS_CANT_RECEIVE_MORE_ITEMS
|| "You can't receive any more items.");
} else {
field_value = $(field_elt).val();
}
+ if (field_value == undefined) {
+ field_value = '';
+ }
result += "<td>" + field_value + "</td>";
}
result += "</tr>";
} else {
max_qty = 99999;
}
- $("#quantity").val(current_qty - 1);
+ $("#quantity").val(current_qty - 1).change();
$(node_a).parents('tr').remove();
if(current_qty - 1 == 0)
$("#items_list").hide();
$(this).val(random);
});
/* Add buttons + and Clear */
- var buttonPlus = '<a name="buttonPlus" style="cursor:pointer; margin:0 1em;" onclick="addItem(this,\'' + unique_item_fields + '\')">Add</a>';
- var buttonClear = '<a name="buttonClear" style="cursor:pointer;" onclick="clearItemBlock(this)">' + (window.MSG_ADDITEM_JS_CLEAR || 'Clear') + '</a>';
- $(clone).append(buttonPlus).append(buttonClear);
+ var buttonPlus = "<fieldset class=\"action\">";
+ var buttonPlusText = _("Add item");
+ buttonPlus += '<input type="button" class="addItemControl" name="buttonPlus" style="cursor:pointer; margin:0 1em;" onclick="addItem(this,\'' + unique_item_fields + '\')" value="' + buttonPlusText + '" />';
+ buttonPlus += '<a class="addItemControl cancel" name="buttonClear" style="cursor:pointer;" onclick="clearItemBlock(this)">' + (window.MSG_ADDITEM_JS_CLEAR || 'Clear') + '</a>';
+ buttonPlus += "</fieldset>";
+ $(clone).append(buttonPlus);
/* Copy values from the original block (input) */
$(original).find("input[name='field_value']").each(function(){
var kohafield = $(this).siblings("input[name='kohafield']").val();
- if($(this).val() && dont_copy_fields.indexOf(kohafield) == -1) {
+ if($(this).val() && $.inArray(kohafield,dont_copy_fields) == -1) {
$(this).parent("div").attr("id").match(/^(subfield.)/);
var id = RegExp.$1;
var value = $(this).val();
/* Copy values from the original block (select) */
$(original).find("select[name='field_value']").each(function(){
var kohafield = $(this).siblings("input[name='kohafield']").val();
- if($(this).val() && dont_copy_fields.indexOf(kohafield) == -1) {
+ if($(this).val() && $.inArray(kohafield,dont_copy_fields) == -1) {
$(this).parent("div").attr("id").match(/^(subfield.)/);
var id = RegExp.$1;
var value = $(this).val();
}
function clearItemBlock(node) {
- var index = $(node).parent().attr('id');
+ var index = $(node).closest("div").attr('id');
var block = $("#"+index);
$(block).find("input[type='text']").each(function(){
$(this).val("");
// Check if a value is duplicated in form
for ( field in array_fields ) {
var fieldname = array_fields[field];
+ if (fieldname == '') {
+ continue;
+ }
var values = new Array();
- $("[name='kohafield'][value=items."+array_fields[field]+"]").each(function(){
+ $("[name='kohafield'][value='items."+ fieldname +"']").each(function(){
var input = $(this).prevAll("input[name='field_value']")[0];
if($(input).val()) {
values.push($(input).val());