From 77c1b150d9c1191bdabed155c2708b899a7051c6 Mon Sep 17 00:00:00 2001 From: Victor Woeltjen Date: Wed, 26 Nov 2014 12:50:51 -0800 Subject: [PATCH] [Forms] Add more form controls Add remaining platform form controls; amend mct-form and mct-control directives to better communicate state. Begin working on problem of communicating validation back out of the form. WTD-530. --- platform/forms/bundle.json | 12 ++++++++ .../res/templates/controls/datetime.html | 28 +++++++++++++++++++ .../forms/res/templates/controls/select.html | 7 +++++ .../res/templates/controls/textfield.html | 7 +++++ platform/forms/res/templates/form.html | 14 ++++++---- platform/forms/src/MCTControl.js | 2 -- platform/forms/src/MCTForm.js | 15 +++++++++- 7 files changed, 77 insertions(+), 8 deletions(-) create mode 100644 platform/forms/res/templates/controls/datetime.html create mode 100644 platform/forms/res/templates/controls/select.html create mode 100644 platform/forms/res/templates/controls/textfield.html diff --git a/platform/forms/bundle.json b/platform/forms/bundle.json index 782f2e4a2e..cfdbea6411 100644 --- a/platform/forms/bundle.json +++ b/platform/forms/bundle.json @@ -17,6 +17,18 @@ { "key": "checkbox", "templateUrl": "templates/controls/checkbox.html" + }, + { + "key": "datetime", + "templateUrl": "templates/controls/datetime.html" + }, + { + "key": "select", + "templateUrl": "templates/controls/select.html" + }, + { + "key": "textfield", + "templateUrl": "templates/controls/textfield.html" } ], "templates": [ diff --git a/platform/forms/res/templates/controls/datetime.html b/platform/forms/res/templates/controls/datetime.html new file mode 100644 index 0000000000..4978c76ecc --- /dev/null +++ b/platform/forms/res/templates/controls/datetime.html @@ -0,0 +1,28 @@ +
+
+ Date + Hour + Min + Sec + Timezone +
+ +
+ + + + + + + + + + + + + + UTC + +
+
+ \ No newline at end of file diff --git a/platform/forms/res/templates/controls/select.html b/platform/forms/res/templates/controls/select.html new file mode 100644 index 0000000000..01e32892e0 --- /dev/null +++ b/platform/forms/res/templates/controls/select.html @@ -0,0 +1,7 @@ + diff --git a/platform/forms/res/templates/controls/textfield.html b/platform/forms/res/templates/controls/textfield.html new file mode 100644 index 0000000000..420a7fbb7c --- /dev/null +++ b/platform/forms/res/templates/controls/textfield.html @@ -0,0 +1,7 @@ + + + + + diff --git a/platform/forms/res/templates/form.html b/platform/forms/res/templates/form.html index 9b2b2c5d64..c9b2148279 100644 --- a/platform/forms/res/templates/form.html +++ b/platform/forms/res/templates/form.html @@ -1,4 +1,4 @@ -
+
@@ -10,13 +10,18 @@ class="form-row validates" ng-class="{ required: row.required }"> -
{{row.name}}
+
+ {{row.name}} + + i + +
-
+
> @@ -26,7 +31,6 @@ diff --git a/platform/forms/src/MCTControl.js b/platform/forms/src/MCTControl.js index cbac1aedce..e564be239d 100644 --- a/platform/forms/src/MCTControl.js +++ b/platform/forms/src/MCTControl.js @@ -22,8 +22,6 @@ define( $scope.$watch("key", function (key) { // Pass the template URL to ng-include via scope. $scope.inclusion = controlMap[key]; - console.log(key); - console.log($scope.inclusion); }); } diff --git a/platform/forms/src/MCTForm.js b/platform/forms/src/MCTForm.js index f475aed5e8..5a342bd2fc 100644 --- a/platform/forms/src/MCTForm.js +++ b/platform/forms/src/MCTForm.js @@ -19,10 +19,23 @@ define( "templates/form.html" ].join("/"); + function controller($scope) { + $scope.$watch("mctForm", function (mctForm) { + if ($scope.name) { + $scope.$parent.mctForm = mctForm; + } + }); + } + return { restrict: "E", templateUrl: templatePath, - scope: { structure: "=", ngModel: "=ngModel" } + link: controller, + scope: { + structure: "=", + ngModel: "=", + name: "@" + } }; }