lunchControllers = angular.module 'lunchControllers'

lunchControllers.controller 'CreateRunCtrl', ['$scope', '$http', '$location', 'socket',
    CreateRunController = ($scope, $http, $location, socket) ->
        $scope.run = {}
        $scope.invitees = []

        $scope.addInvitee = () ->
            $scope.invitees.push {}

        $scope.removeInvitee = (index) ->
            $scope.invitees.splice index, 1

        $scope.create = (run,invitees) ->
            runData = angular.copy run
            inviteeData = angular.copy invitees
            inviteeData.push
                name: runData.creatorName
                email: runData.creatorEmail

            socket.post '/run', runData, (runResponse) ->
                inviteesCreated = 0
                for i in inviteeData
                    i.run_id = runResponse.id
                    socket.post '/invitee', i, (inviteeResponse) ->
                        inviteesCreated++
                        if inviteesCreated is inviteeData.length
                            $location.path '/run/' + runResponse.id
                            $scope.$apply()

        $scope.addInvitee()
]
