瀏覽代碼

HUE-938 [oozie] Add reference to action names in decision node

Action names should be displayed in decision node when setting conditions.
Links to modal displays for edition the actions are provided as well.
abec 13 年之前
父節點
當前提交
33ee9ef

+ 1 - 3
apps/oozie/src/oozie/templates/editor/control_utils.mako

@@ -106,9 +106,7 @@
                       ${ _('go to') }
                     </td>
                     <td class="right">
-                      % if 'name' in javascript_attrs:
-                        <a class="span3" data-bind="text: ${ javascript_attrs['name'] }"></a>
-                      % endif
+                      <a class="span3 edit-node-link" data-bind="text: $parent.registry.get(child()).name()"></a>
                     </td>
                   </tr>
                   <!-- /ko -->

+ 23 - 0
apps/oozie/src/oozie/templates/editor/edit_workflow.mako

@@ -585,6 +585,8 @@ var modal = new Modal($('#node-modal'));
 workflow.load();
 
 $('#workflow').on('click', '.edit-node-link', function(e) {
+  modal.hide();
+
   var node = ko.contextFor(this).$data;
   var backup = ko.mapping.toJS(node);
   normalize_model_fields(backup);
@@ -613,6 +615,27 @@ $('#workflow').on('click', '.edit-node-link', function(e) {
   modal.el.on('click', '.close', cancel_edit);
   modal.el.on('click', '.cancelButton', cancel_edit);
   modal.el.on('click', '.doneButton', try_save);
+
+  modal.el.on('click', '.edit-node-link', function(e) {
+    // Switch to clicked action
+    cancel_edit();
+
+    var link = ko.contextFor(this).$data;
+    var parent = ko.contextFor(this).$parent;
+    var node = parent.registry.get(link.child());
+    var backup = ko.mapping.toJS(node);
+    normalize_model_fields(backup);
+
+    modal.setTemplate(node.edit_template);
+    modal.show(node);
+    modal.recenter(280, 250);
+    modal.addDecorations();
+
+    $('.modal-backdrop').on('click', cancel_edit);
+    modal.el.on('click', '.close', cancel_edit);
+    modal.el.on('click', '.cancelButton', cancel_edit);
+    modal.el.on('click', '.doneButton', try_save);
+  });
 });
 
 $('#workflow').on('click', '.new-node-link', function(e) {