Exemplo n.º 1
0
 def post(self):
     user = users.get_current_user()
     q = HelpRequest.query(HelpRequest.in_queue == True,
                           HelpRequest.netid == self.request.get('email'),
                           ancestor=help_queue_key())
     if q.count() != 1:
         logging.error("Database corrupted for user {}".format(
             user.email()))
         return
     if is_ta(user.email()):
         update_active_tas(user.email())
     hr = q.get()
     hr.canceled = True
     hr.put()
     ChannelManager.queue_update()
Exemplo n.º 2
0
 def post(self):
     user = users.get_current_user()
     hr = fetch_help_request(requester = self.request.get('email'),
                             full_id   = self.request.get('full_id'))
     if hr:
         update_active_tas(user.email())
         hr.been_helped = True
         hr.helped_datetime = datetime.utcnow()
         hr.attending_ta = user.email()
         hr.put()
         ChannelManager.queue_update()
         ta = LabTA.query(LabTA.email == hr.attending_ta,
                          ancestor=labta_key()).fetch()[0]
         ChannelManager.notify_request_accepted(hr.netid,
                                                ta.first_name,
                                                ta.img_path)
Exemplo n.º 3
0
 def post(self):
     user = users.get_current_user()
     q = HelpRequest.query(HelpRequest.in_queue == True,
                           HelpRequest.netid == self.request.get('email'),
                           ancestor=help_queue_key())
     if q.count() != 1:
         logging.error("Database corrupted for user {}".format(
             user.email()))
         return
     update_active_tas(user.email())
     hr = q.get()
     hr.been_helped = True
     hr.helped_datetime = datetime.utcnow()
     hr.attending_ta = user.email()
     hr.put()
     ChannelManager.queue_update()
     ta = LabTA.query(LabTA.email == hr.attending_ta,
                      ancestor=labta_key()).fetch()[0]
     ChannelManager.notify_request_accepted(hr.netid, ta.first_name,
                                            ta.img_path)
Exemplo n.º 4
0
 def post(self):
     user = users.get_current_user()
     hr = fetch_help_request(requester = self.request.get('email'),
                             full_id   = self.request.get('full_id'))
     if hr:
        hr.canceled = True
        
        if is_ta(user.email()):
            update_active_tas(user.email())
            
            # Update this field if the cancellation comes from the TA
            # and the TA isn't the originator of the request
            #
            # FIXME: there should be a field dedicated to the canceller.
            
            if hr.netid != user.email():
                hr.attending_ta = user.email()
              
        hr.put()
        ChannelManager.queue_update()