Exemple #1
0
    def get(self):
        self.response.headers['Content-Type'] = 'application/json; charset=utf-8'
        
        title = self.request.get("title")

        # This won't work when we change our front-end, since it modifies the way that the html form submits dates/times
        eventDate = convertInputToDatetime(self.request.get("eventtime"))
        pointOfNoReturn = convertInputToDatetime(self.request.get("responsetime"))

        userKey = mpusers.userIdFromGoogleId(users.get_current_user().user_id())

        # try to create the plan
        plan = createPlan(userKey, title, pointOfNoReturn, eventDate)
        if plan is not None:
            self.response.write(json.dumps(convertPlanToDictionary(plan)))
            OGuserid = mpusers.userIdFromGoogleId(users.get_current_user().user_id())
            invites.createInvite(OGuserid, plan.planId)

            # The line directly below does not work and I can't figure out why
            # invites.respondToInvite(OGuserid, plan.planId, 'yes')

            invitedNums = self.request.get("invites").split()
            for num in invitedNums:
                userid = mpusers.getUserIdByNumber(num)
                if userid is None:
                    userid = mpusers.createShadowUser(num).userId
                invites.createInvite(userid, plan.planId)
        else:
            self.response.write(title + " already exists")
Exemple #2
0
    def get(self):
        self.response.headers[
            'Content-Type'] = 'application/json; charset=utf-8'

        title = self.request.get("title")

        # This won't work when we change our front-end, since it modifies the way that the html form submits dates/times
        eventDate = convertInputToDatetime(self.request.get("eventtime"))
        pointOfNoReturn = convertInputToDatetime(
            self.request.get("responsetime"))

        userKey = mpusers.userIdFromGoogleId(
            users.get_current_user().user_id())

        # try to create the plan
        plan = createPlan(userKey, title, pointOfNoReturn, eventDate)
        if plan is not None:
            self.response.write(json.dumps(convertPlanToDictionary(plan)))
            OGuserid = mpusers.userIdFromGoogleId(
                users.get_current_user().user_id())
            invites.createInvite(OGuserid, plan.planId)

            # The line directly below does not work and I can't figure out why
            # invites.respondToInvite(OGuserid, plan.planId, 'yes')

            invitedNums = self.request.get("invites").split()
            for num in invitedNums:
                userid = mpusers.getUserIdByNumber(num)
                if userid is None:
                    userid = mpusers.createShadowUser(num).userId
                invites.createInvite(userid, plan.planId)
        else:
            self.response.write(title + " already exists")
Exemple #3
0
    def get(self):
        self.response.headers['Content-Type'] = 'text/html; charset=utf-8'

        googleid = users.get_current_user().user_id()

        userid = mpusers.userIdFromGoogleId(googleid)

        if userid is None:
            return self.redirect('/createuserform')
        else:
            path = '/currentplans?userid=' + userid
            return self.redirect(path)
Exemple #4
0
    def get(self):
        self.response.headers['Content-Type'] = 'application/json; charset=utf-8'

        groupName = self.request.get("name")
        hostId = self.request.get("userid")
        if hostId == None or hostId == "":
            hostId = mpusers.userIdFromGoogleId(users.get_current_user().user_id())
        nums = self.request.get("numbers").split()

        group = createGroup(groupName, hostId, nums)

        if group is not None:
            self.response.write(json.dumps(convertGroupInfoToDict(group)))
        else:
            self.response.write({})

        return
Exemple #5
0
    def get(self):
        self.response.headers[
            'Content-Type'] = 'application/json; charset=utf-8'

        groupName = self.request.get("name")
        hostId = self.request.get("userid")
        if hostId == None or hostId == "":
            hostId = mpusers.userIdFromGoogleId(
                users.get_current_user().user_id())
        nums = self.request.get("numbers").split()

        group = createGroup(groupName, hostId, nums)

        if group is not None:
            self.response.write(json.dumps(convertGroupInfoToDict(group)))
        else:
            self.response.write({})

        return
