def post_order(request): """ save an order sent in post request """ job_fields = { 'type': 'text', 'slug': str(time()), 'custom_data': str(time()), 'body_src': request.POST['body_src'], 'tier': request.POST['tier'], 'lc_src': request.POST['lc_src'], 'lc_tgt': request.POST['lc_tgt'], } for bool_field in ('as_group','auto_approve'): if bool_field in request.POST: job_fields[bool_field] = 1 else: job_fields[bool_field] = 0 data = {'job': job_fields } job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) # translate/jobs (POST) # Submits a job or group of jobs to translate. job.postJob('json', job_params) return HttpResponseRedirect('/')
def service_quote(request): """ get quote for service """ service, service_params = get_mygengo_api('service', request) job = { 'body_src': request.REQUEST['body'], 'lc_src': request.REQUEST['lc_src'], 'lc_tgt': request.REQUEST['lc_tgt'], 'tier': request.REQUEST['tier'] } data = {'jobs': [job]} service_params = { 'api_key': service_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(service_params, separators=(',', ':'), sort_keys=True) service_params = get_api_sig(service_params, service, query_json) service.getQuote('json', service_params) response_json = json.loads(service.getResponseBody()) logging.info(service_params) logging.info(response_json) if 'err' in response_json: return HttpResponse(json.dumps(response_json), mimetype="application/json") job_info = response_json['response']['jobs'][0] job_info['credits'] = "%.2f" % round(job_info['credits'], 2) # round to 2 decimal places return HttpResponse(json.dumps(job_info), mimetype="application/json")
def service_quote(request): """ get quote for service """ service, service_params = get_mygengo_api('service', request) job = { 'body_src': request.REQUEST['body'], 'lc_src': request.REQUEST['lc_src'], 'lc_tgt': request.REQUEST['lc_tgt'], 'tier': request.REQUEST['tier'] } data = { 'jobs': [job] } service_params = { 'api_key': service_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(service_params, separators=(',', ':'), sort_keys=True) service_params = get_api_sig(service_params, service, query_json) service.getQuote('json', service_params) response_json = json.loads(service.getResponseBody()) logging.info(service_params) logging.info(response_json) if 'err' in response_json: return HttpResponse(json.dumps(response_json), mimetype="application/json") job_info = response_json['response']['jobs'][0] job_info['credits'] = "%.2f" % round(job_info['credits'],2) # round to 2 decimal places return HttpResponse(json.dumps(job_info), mimetype="application/json")
def post_order(request): """ save an order sent in post request """ job_fields = { 'type': 'text', 'slug': str(time()), 'custom_data': str(time()), 'body_src': request.POST['body_src'], 'tier': request.POST['tier'], 'lc_src': request.POST['lc_src'], 'lc_tgt': request.POST['lc_tgt'], } for bool_field in ('as_group', 'auto_approve'): if bool_field in request.POST: job_fields[bool_field] = 1 else: job_fields[bool_field] = 0 data = {'job': job_fields} job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) # translate/jobs (POST) # Submits a job or group of jobs to translate. job.postJob('json', job_params) return HttpResponseRedirect('/')
def post_comment(request, job_id): """ post comment """ data = {'body': request.REQUEST['comment']} job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) job.postComment(job_id, 'json', job_params) return HttpResponse(job.getResponseBody())
def post_purchase(request, job_id): """ purchase a translation for a job """ data = { 'action': 'purchase' } job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) job.putPurchase(job_id, 'json', job_params) return HttpResponse(job.getResponseBody() + str(job_params))
def post_purchase(request, job_id): """ purchase a translation for a job """ data = {'action': 'purchase'} job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) job.putPurchase(job_id, 'json', job_params) return HttpResponse(job.getResponseBody() + str(job_params))
def post_reject(request, job_id): """ reject translation """ data = { 'action': 'reject', 'reason': request.REQUEST['reason'], 'comment': request.REQUEST['comment'], 'captcha': request.REQUEST['captcha'], 'follow_up': request.REQUEST['follow_up'], } job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) job.putReject(job_id, 'json', job_params) return HttpResponse(job.getResponseBody() + str(job_params))
def post_approve(request, job_id): """ post approval """ data = { 'action': 'approve', 'rating': int(request.REQUEST['rating']), 'public': int(request.REQUEST['public']) } for arg in ('for_translator','for_mygengo'): if request.REQUEST.get(arg): data[arg] = request.REQUEST[arg] job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) job.putApprove(job_id, 'json', job_params) return HttpResponse(job.getResponseBody() + str(job_params))
def post_approve(request, job_id): """ post approval """ data = { 'action': 'approve', 'rating': int(request.REQUEST['rating']), 'public': int(request.REQUEST['public']) } for arg in ('for_translator', 'for_mygengo'): if request.REQUEST.get(arg): data[arg] = request.REQUEST[arg] job, job_params = get_mygengo_api('job', request) job_params = { 'api_key': job_params['api_key'], '_method': 'post', 'ts': str(int(time())), 'data': json.dumps(data, separators=(',', ':')) } query_json = json.dumps(job_params, separators=(',', ':'), sort_keys=True) job_params = get_api_sig(job_params, job, query_json) job.putApprove(job_id, 'json', job_params) return HttpResponse(job.getResponseBody() + str(job_params))