Ejemplo n.º 1
0
 def post(self):
     """Set announcement in Memcache for featured speaker and sessions"""
     # Assume that speaker names are unique
     # otherwise would have to introduce a speaker key
     featuredSpeaker = ""
     wsck = self.request.get('websafeConferenceKey')
     speakerName = self.request.get('speaker')
     # Count how many times a speaker is assigned to sessions in a particular conference
     speakerCount = Session.query(ancestor=ndb.Key(urlsafe=wsck)).filter(Session.speaker == speakerName).count()
     # Speaker is featured if there is more than one session by speaker in conference
     if speakerCount > 1:
         featuredSpeaker = speakerName
         # Retrieve sessions the speaker is speaking
         featuredSpeakerSessions = Session.query(ancestor=ndb.Key(urlsafe=wsck)).filter(Session.speaker == featuredSpeaker)
     # Set announcement for featured speaker and sessions in memcache
     ConferenceApi._cacheSpeakerAnnouncement(featuredSpeaker, featuredSpeakerSessions)
     self.response.set_status(204)
Ejemplo n.º 2
0
 def post(self):
     """Set announcement in Memcache for featured speaker and sessions"""
     # Assume that speaker names are unique
     # otherwise would have to introduce a speaker key
     featuredSpeaker = ""
     wsck = self.request.get('websafeConferenceKey')
     speakerName = self.request.get('speaker')
     # Count how many times a speaker is assigned to sessions in a particular conference
     speakerCount = Session.query(ancestor=ndb.Key(urlsafe=wsck)).filter(
         Session.speaker == speakerName).count()
     # Speaker is featured if there is more than one session by speaker in conference
     if speakerCount > 1:
         featuredSpeaker = speakerName
         # Retrieve sessions the speaker is speaking
         featuredSpeakerSessions = Session.query(ancestor=ndb.Key(
             urlsafe=wsck)).filter(Session.speaker == featuredSpeaker)
     # Set announcement for featured speaker and sessions in memcache
     ConferenceApi._cacheSpeakerAnnouncement(featuredSpeaker,
                                             featuredSpeakerSessions)
     self.response.set_status(204)
Ejemplo n.º 3
0
    def post(self):
        speaker = self.request.get('speaker')
        conf_key = ndb.Key(urlsafe=self.request.get('websafeConferenceKey'))
        # check how many sessions by this speaker at given conference
        sessions = Session.query(ancestor=conf_key)
        sessions = sessions.filter(Session.speaker == speaker)
        q_count = sessions.count()
        # if more than one session,
        if q_count > 1:
            # get all sessionNames
            sessionNames = []
            for session in sessions:
                sessionNames.append(session.sessionName)
            # get the name of the conference
            conference = conf_key.get()
            conferenceName = conference.name

            # add speaker to featuredSpeakers property of conference
            conference.featuredSpeakers.append(speaker)
            conference.put()
            # pass in speaker name, session names, and conference name
            ConferenceApi._cacheSpeakerAnnouncement(speaker, sessionNames, conferenceName)
 def post(self):
     """Set Speaker Announcement in Memcache"""
     ConferenceApi._cacheSpeakerAnnouncement(self.request.get('sessionKey'),
                                             self.request.get('speaker')
                                             )
     self.response.set_status(204)
 def post(self):
     """Set Speaker Announcement in Memcache"""
     ConferenceApi._cacheSpeakerAnnouncement(self.request.get('sessionKey'),
                                             self.request.get('speaker'))
     self.response.set_status(204)
Ejemplo n.º 6
0
 def post(self):
     """Get featured speaker request"""
     ConferenceApi._cacheSpeakerAnnouncement(self.request.get('speaker'))