From 2d8fdab496451fa46cd37a0d0a291a12b6999eb4 Mon Sep 17 00:00:00 2001 From: Sabe Jones Date: Wed, 12 Aug 2015 11:29:36 -0500 Subject: [PATCH] WIP(party-page): Roll back to 1x invites Also a draft of logic for 1-step create group + invite people. --- website/public/js/controllers/groupsCtrl.js | 31 ++++++++++++++++--- .../views/shared/modals/invite-friends.jade | 12 +++---- 2 files changed, 30 insertions(+), 13 deletions(-) diff --git a/website/public/js/controllers/groupsCtrl.js b/website/public/js/controllers/groupsCtrl.js index 0c8540ed1f..cffb057067 100644 --- a/website/public/js/controllers/groupsCtrl.js +++ b/website/public/js/controllers/groupsCtrl.js @@ -139,7 +139,29 @@ habitrpg.controller("GroupsCtrl", ['$scope', '$rootScope', 'Shared', 'Groups', ' $scope.inviter = User.user.profile.name; $scope.emails = [{name:"",email:""},{name:"",email:""}]; - $scope.invitees = [{uuid:""},{uuid:""}]; + $scope.invitees = {uuid:""}; + + $scope.inviteNewUsers = function(inviteMethod){ + if (!$scope.group) { + Groups.group.create($scope.newGroup, function() { + inviteByMethod(inviteMethod); + }); + } else { + inviteByMethod(inviteMethod); + } + }; + + var inviteByMethod = function(inviteMethod) { + if (inviteMethod === 'email') { + inviteEmails(); + } + else if (inviteMethod === 'uuid') { + invite(); + } + else { + return console.log('Invalid invite method.') + } + }; $scope.inviteEmails = function(){ Groups.Group.invite({gid: $scope.group._id}, {inviter: $scope.inviter, emails: $scope.emails}, function(){ @@ -151,12 +173,11 @@ habitrpg.controller("GroupsCtrl", ['$scope', '$rootScope', 'Shared', 'Groups', ' }; $scope.invite = function(){ - var uuidList = _.pluck($scope.invitees,'uuid'); - Groups.Group.invite({gid: $scope.group._id}, {uuids: uuidList}, function(){ + Groups.Group.invite({gid: $scope.group._id}, {uuids: [$scope.invitees.uuid]}, function(){ Notification.text(window.env.t('invitationsSent')); - $scope.invitees = [{uuid:""},{uuid:""}]; + $scope.invitees = {uuid:""}; }, function(){ - $scope.invitees = [{uuid:""},{uuid:""}]; + $scope.invitees = {uuid:""}; }); }; }]) diff --git a/website/views/shared/modals/invite-friends.jade b/website/views/shared/modals/invite-friends.jade index c1eb2b3776..c3a0bc212d 100644 --- a/website/views/shared/modals/invite-friends.jade +++ b/website/views/shared/modals/invite-friends.jade @@ -6,7 +6,7 @@ script(type='text/ng-template', id='modals/invite-friends.html') tabset tab(heading=env.t('inviteByEmail')) p.alert.alert-info=env.t('inviteByEmailExplanation') - form.form-horizontal(ng-submit='inviteEmails()') + form.form-horizontal(ng-submit='inviteNewUsers("email")') table.table.table-striped thead tr @@ -31,19 +31,15 @@ script(type='text/ng-template', id='modals/invite-friends.html') button.btn.btn-primary(type='submit')=env.t('sendInvitations') tab(heading=env.t('inviteExistUser')) p.alert.alert-info!=env.t('inviteAlertInfo') - form.form-horizontal(ng-submit='invite()') + form.form-horizontal(ng-submit='inviteNewUsers("uuid")') table.table.table-striped thead tr th=env.t('userId') tbody - tr(ng-repeat='invitee in invitees') - td - input.form-control(type='text', ng-model='invitee.uuid') tr - td(colspan=2) - a.btn.btn-xs.pull-right(ng-click='invitees = invitees.concat([{uuid:""}])') - i.glyphicon.glyphicon-plus + td + input.form-control(type='text', ng-model='invitees.uuid') tr td .col-sm-1