Do not send parent_id is it's something else than a number

When moving element on top, `new_parent.attr("id")` was `taxonomy_tree` which was causing DB error
This commit is contained in:
Jean-Baptiste Bellet
2022-06-02 15:21:57 +02:00
parent 817b5f437f
commit 4bbbae68c7

View File

@@ -9,12 +9,17 @@ handle_move = (e, data) ->
new_parent = data.rslt.np
url = new URL(base_url)
url.pathname = url.pathname + '/' + node.attr("id")
url.pathname = url.pathname + '/' + node.attr("id")
data = {
_method: "put",
"taxon[position]": position,
"taxon[parent_id]": if !isNaN(new_parent.attr("id")) then new_parent.attr("id") else undefined
}
$.ajax
type: "POST",
dataType: "json",
url: url.toString(),
data: ({_method: "put", "taxon[parent_id]": new_parent.attr("id"), "taxon[position]": position }),
data: data,
error: handle_ajax_error
true
@@ -26,11 +31,16 @@ handle_create = (e, data) ->
position = data.rslt.position
new_parent = data.rslt.parent
data = {
"taxon[name]": name,
"taxon[position]": position
"taxon[parent_id]": if !isNaN(new_parent.attr("id")) then new_parent.attr("id") else undefined
}
$.ajax
type: "POST",
dataType: "json",
url: base_url.toString(),
data: ({"taxon[name]": name, "taxon[parent_id]": new_parent.attr("id"), "taxon[position]": position }),
data: data,
error: handle_ajax_error,
success: (data,result) ->
node.attr('id', data.id)