Exemple #6
0
    def get(self):
        self.response.headers['Content-Type'] = 'application/json; charset=utf-8'

        userId = mpusers.userIdFromGoogleId(users.get_current_user().user_id())
        planId = self.request.get("planid")
        q = Plan.all()
        q.filter("planId =", planId)
        plan = q.get()

        if plan.authorId != userId:
            self.response.write("You are not the host of this event.")
            return

        proceed = self.request.get("verdict").lower() == 'yes'

        plan.status = proceed

        plan.put()

        self.response.write(json.dumps(convertPlanToDictionary(plan)))
Exemple #7
0
    def get(self):
        self.response.headers[
            'Content-Type'] = 'application/json; charset=utf-8'

        userId = mpusers.userIdFromGoogleId(users.get_current_user().user_id())
        planId = self.request.get("planid")
        q = Plan.all()
        q.filter("planId =", planId)
        plan = q.get()

        if plan.authorId != userId:
            self.response.write("You are not the host of this event.")
            return

        proceed = self.request.get("verdict").lower() == 'yes'

        plan.status = proceed

        plan.put()

        self.response.write(json.dumps(convertPlanToDictionary(plan)))
Exemple #8
0
    def get(self):
        self.response.headers['Content-Type'] = 'application/json; charset=utf-8'

        userid = self.request.get("userid")
        if userid is None:
            userid = mpusers.userIdFromGoogleId(users.get_current_user().user_id())


        plandicts = plans.plansByUserId(userid)
        print plandicts
        # planid = self.request.get("planid")

        for plan in plandicts:
            thisInvite = getInvite(plan['PlanID'], userid)
            print thisInvite
            plan['Response'] = thisInvite['Response']
            plan['InvitedID'] = thisInvite['UserID']

        dict = {"plans": plandicts}

        self.response.write(json.dumps(dict))
Exemple #9
0
    def get(self):
        self.response.headers[
            'Content-Type'] = 'application/json; charset=utf-8'

        userid = self.request.get("userid")
        if userid is None:
            userid = mpusers.userIdFromGoogleId(
                users.get_current_user().user_id())

        plandicts = plans.plansByUserId(userid)
        print plandicts
        # planid = self.request.get("planid")

        for plan in plandicts:
            thisInvite = getInvite(plan['PlanID'], userid)
            print thisInvite
            plan['Response'] = thisInvite['Response']
            plan['InvitedID'] = thisInvite['UserID']

        dict = {"plans": plandicts}

        self.response.write(json.dumps(dict))
Exemple #10
0
    def get(self):
        self.response.headers['Content-Type'] = 'text/html; charset=utf-8'


        newPlanLink = '/createplanform'

        userid = self.request.get("userid")
        if userid is None or userid == "undefined":
            userid = mpusers.userIdFromGoogleId(users.get_current_user().user_id())
            # return self.redirect('/currentplans?userid=' + userid)

        # Weird bug where after creating account (including one that was a shadow account),
        # the userid is undefined. The next line of code is a TEMPORARY FIX.
        # userid = mpusers.userIdFromGoogleId(users.get_current_user().user_id())

        getPlansLink = '/getplansanduserresponses?userid=' # + userid
        getPlanLink = '/viewoneplan?userid='
        getPlanLink2 = '&planid='
        respondToInviteLink = '/invitewasupdated?userid='
        respondToInviteLink2 = '&planid='
        respondToInviteLink3 = '&response='

        template_values = {
            'newPlanURL': newPlanLink,
            'getPlansURL': getPlansLink,
            'userId': userid,
            'getOnePlanURL': getPlanLink,
            'getOnePlanURL2': getPlanLink2,
            'respondToInviteURL': respondToInviteLink,
            'respondToInviteURL2': respondToInviteLink2,
            'respondToInviteURL3': respondToInviteLink3
        }

        template = JINJA_ENVIRONMENT.get_template('currentplans.html')
        self.response.write(template.render(template_values))

        self.response.write('<a href="/creategroupform">Create A Friend Group</a><br>')
        self.response.write("<a href=\"" + users.CreateLogoutURL("./googleuser") + "\">Logout</a>")