diff --git a/app/controllers/core.server.controller.js b/app/controllers/core.server.controller.js index 6ce80a78..650cfc8a 100755 --- a/app/controllers/core.server.controller.js +++ b/app/controllers/core.server.controller.js @@ -1,8 +1,8 @@ 'use strict'; -var raven = require('raven'); +// var raven = require('raven'); var config = require('../../config/config'); -var client = new raven.Client(config.DSN); +// var client = new raven.Client(config.DSN); /** diff --git a/app/controllers/forms.server.controller.js b/app/controllers/forms.server.controller.js index 16cfe929..30293541 100644 --- a/app/controllers/forms.server.controller.js +++ b/app/controllers/forms.server.controller.js @@ -275,31 +275,32 @@ exports.list = function(req, res) { exports.formByID = function(req, res, next, id) { if (!mongoose.Types.ObjectId.isValid(id)) { - res.status(400).send({ + return res.status(400).send({ message: 'Form is invalid' }); } + else { + Form.findById(id).populate('admin').exec(function(err, form) { + if (err) { + return next(err); + } else if (form === undefined || form === null) { + res.status(400).send({ + message: 'Form not found' + }); + } + else { + // console.log(form.admin); - Form.findById(id).populate('admin').exec(function(err, form) { - if (err) { - return next(err); - } else if (form === undefined || form === null) { - res.status(400).send({ - message: 'Form not found' - }); - } - else { - // console.log(form.admin); + //Remove sensitive information from User object + form.admin.password = undefined; + form.admin.salt = undefined; + form.provider = undefined; - //Remove sensitive information from User object - form.admin.password = undefined; - form.admin.salt = undefined; - form.provider = undefined; - - req.form = form; - next(); - } - }); + req.form = form; + next(); + } + }); + } }; /** diff --git a/app/controllers/users/users.authentication.server.controller.js b/app/controllers/users/users.authentication.server.controller.js index ae16c8cb..45e24676 100755 --- a/app/controllers/users/users.authentication.server.controller.js +++ b/app/controllers/users/users.authentication.server.controller.js @@ -56,20 +56,35 @@ exports.signup = function(req, res) { user.username = user.email; // Then save the temporary user - nev.createTempUser(user, function(newTempUser) { - // new user created - if (newTempUser) { - nev.registerTempUser(newTempUser, function (err) { - if (err) { - return res.status(400).send({ - message: errorHandler.getErrorMessage(err) - }); - } - res.status(200).send('An email has been sent to you. Please check it to verify your account.'); - }); - } else { - return res.status(400).send('Error: Temp user could NOT be created!'); - } + nev.createTempUser(user, function(err, newTempUser) { + + if (err) { + console.log('Error: '); + console.log(err); + res.status(400).send({ + message: errorHandler.getErrorMessage(err) + }); + }else { + console.log('new tmpuser created'); + // new user created + if (newTempUser) { + nev.registerTempUser(newTempUser, function (err) { + if (err) { + console.log('Error: '); + console.log(err); + res.status(400).send({ + message: errorHandler.getErrorMessage(err) + }); + }else { + console.log('new tmpuser registered'); + res.status(200).send('An email has been sent to you. Please check it to verify your account.'); + } + }); + } else { + console.log('Error: Temp user already exists!'); + res.status(400).send('Error: Temp user already exists!'); + } + } }); }; @@ -104,8 +119,8 @@ exports.signin = function(req, res, next) { */ exports.signout = function(req, res) { req.logout(); - res.status(200).send('Successfully logged out'); - // res.redirect('/'); + // res.status(200).send('Successfully logged out'); + res.redirect('/'); }; /** diff --git a/app/models/form.server.model.js b/app/models/form.server.model.js index 50b0151a..406b1986 100644 --- a/app/models/form.server.model.js +++ b/app/models/form.server.model.js @@ -476,4 +476,6 @@ FormSchema.pre('save', function (next) { } }); + mongoose.model('Form', FormSchema); + diff --git a/app/models/logic_jump.server.model.js b/app/models/logic_jump.server.model.js index 8727502a..ac333c15 100644 --- a/app/models/logic_jump.server.model.js +++ b/app/models/logic_jump.server.model.js @@ -56,7 +56,7 @@ BooleanExpressionSchema.methods.evaluate = function(){ } }); - var code = node.compile(); + var code = headNode.compile(); var result = code.eval(expressionScope); this.result = result; @@ -64,7 +64,6 @@ BooleanExpressionSchema.methods.evaluate = function(){ }; mongoose.model('BooleanExpression', BooleanExpressionSchema); - /** * Form Schema */ diff --git a/app/tests/user.server.routes.test.js b/app/tests/user.server.routes.test.js index 779089a5..cb5dbfd0 100644 --- a/app/tests/user.server.routes.test.js +++ b/app/tests/user.server.routes.test.js @@ -152,6 +152,7 @@ // // .expect(200) // // .end(function(FormSaveErr, FormSaveRes) { // // (FormSaveRes.text).should.equal('An email has been sent to you. Please check it to verify your account.'); + // // userSession.post('/auth/signin') // // .send(credentials) diff --git a/docs/testing_feedback_Sep12.md b/docs/testing_feedback_Sep12.md new file mode 100644 index 00000000..f001d0ff --- /dev/null +++ b/docs/testing_feedback_Sep12.md @@ -0,0 +1,31 @@ +##Tester 1: Justin Crosby + Browser: Chrome + Resolution: 1920x1080 + OS: Windows 10 + + +Landing Page: + Horizontal Scroll Bar Bug +create new form view (in listForms): + name field input is outside the red box + languages aren't capitalized + name field should be right next to label to be consistent + +Admin Form View + it says drag and drop fields but there's no drag and drop, have to click + DropdownList Rendering Problems (see justin_testing2.jpg) + + +##Tester2: Evan Moore + Browser: FB Messenger Browser (Webkit) + Phone: iPhone 5 + + Well first thing I see is that some of the fields are compressed kinda weird on my iPhone (see evan_testing1.jpg) + + And the settings button at the top right is a little hard to make out any of the detail, but that's a pretty minor fix + + When I try to change the title of one of the fields, it bugs out quite a bit too + + Like it seems to be trying to update the info before I've finished typing + + diff --git a/package.json b/package.json index 0aebcc0d..cbe567cc 100644 --- a/package.json +++ b/package.json @@ -62,6 +62,7 @@ "lodash": "~2.4.1", "mailosaur": "^1.0.1", "main-bower-files": "~2.8.2", + "math": "0.0.3", "method-override": "~2.3.0", "mocha": ">=1.20.0", "mongoose": "~3.8.8", diff --git a/public/modules/core/css/core.css b/public/modules/core/css/core.css index bd98ab4a..f45cfa81 100755 --- a/public/modules/core/css/core.css +++ b/public/modules/core/css/core.css @@ -1,3 +1,7 @@ +body { + overflow-x: hidden; +} + /*Navbar Custom CSS*/ .navbar-inverse { background-color:#fafafa; diff --git a/public/modules/forms/config/forms.client.routes.js b/public/modules/forms/config/forms.client.routes.js index 87f062bf..a04f4c41 100644 --- a/public/modules/forms/config/forms.client.routes.js +++ b/public/modules/forms/config/forms.client.routes.js @@ -13,19 +13,20 @@ angular.module('forms').config(['$stateProvider', permissions: [ 'editForm' ] } }). + state('submitForm', { + url: '/forms/:formId', + templateUrl: 'modules/forms/views/submit-form.client.view.html', + data: { + hideNav: true, + }, + }). state('viewForm', { url: '/forms/:formId/admin', templateUrl: 'modules/forms/views/admin-form.client.view.html', data: { permissions: [ 'editForm' ] } - }). - state('viewPublicForm', { - url: '/forms/:formId', - templateUrl: 'modules/forms/views/view-public-form.client.view.html', - data: { - hideNav: true, - }, - }); + }); + } ]); \ No newline at end of file diff --git a/public/modules/forms/controllers/admin-form.client.controller.js b/public/modules/forms/controllers/admin-form.client.controller.js index 39fbed6c..b3f85146 100644 --- a/public/modules/forms/controllers/admin-form.client.controller.js +++ b/public/modules/forms/controllers/admin-form.client.controller.js @@ -7,15 +7,23 @@ angular.module('forms').controller('AdminFormController', ['$rootScope', '$scope $scope = $rootScope; $scope.myform = CurrentForm.getForm(); + $scope.myform._id = $stateParams.formId; $rootScope.saveInProgress = false; // Find a specific Form $scope.findOne = function(){ - $scope.myform = Forms.get({ + Forms.get({ formId: $stateParams.formId + }, function(form){ + CurrentForm.setForm(form); + $scope.myform = form; + $scope.myform._id = $stateParams.formId; + }, function(err){ + console.error('Could not fetch form'); + console.error(err); }); - CurrentForm.setForm($scope.myform); }; + $scope.setForm = function(form){ $scope.myform = form; }; diff --git a/public/modules/forms/directives/edit-submissions-form.client.directive.js b/public/modules/forms/directives/edit-submissions-form.client.directive.js index 3fee0f57..fa067843 100644 --- a/public/modules/forms/directives/edit-submissions-form.client.directive.js +++ b/public/modules/forms/directives/edit-submissions-form.client.directive.js @@ -15,7 +15,6 @@ angular.module('forms').directive('editSubmissionsFormDirective', ['$rootScope', rows: [] }; - /* ** Table Functions */ @@ -46,8 +45,6 @@ angular.module('forms').directive('editSubmissionsFormDirective', ['$rootScope', $http.get('/forms/'+$scope.myform._id+'/submissions') .success(function(data, status, headers){ - console.log(data[0].form_fields); - var _tmpSubFormFields, defaultFormFields = _.cloneDeep($scope.myform.form_fields); @@ -68,7 +65,9 @@ angular.module('forms').directive('editSubmissionsFormDirective', ['$rootScope', .error(function(err){ console.error('Could not fetch form submissions.\nError: '+err); }); - }; + + }; + //Delete selected submissions of Form $scope.deleteSelectedSubmissions = function(){ diff --git a/public/modules/forms/directives/entry_page.client.directive.js b/public/modules/forms/directives/entry_page.client.directive.js new file mode 100644 index 00000000..fbbf80ce --- /dev/null +++ b/public/modules/forms/directives/entry_page.client.directive.js @@ -0,0 +1,47 @@ +// 'use strict'; + +// angular.module('forms').directive('entryPage', ['$templateCache', '$http', '$compile', '$rootScope', +// function($templateCache, $http, $compile, $rootScope) { +// var getTemplateUrl = function(type) { + +// var templateUrl = 'modules/forms/views/directiveViews/entryPage/'; +// var supported_pages = [ +// 'welcome', +// 'thankyou' +// ]; +// if (__indexOf.call(supported_pages, type) >= 0) { +// templateUrl += type + '.html'; +// } +// var template = $templateCache.get(templateUrl); +// return template; +// }; +// return { +// restrict: 'E', +// template: '
{{myform.startPage.introParagraph}}
+{{pageData.introParagraph}}
+