2 Copyright 2013 IBM Corp.
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
8 http://www.apache.org/licenses/LICENSE-2.0
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
17 <script type="text/x-red" data-template-name="returnFailure">
18 <div class="form-row">
19 <label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
20 <input type="text" id="node-input-name" placeholder="Name">
22 <div class="form-row">
23 <label for="node-input-xml"><i class="fa fa-wrench"></i> Node XML</label>
24 <input type="hidden" id="node-input-xml" autofocus="autofocus">
25 <div style="height: 450px;" class="node-text-editor" id="node-input-xml-editor" onkeyup="resetStatus()" ></div>
27 <div class="form-row">
28 <a href="#" class="btn btn-mini" id="node-input-validate" style="margin-top: 4px;"><b>Validate XML</b></a>
29 <!-- <a href="#" class="btn btn-mini" id="node-input-show-sli-values" style="margin-top: 4px;"><b>Show Values</b></a> -->
30 <input type="hidden" id="node-input-comments">
31 <a href="#" class="btn btn-mini" id="node-input-btnComments" style="margin-top: 4px;"><b>Add Comments</b></a>
32 <div id="node-validate-result" class="form-tips" style="float:right;font-size:10px"></div>
34 <div class="form-tips">See the Info tab for help using this node.</div>
37 <script type="text/x-red" data-help-name="returnFailure">
38 <p>A returnFailure node.</p>
39 <p>First line of XML must contain opening tag.</p>
40 <p>Do not include closing tag - it will be automatically generated.</p>
43 <h4><a name="Return_node"></a>Return node</h4>
45 <h5><a name="Description"></a>Description</h5>
46 <p>A <b>return</b> node is used to return a status to the invoking MD-SAL application</p></div>
48 <h5><a name="Attributes"></a>Attributes</h5>
49 <table border="1" class="table table-striped">
51 <td align="center"><b>status</b></td>
52 <td align="left">Status value to return (<i>failure</i>)</td></tr></table></div>
54 <h5><a name="Parameters"></a>Parameters</h5>
55 <p>The following optional parameters may be passed to convey more detailed status information.</p>
56 <table border="1" class="table table-striped">
58 <td align="center"><b>error-code</b></td>
59 <td align="left">A brief, usually numeric, code indicating the error condition</td></tr>
61 <td align="center"><b>error-message</b></td>
62 <td align="left">A more detailed error message</td></tr></table></div>
64 <h5><a name="Outcomes"></a>Outcomes</h5>
65 <p>Not applicable. The <b>status</b> node has no outcomes.</p></div>
67 <h5><a name="Example"></a>Example</h5>
69 <pre><return status="failure">
70 <parameter name="error-code" value="1542" />
71 <parameter name="error-message" value="Activation failure" />
72 </return></pre></div></div></div>
77 <script type="text/javascript">
78 RED.nodes.registerType('returnFailure',{
80 category: 'DGEreturn',
82 name: {value:"return failure"},
83 xml: {value:"<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n"},
91 oneditprepare: function() {
93 var comments = $( "#node-input-comments").val();
95 comments = comments.trim();
97 $("#node-input-btnComments").html("<span style='color:blue;'><b>View Comments</b></span>");
102 function functionDialogResize(ev,ui) {
103 $("#node-input-xml-editor").css("height",(ui.size.height-275)+"px");
106 $( "#dialog" ).dialog( "option", "width", 1200 );
107 $( "#dialog" ).dialog( "option", "height", 750 );
108 $( "#dialog" ).on("dialogresize", functionDialogResize);
109 $( "#dialog" ).one("dialogopen", function(ev) {
110 var size = $( "#dialog" ).dialog('option','sizeCache-function');
112 functionDialogResize(null,{size:size});
116 /* close dialog when ESC is pressed and released */
117 $( "#dialog" ).keyup(function(event){
118 if(event.which == 27 ) {
119 $("#node-dialog-cancel").click();
123 $( "#dialog" ).one("dialogclose", function(ev,ui) {
124 var height = $( "#dialog" ).dialog('option','height');
125 $( "#dialog" ).off("dialogresize",functionDialogResize);
128 require(["orion/editor/edit"], function(edit) {
130 parent:document.getElementById('node-input-xml-editor'),
132 contents: $("#node-input-xml").val()
135 url:"functions", // where to get the data from
136 type:"function", // the type of object the library is for
137 editor:that.editor, // the field name the main text body goes to
138 fields:['name','outputs']
140 $("#node-input-name").focus();
141 $("#node-input-validate").click(function(){
142 console.log("validate clicked.");
143 //console.dir(that.editor);
144 //console.log("getText:" + that.editor.getText());
145 var val = that.editor.getText();
148 $("#node-input-show-sli-values").click(function(){
149 console.log("SLIValues clicked.");
150 showValuesBox(that.editor,sliValuesObj);
154 //for click of add comments button
155 $("#node-input-btnComments").click(function(e){
159 oneditsave: function() {
160 $("#node-input-xml").val(this.editor.getText());
161 var resp=validateXML(this.editor.getText());
163 this.status = {fill:"green",shape:"dot",text:"OK"};
165 this.status = {fill:"red",shape:"dot",text:"ERROR"};