diff --git a/lib/Controller/ApiController.php b/lib/Controller/ApiController.php
index 4bf44b1..52acbdc 100644
--- a/lib/Controller/ApiController.php
+++ b/lib/Controller/ApiController.php
@@ -95,7 +95,7 @@ class ApiController extends Controller {
} catch (DoesNotExistException $e) {
//handle silently
- }finally{
+ } finally {
return $optionList;
}
}
@@ -119,6 +119,7 @@ class ApiController extends Controller {
/**
* @NoAdminRequired
+ *
* Read Form-List only with necessary information for Listing.
*/
public function getForms(): Http\JSONResponse {
@@ -150,7 +151,7 @@ class ApiController extends Controller {
}
$result = $form->read();
- $result['questions'] = getQuestions();
+ $result['questions'] = $this->getQuestions($id);
return new Http\JSONResponse($result);
}
@@ -241,7 +242,7 @@ class ApiController extends Controller {
// Delete Submissions(incl. Answers), Questions(incl. Options) and Form.
$this->submissionMapper->deleteByForm($id);
$this->questionMapper->deleteByForm($id);
- $this->formMapper->delete($formToDelete);
+ $this->formMapper->delete($form);
return new Http\JSONResponse($id);
}
@@ -291,10 +292,8 @@ class ApiController extends Controller {
$question = $this->questionMapper->insert($question);
- $response = [
- 'id' => $question->getId(),
- 'order' => $question->getOrder()
- ];
+ $response = $question->read();
+ $response['options'] = [];
return new Http\JSONResponse($response);
}
diff --git a/lib/Migration/Version010200Date20200323141300.php b/lib/Migration/Version010200Date20200323141300.php
index 461b68c..15cca03 100644
--- a/lib/Migration/Version010200Date20200323141300.php
+++ b/lib/Migration/Version010200Date20200323141300.php
@@ -107,6 +107,7 @@ class Version010200Date20200323141300 extends SimpleMigrationStep {
]);
$table->addColumn('expires_timestamp', Type::INTEGER, [
'notnull' => false,
+ 'default' => 0,
'comment' => 'unix-timestamp',
]);
$table->addColumn('is_anonymous', Type::BOOLEAN, [
@@ -140,7 +141,7 @@ class Version010200Date20200323141300 extends SimpleMigrationStep {
]);
$table->addColumn('mandatory', Type::BOOLEAN, [
'notnull' => true,
- 'default' => 1,
+ 'default' => 0,
]);
$table->addColumn('text', Type::STRING, [
'notnull' => true,
diff --git a/package-lock.json b/package-lock.json
index 68590fd..21e96ad 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1415,11 +1415,11 @@
}
},
"@babel/runtime": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.4.tgz",
- "integrity": "sha512-neAp3zt80trRVBI1x0azq6c57aNBqYZH8KhMm3TaB7wEI5Q4A2SHfBHE8w9gOhI/lrqxtEbXZgQIrHP+wvSGwQ==",
+ "version": "7.9.2",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz",
+ "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==",
"requires": {
- "regenerator-runtime": "^0.13.2"
+ "regenerator-runtime": "^0.13.4"
}
},
"@babel/template": {
@@ -1518,13 +1518,6 @@
"requires": {
"@nextcloud/event-bus": "^1.1.3",
"core-js": "^3.6.4"
- },
- "dependencies": {
- "core-js": {
- "version": "3.6.5",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.5.tgz",
- "integrity": "sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA=="
- }
}
},
"@nextcloud/axios": {
@@ -1586,9 +1579,9 @@
}
},
"@nextcloud/event-bus": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-1.1.4.tgz",
- "integrity": "sha512-It27KzmUaSQ7w22nHFwOn8XgeVG0HYYOSNG9gs4UkP5VqcZ16m4ydt3GkMpWcyFec4OUjJc+yf7omRc3pNxsSw==",
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-1.1.3.tgz",
+ "integrity": "sha512-/f3OMh9Tu3bn17sCc1Sb5AaC/fjegP9bjFmlsPDFNcCAHrKKM5B2X+2eUDF2osLirYaBjVqypBmD87zyiE0WjQ==",
"requires": {
"@types/semver": "^6.2.1",
"core-js": "^3.6.2",
@@ -1596,9 +1589,9 @@
},
"dependencies": {
"core-js": {
- "version": "3.6.5",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.5.tgz",
- "integrity": "sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA=="
+ "version": "3.6.4",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz",
+ "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw=="
},
"semver": {
"version": "6.3.0",
@@ -1614,16 +1607,6 @@
"requires": {
"core-js": "^3.6.4",
"node-gettext": "^3.0.0"
- },
- "dependencies": {
- "node-gettext": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-3.0.0.tgz",
- "integrity": "sha512-/VRYibXmVoN6tnSAY2JWhNRhWYJ8Cd844jrZU/DwLVoI4vBI6ceYbd8i42sYZ9uOgDH3S7vslIKOWV/ZrT2YBA==",
- "requires": {
- "lodash.get": "^4.4.2"
- }
- }
}
},
"@nextcloud/moment": {
@@ -1657,16 +1640,13 @@
}
}
},
- "core-js": {
-<<<<<<< HEAD
- "version": "3.6.4",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz",
- "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw=="
-=======
- "version": "3.6.1",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.1.tgz",
- "integrity": "sha512-186WjSik2iTGfDjfdCZAxv2ormxtKgemjC3SI6PL31qOA0j5LhTDVjHChccoc7brwLvpvLPiMyRlcO88C4l1QQ=="
->>>>>>> f89f534... fixup! New question ui
+ "node-gettext": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-2.1.0.tgz",
+ "integrity": "sha512-vsHImHl+Py0vB7M2UXcFEJ5NJ3950gcja45YclBFtYxYeZiqdfQdcu+G9s4L7jpRFSh/J/7VoS3upR4JM1nS+g==",
+ "requires": {
+ "lodash.get": "^4.4.2"
+ }
}
}
},
@@ -2873,14 +2853,14 @@
},
"dependencies": {
"caniuse-lite": {
- "version": "1.0.30001040",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001040.tgz",
- "integrity": "sha512-Ep0tEPeI5wCvmJNrXjE3etgfI+lkl1fTDU6Y3ZH1mhrjkPlVI9W4pcKbMo+BQLpEWKVYYp2EmYaRsqpPC3k7lQ=="
+ "version": "1.0.30001042",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001042.tgz",
+ "integrity": "sha512-igMQ4dlqnf4tWv0xjaaE02op9AJ2oQzXKjWf4EuAHFN694Uo9/EfPVIPJcmn2WkU9RqozCxx5e2KPcVClHDbDw=="
},
"electron-to-chromium": {
- "version": "1.3.403",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.403.tgz",
- "integrity": "sha512-JaoxV4RzdBAZOnsF4dAlZ2ijJW72MbqO5lNfOBHUWiBQl3Rwe+mk2RCUMrRI3rSClLJ8HSNQNqcry12H+0ZjFw=="
+ "version": "1.3.412",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.412.tgz",
+ "integrity": "sha512-4bVdSeJScR8fT7ERveLWbxemY5uXEHVseqMRyORosiKcTUSGtVwBkV8uLjXCqoFLeImA57Z9hbz3TOid01U4Hw=="
}
}
},
@@ -3475,15 +3455,9 @@
"integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40="
},
"core-js": {
-<<<<<<< HEAD
- "version": "3.6.5",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.5.tgz",
- "integrity": "sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA=="
-=======
"version": "3.6.4",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz",
"integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw=="
->>>>>>> f89f534... fixup! New question ui
},
"core-js-compat": {
"version": "3.6.5",
@@ -3658,12 +3632,6 @@
"supports-color": "^6.1.0"
}
},
- "postcss-value-parser": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.3.tgz",
- "integrity": "sha512-N7h4pG+Nnu5BEIzyeaaIYWs0LI5XC40OrRh5L60z0QjFsqGWcHcbkBvpe1WYpcIS9yQ8sOi/vIPt1ejQCrMVrg==",
- "dev": true
- },
"schema-utils": {
"version": "2.6.5",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.5.tgz",
@@ -7835,9 +7803,9 @@
"dev": true
},
"node-gettext": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-2.0.0.tgz",
- "integrity": "sha1-8dwSN83FRvUVk9o0AwS4vrpbhSU=",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-3.0.0.tgz",
+ "integrity": "sha512-/VRYibXmVoN6tnSAY2JWhNRhWYJ8Cd844jrZU/DwLVoI4vBI6ceYbd8i42sYZ9uOgDH3S7vslIKOWV/ZrT2YBA==",
"requires": {
"lodash.get": "^4.4.2"
}
@@ -8824,9 +8792,9 @@
}
},
"postcss-value-parser": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz",
- "integrity": "sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ==",
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.3.tgz",
+ "integrity": "sha512-N7h4pG+Nnu5BEIzyeaaIYWs0LI5XC40OrRh5L60z0QjFsqGWcHcbkBvpe1WYpcIS9yQ8sOi/vIPt1ejQCrMVrg==",
"dev": true
},
"prelude-ls": {
diff --git a/src/Forms.vue b/src/Forms.vue
index e77c025..ceb5b6e 100644
--- a/src/Forms.vue
+++ b/src/Forms.vue
@@ -52,7 +52,7 @@
-
+
@@ -105,9 +105,16 @@ export default {
return this.$route.params.hash
},
- selectedForm() {
- // TODO: replace with form.hash
- return this.forms.find(form => form.form.hash === this.hash)
+ selectedForm: {
+ get() {
+ return this.forms.find(form => form.hash === this.hash)
+ },
+ set(form) {
+ const index = this.forms.findIndex(search => search.hash === this.hash)
+ if (index > -1) {
+ this.$set(this.forms, index, form)
+ }
+ },
},
},
@@ -141,7 +148,7 @@ export default {
const response = await axios.post(generateUrl('/apps/forms/api/v1/form'))
const newForm = response.data
this.forms.push(newForm)
- this.$router.push({ name: 'edit', params: { hash: newForm.form.hash } })
+ this.$router.push({ name: 'edit', params: { hash: newForm.hash } })
} catch (error) {
showError(t('forms', 'Unable to create a new form'))
console.error(error)
diff --git a/src/components/Questions/Question.vue b/src/components/Questions/Question.vue
index dd2fd98..567b534 100644
--- a/src/components/Questions/Question.vue
+++ b/src/components/Questions/Question.vue
@@ -23,25 +23,43 @@
+
-
-
+
+
+
+
+
-