381ac7b7fe9ada297a55394cbb709e4011abe15b
[odoo/odoo.git] / addons / base_gengo / controller / gengo_callback.py
1 # -*- coding: utf-8 -*-
2
3 import openerp
4 from openerp.addons.web import http
5 from openerp.addons.web.http import request
6
7 import json
8
9 class website_gengo(http.Controller):
10     @http.route('/website/gengo_callback', type='http', auth='none')
11     def gengo_callback(self,**post):
12         cr, uid, context = request.cr, openerp.SUPERUSER_ID, request.context
13         translation_pool = request.registry['ir.translation']
14         if post and post.get('job'):
15             job = json.loads(post['job'])
16             tid = job.get('custom_data', False)
17             if (job.get('status') == 'approved') and tid:
18                 term = translation_pool.browse(cr, uid, int(tid), context=context)
19                 if term.job_id <> job.get('job_id'):
20                     raise 'Error'
21                 vals = {'state': 'translated', 'value': job.get('body_tgt')}
22                 translation_pool.write(cr, uid, [int(tid)], vals, context=context)