diff options
| author | nel@tinyerp.com <> | 2010-06-16 12:48:35 +0200 |
|---|---|---|
| committer | nel@tinyerp.com <> | 2010-06-16 12:48:35 +0200 |
| commit | 80fcbdb4d66f88c7f0f663c5aa7edda847f22ec5 (patch) | |
| tree | 77c72e9165381c8885505961134243a8d13ddaf6 | |
| parent | b140d34b193a2574d11704e5d964ffb830d3d34b (diff) | |
| parent | 4c1ac43aa239f776da09318bb827679fa7e1fc07 (diff) | |
[MERGE]
bzr revid: nel@tinyerp.com-20100616104835-cimcmwrd703x0cc0
23 files changed, 1005 insertions, 111 deletions
diff --git a/addons/account/i18n/it.po b/addons/account/i18n/it.po index 4a6d2d3a2b8..499700a8777 100644 --- a/addons/account/i18n/it.po +++ b/addons/account/i18n/it.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.0\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2010-06-04 16:42+0000\n" +"PO-Revision-Date: 2010-06-15 07:00+0000\n" "Last-Translator: eLBati - albatos.com <lorenzo.battistini@albatos.com>\n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-11 03:42+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account @@ -1176,7 +1176,7 @@ msgstr "" #. module: account #: field:account.payment.term,line_ids:0 msgid "Terms" -msgstr "Periodi" +msgstr "Condizioni" #. module: account #: rml:account.vat.declaration:0 diff --git a/addons/base_module_quality/i18n/it.po b/addons/base_module_quality/i18n/it.po index 9a4838ace97..565dd1e0f4d 100644 --- a/addons/base_module_quality/i18n/it.po +++ b/addons/base_module_quality/i18n/it.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2010-04-09 18:42+0000\n" -"Last-Translator: Nicola Pedron <Unknown>\n" +"PO-Revision-Date: 2010-06-15 12:50+0000\n" +"Last-Translator: Rinux <Unknown>\n" "Language-Team: Italian <it@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-04-17 04:20+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: base_module_quality @@ -33,7 +33,7 @@ msgstr "" #. module: base_module_quality #: model:ir.module.module,shortdesc:base_module_quality.module_meta_information msgid "Base module quality" -msgstr "" +msgstr "Modulo base di qualità" #. module: base_module_quality #: field:module.quality.check,name:0 @@ -63,7 +63,7 @@ msgstr "" #. module: base_module_quality #: field:module.quality.detail,ponderation:0 msgid "Ponderation" -msgstr "" +msgstr "Ponderazione" #. module: base_module_quality #: help:module.quality.detail,ponderation:0 @@ -110,7 +110,7 @@ msgstr "" #. module: base_module_quality #: wizard_field:quality_detail_save,init,module_file:0 msgid "Save report" -msgstr "" +msgstr "Salva report" #. module: base_module_quality #: wizard_field:quality_detail_save,init,name:0 @@ -120,12 +120,12 @@ msgstr "" #. module: base_module_quality #: field:module.quality.detail,score:0 msgid "Score (%)" -msgstr "" +msgstr "Punteggio (%)" #. module: base_module_quality #: help:quality_detail_save,init,name:0 msgid "Save report as .html format" -msgstr "" +msgstr "Salva report come formato .html" #. module: base_module_quality #: view:module.quality.detail:0 @@ -146,12 +146,12 @@ msgstr "" #. module: base_module_quality #: view:module.quality.detail:0 msgid "Save Report" -msgstr "" +msgstr "Salva report" #. module: base_module_quality #: model:ir.actions.wizard,name:base_module_quality.create_quality_check_id msgid "Quality Check" -msgstr "" +msgstr "Controllo di qualità" #. module: base_module_quality #: model:ir.model,name:base_module_quality.model_module_quality_detail @@ -182,4 +182,4 @@ msgstr "" #. module: base_module_quality #: field:module.quality.detail,quality_check_id:0 msgid "Quality" -msgstr "" +msgstr "Qualità" diff --git a/addons/board/i18n/nl_BE.po b/addons/board/i18n/nl_BE.po index a16b538056f..2754b34b4bd 100644 --- a/addons/board/i18n/nl_BE.po +++ b/addons/board/i18n/nl_BE.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.0\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2009-04-24 15:45+0000\n" -"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n" +"PO-Revision-Date: 2010-06-15 14:17+0000\n" +"Last-Translator: Niels Huylebroeck <Unknown>\n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-04-17 04:15+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: board @@ -26,50 +26,50 @@ msgstr "" #. module: board #: model:ir.model,name:board.model_board_board msgid "board.board" -msgstr "" +msgstr "board.board" #. module: board #: field:board.note,user_id:0 msgid "Author" -msgstr "" +msgstr "Auteur" #. module: board #: model:ir.module.module,shortdesc:board.module_meta_information msgid "Dashboard main module" -msgstr "" +msgstr "Algemene dashboard module" #. module: board #: view:board.note:0 #: field:board.note,note:0 msgid "Note" -msgstr "" +msgstr "Notitie" #. module: board #: field:board.board.line,width:0 msgid "Width" -msgstr "" +msgstr "Breedte" #. module: board #: constraint:ir.actions.act_window:0 msgid "Invalid model name in the action definition." -msgstr "" +msgstr "Ongeldige modelnaam in de actie-definitie." #. module: board #: field:board.board.line,name:0 msgid "Title" -msgstr "" +msgstr "Titel" #. module: board #: model:ir.actions.act_window,name:board.action_view_board_list_form #: model:ir.ui.menu,name:board.menu_view_board_form msgid "Dashboard Definition" -msgstr "" +msgstr "Dashboard definitie" #. module: board #: model:ir.actions.act_window,name:board.action_view_board_note_form #: model:ir.ui.menu,name:board.menu_view_board_note_form msgid "Publish a note" -msgstr "" +msgstr "Publiceer een opmerking" #. module: board #: wizard_view:board.board.menu.create,init:0 diff --git a/addons/google_map/i18n/ru.po b/addons/google_map/i18n/ru.po index 640f842cade..c4f6acceef1 100644 --- a/addons/google_map/i18n/ru.po +++ b/addons/google_map/i18n/ru.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-15 03:32+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: google_map diff --git a/addons/marketing_campaign/marketing_campaign.py b/addons/marketing_campaign/marketing_campaign.py index da3b9c41a7c..4ed49a7c954 100644 --- a/addons/marketing_campaign/marketing_campaign.py +++ b/addons/marketing_campaign/marketing_campaign.py @@ -208,10 +208,7 @@ class marketing_campaign_activity(osv.osv): 'start': fields.boolean('Start',help= "This activity is launched when the campaign starts."), 'condition': fields.char('Condition', size=256, required=True, help="Python condition to know if the activity can be launched"), - 'type': fields.selection([('email', 'E-mail'), - ('paper', 'Paper'), - ('action', 'Action'), - ('subcampaign', 'Sub-Campaign')], + 'type': fields.selection(_actions_type, 'Type', required=True, help="Describe type of action to be performed on the Activity.Eg : Send email,Send paper.."), 'email_template_id': fields.many2one('email.template','Email Template'), @@ -412,7 +409,10 @@ class marketing_campaign_workitem(osv.osv): self.write(cr, uid, wi.id, {'state': 'done'}) self.process_chain(cr, uid, wi.id, context) else: - self.write(cr, uid, wi.id, {'state': 'exception'}) + vals = {'state': 'exception'} + if type(result) == type({}) and 'error_msg' in result: + vals['error_msg'] = result['error_msg'] + self.write(cr, uid, wi.id, vals) except Exception,e: self.write(cr, uid, wi.id, {'state': 'exception', 'error_msg': str(e)}) else : diff --git a/addons/marketing_campaign_mailchimp/__init__.py b/addons/marketing_campaign_mailchimp/__init__.py index 0f354314327..808e5fc281f 100644 --- a/addons/marketing_campaign_mailchimp/__init__.py +++ b/addons/marketing_campaign_mailchimp/__init__.py @@ -20,5 +20,5 @@ ############################################################################## import marketing_campaign_mailchimp - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file +import wizard +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/marketing_campaign_mailchimp/__openerp__.py b/addons/marketing_campaign_mailchimp/__openerp__.py index bd614607b97..2a913eaa8da 100644 --- a/addons/marketing_campaign_mailchimp/__openerp__.py +++ b/addons/marketing_campaign_mailchimp/__openerp__.py @@ -32,6 +32,7 @@ 'init_xml': [], 'update_xml': [ 'marketing_campaign_mailchimp_view.xml', + 'wizard/create_list_view.xml', ], 'demo_xml': [], 'installable': True, diff --git a/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp.py b/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp.py index a1c3162cee2..f3d8386623e 100644 --- a/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp.py +++ b/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp.py @@ -18,16 +18,19 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## - -from osv import fields, osv - +import urllib import urllib2 import simplejson as json +import time +from datetime import datetime + +from osv import fields, osv +from marketing_campaign.marketing_campaign import _intervalTypes mailchimp_url = 'http://%s.api.mailchimp.com/1.2' -class marketing_campaign_mailchimp_account(osv.osv): #{{{ - _name = "marketing.campaign.mailchimp.account" +class mailchimp_account(osv.osv): + _name = "mailchimp.account" _columns = { 'name': fields.char('Account Name', size=64), @@ -52,12 +55,10 @@ class marketing_campaign_mailchimp_account(osv.osv): #{{{ params['password'] = mailchimp_account.password else : params['apikey'] = mailchimp_account.apikey - params = '&'.join(map(lambda x : '%s=%s' %(x, params[x]), params)) url = mailchimp_url%mailchimp_account.data_center+ '/?method=%s'%method - req = urllib2.Request(url, params) - handle = urllib2.urlopen(req) - response = json.loads(handle.read()) - return response + params = urllib.urlencode(params, doseq=True) + response = urllib2.urlopen(url, params) + return json.loads(response.read()) def button_approve(self, cr, uid, ids, context): acc_obj = self.browse(cr, uid, ids)[0] @@ -80,33 +81,57 @@ class marketing_campaign_mailchimp_account(osv.osv): #{{{ def button_cancel(self, cr, uid, ids, context): self.write(cr, uid, ids, {'state': 'cancelled'}) return True - -marketing_campaign_mailchimp_account() #}}} + + def add_partner_list(self, cr, uid, account_id, list_id, partner_ids): + vals = {} # just dictionary with partner_id and updated in list or not + for partner in self.pool.get('res.partner').browse(cr, uid, partner_ids): + params = {'id' : list_id, + 'email_address' : partner.email, + 'email_type':'text', + 'merge_vars[FNAME]':partner.name , + 'merge_vars[date]' : time.strftime('%Y-%m-%d'), + 'merge_vars[phone]' : partner.phone, + 'merge_vars[website]' : partner.website, + 'merge_vars[address][country]' : partner.country.code, + 'merge_vars[address][city]' : partner.city, + 'double_optin':False} + vals[partner.id] = self.get_response(cr, uid, account_id, + 'listSubscribe', params) + return vals + +mailchimp_account() + +class mailchimp_list(osv.osv_memory): + _name = "mailchimp.list" + _description = "Mailchimp list" + + _columns = { + 'mailchimp_account_id': fields.many2one('mailchimp.account', + 'Mailchimp Account', required=True), + 'name': fields.char('Name', size=64) + } + +mailchimp_list() -#class marketing_campaign_mailchimp_list(osv.osv_memory): #{{{ -# _name = "marketing.campaign.mailchimp.list" -# -# _columns = { -# 'name': fields.char('Name', size=64), -# 'mailchimp_account_id': fields.many2one('marketing.campaign.mailchimp.account', 'Account'), -# 'list_id': fields.char('List Id', size=64,), -# } -# -# _defaults = { -# 'state': lambda *a: 'draft' -# } -# -#marketing_campaign_mailchimp_list() #}}} +class marketing_campaign(osv.osv): + _inherit = "marketing.campaign" -class marketing_campaign_segment(osv.osv): #{{{ - _inherit = "marketing.campaign.segment" + _columns = { + 'mailchimp_account_id': fields.many2one( + 'mailchimp.account', 'Account'), + 'mailchimp_campaign': fields.char('campaign', size=64), + } +marketing_campaign() + +class marketing_campaign_activity(osv.osv): + _inherit = "marketing.campaign.activity" + _columns = { - 'synchro': fields.boolean('Mailchimp Synchro'), 'mailchimp_account_id': fields.many2one( - 'marketing.campaign.mailchimp.account', 'Account'), + 'mailchimp.account', 'Account'), 'mailchimp_list': fields.char('List', size=64), - } + } def onchange_mailchimp(self, cr, uid, ids, mailchimp_account_id): if mailchimp_account_id: @@ -116,16 +141,70 @@ class marketing_campaign_segment(osv.osv): #{{{ def onchange_mailchimp_list(self, cr, uid, ids, mailchimp_account_id, mailchimp_list): if mailchimp_account_id and mailchimp_list: - lists = self.pool.get('marketing.campaign.mailchimp.account').get_response(cr, + lists = self.pool.get('mailchimp.account').get_response(cr, uid, mailchimp_account_id, 'lists') - list_names = [list['name'] for list in lists] + list_names = [l['name'] for l in lists] if mailchimp_list not in list_names: raise osv.except_osv('Error!!!',"Lists doesn't exists") else : return {} return {'value':{}} -marketing_campaign_segment() #}}} - + def process_wi_mailchimp(self, cr, uid, activity, workitem, context={}): + mailchimp_account_id = activity.mailchimp_account_id.id + list_name = activity.mailchimp_list + mc_acc_obj = self.pool.get('mailchimp.account') + lists = mc_acc_obj.get_response(cr, uid, mailchimp_account_id, 'lists') + list_id = '' + for l in lists : + if l['name'] == list_name: + list_id = l['id'] + break; + res_model = workitem.object_id.model + res_id = workitem.res_id + model_obj = self.pool.get(res_model).browse(cr, uid, res_id) + params ={} + if res_model == 'res.partner' : + params.update({'email_address' : model_obj.email, + 'merge_vars[FNAME]':model_obj.name and model_obj.name or '', + 'merge_vars[website]' : model_obj.website, + 'merge_vars[address][country]' : model_obj.country.code, + }) + elif res_model == 'crm.lead' : + params.update({'email_address' : model_obj.email_from, + 'merge_vars[FNAME]':model_obj.partner_name and \ + model_obj.partner_name or '', + 'merge_vars[address][country]' : model_obj.country_id and \ + model_obj.country_id.code or '' + }) + if params['email_address'] : + user = mc_acc_obj.get_response(cr, uid, mailchimp_account_id, + 'listMemberInfo', + {'id' : list_id, + 'email_address': params['email_address']}) + # if there s no user with the specify email it will return error code + # and thus we add that user otherwise user is alredy subscribe and there + # is no need to subscribe user again + if 'error' in user: + params.update({'id' : list_id, + 'email_type':'text', + 'double_optin':False, + 'merge_vars[date]' : time.strftime('%Y-%m-%d'), + 'merge_vars[address][city]' : model_obj.city and model_obj.city or '', + 'merge_vars[phone]' : model_obj.phone and model_obj.phone or '', + }) + res = mc_acc_obj.get_response(cr, uid, mailchimp_account_id, 'listSubscribe', params) + # handle mailchimp error + return True + else : + return {'error_msg' : "Invalid Email Address"} + + def __init__(self, *args): + res = super(marketing_campaign_activity, self).__init__(*args) + self._actions.update({'mailchimp' : self.process_wi_mailchimp}) + self._actions_type.append(('mailchimp', 'Mailchimp')) + return res + +marketing_campaign_activity() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp_view.xml b/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp_view.xml index 7a84f17311d..f2151d8d820 100644 --- a/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp_view.xml +++ b/addons/marketing_campaign_mailchimp/marketing_campaign_mailchimp_view.xml @@ -4,23 +4,38 @@ <!-- ================================================================ - Marketing Segments Inherited View - mailchimp + Marketing Activity Inherited View - mailchimp ================================================================ --> - <record model="ir.ui.view" id="view_marketing_campaign_segment_form_inherit"> - <field name="name">marketing.campaign.segment.form.inherit</field> - <field name="model">marketing.campaign.segment</field> + <record model="ir.ui.view" id="view_marketing_campaign_activity_form_inherit"> + <field name="name">marketing.campaign.activity.form.inherit</field> + <field name="model">marketing.campaign.activity</field> <field name="type">form</field> - <field name="inherit_id" ref="marketing_campaign.view_marketing_campaign_segment_form"/> + <field name="inherit_id" ref="marketing_campaign.view_marketing_campaign_activity_form"/> <field name="arch" type="xml"> - <field name="date_done" position="after"> - <separator string="Mailchimp Synchronization" colspan="4"/> - <field name="synchro"/> - <group colspan="2" attrs="{'invisible':[('synchro','!=',True)]}"> - <field name="mailchimp_account_id" attrs="{'required':[('synchro','=',True)]}" domain="[('state','=','approved')]" on_change="onchange_mailchimp(mailchimp_account_id)"/> - <field name="mailchimp_list" attrs="{'required':[('synchro','=',True)]}" on_change="onchange_mailchimp_list(mailchimp_account_id,mailchimp_list)"/> - </group> + <field name="type" position="after"> + <group colspan="2" ><!--attrs="{'invisible':[('type','!=','mailchimp')]}"--> + <field name="mailchimp_account_id" attrs="{'required':[('type','=','mailchimp')]}" domain="[('state','=','approved')]" on_change="onchange_mailchimp(mailchimp_account_id)"/> + <field name="mailchimp_list" attrs="{'required':[('type','=','mailchimp')]}" on_change="onchange_mailchimp_list(mailchimp_account_id,mailchimp_list)"/> + </group> + </field> + </field> + </record> + + + + <record model="ir.ui.view" id="view_marketing_campaign_form_inherit"> + <field name="name">marketing.campaign.form.inherit</field> + <field name="model">marketing.campaign</field> + <field name="type">form</field> + <field name="inherit_id" ref="marketing_campaign.view_marketing_campaign_form"/> + <field name="arch" type="xml"> + <field name="type" position="after"> + <group colspan="2" attrs="{'invisible':[('type','!=','mailchimp')]}"> + <field name="mailchimp_account_id" attrs="{'required':[('type','=','mailchimp')]}" domain="[('state','=','approved')]" on_change="onchange_mailchimp(mailchimp_account_id)"/> + <field name="mailchimp_list" attrs="{'required':[('type','=','mailchimp')]}" on_change="onchange_mailchimp_list(mailchimp_account_id,mailchimp_list)"/> + </group> </field> </field> </record> @@ -35,9 +50,9 @@ <menuitem name="Tools" id="base.menu_tools" icon="STOCK_PREFERENCES" sequence="15"/> <menuitem name="Mailchimps" id="menu_action_mailchimp" parent="base.menu_tools" /> - <record model="ir.ui.view" id="view_marketing_campaign_mailchimp_account_tree"> - <field name="name">marketing.campaign.mailchimp.account.tree</field> - <field name="model">marketing.campaign.mailchimp.account</field> + <record model="ir.ui.view" id="view_mailchimp_account_tree"> + <field name="name">mailchimp.account.tree</field> + <field name="model">mailchimp.account</field> <field name="type">tree</field> <field name="arch" type="xml"> <tree string="All Accounts"> @@ -49,9 +64,9 @@ </field> </record> - <record model="ir.ui.view" id="view_marketing_campaign_mailchimp_account_form"> - <field name="name">marketing.campaign.mailchimp.account.form</field> - <field name="model">marketing.campaign.mailchimp.account</field> + <record model="ir.ui.view" id="view_mailchimp_account_form"> + <field name="name">mailchimp.account.form</field> + <field name="model">mailchimp.account</field> <field name="type">form</field> <field name="arch" type="xml"> <form string="Account"> @@ -71,16 +86,16 @@ </field> </record> - <record model="ir.actions.act_window" id="action_marketing_campaign_mailchimp_account"> + <record model="ir.actions.act_window" id="action_mailchimp_account"> <field name="name">All Mailchimp Accounts</field> <field name="type">ir.actions.act_window</field> - <field name="res_model">marketing.campaign.mailchimp.account</field> + <field name="res_model">mailchimp.account</field> <field name="view_type">form</field> <field name="view_mode">tree,form</field> - <field name="view_id" ref="view_marketing_campaign_mailchimp_account_tree"/> + <field name="view_id" ref="view_mailchimp_account_tree"/> </record> - <menuitem id="menu_action_marketing_campaign_mailchimp_account" parent="menu_action_mailchimp" action="action_marketing_campaign_mailchimp_account" sequence="40"/> + <menuitem id="menu_action_mailchimp_account" parent="menu_action_mailchimp" action="action_mailchimp_account" sequence="40"/> </data> </openerp> diff --git a/addons/marketing_campaign_mailchimp/wizard/__init__.py b/addons/marketing_campaign_mailchimp/wizard/__init__.py new file mode 100755 index 00000000000..713b0c1e773 --- /dev/null +++ b/addons/marketing_campaign_mailchimp/wizard/__init__.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +############################################################################## + +import create_list + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/marketing_campaign_mailchimp/wizard/create_list.py b/addons/marketing_campaign_mailchimp/wizard/create_list.py new file mode 100755 index 00000000000..0a490787de5 --- /dev/null +++ b/addons/marketing_campaign_mailchimp/wizard/create_list.py @@ -0,0 +1,64 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +############################################################################## + +from osv import fields, osv +from tools.translate import _ +import netsvc + +class create_list(osv.osv_memory): + _name = "create.list" + _description = "Create List of mailchimp" +# crm.lead remain + _columns = { + 'mailchimp_account_id': fields.many2one('mailchimp.account', + 'Mailchimp Account', required=True), + 'mailchimp_list_id': fields.many2one('mailchimp.list', 'List'), + 'list_name': fields.char('Name',size = 64), + 'partner_ids': fields.many2many('res.partner', + 'create_list_partner_rel', + 'cust_list_id', 'partner_id', + 'Partner'), + + } + + def onchange_mailchimp_account_id(self, cr, uid, ids, mailchimp_account_id, + action): + print mailchimp_account_id,action, + return {'value':{}} + + def create_list(self, cr, uid, ids, context=None): + create_list_obj = self.browse(cr, uid, ids[0]) + print create_list_obj.id + mailchimp_account_obj = self.pool.get('mailchimp.account') + account_id = create_list_obj.mailchimp_account_id + lists = mailchimp_account_obj.get_response(cr, uid, account_id.id, 'lists') + lists = dict([(l['name'],l['id']) for l in lists]) + print lists + if create_list_obj.list_name not in lists.keys(): + raise osv.except_osv(_('UserError'), + _('There is no list define in account %s') % (account_id.name)) + list_id = lists[create_list_obj.list_name] + mailchimp_account_obj.add_partner_list(cr, uid, account_id.id, list_id, + create_list_obj.partner_ids) + return {} +create_list() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/marketing_campaign_mailchimp/wizard/create_list_view.xml b/addons/marketing_campaign_mailchimp/wizard/create_list_view.xml new file mode 100755 index 00000000000..f15826aeaea --- /dev/null +++ b/addons/marketing_campaign_mailchimp/wizard/create_list_view.xml @@ -0,0 +1,35 @@ +<openerp> + <data> + <record id="view_create_list" model="ir.ui.view"> + <field name="name">create.list.form</field> + <field name="model">create.list</field> + <field name="type">form</field> + <field name="arch" type="xml"> + <form string="Update List"> + <field name="mailchimp_account_id" on_change = "onchange_mailchimp_account_id(mailchimp_account_id,action)"/> + <field name="list_name" /> + <newline/> + <separator string="Partner" colspan="4"/> + <field name="partner_ids" nolabel="1" colspan="4"/> + <!--group "> + <field name="mailchimp_list_id" /> + </group--> + <group col="4" colspan="4"> + <button special="cancel" string="Cancel" icon="gtk-cancel"/> + <button name="create_list" string="Update" type="object" icon="gtk-ok"/> + </group> + </form> + </field> + </record> + <record id="action_create_list" model="ir.actions.act_window"> + <field name="name">Update List</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">create.list</field> + <field name="view_type">form</field> + <field name="view_id" ref="view_create_list"/> + <field name="target">new</field> + </record> + <menuitem id="menu_action_mailchimp_create_list" parent="menu_action_mailchimp" action="action_create_list" sequence="40"/> + + </data> +</openerp> diff --git a/addons/mrp_operations/i18n/hi.po b/addons/mrp_operations/i18n/hi.po index 25ec3464854..fa9b4ac9ef8 100644 --- a/addons/mrp_operations/i18n/hi.po +++ b/addons/mrp_operations/i18n/hi.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-15 03:33+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: mrp_operations diff --git a/addons/mrp_repair/i18n/hi.po b/addons/mrp_repair/i18n/hi.po new file mode 100644 index 00000000000..902b7bbf5bd --- /dev/null +++ b/addons/mrp_repair/i18n/hi.po @@ -0,0 +1,669 @@ +# Hindi translation for openobject-addons +# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2010. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2009-08-28 16:01+0000\n" +"PO-Revision-Date: 2010-06-15 06:37+0000\n" +"Last-Translator: vir (Open ERP) <vir@tinyerp.com>\n" +"Language-Team: Hindi <hi@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" +"X-Generator: Launchpad (build Unknown)\n" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Fees Line" +msgstr "मुक्त लाइन" + +#. module: mrp_repair +#: field:mrp.repair.fee,repair_id:0 +#: field:mrp.repair.line,repair_id:0 +msgid "Repair Order Ref" +msgstr "मरम्मत के आदेश संदर्भ" + +#. module: mrp_repair +#: field:mrp.repair.line,move_id:0 +msgid "Inventory Move" +msgstr "" + +#. module: mrp_repair +#: constraint:ir.actions.act_window:0 +msgid "Invalid model name in the action definition." +msgstr "कार्य की परिभाषा में मॉडल का नाम अमान्य है." + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Untaxed amount" +msgstr "कर राशि के बिना" + +#. module: mrp_repair +#: field:mrp.repair,state:0 +msgid "Repair State" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Printing Date" +msgstr "मुद्रण दिनांक" + +#. module: mrp_repair +#: field:mrp.repair.fee,product_uom_qty:0 +#: rml:repair.order:0 +msgid "Quantity" +msgstr "मात्रा" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Set to Draft" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +msgid "Invoice Exception" +msgstr "चालान अपवाद" + +#. module: mrp_repair +#: field:mrp.repair,address_id:0 +msgid "Delivery Address" +msgstr "वितरण पता" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Make Invoice" +msgstr "चालान बनाएँ" + +#. module: mrp_repair +#: field:mrp.repair.fee,price_subtotal:0 +#: field:mrp.repair.line,price_subtotal:0 +msgid "Subtotal" +msgstr "उप कुल" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Invoice address :" +msgstr "चालान पता" + +#. module: mrp_repair +#: field:mrp.repair,guarantee_limit:0 +msgid "Guarantee limit" +msgstr "गारंटी की सीमा" + +#. module: mrp_repair +#: field:mrp.repair,amount_tax:0 +#: field:mrp.repair.fee,tax_id:0 +#: field:mrp.repair.line,tax_id:0 +msgid "Taxes" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Net Total :" +msgstr "नेट कुल:" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "VAT" +msgstr "वैट" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Operations" +msgstr "संचालन" + +#. module: mrp_repair +#: field:mrp.repair,move_id:0 +msgid "Move" +msgstr "स्थानान्तर" + +#. module: mrp_repair +#: model:ir.actions.act_window,name:mrp_repair.action_repair_order_tree +msgid "Repair Orders" +msgstr "मरम्मत के आदेश" + +#. module: mrp_repair +#: model:ir.actions.report.xml,name:mrp_repair.report_mrp_repair +msgid "Quotation / Order" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Extra Info" +msgstr "अतिरिक्त जानकारी" + +#. module: mrp_repair +#: field:mrp.repair,partner_id:0 +msgid "Partner" +msgstr "साथी" + +#. module: mrp_repair +#: model:ir.actions.act_window,name:mrp_repair.action_repair_quotation_tree +#: model:ir.ui.menu,name:mrp_repair.menu_repair_quotation +msgid "Repairs in quotation" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +#: selection:mrp.repair.line,state:0 +msgid "Confirmed" +msgstr "पुष्टि" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Recreate Invoice" +msgstr "फिर से चालान बनाने" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Repairs order" +msgstr "मरम्मत के आदेश" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Repair Order N° :" +msgstr "मरम्मत के आदेश N °:" + +#. module: mrp_repair +#: field:mrp.repair,prodlot_id:0 +#: rml:repair.order:0 +msgid "Lot Number" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +msgid "Under Repair" +msgstr "मरम्मत के तहत" + +#. module: mrp_repair +#: field:mrp.repair,fees_lines:0 +msgid "Fees Lines" +msgstr "फीस लाइन्स" + +#. module: mrp_repair +#: model:ir.model,name:mrp_repair.model_mrp_repair_fee +msgid "Repair Fees line" +msgstr "मरम्मत शुल्क लाइन" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Fees Line(s)" +msgstr "फीस लाइन (ओं)" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +msgid "To be Invoiced" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Shipping address :" +msgstr "शिपिंग का पता" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Start Repair" +msgstr "मरम्मत शुरू" + +#. module: mrp_repair +#: field:mrp.repair.line,product_uom_qty:0 +msgid "Quantity (UoM)" +msgstr "मात्रा (UoM)" + +#. module: mrp_repair +#: field:mrp.repair.fee,to_invoice:0 +#: field:mrp.repair.line,to_invoice:0 +msgid "To Invoice" +msgstr "" + +#. module: mrp_repair +#: model:ir.ui.menu,name:mrp_repair.menu_repair_order +msgid "Repairs" +msgstr "मरम्मत" + +#. module: mrp_repair +#: field:mrp.repair,picking_id:0 +msgid "Packing" +msgstr "पैकिंग" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Total :" +msgstr "कुल:" + +#. module: mrp_repair +#: field:mrp.repair,pricelist_id:0 +msgid "Pricelist" +msgstr "मूल्य सूची" + +#. module: mrp_repair +#: help:mrp.repair,state:0 +msgid "Gives the state of the Repair Order" +msgstr "मरम्मत के आदेश की स्थिति देना" + +#. module: mrp_repair +#: view:mrp.repair:0 +#: field:mrp.repair,quotation_notes:0 +msgid "Quotation Notes" +msgstr "" + +#. module: mrp_repair +#: model:ir.actions.act_window,name:mrp_repair.action_repair_progress_tree +#: model:ir.ui.menu,name:mrp_repair.menu_repair_progress +msgid "Repairs in progress" +msgstr "मरम्मत में प्रगति" + +#. module: mrp_repair +#: constraint:ir.ui.view:0 +msgid "Invalid XML for View Architecture!" +msgstr "संरचना देखने के लिए अमान्य XML!" + +#. module: mrp_repair +#: help:mrp.repair,guarantee_limit:0 +msgid "" +"The garantee limit is computed as: last move date + warranty defined on " +"selected product. If the current date is below the garantee limit, each " +"operation and fee you will add will be set as 'not to invoiced' by default. " +"Note that you can change manually afterwards." +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Repair Line" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "N° :" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,invoice_method:0 +msgid "Invoice Method" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,repaired:0 +msgid "Repaired" +msgstr "" + +#. module: mrp_repair +#: wizard_field:mrp.repair.make_invoice,init,group:0 +msgid "Group by partner invoice address" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.fee,invoice_line_id:0 +#: field:mrp.repair.line,invoice_line_id:0 +msgid "Invoice Line" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Total amount" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair.line,state:0 +msgid "Canceled" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,invoice_method:0 +msgid "Before Repair" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,location_id:0 +msgid "Current Location" +msgstr "" + +#. module: mrp_repair +#: wizard_button:mrp.repair.cancel,display,yes:0 +msgid "Yes" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,invoiced:0 +#: field:mrp.repair.fee,invoiced:0 +#: field:mrp.repair.line,invoiced:0 +msgid "Invoiced" +msgstr "" + +#. module: mrp_repair +#: wizard_button:mrp.repair.cancel,display,end:0 +msgid "No" +msgstr "" + +#. module: mrp_repair +#: wizard_view:mrp.repair.make_invoice,init:0 +#: wizard_button:mrp.repair.make_invoice,init,invoice:0 +msgid "Create invoices" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair.line,type:0 +#: rml:repair.order:0 +msgid "Add" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair.line,state:0 +msgid "Draft" +msgstr "" + +#. module: mrp_repair +#: model:ir.actions.act_window,name:mrp_repair.action_repair_order_form +#: model:ir.ui.menu,name:mrp_repair.menu_repair_form +msgid "New Repair" +msgstr "" + +#. module: mrp_repair +#: constraint:ir.model:0 +msgid "" +"The Object name must start with x_ and not contain any special character !" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,amount_untaxed:0 +msgid "Untaxed Amount" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.line,state:0 +msgid "Status" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Guarantee Limit" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,product_id:0 +#: rml:repair.order:0 +msgid "Product to Repair" +msgstr "" + +#. module: mrp_repair +#: help:mrp.repair,pricelist_id:0 +msgid "The pricelist comes from the selected partner, by default." +msgstr "" + +#. module: mrp_repair +#: wizard_view:mrp.repair.cancel,display:0 +msgid "" +"This operation will cancel the Repair process, but will not cancel it's " +"Invoice. Do you want to continue?" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +msgid "Quotation" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Compute" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Confirm Repair" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Repair Quotation" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "End Repair" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "History" +msgstr "" + +#. module: mrp_repair +#: model:ir.model,name:mrp_repair.model_mrp_repair +msgid "Repairs Order" +msgstr "" + +#. module: mrp_repair +#: model:ir.actions.act_window,name:mrp_repair.action_repair_ready_tree +#: model:ir.ui.menu,name:mrp_repair.menu_repair_ready +msgid "Repairs Ready to Start" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Qty" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +#: selection:mrp.repair.line,state:0 +msgid "Done" +msgstr "" + +#. module: mrp_repair +#: model:ir.actions.act_window,name:mrp_repair.action_repair_2binvoiced_tree +#: model:ir.ui.menu,name:mrp_repair.menu_repair_2binvoiced +msgid "Repairs to be invoiced" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,invoice_id:0 +msgid "Invoice" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Fees" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +#: wizard_button:mrp.repair.make_invoice,init,end:0 +msgid "Cancel" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.line,location_dest_id:0 +msgid "Dest. Location" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Operation Line(s)" +msgstr "" + +#. module: mrp_repair +#: model:ir.model,name:mrp_repair.model_mrp_repair_line +msgid "Repair Operations Lines" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,location_dest_id:0 +msgid "Delivery Location" +msgstr "" + +#. module: mrp_repair +#: model:ir.module.module,shortdesc:mrp_repair.module_meta_information +msgid "Products Repairs Module" +msgstr "" + +#. module: mrp_repair +#: help:mrp.repair,invoice_method:0 +msgid "" +"This field allow you to change the workflow of the repair order. If value " +"selected is different from 'No Invoice', it also allow you to select the " +"pricelist and invoicing address." +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.fee,price_unit:0 +#: field:mrp.repair.line,price_unit:0 +#: rml:repair.order:0 +msgid "Unit Price" +msgstr "" + +#. module: mrp_repair +#: wizard_view:mrp.repair.make_invoice,init:0 +msgid "Do you really want to create the invoices ?" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.fee,name:0 +#: field:mrp.repair.line,name:0 +#: rml:repair.order:0 +msgid "Description" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,operations:0 +msgid "Operation Lines" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.fee,product_id:0 +#: field:mrp.repair.line,product_id:0 +msgid "Product" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Invoice Corrected" +msgstr "" + +#. module: mrp_repair +#: help:mrp.repair,deliver_bool:0 +msgid "" +"Check this box if you want to manage the delivery once the product is " +"repaired. If cheked, it will create a packing with selected product. Note " +"that you can select the locations in the Info tab, if you have the extended " +"view." +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.line,type:0 +msgid "Type" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Price" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,deliver_bool:0 +msgid "Deliver" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +#: field:mrp.repair,internal_notes:0 +msgid "Internal Notes" +msgstr "" + +#. module: mrp_repair +#: rml:repair.order:0 +msgid "Taxes:" +msgstr "" + +#. module: mrp_repair +#: model:ir.actions.wizard,name:mrp_repair.wizard_mrp_repair_make_invoice +msgid "Make invoices" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,name:0 +msgid "Repair Ref" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "UoM" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair.line,type:0 +#: rml:repair.order:0 +msgid "Remove" +msgstr "" + +#. module: mrp_repair +#: wizard_view:mrp.repair.cancel,display:0 +msgid "Cancel Repair...??" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.fee,product_uom:0 +#: field:mrp.repair.line,product_uom:0 +msgid "Product UoM" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,partner_invoice_id:0 +msgid "Invoicing Address" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,invoice_method:0 +msgid "After Repair" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Invoicing" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair.line,location_id:0 +msgid "Source Location" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "Quality" +msgstr "" + +#. module: mrp_repair +#: model:ir.actions.wizard,name:mrp_repair.action_cancel_repair +#: view:mrp.repair:0 +msgid "Cancel Repair" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,invoice_method:0 +msgid "No Invoice" +msgstr "" + +#. module: mrp_repair +#: view:mrp.repair:0 +msgid "States" +msgstr "" + +#. module: mrp_repair +#: help:mrp.repair,partner_id:0 +msgid "" +"This field allow you to choose the parner that will be invoiced and delivered" +msgstr "" + +#. module: mrp_repair +#: field:mrp.repair,amount_total:0 +msgid "Total" +msgstr "" + +#. module: mrp_repair +#: selection:mrp.repair,state:0 +msgid "Ready to Repair" +msgstr "" diff --git a/addons/multi_company/i18n/it.po b/addons/multi_company/i18n/it.po index e817d7b073b..aa820150b5a 100644 --- a/addons/multi_company/i18n/it.po +++ b/addons/multi_company/i18n/it.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2009-12-08 11:46+0000\n" -"PO-Revision-Date: 2010-01-26 11:01+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"PO-Revision-Date: 2010-06-15 12:42+0000\n" +"Last-Translator: Rinux <Unknown>\n" "Language-Team: Italian <it@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-04-17 04:21+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: multi_company @@ -70,7 +70,7 @@ msgstr "" #: model:ir.module.module,shortdesc:multi_company.module_meta_information #: view:multi_company.default:0 msgid "Multi Company" -msgstr "" +msgstr "Multi Azienda" #. module: multi_company #: model:ir.module.module,description:multi_company.module_meta_information @@ -133,17 +133,17 @@ msgstr "" #. module: multi_company #: model:ir.model,name:multi_company.model_multi_company_default msgid "multi_company.default" -msgstr "" +msgstr "multi_azienda.default" #. module: multi_company #: help:multi_company.default,company_id:0 msgid "Company where the user is connected" -msgstr "" +msgstr "Azienda con la quale l'utente è connesso" #. module: multi_company #: model:ir.actions.act_window,name:multi_company.action_inventory_form msgid "Default Company per Object" -msgstr "" +msgstr "Azienda Predefinita per Oggetto" #. module: multi_company #: field:multi_company.default,expression:0 @@ -173,12 +173,12 @@ msgstr "" #. module: multi_company #: help:multi_company.default,expression:0 msgid "Expression, must be True to match" -msgstr "" +msgstr "Espressione, deve essere Vero per corrispondere" #. module: multi_company #: model:ir.ui.menu,name:multi_company.menu_action_inventory_form msgid "Default company per Object" -msgstr "" +msgstr "Azienda predefinitaa per Oggetto" #. module: multi_company #: code:addons/multi_company/multi_company.py:0 diff --git a/addons/point_of_sale/security/ir.model.access.csv b/addons/point_of_sale/security/ir.model.access.csv index ac87e1cc8b9..ee428ec2b19 100644 --- a/addons/point_of_sale/security/ir.model.access.csv +++ b/addons/point_of_sale/security/ir.model.access.csv @@ -37,3 +37,5 @@ "access_pos_make_payment","pos.make.payment","model_pos_make_payment","point_of_sale.group_pos_user",1,0,0,0 "access_pos_scan_product","pos.scan.product","model_pos_scan_product","point_of_sale.group_pos_user",1,0,0,0 "access_pos_payment_report","pos.payment.report","model_pos_payment_report","point_of_sale.group_pos_user",1,0,0,0 +"access_report_pos_order","report.pos.order","model_report_pos_order","point_of_sale.group_pos_user",1,0,0,0 +"access_pos_return","pos.return","model_pos_return","point_of_sale.group_pos_user",1,0,0,0 diff --git a/addons/product/i18n/vi.po b/addons/product/i18n/vi.po index ac596518e54..35d5e643150 100644 --- a/addons/product/i18n/vi.po +++ b/addons/product/i18n/vi.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-15 03:33+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: product diff --git a/addons/stock/i18n/nl.po b/addons/stock/i18n/nl.po index 445249906e7..25a0c9e5358 100644 --- a/addons/stock/i18n/nl.po +++ b/addons/stock/i18n/nl.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-15 03:33+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: stock diff --git a/addons/stock/i18n/pl.po b/addons/stock/i18n/pl.po index c1d33bc694d..aade911d099 100644 --- a/addons/stock/i18n/pl.po +++ b/addons/stock/i18n/pl.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-06-15 03:33+0000\n" +"X-Launchpad-Export-Date: 2010-06-16 03:49+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: stock diff --git a/addons/stock/security/ir.model.access.csv b/addons/stock/security/ir.model.access.csv index 9b8c7a100b3..f7bbc7ea3b9 100644 --- a/addons/stock/security/ir.model.access.csv +++ b/addons/stock/security/ir.model.access.csv @@ -44,3 +44,10 @@ "access_action_traceability","action.traceability","model_action_traceability","stock.group_stock_user",1,0,0,0 "access_stock_split_into","stock.split.into","model_stock_split_into","stock.group_stock_user",1,0,0,0 "access_stock_split_into_manager","stock.split.into","model_stock_split_into","stock.group_stock_manager",1,1,1,1 +"access_report_stock_move","report.stock.move","model_report_stock_move","stock.group_stock_user",1,1,1,1 +"access_report_stock_inventory","report.stock.inventory","model_report_stock_inventory","stock.group_stock_user",1,1,1,1 +"access_stock_replacement","stock.replacement","model_stock_replacement","stock.group_stock_user",1,1,1,1 +"access_stock_replacement_result","stock.replacement.result","model_stock_replacement_result","stock.group_stock_user",1,1,1,1 +"access_stock_ups","stock.ups","model_stock_ups","stock.group_stock_user",1,1,1,1 +"access_stock_ups_final","stock.ups.final","model_stock_ups_final","stock.group_stock_user",1,1,1,1 +"access_stock_ups_upload","stock.ups.upload","model_stock_ups_upload","stock.group_stock_user",1,1,1,1
\ No newline at end of file diff --git a/addons/stock/stock.py b/addons/stock/stock.py index 1b8e3de26e5..a7241c2bbe6 100644 --- a/addons/stock/stock.py +++ b/addons/stock/stock.py @@ -602,7 +602,7 @@ class stock_picking(osv.osv): ("2binvoiced", "To Be Invoiced"), ("none", "Not from Picking")], "Invoice Status", select=True, required=True, readonly=True, states={'draft': [('readonly', False)]}), - 'company_id': fields.many2one('res.company', 'Company', select=1), + 'company_id': fields.many2one('res.company', 'Company', required=True, select=1), } _defaults = { 'name': lambda self, cr, uid, context: '/', @@ -1380,7 +1380,7 @@ class stock_move(osv.osv): \nThe state is \'Waiting\' if the move is waiting for another one.'), 'price_unit': fields.float('Unit Price', digits_compute= dp.get_precision('Account')), - 'company_id': fields.many2one('res.company', 'Company', select=1), + 'company_id': fields.many2one('res.company', 'Company', required=True, select=1), 'partner_id': fields.related('picking_id','address_id','partner_id',type='many2one', relation="res.partner", string="Partner"), 'backorder_id': fields.related('picking_id','backorder_id',type='many2one', relation="stock.picking", string="Back Order"), 'origin': fields.related('picking_id','origin',type='char', size=64, relation="stock.picking", string="Origin"), diff --git a/addons/stock_location/mrp_pull.py b/addons/stock_location/mrp_pull.py index 4f9c22a54cd..a8a5026bf4c 100644 --- a/addons/stock_location/mrp_pull.py +++ b/addons/stock_location/mrp_pull.py @@ -68,7 +68,7 @@ class procurement_order(osv.osv): origin = (proc.origin or proc.name or '').split(':')[0] +':'+line.name picking_id = self.pool.get('stock.picking').create(cr, uid, { 'origin': origin, - 'company_id': line.chained_company_id and line.chained_company_id.id or False, + 'company_id': line.company_id and line.company_id.id or False, 'type': line.picking_type, 'stock_journal_id': line.journal_id and line.journal_id.id or False, 'move_type': 'one', @@ -79,7 +79,7 @@ class procurement_order(osv.osv): move_id = self.pool.get('stock.move').create(cr, uid, { 'name': line.name, 'picking_id': picking_id, - 'company_id': line.chained_company_id and line.chained_company_id.id or False, + 'company_id': line.company_id and line.company_id.id or False, 'product_id': proc.product_id.id, 'date_planned': proc.date_planned, 'product_qty': proc.product_qty, diff --git a/addons/stock_location/stock.py b/addons/stock_location/stock.py index d49b9ffbafa..561cdbbecda 100644 --- a/addons/stock_location/stock.py +++ b/addons/stock_location/stock.py @@ -40,7 +40,6 @@ class stock_location_path(osv.osv): ("none", "Not from Picking")], "Invoice Status", required=True,), 'picking_type': fields.selection([('out','Sending Goods'),('in','Getting Goods'),('internal','Internal'),('delivery','Delivery')], 'Shipping Type', required=True, select=True, help="Depending on the company, choose whatever you want to receive or send products"), - 'chained_company_id': fields.many2one('res.company', 'Chained Company', help='Set here the belonging company of the chained move'), 'auto': fields.selection( [('auto','Automatic Move'), ('manual','Manual Operation'),('transparent','Automatic No Step Added')], 'Automatic Move', @@ -73,7 +72,6 @@ class product_pulled_flow(osv.osv): 'company_id': fields.many2one('res.company', 'Company', help="Is used to know to which company belong packings and moves"), 'partner_address_id': fields.many2one('res.partner.address', 'Partner Address'), 'picking_type': fields.selection([('out','Sending Goods'),('in','Getting Goods'),('internal','Internal'),('delivery','Delivery')], 'Shipping Type', required=True, select=True, help="Depending on the company, choose whatever you want to receive or send products"), - 'chained_company_id': fields.many2one('res.company', 'Chained Company', help='Set here the belonging company of the chained move'), 'product_id':fields.many2one('product.product','Product'), 'invoice_state': fields.selection([ ("invoiced", "Invoiced"), @@ -120,7 +118,7 @@ class stock_location(osv.osv): if product: for path in product.path_ids: if path.location_from_id.id == location.id: - return path.location_dest_id, path.auto, path.delay, path.journal_id and path.journal_id.id or False, path.chained_company_id and path.chained_companyd_id.id or False, path.picking_type + return path.location_dest_id, path.auto, path.delay, path.journal_id and path.journal_id.id or False, path.company_id and path.company_id.id or False, path.picking_type return super(stock_location, self).chained_location_get(cr, uid, location, partner, product, context) stock_location() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: |
