the environment page in frontend of testing-scheduler
[bottlenecks.git] / testing-scheduler / ui / src / components / env_component / api_param.vue
diff --git a/testing-scheduler/ui/src/components/env_component/api_param.vue b/testing-scheduler/ui/src/components/env_component/api_param.vue
new file mode 100644 (file)
index 0000000..300b6a4
--- /dev/null
@@ -0,0 +1,63 @@
+<template>\r
+    <div class="row">\r
+         <div class="form-group">\r
+            <label class="col-lg-3 control-label">Params</label>\r
+            <div class="col-lg-2">\r
+                <button type="button" class="btn btn-primary btn-sm" v-on:click="addNewParam()">New</button>\r
+            </div>\r
+         </div>\r
+         <div class="form-group">\r
+            <div class="col-lg-offset-2 col-lg-8">\r
+                <div class="table-responsive">\r
+                 <table class="table table-bordered text-center">\r
+                    <thead>\r
+                        <tr>\r
+                            <th>name</th>\r
+                            <th class="text-center">description</th>\r
+                            <th class="text-center">operation</th>\r
+                        </tr>\r
+                    </thead>\r
+                    <tbody>\r
+                        <tr v-for="param in params">\r
+                            <td><input type="text" class="form-control text-center" style="border: 0px" v-model="param['name']"></td>\r
+                            <td><input type="text" class="form-control text-center" style="border: 0px" v-bind:title="param['description']" v-model="param['description']"></td>\r
+                            <td>\r
+                                <button type="button" class="btn btn-white" v-on:click="deleteParam(param['name'])">\r
+                                    <i class="fa fa-trash"></i>\r
+                                </button>\r
+                            </td>\r
+                        </tr>\r
+                    </tbody>\r
+                 </table>\r
+                </div>\r
+             </div>\r
+          </div>\r
+     </div>\r
+</template>\r
+<script>\r
+export default {\r
+    props: ["params"],\r
+    data: function() {\r
+        return {\r
+            paramArr: this.params\r
+        }\r
+    },\r
+    watch: {\r
+        paramArr: function(){\r
+            this.$emit("params", this.paramArr);\r
+        }\r
+    },\r
+    methods: {\r
+        addNewParam: function() {\r
+            this.params.push({'name': '', 'description': ''});\r
+        },\r
+        deleteParam: function(paramName) {\r
+            for(var i = 0;i < this.params.length; i++) {\r
+                if(paramName == this.params[i]['name']) {\r
+                    this.params.splice(i, 1);\r
+                }\r
+            }\r
+        }\r
+    }\r
+}\r
+</script>
\ No newline at end of file