def get(self, key): worker = Worker.get(key) if worker: if not worker.click_go: worker.click_go = True worker.put() self.json({'status': 'OK'}) else: self.json({'status': 'NG'})
def get(self, key): hit = HIT.get(key) if hit: if self.request.get( 'assignmentId') != 'ASSIGNMENT_ID_NOT_AVAILABLE': if self.request.get('workerId') in hit.blacklist: self.render('priv/hit_blacklisted.html', {'title': hit.title}) return worker = worker_lookup(hit, self.request.get('workerId')) if worker is None: worker = Worker() worker.hit = hit worker.mturkid = self.request.get('workerId') worker.assignment_id = self.request.get('assignmentId') worker.number = next_worker_number(hit) # save number ASAP worker.remote_addr = self.request.remote_addr worker.user_agent = self.request.headers['User-Agent'] worker.put() clickgo_url = json.dumps(self.worker_click_go(worker)) else: clickgo_url = json.dumps('') self.render( 'priv/hit_countdown.html', { 'time': unix_timestamp(hit.time), 'title': hit.title, 'heartbeat_url': json.dumps(self.hit_heartbeat_url(hit)), 'location_url': json.dumps(self.hit_location_url(hit)), 'info': hit.info, 'hit': hit, 'clickgo_url': clickgo_url }) else: self.not_found()
def get(self, key): hit = HIT.get(key) if hit: if self.request.get('assignmentId') != 'ASSIGNMENT_ID_NOT_AVAILABLE': if self.request.get('workerId') in hit.blacklist: self.render('priv/hit_blacklisted.html', {'title': hit.title}) return worker = worker_lookup(hit, self.request.get('workerId')) if worker is None: worker = Worker() worker.hit = hit worker.mturkid = self.request.get('workerId') worker.assignment_id = self.request.get('assignmentId') worker.number = next_worker_number(hit) # save number ASAP worker.remote_addr = self.request.remote_addr worker.user_agent = self.request.headers['User-Agent'] worker.put() clickgo_url = json.dumps(self.worker_click_go(worker)) else: clickgo_url = json.dumps('') self.render('priv/hit_countdown.html', { 'time': unix_timestamp(hit.time) , 'title': hit.title , 'heartbeat_url': json.dumps(self.hit_heartbeat_url(hit)) , 'location_url': json.dumps(self.hit_location_url(hit)) , 'info': hit.info , 'hit': hit , 'clickgo_url': clickgo_url }) else: self.not_found()
def hit_workers(hit): return Worker.all().filter('hit = ', hit)