fixed editform field title bug

This commit is contained in:
David Baldwynn 2016-04-22 15:36:34 -04:00
parent 2955a9034b
commit a5776c6dc8
11 changed files with 80 additions and 63 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -22,7 +22,8 @@ angular.module('forms').config(['$stateProvider',
return Forms.get({formId: $stateParams.formId}).$promise;
},
},
controller: 'SubmitFormController'
controller: 'SubmitFormController',
controllerAs: 'ctrl'
}).state('viewForm', {
url: '/forms/:formId/admin',
templateUrl: 'modules/forms/views/admin-form.client.view.html',

View file

@ -21,6 +21,11 @@
bottom: 0;
}
.dropzone h4.panel-title {
height: 17px;
overflow: hidden;
}
.container.admin-form {
margin-top: 70px;
}

View file

@ -58,7 +58,9 @@ angular.module('forms').directive('fieldDirective', ['$http', '$compile', '$root
defaultDate: 0,
};
}
var fieldType = scope.field.fieldType;
if(scope.field.fieldType === 'number' || scope.field.fieldType === 'textfield' || scope.field.fieldType === 'email' || scope.field.fieldType === 'link'){
switch(scope.field.fieldType){
case 'textfield':
@ -76,9 +78,9 @@ angular.module('forms').directive('fieldDirective', ['$http', '$compile', '$root
scope.field.placeholder = 'http://example.com';
break;
}
scope.field.fieldType = 'textfield';
fieldType = 'textfield';
}
var template = getTemplateUrl(scope.field.fieldType);
var template = getTemplateUrl(fieldType);
element.html(template).show();
$compile(element.contents())(scope);
},

View file

@ -11,7 +11,7 @@ angular.module('forms').directive('submitFormDirective', ['$http', 'TimeCounter'
controller: function($document, $window, $scope){
$scope.authentication = $rootScope.authentication;
$scope.noscroll = false;
$scope.forms = {};
$scope.form_fields_count = $scope.myform.visible_form_fields.filter(function(field){
if(field.fieldType === 'statement' || field.fieldType === 'rating'){
return false;
@ -43,7 +43,11 @@ angular.module('forms').directive('submitFormDirective', ['$http', 'TimeCounter'
var elemBox = document.getElementsByClassName('activeField')[0].getBoundingClientRect();
$scope.fieldTop = elemBox.top;
$scope.fieldBottom = elemBox.bottom;
console.log($scope.forms.myForm);
if(!$scope.noscroll){
//Focus on submit button
if( $scope.selected.index === $scope.myform.form_fields.length-1 && $scope.fieldBottom < 200){
@ -67,8 +71,8 @@ angular.module('forms').directive('submitFormDirective', ['$http', 'TimeCounter'
var field_id = $scope.myform.form_fields[field_index]._id;
$scope.setActiveField(field_id, field_index, false);
}
console.log('$scope.selected.index: '+$scope.selected.index);
console.log('scroll pos: '+$scope.scrollPos+' fieldTop: '+$scope.fieldTop+' fieldBottom: '+$scope.fieldBottom);
//console.log('$scope.selected.index: '+$scope.selected.index);
//console.log('scroll pos: '+$scope.scrollPos+' fieldTop: '+$scope.fieldTop+' fieldBottom: '+$scope.fieldBottom);
$scope.$apply();
}
};

View file

@ -10,7 +10,7 @@
<div class="col-xs-12 field-input">
<input ng-style="{'color': design.colors.answerColor, 'border-color': design.colors.answerColor}"
ng-focus="setActiveField(field._id, index, true)"
name="{{field._id}}"
name="{{field.fieldType}}{{index}}"
type="{{field.input_type}}"
placeholder="{{field.placeholder}}"
ng-class="{ 'no-border': !!field.fieldValue }"
@ -24,7 +24,7 @@
on-enter-key="nextField()">
</div>
<div class="col-xs-12">
<div ng-show="myForm[{{field._id}}].$invalid" class="alert alert-danger" role="alert">
<div ng-show="forms.myForm.{{field.fieldType}}{{index}}.$invalid" class="alert alert-danger" role="alert">
<span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span>
<span class="sr-only">Error:</span>
Enter a valid email address
@ -34,7 +34,7 @@
<div class="col-xs-12 row">
<div class="btn btn-lg btn-default row-fluid"
style="padding: 4px; margin-top:8px; background: rgba(255,255,255,0.5)">
<button ng-disabled="!field.fieldValue || myForm.{{field._id}}.$invalid"
<button ng-disabled="!field.fieldValue || forms.myForm.{{field.fieldType}}{{$index}}.$invalid"
ng-style="{'background-color':design.colors.buttonColor, 'color':design.colors.buttonTextColor}"
ng-click="$root.nextField()"
class="btn col-sm-5 col-xs-5">

View file

@ -165,16 +165,16 @@
<div class="col-sm-12 col-md-8 dropzoneContainer">
<accordion close-others="accordion.oneAtATime" ui-sortable="dropzone" ng-model="myform.form_fields" class="dropzone">
<accordion-group data-ng-repeat="field in myform.form_fields track by field._id" is-open="accordion[$index].isOpen" on-finish-render="editFormFields" ng-if="!field.deletePreserved">
<accordion-group data-ng-repeat="field in myform.form_fields track by $index" is-open="accordion[$index].isOpen" on-finish-render="editFormFields" ng-if="!field.deletePreserved">
<accordion-heading>
<div class="handle">
<span class="pull-left" ng-switch="field.fieldType">
<span class="col-xs-1" ng-switch="field.fieldType">
<field-icon-directive type-name="{{field.fieldType}}"></field-icon-directive>
</span>
<span style="padding-left:1.2em;">
<span class="col-xs-10">
{{field.title}}
<span ng-show="field.required">*</span>
</span>
@ -289,7 +289,7 @@
<div class="col-md-1 hidden-xs hidden-sm" style="padding:0 5px;" >
<div class="panel-group tool-panel text-center">
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by field._id" ng-if="!field.deletePreserved">
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by $index" ng-if="!field.deletePreserved">
<div class="panel-heading" style="padding: 10px 10px; height: 37px;" ng-click="deleteField($index)">
<span class="text-center">
<a href="" class="fa fa-trash-o"></a>
@ -300,7 +300,7 @@
</div>
<div class="col-md-1 hidden-xs hidden-sm" style="padding:0 5px;">
<div class="panel-group tool-panel text-center">
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by field._id" ng-if="!field.deletePreserved">
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by $index" ng-if="!field.deletePreserved">
<div class="panel-heading" style="padding: 10px 10px; height: 37px;" ng-click="duplicateField($index)">
<span class="text-center">
<a href="" class="fa fa-files-o"></a>
@ -312,7 +312,7 @@
<div class="col-md-2 hidden-xs hidden-sm" style="padding:0 5px;" ng-if="myform.plugins.oscarhost.baseUrl">
<div class="panel-group text-center">
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by field._id" ng-if="!field.deletePreserved" style="border: none;">
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by $index" ng-if="!field.deletePreserved" style="border: none;">
<select ng-model="myform.plugins.oscarhost.settings.fieldMap[field._id]" style="height:39.2px">
<option value="">N/A</option>

View file

@ -42,8 +42,7 @@ ng-style="{'color':button.color}">
<div class="form-fields" ng-show="!myform.submitted && !myform.startPage.showStart"
ng-style="{ 'border-color': myform.design.colors.buttonTextColor }">
<div class="row">
<form name="myForm"
du-scroll-container
<form name="forms.myForm"
novalidate
class="submission-form col-sm-12 col-md-offset-1 col-md-10">
<div ng-repeat="field in myform.form_fields"

File diff suppressed because one or more lines are too long