ajay javiya (OpenERP) has proposed merging
lp:~openerp-dev/openobject-addons/trunk-base-gengo-mapping-aja into
lp:~openerp-dev/openobject-addons/trunk-base-gengo.
Requested reviews:
Jigar Amin (OpenERP) (jam-openerp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-base-gengo-mapping-aja/+merge/121420
Hello,
Add lang_code_mppping in base_gengo.
Thank you
--
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-base-gengo-mapping-aja/+merge/121420
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-addons/trunk-base-gengo.
=== modified file 'base_gengo/__init__.py'
--- base_gengo/__init__.py 2012-08-06 07:40:35 +0000
+++ base_gengo/__init__.py 2012-08-27 13:40:25 +0000
@@ -23,4 +23,5 @@
import ir_translation
import wizard
import res_lang
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== modified file 'base_gengo/gengo_sync_schedular_data.xml'
--- base_gengo/gengo_sync_schedular_data.xml 2012-08-23 13:42:57 +0000
+++ base_gengo/gengo_sync_schedular_data.xml 2012-08-27 13:40:25 +0000
@@ -12,7 +12,7 @@
<field eval="'_sync_response'" name="function"/>
</record>
- <!--Schedular Sync Send Request-->
+ <!--Scheduler Sync Send Request-->
<record id="gengo_sync_send_request_scheduler" model="ir.cron">
<field name="name" >Gengo Sync Translation (Request)</field>
<field eval="False" name="active"/>
=== modified file 'base_gengo/ir_translation.py'
--- base_gengo/ir_translation.py 2012-08-23 13:42:57 +0000
+++ base_gengo/ir_translation.py 2012-08-27 13:40:25 +0000
@@ -29,7 +29,7 @@
'gengo_comment': fields.text("Comments"),
'gengo_translation': fields.boolean("Translation", help='This term has to be translated by Gengo automatically'),
'gengo_control': fields.boolean('Active'),
- 'job_id':fields.char('Gengo Job Id',size=32),
+ 'job_id': fields.char('Gengo Job Id', size=32),
}
_defaults = {
=== modified file 'base_gengo/res_company.py'
--- base_gengo/res_company.py 2012-08-27 07:27:43 +0000
+++ base_gengo/res_company.py 2012-08-27 13:40:25 +0000
@@ -34,9 +34,9 @@
('ultra', 'Ultra')], "Tier types", required=True),
"gengo_comment": fields.text("comments"),
"gengo_auto_approve": fields.boolean("Auto Approve Translation ?", help="Jobs are Automatically Approved by Gengo."),
- "fields_ids": fields.many2many('ir.model.fields', 'fields_company_rel', 'field_id', 'model_id', 'fields'),
}
_defaults = {
"gengo_tier": "machine",
+ "gengo_auto_approve": True,
}
=== modified file 'base_gengo/res_company_view.xml'
--- base_gengo/res_company_view.xml 2012-08-27 11:06:40 +0000
+++ base_gengo/res_company_view.xml 2012-08-27 13:40:25 +0000
@@ -24,9 +24,6 @@
<group string="Comments" col="1">
<field name="gengo_comment" nolabel="1" placeholder="Add Your comments here for Translator...."/>
</group>
- <group col="1">
- <field name="fields_ids" nolabel="1"/>
- </group>
</page>
</xpath>
</field>
=== modified file 'base_gengo/wizard/__init__.py'
--- base_gengo/wizard/__init__.py 2012-08-27 06:52:18 +0000
+++ base_gengo/wizard/__init__.py 2012-08-27 13:40:25 +0000
@@ -21,4 +21,5 @@
import gengo_update_translation
import gengo_update_message
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== modified file 'base_gengo/wizard/gengo_update_translation.py'
--- base_gengo/wizard/gengo_update_translation.py 2012-08-27 11:16:30 +0000
+++ base_gengo/wizard/gengo_update_translation.py 2012-08-27 13:40:25 +0000
@@ -21,6 +21,7 @@
from osv import osv
from tools.translate import _
+import re
try:
from mygengo import MyGengo
except ImportError:
@@ -28,55 +29,36 @@
import logging
import tools
+<<<<<<< TREE
import time
from tools.translate import _
+=======
+>>>>>>> MERGE-SOURCE
_logger = logging.getLogger(__name__)
-
LIMIT = 20
-LANG_MAPPING = {
- 'ar': 'Arabic',
- 'id': 'Indonesian',
- 'nl': 'Dutch',
- 'fr-ca': 'French (Canada)',
- 'pl': 'Polish',
- 'zh-tw': 'Chinese (Traditional)',
- 'sv': 'Swedish',
- 'ko': 'Korean',
- 'pt': 'Portuguese (Europe)',
- 'en': 'English',
- 'ja': 'Japanese',
- 'es': 'Spanish (Spain)',
- 'zh': 'Chinese (Simplified)',
- 'de': 'German',
- 'fr': 'French',
- 'ru': 'Russian',
- 'it': 'Italian',
- 'pt-br': 'Portuguese (Brazil)',
-}
-
LANG_CODE_MAPPING = {
- 'ar_SA': 'ar',
- 'id_ID': 'id',
- 'nl_NL': 'nl',
- 'fr_CA': 'fr-ca',
- 'pl': 'pl',
- 'zh_TW': 'zh-tw',
- 'sv_SE': 'sv',
- 'ko_KR': 'ko',
- 'pt_PT': 'pt',
- 'en_US': 'en',
- 'ja_JP': 'ja',
- 'es_ES': 'es',
- 'zh_CN': 'zh',
- 'de_DE': 'de',
- 'fr_FR': 'fr',
- 'fr_BE': 'fr',
- 'ru_RU': 'ru',
- 'it_IT': 'it',
- 'pt_BR': 'pt-br'
+ 'ar_SA': ('ar', 'Arabic'),
+ 'id_ID': ('id', 'Indonesian'),
+ 'nl_NL': ('nl', 'Dutch'),
+ 'fr_CA': ('fr-ca', 'French (Canada)'),
+ 'pl': ('Polish'),
+ 'zh_TW': ('zh-tw', 'Chinese (Traditional)'),
+ 'sv_SE': ('sv', 'Swedish'),
+ 'ko_KR': ('ko', 'Korean'),
+ 'pt_PT': ('pt', 'Portuguese (Europe)'),
+ 'en_US': ('en', 'English'),
+ 'ja_JP': ('ja', 'Japanese'),
+ 'es_ES': ('es', 'Spanish (Spain)'),
+ 'zh_CN': ('zh', 'Chinese (Simplified)'),
+ 'de_DE': ('de', 'German'),
+ 'fr_FR': ('fr', 'French'),
+ 'fr_BE': ('fr', 'French'),
+ 'ru_RU': ('ru', 'Russian'),
+ 'it_IT': ('it', 'Italian'),
+ 'pt_BR': ('pt-br', 'Portuguese (Brazil)')
}
cron_vals = {
@@ -97,12 +79,12 @@
def gengo_authentication(self, cr, uid, context=None):
''' To Send Request and Get Response from Gengo User needs Public and Private
- key for that user need to signup to gengo and get public and private
+ key for that user need to sign up to gengo and get public and private
key which is provided by gengo to authentic user '''
user = self.pool.get('res.users').browse(cr, uid, uid, context)
if not user.company_id.gengo_public_key or not user.company_id.gengo_private_key:
- return (False, "Invalid gengo configuration.\nEither pulic key or private key is missing.")
+ return (False, "Invalid gengo configuration.\n Either public key or private key is missing.")
try:
gengo = MyGengo(
public_key=user.company_id.gengo_public_key.encode('ascii'),
@@ -112,7 +94,7 @@
gengo.getAccountStats()
return (True, gengo)
except Exception, e:
- return (False, "Gengo Connection Error\n"+e.message)
+ return (False, "Gengo Connection Error\n" + e.message)
def pack_jobs_request(self, cr, uid, term_ids, context):
jobs = {}
@@ -122,17 +104,18 @@
if gengo_parameter_pool.company_id.gengo_auto_approve:
auto_approve = 1
for term in translation_pool.browse(cr, uid, term_ids, context):
- if term.src and term.src != "":
- job = {'type': 'text',
- 'slug': 'single::English to' + LANG_CODE_MAPPING[term.lang],
- 'tier': tools.ustr(gengo_parameter_pool.company_id.gengo_tier),
- 'body_src': term.src,
- 'lc_src': 'en',
- 'lc_tgt': LANG_CODE_MAPPING[term.lang],
- 'auto_approve': auto_approve,
- 'comment': gengo_parameter_pool.company_id.gengo_comment,
- }
- jobs.update({term.id: job})
+ if term.src:
+ if re.search(r"\w",term.src):
+ job = {'type': 'text',
+ 'slug': 'single::English to ' + LANG_CODE_MAPPING[term.lang][1],
+ 'tier': tools.ustr(gengo_parameter_pool.company_id.gengo_tier),
+ 'body_src': term.src,
+ 'lc_src': 'en',
+ 'lc_tgt': LANG_CODE_MAPPING[term.lang][0],
+ 'auto_approve': auto_approve,
+ 'comment': gengo_parameter_pool.company_id.gengo_comment,
+ }
+ jobs.update({term.id: job})
return {'jobs': jobs}
def check_lang_support(self, cr, uid, langs, context=None):
@@ -150,9 +133,10 @@
if lang_pair['opstat'] == 'ok':
for g_lang in lang_pair['response']:
for l in langs:
- if LANG_CODE_MAPPING[l] == g_lang['lc_tgt'] and g_lang['tier'] == tier:
+ if LANG_CODE_MAPPING[l][0] == g_lang['lc_tgt'] and g_lang['tier'] == tier:
new_langs.append(l)
return list(set(new_langs))
+
def _update_terms(self, cr, uid, ids, response, tier, context):
translation_pool = self.pool.get('ir.translation')
for jobs in response['jobs']:
@@ -167,17 +151,18 @@
def _send_translation_terms(self, cr, uid, ids, term_ids, context):
"""
- Lazy Polling will be perform when user or cron request for the trnalstion.
+ Lazy Polling will be perform when user or cron request for the translation.
"""
user = self.pool.get('res.users').browse(cr, uid, uid, context)
flag, gengo = self.gengo_authentication(cr, uid, context)
if flag:
-
request = self.pack_jobs_request(cr, uid, term_ids, context)
- if request:
+ if request['jobs']:
result = gengo.postTranslationJobs(jobs=request)
if result['opstat'] == 'ok':
self._update_terms(cr, uid, ids, result['response'], user.company_id.gengo_tier, context)
+ else:
+ _logger.info('')
else:
_logger.error(gengo)
return True
@@ -197,7 +182,7 @@
context = {}
lang_pool = self.pool.get('res.lang')
super(base_update_translation, self).act_update(cr, uid, ids, context)
- msg = "1. Translation file loaded succesfully.\n2. Processing Gengo Translation:\n"
+ msg = "1. Translation file loaded successfully.\n2. Processing Gengo Translation:\n"
flag, gengo = self.gengo_authentication(cr, uid, context)
if not flag:
msg += gengo
@@ -207,11 +192,11 @@
lang_search = lang_pool.search(cr, uid, [('gengo_sync', '=', True),
('id', '=', lang_id[0])])
if lang_search:
- msg += 'This language %s is alreay in queue for processing.' % (res.lang)
+ msg += 'This language %s is already in queue for processing.' % (res.lang)
else:
msg += "Translation for language %s is queued for processing." % (res.lang)
lang_pool.write(cr, uid, lang_id, {'gengo_sync': True})
- _logger.info("Your translation request for language '%s' has been send sucessfully.", res.lang)
+ _logger.info("Your translation request for language '%s' has been send successfully.", res.lang)
self.do_check_schedular(cr, uid, 'gengo_sync_send_request_scheduler', 'Gengo Sync Translation (Request)', '_sync_request', context)
self.do_check_schedular(cr, uid, 'gengo_sync_receive_request_scheduler', 'Gengo Sync Translation (Response)', '_sync_response', context)
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp