From 941142a603ec7e45d8319a226ca5d26dc9cd627b Mon Sep 17 00:00:00 2001
From: Jonas Blatt <jonasblatt@uni-koblenz.de>
Date: Tue, 15 Oct 2019 00:51:32 +0200
Subject: [PATCH] Add empty dmn table as template

---
 .../META-INF/resources/css/img/emptyFile.png    | Bin 0 -> 5347 bytes
 .../META-INF/resources/css/stylesheets.css      |   9 +++++++++
 .../META-INF/resources/dmn/emptyDMN.dmn         |  16 ++++++++++++++++
 .../resources/META-INF/resources/index.html     |   5 +++++
 .../META-INF/resources/js/dmnDownload.js        |   4 ++--
 .../META-INF/resources/js/dmnUpload.js          |  12 ++++++++++++
 .../META-INF/resources/js/dmnVerifier.js        |   2 +-
 7 files changed, 45 insertions(+), 3 deletions(-)
 create mode 100644 dmnverifierfrontend/src/main/resources/META-INF/resources/css/img/emptyFile.png
 create mode 100644 dmnverifierfrontend/src/main/resources/META-INF/resources/dmn/emptyDMN.dmn

diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/css/img/emptyFile.png b/dmnverifierfrontend/src/main/resources/META-INF/resources/css/img/emptyFile.png
new file mode 100644
index 0000000000000000000000000000000000000000..95019a7052813523866796d1a3dee5f66cac2a1d
GIT binary patch
literal 5347
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
HQ$iB}0+6dG

literal 0
HcmV?d00001

diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css b/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css
index b1194f10..5f71bf10 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/css/stylesheets.css
@@ -102,6 +102,15 @@ select:focus::-ms-value {
   width: 50px;
 }
 
+.dmn-empty-file {
+  flex-grow: 1;
+}
+
+.dmn-empty-file > label {
+  background-image: url("img/emptyFile.png");
+  width: 50px;
+}
+
 .dmn-download {
   flex-grow: 1;
 }
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/dmn/emptyDMN.dmn b/dmnverifierfrontend/src/main/resources/META-INF/resources/dmn/emptyDMN.dmn
new file mode 100644
index 00000000..73f512d1
--- /dev/null
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/dmn/emptyDMN.dmn
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://www.omg.org/spec/DMN/20151101/dmn.xsd" xmlns:biodi="http://bpmn.io/schema/dmn/biodi/1.0" id="Definitions_1kjh9a2" name="DRD" namespace="http://camunda.org/schema/1.0/dmn">
+  <decision id="Decision_13nychf" name="Decision 1">
+    <extensionElements>
+      <biodi:bounds x="120" y="145" width="180" height="80" />
+    </extensionElements>
+    <decisionTable id="decisionTable_1">
+      <input id="input_1">
+        <inputExpression id="inputExpression_1" typeRef="string">
+          <text></text>
+        </inputExpression>
+      </input>
+      <output id="output_1" typeRef="string" />
+    </decisionTable>
+  </decision>
+</definitions>
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html b/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html
index 9d1adcc7..3044c807 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/index.html
@@ -25,6 +25,11 @@
       </label>
       <input id="dmn-file-upload" type="file"/>
     </div>
+    <div class="dmn-top-item dmn-empty-file">
+      <label class="clickable" for="dmn-file-empty">
+      </label>
+      <input id="dmn-file-empty" type="button"/>
+    </div>
     <div class="dmn-top-item dmn-download">
       <label class="clickable" for="dmn-file-download">
       </label>
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnDownload.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnDownload.js
index 14740758..7b627084 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnDownload.js
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnDownload.js
@@ -1,5 +1,5 @@
-$('#dmn-file-download').on('click', function () {
-  exportDiagram();
+document.addEventListener("DOMContentLoaded", function () {
+  $('#dmn-file-download').on('click', exportDiagram());
 });
 
 function download(filename, dmnXml) {
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnUpload.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnUpload.js
index 9cdc772b..7de06eb1 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnUpload.js
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnUpload.js
@@ -1,5 +1,6 @@
 document.addEventListener("DOMContentLoaded", function () {
   $('#dmn-file-upload').on('change', loadDmnFromFile);
+  $('#dmn-file-empty').on('click', loadEmptyFile);
 });
 
 function loadDmnFromFile(evt) {
@@ -13,4 +14,15 @@ function loadDmnFromFile(evt) {
   fileReader.readAsText(dmnFile, "UTF-8");
 }
 
+function loadEmptyFile() {
+  $.ajax({
+    url: 'dmn/emptyDMN.dmn',
+    type: 'GET',
+    contentType: 'text/xml',
+    success: function (data) {
+      openDiagram(data);
+    }
+  });
+}
+
 
diff --git a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js
index 18e0afdb..25d9d6fd 100644
--- a/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js
+++ b/dmnverifierfrontend/src/main/resources/META-INF/resources/js/dmnVerifier.js
@@ -1,4 +1,4 @@
-let rootUrl = 'http://localhost:8080/';
+let rootUrl = 'http://192.168.2.109:8080/';
 let dmnApi = rootUrl + 'api/dmn/';
 
 /**
-- 
GitLab