Pflichtenheftitems: Neuanlegen von (Unter)Funktionsblöcken
[kivitendo-erp.git] / js / requirement_spec.js
index ca2c694..896b93b 100644 (file)
@@ -47,7 +47,7 @@ function requirement_spec_tree_check_move(data) {
 }
 
 function requirement_spec_tree_node_moved(event) {
-  console.debug("node moved");
+  // console.debug("node moved");
   var move_obj   = $.jstree._reference('#tree')._get_move();
   var dragged    = move_obj.o;
   var dropped    = move_obj.r;
@@ -171,21 +171,21 @@ function cancel_edit_text_block_form(id_base) {
 // --------------------------------------------------------------------------------
 
 function find_item_id(clicked_elt) {
-  console.log("clicked id: " + $(clicked_elt).attr('id'));
+  // console.log("clicked id: " + $(clicked_elt).attr('id'));
   var id     = $(clicked_elt).attr('id');
   var result = /^(function-block|function-block-content|sub-function-block|sub-function-block-content|section|section-header)-(\d+)$/.exec(id);
   if (result) {
-    console.log("find_item_id: case 1: " + result[2]);
+    // console.log("find_item_id: case 1: " + result[2]);
     return result[2];
   }
 
   id = $(clicked_elt).closest("[id*=fb-]").attr('id')
   if (/^fb-\d+$/.test(id)) {
-    console.log("find_item_id: case 2: " + id.substr(3));
+    // console.log("find_item_id: case 2: " + id.substr(3));
     return id.substr(3) * 1;
   }
 
-  console.log("find_item_id: case undef");
+  // console.log("find_item_id: case undef");
   return undefined;
 }
 
@@ -209,6 +209,12 @@ function disable_edit_item_commands(key, opt) {
   return find_item_id(opt.$trigger) == undefined;
 }
 
+function disable_add_function_block_command(key, opt) {
+  if (find_item_id(opt.$trigger))
+    return false;
+  return opt.$trigger.attr('id') != "section-list-empty";
+}
+
 function submit_edit_item_form(id_base) {
   var id   = $('#' + id_base + '_id').val();
   var url  = "controller.pl?" + $('#' + id_base + '_form').serialize();
@@ -221,9 +227,12 @@ function submit_edit_item_form(id_base) {
   return true;
 }
 
-function cancel_edit_item_form(form_id_base, hidden_id_base) {
-  var id = $('#' + form_id_base + '_id').val();
+function cancel_edit_item_form(form_id_base, options) {
   $('#' + form_id_base + '_form').remove();
-  if (id)
-    $('#' + hidden_id_base + '-' + id).show();
+  if (!options)
+    return;
+  if (options.to_show)
+    $(options.to_show).show();
+  if (options.to_hide_if_empty && (1 == $(options.to_hide_if_empty).children().size()))
+    $(options.to_hide_if_empty).hide();
 }