diff --git a/api/models/Run.js b/api/models/Run.js index 6863afc..2574147 100644 --- a/api/models/Run.js +++ b/api/models/Run.js @@ -17,7 +17,7 @@ module.exports = { type: 'email', required: true }, - groupEmails: { + invitees: { type: 'array' }, menuUrl: { diff --git a/assets/linker/js/app.coffee b/assets/linker/js/app.coffee index 849a15b..b30fae7 100644 --- a/assets/linker/js/app.coffee +++ b/assets/linker/js/app.coffee @@ -1,6 +1,7 @@ lunchApp = angular.module 'lunchApp', [ 'ngRoute', - 'lunchControllers' + 'lunchControllers', + 'lunchServices' ] lunchApp.config ['$routeProvider', @@ -9,7 +10,7 @@ lunchApp.config ['$routeProvider', .when '/', templateUrl: 'templates/home.html', controller: 'HomeCtrl' - .when '/runs', + .when '/runs', templateUrl: 'templates/runs.html', controller: 'RunsCtrl' ] diff --git a/assets/linker/js/controllers.coffee b/assets/linker/js/controllers.coffee index e95bc92..fa5f5c6 100644 --- a/assets/linker/js/controllers.coffee +++ b/assets/linker/js/controllers.coffee @@ -4,10 +4,16 @@ lunchControllers.controller 'HomeCtrl', ['$scope', ($scope) -> ] lunchControllers.controller 'CreateRunCtrl', ['$scope', '$http', 'socket', ($scope, $http, socket) -> - $scope.stuffs = [{name: 'my name'}] + $scope.run = + invitees: [{email: ''}] + + $scope.addInvitee = () -> + $scope.run.invitees.push { email: '' } + $scope.create = (run) -> - socket.post '/run', run, (response) -> - + data = angular.copy run + socket.post '/run', data, (response) -> + return ] lunchControllers.controller 'RunsCtrl', ['$scope', '$http', ($scope, $http) -> diff --git a/assets/linker/js/services/socket.coffee b/assets/linker/js/services/socket.coffee index cbad1bf..0380df8 100644 --- a/assets/linker/js/services/socket.coffee +++ b/assets/linker/js/services/socket.coffee @@ -1,8 +1,10 @@ -socketModule = angular.module 'socketModule', [] - socketModule.factory 'socket', ()-> -s = window.io.connect() - s.on 'connect', ()-> - s.on 'message', (message)-> - console.log 'New comet message received :: ', message +lunchServices = angular.module 'lunchServices', [] - return socket +lunchServices.factory 'socket', () -> + s = window.io.connect() + s.on 'connect', () -> + s.on 'message', (message) -> + console.log 'New comet message received :: ' + console.log message + + return s diff --git a/assets/templates/create-run.jade b/assets/templates/create-run.jade new file mode 100644 index 0000000..6e979fb --- /dev/null +++ b/assets/templates/create-run.jade @@ -0,0 +1,22 @@ +div(ng-controller='CreateRunCtrl') + h2 Create a new run yo + form(name='form',novalidate,role='form') + div.form-group + label(for='creatorName') Your name + input#creatorName.form-control(type='text',ng-model='run.creatorName',required) + div.form-group + label(for='creatorEmail') Your email + input#creatorEmail.form-control(type='email',ng-model='run.creatorEmail',required) + div.form-group + label(for='groupEmails') Group emails + span(ng-repeat='i in run.invitees') + input#groupEmail.form-control(ng-model='i.email',required) + button.btn.btn-default(ng-click='addInvitee()') Add + div.form-group + label(for='restaurant') Restaurant + input#restaurant.form-control(type='text',ng-model='run.restaurant') + div.form-group + label(for='menuUrl') Menu URL + input#menuUrl.form-control(type='url',ng-model='run.menuUrl') + + button.btn.btn-primary(ng-click="create(run)",ng-disabled="form.$invalid") Create diff --git a/assets/templates/home.jade b/assets/templates/home.jade index 28b3ff8..0c9bccf 100644 --- a/assets/templates/home.jade +++ b/assets/templates/home.jade @@ -1,22 +1,3 @@ .row .col-xs-12.col-sm-12.col-md-12.col-lg-12 - div(ng-controller='CreateRunCtrl') - h2 Create a new run - form(name='form',novalidate,role='form') - div.form-group - label(for='creatorName') Your name - input#creatorName.form-control(type='text',ng-model='run.creatorName',required) - div.form-group - label(for='creatorEmail') Your email - input#creatorEmail.form-control(type='email',ng-model='run.creatorEmail',required) - div.form-group - label(for='groupEmails') Group emails - textarea#groupEmails.form-control(ng-model='run.groupEmails',required) - div.form-group - label(for='restaurant') Restaurant - input#restaurant.form-control(type='text',ng-model='run.restaurant') - div.form-group - label(for='menuUrl') Menu URL - input#menuUrl.form-control(type='url',ng-model='run.menuUrl') - - button.btn.btn-primary(ng-click="create(run)",ng-disabled="form.$invalid") Create + include create-run