fixed duplicateField() 'ng-repeat dupes' error
This commit is contained in:
parent
e5386c41ee
commit
763bb472ad
|
@ -215,6 +215,15 @@ exports.update = function(req, res) {
|
||||||
//Unless we have 'admin' priviledges, updating form admin is disabled
|
//Unless we have 'admin' priviledges, updating form admin is disabled
|
||||||
if(req.user.roles.indexOf('admin') === -1) delete req.body.form.admin;
|
if(req.user.roles.indexOf('admin') === -1) delete req.body.form.admin;
|
||||||
|
|
||||||
|
//Do this so we can create duplicate fields
|
||||||
|
var checkForValidId = new RegExp("^[0-9a-fA-F]{24}$");
|
||||||
|
for(var i=0; i<req.body.form.form_fields.length; i++){
|
||||||
|
var field = req.body.form.form_fields[i];
|
||||||
|
if(!checkForValidId.exec(field._id+'')){
|
||||||
|
delete field._id;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
form = _.extend(form, req.body.form);
|
form = _.extend(form, req.body.form);
|
||||||
|
|
||||||
form.save(function(err, form) {
|
form.save(function(err, form) {
|
||||||
|
|
|
@ -8,6 +8,6 @@ Maybe password hint would be nice, like if you needed a capital letter or number
|
||||||
I'm on iOS mobile and the grey title is too big compared to everything else
|
I'm on iOS mobile and the grey title is too big compared to everything else
|
||||||
Home page is not centre aligned
|
Home page is not centre aligned
|
||||||
I would use a different background image.. Shows up strange on small screen, thought it was palm trees at first
|
I would use a different background image.. Shows up strange on small screen, thought it was palm trees at first
|
||||||
Cute logo smile emoticon
|
Cute logo :)
|
||||||
Also in the "sign in" forgot password doesn't do anything
|
Also in the "sign in" forgot password doesn't do anything
|
||||||
I haven't gotten the confirmation email yet
|
I haven't gotten the confirmation email yet
|
|
@ -110,9 +110,8 @@ angular.module('forms').controller('AdminFormController', ['$rootScope', '$scope
|
||||||
continueUpdate = !$rootScope.saveInProgress;
|
continueUpdate = !$rootScope.saveInProgress;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Update form if we **are not currently updating** or if **shouldUpdateNow flag is set**
|
//Update form **if we are not currently updating** or if **shouldUpdateNow flag is set**
|
||||||
if(continueUpdate){
|
if(continueUpdate){
|
||||||
// console.log('begin updating form');
|
|
||||||
var err = null;
|
var err = null;
|
||||||
|
|
||||||
if(!updateImmediately){ $rootScope.saveInProgress = true; }
|
if(!updateImmediately){ $rootScope.saveInProgress = true; }
|
||||||
|
|
|
@ -110,7 +110,8 @@ angular.module('forms').directive('editFormDirective', ['$rootScope', 'FormField
|
||||||
};
|
};
|
||||||
$scope.duplicateField = function (field_index){
|
$scope.duplicateField = function (field_index){
|
||||||
var currField = _.cloneDeep($scope.myform.form_fields[field_index]);
|
var currField = _.cloneDeep($scope.myform.form_fields[field_index]);
|
||||||
currField._id = '';
|
currField._id = 'cloned'+_.uniqueId();
|
||||||
|
currField.title += ' copy';
|
||||||
|
|
||||||
//Insert field at selected index
|
//Insert field at selected index
|
||||||
$scope.myform.form_fields.splice(field_index+1, 0, currField);
|
$scope.myform.form_fields.splice(field_index+1, 0, currField);
|
||||||
|
|
|
@ -157,7 +157,7 @@
|
||||||
<div class="col-sm-12 col-md-8 dropzoneContainer">
|
<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 close-others="accordion.oneAtATime" ui-sortable="dropzone" ng-model="myform.form_fields" class="dropzone">
|
||||||
|
|
||||||
<accordion-group data-ng-repeat="field in myform.form_fields" 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 field._id" is-open="accordion[$index].isOpen" on-finish-render="editFormFields" ng-if="!field.deletePreserved">
|
||||||
|
|
||||||
<accordion-heading>
|
<accordion-heading>
|
||||||
|
|
||||||
|
@ -281,7 +281,7 @@
|
||||||
|
|
||||||
<div class="col-md-1 hidden-xs hidden-sm" style="padding:0 5px;" >
|
<div class="col-md-1 hidden-xs hidden-sm" style="padding:0 5px;" >
|
||||||
<div class="panel-group tool-panel text-center">
|
<div class="panel-group tool-panel text-center">
|
||||||
<div class="panel panel-default" ng-repeat="field in myform.form_fields" ng-if="!field.deletePreserved">
|
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by field._id" ng-if="!field.deletePreserved">
|
||||||
<div class="panel-heading" style="padding: 10px 10px; height: 37px;" ng-click="deleteField($index)">
|
<div class="panel-heading" style="padding: 10px 10px; height: 37px;" ng-click="deleteField($index)">
|
||||||
<span class="text-center">
|
<span class="text-center">
|
||||||
<a href="" class="fa fa-trash-o"></a>
|
<a href="" class="fa fa-trash-o"></a>
|
||||||
|
@ -292,7 +292,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-1 hidden-xs hidden-sm" style="padding:0 5px;">
|
<div class="col-md-1 hidden-xs hidden-sm" style="padding:0 5px;">
|
||||||
<div class="panel-group tool-panel text-center">
|
<div class="panel-group tool-panel text-center">
|
||||||
<div class="panel panel-default" ng-repeat="field in myform.form_fields" ng-if="!field.deletePreserved">
|
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by field._id" ng-if="!field.deletePreserved">
|
||||||
<div class="panel-heading" style="padding: 10px 10px; height: 37px;" ng-click="duplicateField($index)">
|
<div class="panel-heading" style="padding: 10px 10px; height: 37px;" ng-click="duplicateField($index)">
|
||||||
<span class="text-center">
|
<span class="text-center">
|
||||||
<a href="" class="fa fa-files-o"></a>
|
<a href="" class="fa fa-files-o"></a>
|
||||||
|
@ -304,7 +304,7 @@
|
||||||
|
|
||||||
<div class="col-md-2 hidden-xs hidden-sm" style="padding:0 5px;" ng-if="myform.plugins.oscarhost.baseUrl">
|
<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-group text-center">
|
||||||
<div class="panel panel-default" ng-repeat="field in myform.form_fields" ng-if="!field.deletePreserved" style="border: none;">
|
<div class="panel panel-default" ng-repeat="field in myform.form_fields track by field._id" ng-if="!field.deletePreserved" style="border: none;">
|
||||||
|
|
||||||
<select ng-model="myform.plugins.oscarhost.settings.fieldMap[field._id]" style="height:39.2px">
|
<select ng-model="myform.plugins.oscarhost.settings.fieldMap[field._id]" style="height:39.2px">
|
||||||
<option value="">N/A</option>
|
<option value="">N/A</option>
|
||||||
|
|
Loading…
Reference in a new issue