From cb81b9b6d5647709f5705a47fb51f5c807f754d6 Mon Sep 17 00:00:00 2001 From: "Anand Patel (OpenERP)" Date: Wed, 18 Jul 2012 12:02:34 +0530 Subject: [PATCH 001/211] [FIX][TRUNK]Sale order reference changed in sale order calendar view lp bug: https://launchpad.net/bugs/1003861 fixed bzr revid: pan@tinyerp.com-20120718063234-jnhjkhrjnnocg4ag --- addons/web_calendar/static/src/js/calendar.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/web_calendar/static/src/js/calendar.js b/addons/web_calendar/static/src/js/calendar.js index 59ca58bec86..2989b31ddfa 100644 --- a/addons/web_calendar/static/src/js/calendar.js +++ b/addons/web_calendar/static/src/js/calendar.js @@ -387,8 +387,8 @@ instance.web_calendar.CalendarView = instance.web.View.extend({ } }, get_event_data: function(event_obj) { - var data = { - name: event_obj.text + var data = { + //name: event_obj.text }; data[this.date_start] = instance.web.datetime_to_str(event_obj.start_date); if (this.date_stop) { From aa6aa08f8d08d21834d72466f7f0518783052f90 Mon Sep 17 00:00:00 2001 From: "Anand Patel (OpenERP)" Date: Wed, 29 Aug 2012 15:46:42 +0530 Subject: [PATCH 002/211] [FIX][TRUNK]Sale order reference changed in sale order calendar view bzr revid: pan@tinyerp.com-20120829101642-04qta93yeifjew1i --- addons/web_calendar/static/src/js/calendar.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/addons/web_calendar/static/src/js/calendar.js b/addons/web_calendar/static/src/js/calendar.js index b1c164a3c61..4b839f0666a 100644 --- a/addons/web_calendar/static/src/js/calendar.js +++ b/addons/web_calendar/static/src/js/calendar.js @@ -388,9 +388,7 @@ instance.web_calendar.CalendarView = instance.web.View.extend({ } }, get_event_data: function(event_obj) { - var data = { - //name: event_obj.text - }; + var data = {}; data[this.date_start] = instance.web.datetime_to_str(event_obj.start_date); if (this.date_stop) { data[this.date_stop] = instance.web.datetime_to_str(event_obj.end_date); From df107e19ec3e51827721f96557dd97927c23126d Mon Sep 17 00:00:00 2001 From: "Turkesh Patel (Open ERP)" Date: Mon, 3 Sep 2012 14:16:25 +0530 Subject: [PATCH 003/211] [FIX] pass context in search and name_get method inside name_search. bzr revid: tpa@tinyerp.com-20120903084625-nnkl9k2ljaauv4bh --- openerp/addons/base/res/res_users.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index ca45f03258c..012ab8a116a 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -310,10 +310,10 @@ class res_users(osv.osv): context={} ids = [] if name: - ids = self.search(cr, user, [('login','=',name)]+ args, limit=limit) + ids = self.search(cr, user, [('login','=',name)]+ args, limit=limit, context=context) if not ids: - ids = self.search(cr, user, [('name',operator,name)]+ args, limit=limit) - return self.name_get(cr, user, ids) + ids = self.search(cr, user, [('name',operator,name)]+ args, limit=limit, context=context) + return self.name_get(cr, user, ids, context=context) def copy(self, cr, uid, id, default=None, context=None): user2copy = self.read(cr, uid, [id], ['login','name'])[0] From 98681b7a12787743b4d22f8e641f211791c2387c Mon Sep 17 00:00:00 2001 From: "Amit (OpenERP)" Date: Fri, 28 Sep 2012 15:54:10 +0530 Subject: [PATCH 004/211] [FIX] Add company rule for res_partner_bank object lp bug: https://launchpad.net/bugs/1057924 fixed bzr revid: amp@tinyerp.com-20120928102410-ir8xwhmeqntxlcr9 --- openerp/addons/base/security/base_security.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/openerp/addons/base/security/base_security.xml b/openerp/addons/base/security/base_security.xml index 3cb8f7044b2..aeb2ab153c6 100644 --- a/openerp/addons/base/security/base_security.xml +++ b/openerp/addons/base/security/base_security.xml @@ -83,6 +83,13 @@ [('user_id','=',user.id)] + + Partner bank company rule + + + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] + + From 2a1bd62ed539a7613d04ed37ac631b8a8c2a6822 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Wed, 3 Oct 2012 11:18:46 +0530 Subject: [PATCH 005/211] [IMP] dialog after survey is completed says Complete Survey rename it to Survey Completed bzr revid: fka@tinyerp.com-20121003054846-6yy1eicqk5oqancq --- addons/survey/wizard/survey_answer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/survey/wizard/survey_answer.py b/addons/survey/wizard/survey_answer.py index 8ece1e184cf..76d2f012be8 100644 --- a/addons/survey/wizard/survey_answer.py +++ b/addons/survey/wizard/survey_answer.py @@ -435,7 +435,7 @@ class survey_question_wiz(osv.osv_memory): xml_form = etree.Element('form', {'string': _('Complete Survey Answer')}) xml_footer = etree.SubElement(xml_form, 'footer', {'col': '6', 'colspan': '4' ,'class': 'oe_survey_title_height'}) - etree.SubElement(xml_form, 'separator', {'string': 'Complete Survey', 'colspan': "4"}) + etree.SubElement(xml_form, 'separator', {'string': 'Survey Completed', 'colspan': "4"}) etree.SubElement(xml_form, 'label', {'string': 'Thanks for your Answer'}) etree.SubElement(xml_form, 'newline') etree.SubElement(xml_footer, 'button', {'special':"cancel",'string':"OK",'colspan':"2",'class':'oe_highlight'}) From 38bca04309f47d2e13b8f26374efeb28d900da54 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Wed, 3 Oct 2012 11:37:49 +0530 Subject: [PATCH 006/211] [IMP] remove Survey Open Date field in survey bzr revid: fka@tinyerp.com-20121003060749-wr41pmtkfhdfdcr5 --- addons/survey/survey.py | 3 +-- addons/survey/survey_demo.xml | 3 --- addons/survey/survey_view.xml | 3 --- 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/addons/survey/survey.py b/addons/survey/survey.py index d01140092d4..a996c4312ab 100644 --- a/addons/survey/survey.py +++ b/addons/survey/survey.py @@ -53,7 +53,6 @@ class survey(osv.osv): 'id': fields.integer('ID'), 'title': fields.char('Survey Title', size=128, required=1), 'page_ids': fields.one2many('survey.page', 'survey_id', 'Page'), - 'date_open': fields.datetime('Survey Open Date', readonly=1), 'date_close': fields.datetime('Survey Close Date', readonly=1), 'max_response_limit': fields.integer('Maximum Answer Limit', help="Set to one if survey is answerable only once"), @@ -80,7 +79,7 @@ class survey(osv.osv): } def survey_open(self, cr, uid, ids, arg): - self.write(cr, uid, ids, {'state': 'open', 'date_open': strftime("%Y-%m-%d %H:%M:%S")}) + self.write(cr, uid, ids, {'state': 'open'}) return True def survey_close(self, cr, uid, ids, arg): diff --git a/addons/survey/survey_demo.xml b/addons/survey/survey_demo.xml index 6f89095c699..f9a3e8f3159 100644 --- a/addons/survey/survey_demo.xml +++ b/addons/survey/survey_demo.xml @@ -17,7 +17,6 @@ 1 1 5 - @@ -166,7 +165,6 @@ 1 1 5 - @@ -633,7 +631,6 @@ 1 1 5 - diff --git a/addons/survey/survey_view.xml b/addons/survey/survey_view.xml index 01d6098df55..c71e4e8d537 100644 --- a/addons/survey/survey_view.xml +++ b/addons/survey/survey_view.xml @@ -220,7 +220,6 @@ - @@ -253,7 +252,6 @@ - @@ -295,7 +293,6 @@ - From 70d971c3d71ba0dd49cad49a3088e3b386b4bbf0 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Wed, 3 Oct 2012 12:04:32 +0530 Subject: [PATCH 007/211] [IMP] every field editable in survey when survey is in open state bzr revid: fka@tinyerp.com-20121003063432-nktuyqz1batgu0ne --- addons/survey/survey.py | 8 ++++---- addons/survey/survey_view.xml | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/addons/survey/survey.py b/addons/survey/survey.py index a996c4312ab..999dec0aadc 100644 --- a/addons/survey/survey.py +++ b/addons/survey/survey.py @@ -60,10 +60,10 @@ class survey(osv.osv): help="Set to one if you require only one Answer per user"), 'state': fields.selection([('open', 'Open'), ('cancel', 'Cancelled'),('close', 'Closed') ], 'Status', readonly=True), 'responsible_id': fields.many2one('res.users', 'Responsible', help="User responsible for survey"), - 'tot_start_survey': fields.integer("Total Started Survey", readonly=1), - 'tot_comp_survey': fields.integer("Total Completed Survey", readonly=1), + 'tot_start_survey': fields.integer("Total Started Survey"), + 'tot_comp_survey': fields.integer("Total Completed Survey"), 'note': fields.text('Description', size=128), - 'history': fields.one2many('survey.history', 'survey_id', 'History Lines', readonly=True), + 'history': fields.one2many('survey.history', 'survey_id', 'History Lines'), 'users': fields.many2many('res.users', 'survey_users_rel', 'sid', 'uid', 'Users'), 'send_response': fields.boolean('Email Notification on Answer'), 'type': fields.many2one('survey.type', 'Type'), @@ -187,7 +187,7 @@ class survey_history(osv.osv): 'date': fields.datetime('Date started', readonly=1), } _defaults = { - 'date': lambda * a: datetime.datetime.now() + 'date': lambda * a: strftime("%Y-%m-%d %H:%M:%S") } survey_history() diff --git a/addons/survey/survey_view.xml b/addons/survey/survey_view.xml index c71e4e8d537..a03df6800e7 100644 --- a/addons/survey/survey_view.xml +++ b/addons/survey/survey_view.xml @@ -49,8 +49,8 @@ - - + + @@ -215,7 +215,7 @@ - + From 9f79e73ac88f12770cffb43b41d5f81fafc30db0 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Wed, 3 Oct 2012 12:53:48 +0530 Subject: [PATCH 008/211] [IMP] Add m2m_tags for Select Partne & change default mail subject in send invitation bzr revid: fka@tinyerp.com-20121003072348-lw76eoym8i3jdqcc --- addons/survey/wizard/survey_send_invitation.py | 4 ++-- addons/survey/wizard/survey_send_invitation.xml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/survey/wizard/survey_send_invitation.py b/addons/survey/wizard/survey_send_invitation.py index 5677a985e09..61e1dd23665 100644 --- a/addons/survey/wizard/survey_send_invitation.py +++ b/addons/survey/wizard/survey_send_invitation.py @@ -50,8 +50,6 @@ class survey_send_invitation(osv.osv_memory): _defaults = { 'send_mail': lambda *a: 1, 'send_mail_existing': lambda *a: 1, - 'mail_subject': lambda *a: "Invitation", - 'mail_subject_existing': lambda *a: "Invitation", 'mail_from': lambda *a: tools.config['email_from'] } @@ -75,6 +73,8 @@ class survey_send_invitation(osv.osv_memory): data['mail'] = '''Hello %(name)s, \n\n We are inviting you for following survey. \ \n ''' + name + '''\n Your login ID: %(login)s, Your password: %(passwd)s \n link :- http://'''+ str(socket.gethostname()) + ''':8080 \n\n Thanks,''' + data['mail_subject'] = "Invitation for " + sur.title + data['mail_subject_existing'] = "Invitation for " + sur.title return data def create_report(self, cr, uid, res_ids, report_name=False, file_name=False): diff --git a/addons/survey/wizard/survey_send_invitation.xml b/addons/survey/wizard/survey_send_invitation.xml index 340cb58b5cf..a611973d772 100644 --- a/addons/survey/wizard/survey_send_invitation.xml +++ b/addons/survey/wizard/survey_send_invitation.xml @@ -16,7 +16,7 @@ - + From 6ff616dd04e02303c855dc0a51b397810e9f8739 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Wed, 3 Oct 2012 14:50:43 +0530 Subject: [PATCH 009/211] [IMP] improve code bzr revid: fka@tinyerp.com-20121003092043-e3id1isgm65itoef --- addons/survey/survey.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/survey/survey.py b/addons/survey/survey.py index 999dec0aadc..6e350ccf9ce 100644 --- a/addons/survey/survey.py +++ b/addons/survey/survey.py @@ -187,7 +187,7 @@ class survey_history(osv.osv): 'date': fields.datetime('Date started', readonly=1), } _defaults = { - 'date': lambda * a: strftime("%Y-%m-%d %H:%M:%S") + 'date': lambda * a: datetime.datetime.now() } survey_history() From f2ebee24e88f642dddfb339b00c8ca6f73467da1 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Wed, 3 Oct 2012 16:05:24 +0530 Subject: [PATCH 010/211] [IMP] improve code bzr revid: fka@tinyerp.com-20121003103524-j480eazwonxu1g4y --- addons/survey/wizard/survey_send_invitation.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/survey/wizard/survey_send_invitation.py b/addons/survey/wizard/survey_send_invitation.py index 61e1dd23665..8c9bb2a7fbe 100644 --- a/addons/survey/wizard/survey_send_invitation.py +++ b/addons/survey/wizard/survey_send_invitation.py @@ -50,7 +50,6 @@ class survey_send_invitation(osv.osv_memory): _defaults = { 'send_mail': lambda *a: 1, 'send_mail_existing': lambda *a: 1, - 'mail_from': lambda *a: tools.config['email_from'] } def genpasswd(self): @@ -68,13 +67,14 @@ class survey_send_invitation(osv.osv_memory): name += "\t --> " + sur.title + "\n" if sur.state != 'open': msg += sur.title + "\n" + data['mail_subject'] = "Invitation for " + sur.title + data['mail_subject_existing'] = "Invitation for " + sur.title + data['mail_from'] = sur.responsible_id.email if msg: raise osv.except_osv(_('Warning!'), _('%sSurvey is not in open state') % msg) data['mail'] = '''Hello %(name)s, \n\n We are inviting you for following survey. \ \n ''' + name + '''\n Your login ID: %(login)s, Your password: %(passwd)s \n link :- http://'''+ str(socket.gethostname()) + ''':8080 \n\n Thanks,''' - data['mail_subject'] = "Invitation for " + sur.title - data['mail_subject_existing'] = "Invitation for " + sur.title return data def create_report(self, cr, uid, res_ids, report_name=False, file_name=False): From 064d80917e76d52e133b6609cdc3ce3fbaf9d4f9 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Wed, 3 Oct 2012 17:19:46 +0530 Subject: [PATCH 011/211] [IMP] change old port 8080 bzr revid: fka@tinyerp.com-20121003114946-n25y3i5yx2s3bild --- addons/survey/wizard/survey_send_invitation.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/survey/wizard/survey_send_invitation.py b/addons/survey/wizard/survey_send_invitation.py index 8c9bb2a7fbe..b6d68a47004 100644 --- a/addons/survey/wizard/survey_send_invitation.py +++ b/addons/survey/wizard/survey_send_invitation.py @@ -74,7 +74,7 @@ class survey_send_invitation(osv.osv_memory): raise osv.except_osv(_('Warning!'), _('%sSurvey is not in open state') % msg) data['mail'] = '''Hello %(name)s, \n\n We are inviting you for following survey. \ \n ''' + name + '''\n Your login ID: %(login)s, Your password: %(passwd)s - \n link :- http://'''+ str(socket.gethostname()) + ''':8080 \n\n Thanks,''' + \n link :- http://'''+ str(socket.gethostname()) + ''':8069 \n\n Thanks,''' return data def create_report(self, cr, uid, res_ids, report_name=False, file_name=False): From 64229a2a93a25c57ddc4ed421827c6a06e72675d Mon Sep 17 00:00:00 2001 From: Vijaykumar Baladaniya Date: Thu, 4 Oct 2012 12:13:47 +0530 Subject: [PATCH 012/211] Employee create time, not have a default email address. bzr revid: vba@tinyerp.com-20121004064347-b6oiab179q4smhs1 --- addons/hr/hr.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/hr/hr.py b/addons/hr/hr.py index eafe5d09844..d2214f5e14f 100644 --- a/addons/hr/hr.py +++ b/addons/hr/hr.py @@ -231,7 +231,7 @@ class hr_employee(osv.osv): def onchange_address_id(self, cr, uid, ids, address, context=None): if address: address = self.pool.get('res.partner').browse(cr, uid, address, context=context) - return {'value': {'work_email': address.email, 'work_phone': address.phone, 'mobile_phone': address.mobile}} + return {'value': {'work_phone': address.phone, 'mobile_phone': address.mobile}} return {'value': {}} def onchange_company(self, cr, uid, ids, company, context=None): From 1c243a435f0256bddf7dabd8a087b8c881ed9e38 Mon Sep 17 00:00:00 2001 From: Vijaykumar Baladaniya Date: Thu, 4 Oct 2012 13:03:32 +0530 Subject: [PATCH 013/211] View improvement of autometed action form. bzr revid: vba@tinyerp.com-20121004073332-1bdvfmsc18ev8r1e --- addons/base_action_rule/base_action_rule.py | 2 +- .../base_action_rule_view.xml | 27 +++++++++---------- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index 7e9bbacab13..fa606fdeefc 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -117,7 +117,7 @@ this if you want the rule to send a reminder by email to the user."), the rule to mark CC(mail to any other person defined in actions)."), 'act_mail_to_email': fields.char('Mail to these Emails', size=128, \ help="Email-id of the persons whom mail is to be sent"), - 'act_mail_body': fields.text('Mail body', help="Content of mail"), + 'act_mail_body': fields.text('Mail body', translate=True, help="Content of mail"), 'regex_name': fields.char('Regex on Resource Name', size=128, help="Regular expression for matching name of the resource\ \ne.g.: 'urgent.*' will search for records having name starting with the string 'urgent'\ \nNote: This is case sensitive search."), diff --git a/addons/base_action_rule/base_action_rule_view.xml b/addons/base_action_rule/base_action_rule_view.xml index 0d268438a41..64d65434cfc 100644 --- a/addons/base_action_rule/base_action_rule_view.xml +++ b/addons/base_action_rule/base_action_rule_view.xml @@ -56,21 +56,20 @@ - - - - - - - + + + + + + + + + + + + + - - - - - - - From c2eb5616b7ed3ffb84ef1094b8296b20e5ab9174 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Thu, 4 Oct 2012 14:43:51 +0530 Subject: [PATCH 014/211] [IMP] improve code bzr revid: fka@tinyerp.com-20121004091351-sky1or0w62lqmf1d --- addons/survey/survey.py | 10 ++++++---- addons/survey/survey_demo.xml | 3 +++ addons/survey/survey_view.xml | 3 +++ 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/addons/survey/survey.py b/addons/survey/survey.py index 6e350ccf9ce..b3d38aeeb4d 100644 --- a/addons/survey/survey.py +++ b/addons/survey/survey.py @@ -53,6 +53,7 @@ class survey(osv.osv): 'id': fields.integer('ID'), 'title': fields.char('Survey Title', size=128, required=1), 'page_ids': fields.one2many('survey.page', 'survey_id', 'Page'), + 'date_open': fields.datetime('Survey Open Date', readonly=1), 'date_close': fields.datetime('Survey Close Date', readonly=1), 'max_response_limit': fields.integer('Maximum Answer Limit', help="Set to one if survey is answerable only once"), @@ -60,10 +61,10 @@ class survey(osv.osv): help="Set to one if you require only one Answer per user"), 'state': fields.selection([('open', 'Open'), ('cancel', 'Cancelled'),('close', 'Closed') ], 'Status', readonly=True), 'responsible_id': fields.many2one('res.users', 'Responsible', help="User responsible for survey"), - 'tot_start_survey': fields.integer("Total Started Survey"), - 'tot_comp_survey': fields.integer("Total Completed Survey"), + 'tot_start_survey': fields.integer("Total Started Survey", readonly=1), + 'tot_comp_survey': fields.integer("Total Completed Survey", readonly=1), 'note': fields.text('Description', size=128), - 'history': fields.one2many('survey.history', 'survey_id', 'History Lines'), + 'history': fields.one2many('survey.history', 'survey_id', 'History Lines', readonly=True), 'users': fields.many2many('res.users', 'survey_users_rel', 'sid', 'uid', 'Users'), 'send_response': fields.boolean('Email Notification on Answer'), 'type': fields.many2one('survey.type', 'Type'), @@ -76,10 +77,11 @@ class survey(osv.osv): 'tot_comp_survey': lambda * a: 0, 'send_response': lambda * a: 1, 'response_user': lambda * a:1, + 'date_open': strftime("%Y-%m-%d %H:%M:%S"), } def survey_open(self, cr, uid, ids, arg): - self.write(cr, uid, ids, {'state': 'open'}) + self.write(cr, uid, ids, {'state': 'open', 'date_open': strftime("%Y-%m-%d %H:%M:%S")}) return True def survey_close(self, cr, uid, ids, arg): diff --git a/addons/survey/survey_demo.xml b/addons/survey/survey_demo.xml index f9a3e8f3159..6f89095c699 100644 --- a/addons/survey/survey_demo.xml +++ b/addons/survey/survey_demo.xml @@ -17,6 +17,7 @@ 1 1 5 + @@ -165,6 +166,7 @@ 1 1 5 + @@ -631,6 +633,7 @@ 1 1 5 + diff --git a/addons/survey/survey_view.xml b/addons/survey/survey_view.xml index a03df6800e7..e6d92b72ba1 100644 --- a/addons/survey/survey_view.xml +++ b/addons/survey/survey_view.xml @@ -220,6 +220,7 @@ + @@ -252,6 +253,7 @@ + @@ -293,6 +295,7 @@ + From 9dd89df9ce1132de0174ea56145237f9006787e8 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Thu, 4 Oct 2012 16:47:03 +0530 Subject: [PATCH 015/211] [IMP] make all fields readable in close state bzr revid: fka@tinyerp.com-20121004111703-nrzz774gjydu0oo8 --- addons/survey/survey_view.xml | 14 +++++++------- addons/survey/wizard/survey_answer.py | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/addons/survey/survey_view.xml b/addons/survey/survey_view.xml index e6d92b72ba1..c0bf7d25b7b 100644 --- a/addons/survey/survey_view.xml +++ b/addons/survey/survey_view.xml @@ -38,15 +38,15 @@
- - - + + + @@ -55,7 +55,7 @@ - +
- +
- + diff --git a/addons/survey/wizard/survey_answer.py b/addons/survey/wizard/survey_answer.py index 76d2f012be8..5a027601446 100644 --- a/addons/survey/wizard/survey_answer.py +++ b/addons/survey/wizard/survey_answer.py @@ -429,7 +429,7 @@ class survey_question_wiz(osv.osv_memory): vals['attachment_ids'] = [(0,0,{'name': a_name, 'datas_fname': a_name, 'datas': str(a_content).encode('base64')}) - for a_name, a_content in attachments] + for a_name, a_content in attachments.items()] self.pool.get('mail.mail').create(cr, uid, vals, context=context) xml_form = etree.Element('form', {'string': _('Complete Survey Answer')}) From b33ca4139a77a87de36e6a20e1682c1fd80148f1 Mon Sep 17 00:00:00 2001 From: "Harry (OpenERP)" Date: Thu, 4 Oct 2012 17:37:19 +0530 Subject: [PATCH 016/211] [IMP] base_action_rule: reminder by email: remove fields related to remainder. for that we can configure email server action watchers emails: remove fields related to CC,TO. added followers to set as a followers of documents improve view of action rule bzr revid: hmo@tinyerp.com-20121004120719-5btx7h1jp2398jra --- addons/base_action_rule/base_action_rule.py | 223 +++--------------- .../base_action_rule_view.xml | 116 ++++----- addons/base_status/base_stage.py | 40 +--- addons/crm/crm_action_rule.py | 40 +--- addons/crm/crm_action_rule_view.xml | 50 +--- 5 files changed, 88 insertions(+), 381 deletions(-) diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index fa606fdeefc..cb2239f76a7 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -19,15 +19,16 @@ # ############################################################################## -from osv import fields, osv, orm -from tools.translate import _ from datetime import datetime from datetime import timedelta +import re +import time + +from osv import fields, osv, orm +from tools.translate import _ from tools.safe_eval import safe_eval from tools import ustr import pooler -import re -import time import tools @@ -48,32 +49,20 @@ class base_action_rule(osv.osv): _description = 'Action Rules' def _state_get(self, cr, uid, context=None): - """ Get State - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param context: A standard dictionary for contextual values """ + """ Get State """ return self.state_get(cr, uid, context=context) def state_get(self, cr, uid, context=None): - """ Get State - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param context: A standard dictionary for contextual values """ + """ Get State """ return [('', '')] def priority_get(self, cr, uid, context=None): - """ Get Priority - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param context: A standard dictionary for contextual values """ + """ Get Priority """ return [('', '')] _columns = { 'name': fields.char('Rule Name', size=64, required=True), - 'model_id': fields.many2one('ir.model', 'Object', required=True), + 'model_id': fields.many2one('ir.model', 'Related Document Model', required=True, domain=[('osv_memory','=', False)]), 'create_date': fields.datetime('Create Date', readonly=1), 'active': fields.boolean('Active', help="If the active field is set to False,\ it will allow you to hide the rule without removing it."), @@ -98,35 +87,14 @@ trigger date, like sending a reminder 15 minutes before a meeting."), 'trg_state_from': fields.selection(_state_get, 'Status', size=16), 'trg_state_to': fields.selection(_state_get, 'Button Pressed', size=16), - 'act_method': fields.char('Call Object Method', size=64), 'act_user_id': fields.many2one('res.users', 'Set Responsible to'), 'act_state': fields.selection(_state_get, 'Set State to', size=16), - 'act_email_cc': fields.char('Add Watchers (Cc)', size=250, help="\ -These people will receive a copy of the future communication between partner \ -and users by email"), - 'act_remind_partner': fields.boolean('Remind Partner', help="Check \ -this if you want the rule to send a reminder by email to the partner."), - 'act_remind_user': fields.boolean('Remind Responsible', help="Check \ -this if you want the rule to send a reminder by email to the user."), - 'act_reply_to': fields.char('Reply-To', size=64), - 'act_remind_attach': fields.boolean('Remind with Attachment', help="Check this if you want that all documents attached to the object be attached to the reminder email sent."), - 'act_mail_to_user': fields.boolean('Mail to Responsible', help="Check\ - this if you want the rule to send an email to the responsible person."), - 'act_mail_to_watchers': fields.boolean('Mail to Watchers (CC)', - help="Check this if you want \ -the rule to mark CC(mail to any other person defined in actions)."), - 'act_mail_to_email': fields.char('Mail to these Emails', size=128, \ - help="Email-id of the persons whom mail is to be sent"), - 'act_mail_body': fields.text('Mail body', translate=True, help="Content of mail"), + 'act_followers': fields.many2many("res.partner", string="Set Followers"), 'regex_name': fields.char('Regex on Resource Name', size=128, help="Regular expression for matching name of the resource\ \ne.g.: 'urgent.*' will search for records having name starting with the string 'urgent'\ \nNote: This is case sensitive search."), 'server_action_id': fields.many2one('ir.actions.server', 'Server Action', help="Describes the action name.\neg:on which object which action to be taken on basis of which condition"), - 'filter_id':fields.many2one('ir.filters', 'Filter', required=False), - 'act_email_from' : fields.char('Email From', size=64, required=False, - help="Use a python expression to specify the right field on which one than we will use for the 'From' field of the header"), - 'act_email_to' : fields.char('Email To', size=64, required=False, - help="Use a python expression to specify the right field on which one than we will use for the 'To' field of the header"), + 'filter_id':fields.many2one('ir.filters', 'Filter', required=False), #TODO: set domain [('model_id','=',model)] 'last_run': fields.datetime('Last Run', readonly=1), } @@ -134,42 +102,24 @@ the rule to mark CC(mail to any other person defined in actions)."), 'active': lambda *a: True, 'trg_date_type': lambda *a: 'none', 'trg_date_range_type': lambda *a: 'day', - 'act_mail_to_user': lambda *a: 0, - 'act_remind_partner': lambda *a: 0, - 'act_remind_user': lambda *a: 0, - 'act_mail_to_watchers': lambda *a: 0, } _order = 'sequence' - def onchange_model_id(self, cr, uid, ids, name): - #This is not a good solution as it will affect the domain only on onchange - res = {'domain':{'filter_id':[]}} - if name: - model_name = self.pool.get('ir.model').read(cr, uid, [name], ['model']) - if model_name: - mod_name = model_name[0]['model'] - res['domain'] = {'filter_id': [('model_id','=',mod_name)]} - else: - res['value'] = {'filter_id':False} - return res def post_action(self, cr, uid, ids, model, context=None): # Searching for action rules cr.execute("SELECT model.model, rule.id FROM base_action_rule rule \ LEFT JOIN ir_model model on (model.id = rule.model_id) \ - WHERE active") + WHERE active and model = %%s", model) res = cr.fetchall() # Check if any rule matching with current object for obj_name, rule_id in res: - if not (model == obj_name): - continue # TODO add this condition in the WHERE clause above. - else: - obj = self.pool.get(obj_name) - # If the rule doesn't involve a time condition, run it immediately - # Otherwise we let the scheduler run the action - if self.browse(cr, uid, rule_id, context=context).trg_date_type == 'none': - self._action(cr, uid, [rule_id], obj.browse(cr, uid, ids, context=context), context=context) + obj = self.pool.get(obj_name) + # If the rule doesn't involve a time condition, run it immediately + # Otherwise we let the scheduler run the action + if self.browse(cr, uid, rule_id, context=context).trg_date_type == 'none': + self._action(cr, uid, [rule_id], obj.browse(cr, uid, ids, context=context), context=context) return True def _create(self, old_create, model, context=None): @@ -279,58 +229,8 @@ the rule to mark CC(mail to any other person defined in actions)."), rule_pool.write(cr, uid, [rule.id], {'last_run': now}, context=context) - def format_body(self, body): - """ Foramat Action rule's body - @param self: The object pointer """ - return body and tools.ustr(body) or '' - - def format_mail(self, obj, body): - data = { - 'object_id': obj.id, - 'object_subject': hasattr(obj, 'name') and obj.name or False, - 'object_date': hasattr(obj, 'date') and obj.date or False, - 'object_description': hasattr(obj, 'description') and obj.description or False, - 'object_user': hasattr(obj, 'user_id') and (obj.user_id and obj.user_id.name) or '/', - 'object_user_email': hasattr(obj, 'user_id') and (obj.user_id and \ - obj.user_id.email) or '/', - 'object_user_phone': hasattr(obj, 'partner_address_id') and (obj.partner_address_id and \ - obj.partner_address_id.phone) or '/', - 'partner': hasattr(obj, 'partner_id') and (obj.partner_id and obj.partner_id.name) or '/', - 'partner_email': hasattr(obj, 'partner_address_id') and (obj.partner_address_id and\ - obj.partner_address_id.email) or '/', - } - return self.format_body(body % data) - - def email_send(self, cr, uid, obj, emails, body, emailfrom=None, context=None): - if not emailfrom: - emailfrom = tools.config.get('email_from') - body = self.format_mail(obj, body) - if not emailfrom and hasattr(obj, 'user_id') and obj.user_id and obj.user_id.email: - emailfrom = obj.user_id.email - emailfrom = tools.ustr(emailfrom) - reply_to = emailfrom - if not emailfrom: - raise osv.except_osv(_('Error!'), - _("Missing default email address or missing email on responsible user")) - return self.pool.get('mail.mail').create(cr, uid, - { 'email_from': emailfrom, - 'email_to': emails.join(','), - 'reply_to': reply_to, - 'state': 'outgoing', - 'subject': '[%d] %s' % (obj.id, tools.ustr(obj.name)), - 'body_html': '
%s
' % body, - 'res_id': obj.id, - 'model': obj._table_name, - 'auto_delete': True - }, context=context) - - def do_check(self, cr, uid, action, obj, context=None): - """ check Action - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param context: A standard dictionary for contextual values """ + """ check Action """ if context is None: context = {} ok = True @@ -373,79 +273,32 @@ the rule to mark CC(mail to any other person defined in actions)."), return ok def do_action(self, cr, uid, action, model_obj, obj, context=None): - """ Do Action - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param action: pass action - @param model_obj: pass Model object - @param context: A standard dictionary for contextual values """ + """ Do Action """ if context is None: context = {} if action.server_action_id: context.update({'active_id':obj.id, 'active_ids':[obj.id]}) self.pool.get('ir.actions.server').run(cr, uid, [action.server_action_id.id], context) - write = {} + write = {} if hasattr(obj, 'user_id') and action.act_user_id: - obj.user_id = action.act_user_id write['user_id'] = action.act_user_id.id if hasattr(obj, 'date_action_last'): write['date_action_last'] = time.strftime('%Y-%m-%d %H:%M:%S') if hasattr(obj, 'state') and action.act_state: - obj.state = action.act_state write['state'] = action.act_state - - if hasattr(obj, 'categ_id') and action.act_categ_id: - obj.categ_id = action.act_categ_id - write['categ_id'] = action.act_categ_id.id - + model_obj.write(cr, uid, [obj.id], write, context) - - if hasattr(model_obj, 'remind_user') and action.act_remind_user: - model_obj.remind_user(cr, uid, [obj.id], context, attach=action.act_remind_attach) - if hasattr(model_obj, 'remind_partner') and action.act_remind_partner: - model_obj.remind_partner(cr, uid, [obj.id], context, attach=action.act_remind_attach) - if action.act_method: - getattr(model_obj, 'act_method')(cr, uid, [obj.id], action, context) - - emails = [] - if hasattr(obj, 'user_id') and action.act_mail_to_user: - if obj.user_id: - emails.append(obj.user_id.email) - - if action.act_mail_to_watchers: - emails += (action.act_email_cc or '').split(',') - if action.act_mail_to_email: - emails += (action.act_mail_to_email or '').split(',') - - locals_for_emails = { - 'user' : self.pool.get('res.users').browse(cr, uid, uid, context=context), - 'obj' : obj, - } - - if action.act_email_to: - emails.append(safe_eval(action.act_email_to, {}, locals_for_emails)) - - emails = filter(None, emails) - if len(emails) and action.act_mail_body: - emails = list(set(emails)) - email_from = safe_eval(action.act_email_from, {}, locals_for_emails) - emails = tools.email_split(','.join(filter(None, emails))) - email_froms = tools.email_split(email_from) - if email_froms: - self.email_send(cr, uid, obj, emails, action.act_mail_body, emailfrom=email_froms[0]) + if hasattr(obj, 'state') and hasattr(obj, 'message_post') and action.act_state: + model_obj.message_post(cr, uid, [obj], _(action.act_state), context=context) + + if hasattr(obj, 'message_subscribe') and action.act_followers: + model_obj.message_subscribe(cr, uid, [obj.id], [x.id for x in action.act_followers], context=context) return True def _action(self, cr, uid, ids, objects, scrit=None, context=None): - """ Do Action - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Basic Action Rule’s IDs, - @param objects: pass objects - @param context: A standard dictionary for contextual values """ + """ Do Action """ if context is None: context = {} @@ -462,28 +315,6 @@ the rule to mark CC(mail to any other person defined in actions)."), context.update({'action': False}) return True - def _check_mail(self, cr, uid, ids, context=None): - """ Check Mail - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Action Rule’s IDs - @param context: A standard dictionary for contextual values """ - - empty = orm.browse_null() - rule_obj = self.pool.get('base.action.rule') - for rule in self.browse(cr, uid, ids, context=context): - if rule.act_mail_body: - try: - rule_obj.format_mail(empty, rule.act_mail_body) - except (ValueError, KeyError, TypeError): - return False - return True - - _constraints = [ - (_check_mail, 'Error ! The mail is not well formated.', ['act_mail_body']), - ] - base_action_rule() diff --git a/addons/base_action_rule/base_action_rule_view.xml b/addons/base_action_rule/base_action_rule_view.xml index 64d65434cfc..b35818ee8d9 100644 --- a/addons/base_action_rule/base_action_rule_view.xml +++ b/addons/base_action_rule/base_action_rule_view.xml @@ -12,81 +12,53 @@ base.action.rule
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + +
diff --git a/addons/base_status/base_stage.py b/addons/base_status/base_stage.py index 617af125215..999da23c560 100644 --- a/addons/base_status/base_stage.py +++ b/addons/base_status/base_stage.py @@ -302,50 +302,14 @@ class base_stage(object): rule_ids = rule_obj.search(cr, uid, [('model_id','=',model_ids[0])], context=context) return rule_obj._action(cr, uid, rule_ids, cases, scrit=scrit, context=context) - def remind_partner(self, cr, uid, ids, context=None, attach=False): - return self.remind_user(cr, uid, ids, context, attach, - destination=False) - - def remind_user(self, cr, uid, ids, context=None, attach=False, destination=True): - if hasattr(self, 'message_post'): - for case in self.browse(cr, uid, ids, context=context): - if destination: - recipient_id = case.user_id.partner_id.id - else: - if not case.email_from: - return False - recipient_id = self.pool.get('res.partner').find_or_create(cr, uid, case.email_from, context=context) - - body = case.description or "" - for message in case.message_ids: - if message.type == 'email' and message.body: - body = message.body - break - body = self.format_body(body) - attach_to_send = {} - if attach: - attach_ids = self.pool.get('ir.attachment').search(cr, uid, [('res_model', '=', self._name), ('res_id', '=', case.id)]) - attach_to_send = self.pool.get('ir.attachment').read(cr, uid, attach_ids, ['datas_fname', 'datas']) - attach_to_send = dict(map(lambda x: (x['datas_fname'], x['datas'].decode('base64')), attach_to_send)) - - subject = "Reminder: [%s] %s" % (case.id, case.name) - self.message_post(cr, uid, case.id, body=body, - subject=subject, attachments=attach_to_send, - partner_ids=[recipient_id], context=context) - return True - + def _check(self, cr, uid, ids=False, context=None): """ Function called by the scheduler to process cases for date actions. Must be overriden by inheriting classes. """ return True - def format_body(self, body): - return self.pool.get('base.action.rule').format_body(body) - - def format_mail(self, obj, body): - return self.pool.get('base.action.rule').format_mail(obj, body) - + # ****************************** # Notifications # ****************************** diff --git a/addons/crm/crm_action_rule.py b/addons/crm/crm_action_rule.py index 8b1ba655afc..49af2f74eeb 100644 --- a/addons/crm/crm_action_rule.py +++ b/addons/crm/crm_action_rule.py @@ -41,24 +41,15 @@ class base_action_rule(osv.osv): 'regex_history' : fields.char('Regular Expression on Case History', size=128), 'act_section_id': fields.many2one('crm.case.section', 'Set Team to'), 'act_categ_id': fields.many2one('crm.case.categ', 'Set Category to'), - 'act_mail_to_partner': fields.boolean('Mail to Partner', - help="Check this if you want the rule to send an email to the partner."), } - def email_send(self, cr, uid, obj, emails, body, emailfrom=tools.config.get('email_from', False), context=None): - mail_id = super(base_action_rule, self).email_send(cr, uid, obj, emails, body, emailfrom=emailfrom, context=context) - if mail_id and hasattr(obj, 'section_id') and obj.section_id and obj.section_id.alias_id: - reply_to = obj.section_id.alias_id.name_get()[0][1] - self.pool.get('mail.mail').write(cr, uid, [mail_id], {'reply_to': reply_to}, context=context) - return mail_id - def do_check(self, cr, uid, action, obj, context=None): ok = super(base_action_rule, self).do_check(cr, uid, action, obj, context=context) if hasattr(obj, 'section_id'): ok = ok and (not action.trg_section_id or action.trg_section_id.id == obj.section_id.id) - if hasattr(obj, 'categ_id'): - ok = ok and (not action.trg_categ_id or action.trg_categ_id.id == obj.categ_id.id) + if hasattr(obj, 'categ_ids'): + ok = ok and (not action.trg_categ_id or action.trg_categ_id.id in [x.id for x in obj.categ_ids]) #Cheking for history regex = action.regex_history @@ -81,35 +72,16 @@ class base_action_rule(osv.osv): return ok def do_action(self, cr, uid, action, model_obj, obj, context=None): + res = super(base_action_rule, self).do_action(cr, uid, action, model_obj, obj, context=context) write = {} if hasattr(action, 'act_section_id') and action.act_section_id: - obj.section_id = action.act_section_id write['section_id'] = action.act_section_id.id - if hasattr(obj, 'email_cc') and action.act_email_cc: - if '@' in (obj.email_cc or ''): - emails = obj.email_cc.split(",") - if obj.act_email_cc not in emails:# and '<'+str(action.act_email_cc)+">" not in emails: - write['email_cc'] = obj.email_cc + ',' + obj.act_email_cc - else: - write['email_cc'] = obj.act_email_cc - - # Put state change by rule in communication history - if hasattr(obj, 'state') and hasattr(obj, 'message_post') and action.act_state: - model_obj.message_post(cr, uid, [obj], _(action.act_state), context=context) + if hasattr(action, 'act_categ_id') and action.act_categ_id: + write['categ_ids'] = [4, action.act_categ_id] model_obj.write(cr, uid, [obj.id], write, context) - super(base_action_rule, self).do_action(cr, uid, action, model_obj, obj, context=context) - emails = [] - - if hasattr(obj, 'email_from') and action.act_mail_to_partner: - emails.append(obj.email_from) - emails = filter(None, emails) - if len(emails) and action.act_mail_body: - emails = list(set(emails)) - self.email_send(cr, uid, obj, emails, action.act_mail_body) - return True - + return res def state_get(self, cr, uid, context=None): """Gets available states for crm""" diff --git a/addons/crm/crm_action_rule_view.xml b/addons/crm/crm_action_rule_view.xml index f2a5f57702d..b7ac5037c31 100644 --- a/addons/crm/crm_action_rule_view.xml +++ b/addons/crm/crm_action_rule_view.xml @@ -7,53 +7,21 @@ base.action.rule - - - + + + + + + - - - - - - base.action.rule.form2.inherit - base.action.rule - - - - - - - - - - - - - - base.action.rule.form3.inherit - base.action.rule - - - + + - + - - - base.action.rule.form4.inherit - base.action.rule - - - - - - - - From 5738c0cca8a3247de8e4b064c372d7c8ee06a941 Mon Sep 17 00:00:00 2001 From: "Harry (OpenERP)" Date: Thu, 4 Oct 2012 18:13:52 +0530 Subject: [PATCH 017/211] [FIX] base_action_rule: fix bzr revid: hmo@tinyerp.com-20121004124352-r0nz9mihc5cmbh34 --- addons/base_action_rule/base_action_rule.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index cb2239f76a7..2328bf94cfd 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -111,7 +111,7 @@ trigger date, like sending a reminder 15 minutes before a meeting."), # Searching for action rules cr.execute("SELECT model.model, rule.id FROM base_action_rule rule \ LEFT JOIN ir_model model on (model.id = rule.model_id) \ - WHERE active and model = %%s", model) + WHERE active and model = %s", (model,)) res = cr.fetchall() # Check if any rule matching with current object for obj_name, rule_id in res: From f07e90b5cbfa0fbd8f8b57fa097bb5ba8f93a2cd Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Fri, 5 Oct 2012 11:08:34 +0530 Subject: [PATCH 018/211] [IMP] solve error When click on Edit Survey bzr revid: fka@tinyerp.com-20121005053834-62y619ae1xe10ojg --- addons/survey/wizard/survey_answer.py | 43 ++++++++++++++------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/addons/survey/wizard/survey_answer.py b/addons/survey/wizard/survey_answer.py index 5a027601446..10ab4bf82da 100644 --- a/addons/survey/wizard/survey_answer.py +++ b/addons/survey/wizard/survey_answer.py @@ -112,26 +112,29 @@ class survey_question_wiz(osv.osv_memory): flag = False fields = {} if sur_name_read.page == "next" or sur_name_rec.page_no == -1: - if total_pages > sur_name_rec.page_no + 1: - if ((context.has_key('active') and not context.get('active', False)) \ - or not context.has_key('active')) and not sur_name_rec.page_no + 1: - if sur_rec.state != "open" : - raise osv.except_osv(_('Warning!'),_("You cannot answer because the survey is not open.")) - cr.execute('select count(id) from survey_history where user_id=%s\ - and survey_id=%s', (uid,survey_id)) - res = cr.fetchone()[0] - user_limit = survey_obj.browse(cr, uid, survey_id) - user_limit = user_limit.response_user - if user_limit and res >= user_limit: - raise osv.except_osv(_('Warning!'),_("You cannot answer this survey more than %s times.") % (user_limit)) - - if sur_rec.max_response_limit and sur_rec.max_response_limit <= sur_rec.tot_start_survey and not sur_name_rec.page_no + 1: - survey_obj.write(cr, uid, survey_id, {'state':'close', 'date_close':strftime("%Y-%m-%d %H:%M:%S")}) - - p_id = p_id[sur_name_rec.page_no + 1] - surv_name_wiz.write(cr, uid, [context['sur_name_id'],], {'page_no' : sur_name_rec.page_no + 1}) - flag = True - page_number += 1 + if total_pages: + if total_pages > sur_name_rec.page_no + 1: + if ((context.has_key('active') and not context.get('active', False)) \ + or not context.has_key('active')) and not sur_name_rec.page_no + 1: + if sur_rec.state != "open" : + raise osv.except_osv(_('Warning!'),_("You cannot answer because the survey is not open.")) + cr.execute('select count(id) from survey_history where user_id=%s\ + and survey_id=%s', (uid,survey_id)) + res = cr.fetchone()[0] + user_limit = survey_obj.browse(cr, uid, survey_id) + user_limit = user_limit.response_user + if user_limit and res >= user_limit: + raise osv.except_osv(_('Warning!'),_("You cannot answer this survey more than %s times.") % (user_limit)) + + if sur_rec.max_response_limit and sur_rec.max_response_limit <= sur_rec.tot_start_survey and not sur_name_rec.page_no + 1: + survey_obj.write(cr, uid, survey_id, {'state':'close', 'date_close':strftime("%Y-%m-%d %H:%M:%S")}) + + p_id = p_id[sur_name_rec.page_no + 1] + surv_name_wiz.write(cr, uid, [context['sur_name_id'],], {'page_no' : sur_name_rec.page_no + 1}) + flag = True + page_number += 1 + else: + raise osv.except_osv(_('Warning!'),_('This survey has no pages defined. Please define the pages first.')) if sur_name_rec.page_no > - 1: pre_button = True else: From dab351dcc7d8680b91ba99a235811958b41917dc Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Fri, 5 Oct 2012 11:53:07 +0530 Subject: [PATCH 019/211] [IMP] solve error When no pages define on test survey bzr revid: fka@tinyerp.com-20121005062307-er263zwe3mm9dgt3 --- addons/survey/survey.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/addons/survey/survey.py b/addons/survey/survey.py index b3d38aeeb4d..809079eaedb 100644 --- a/addons/survey/survey.py +++ b/addons/survey/survey.py @@ -164,10 +164,14 @@ class survey(osv.osv): 'context': context } def test_survey(self, cr, uid, ids, context=None): - sur_obj = self.read(cr, uid, ids,['title'], context=context) + sur_obj = self.read(cr, uid, ids,['title','page_ids'], context=context) for sur in sur_obj: name = sur['title'] - context.update({'active':True,'survey_id': ids[0]}) + pages = sur['page_ids'] + if not pages: + raise osv.except_osv(_('Warning!'), _('This survey has no pages defined. Please define pages first.')) + else: + context.update({'active':True,'survey_id': ids[0]}) return { 'view_type': 'form', 'view_mode': 'form', From ca052f42357a87de6e4756377e646049d57a29e4 Mon Sep 17 00:00:00 2001 From: "Harry (OpenERP)" Date: Fri, 5 Oct 2012 12:42:29 +0530 Subject: [PATCH 020/211] [IMP] base_action_rule: now able to run multiple server actions in rule bzr revid: hmo@tinyerp.com-20121005071229-6jmrghoz1nkcnnwh --- addons/base_action_rule/base_action_rule.py | 11 ++++++----- addons/base_action_rule/base_action_rule_view.xml | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index 2328bf94cfd..dc56b85439c 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -93,7 +93,7 @@ trigger date, like sending a reminder 15 minutes before a meeting."), 'regex_name': fields.char('Regex on Resource Name', size=128, help="Regular expression for matching name of the resource\ \ne.g.: 'urgent.*' will search for records having name starting with the string 'urgent'\ \nNote: This is case sensitive search."), - 'server_action_id': fields.many2one('ir.actions.server', 'Server Action', help="Describes the action name.\neg:on which object which action to be taken on basis of which condition"), + 'server_action_ids': fields.many2many('ir.actions.server', 'Server Action', help="Define Server actions.\neg:Email Reminders, Call Object Service, etc.."), 'filter_id':fields.many2one('ir.filters', 'Filter', required=False), #TODO: set domain [('model_id','=',model)] 'last_run': fields.datetime('Last Run', readonly=1), } @@ -276,10 +276,11 @@ trigger date, like sending a reminder 15 minutes before a meeting."), """ Do Action """ if context is None: context = {} - - if action.server_action_id: - context.update({'active_id':obj.id, 'active_ids':[obj.id]}) - self.pool.get('ir.actions.server').run(cr, uid, [action.server_action_id.id], context) + ctx = dict(context) + action_server_obj = self.pool.get('ir.actions.server') + if action.server_action_ids: + ctx.update({'active_id':obj.id, 'active_ids':[obj.id]}) + action_server_obj.run(cr, uid, [x.id for x in action.server_action_ids], context=ctx) write = {} if hasattr(obj, 'user_id') and action.act_user_id: diff --git a/addons/base_action_rule/base_action_rule_view.xml b/addons/base_action_rule/base_action_rule_view.xml index b35818ee8d9..bd5b868e3f9 100644 --- a/addons/base_action_rule/base_action_rule_view.xml +++ b/addons/base_action_rule/base_action_rule_view.xml @@ -52,7 +52,7 @@ - + From ac4a1375765760d800b32ace2e0d51eee87c67b8 Mon Sep 17 00:00:00 2001 From: "Harry (OpenERP)" Date: Fri, 5 Oct 2012 12:50:01 +0530 Subject: [PATCH 021/211] [FIX] base_action_rule: do not subscribe again if already follow document bzr revid: hmo@tinyerp.com-20121005072001-6qy5yusrpw4n5xno --- addons/base_action_rule/base_action_rule.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index dc56b85439c..13617cd42d9 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -295,7 +295,10 @@ trigger date, like sending a reminder 15 minutes before a meeting."), model_obj.message_post(cr, uid, [obj], _(action.act_state), context=context) if hasattr(obj, 'message_subscribe') and action.act_followers: - model_obj.message_subscribe(cr, uid, [obj.id], [x.id for x in action.act_followers], context=context) + exits_followers = [x.id for x in obj.message_follower_ids] + new_followers = [x.id for x in action.act_followers if x.id not in exits_followers] + if new_followers: + model_obj.message_subscribe(cr, uid, [obj.id], new_followers, context=context) return True def _action(self, cr, uid, ids, objects, scrit=None, context=None): From 82ab8bf9a3294a95debfc8f6f2fca2d4ded6decb Mon Sep 17 00:00:00 2001 From: "Harry (OpenERP)" Date: Fri, 5 Oct 2012 13:33:25 +0530 Subject: [PATCH 022/211] [IMP] base_action_rule: improve view and server action should be one2many instead of many2many bzr revid: hmo@tinyerp.com-20121005080325-3vcja1mog3yfthtr --- addons/base_action_rule/base_action_rule.py | 8 ++++++- .../base_action_rule_view.xml | 21 ++++++++++++------- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index 13617cd42d9..ebc4c02a938 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -93,7 +93,7 @@ trigger date, like sending a reminder 15 minutes before a meeting."), 'regex_name': fields.char('Regex on Resource Name', size=128, help="Regular expression for matching name of the resource\ \ne.g.: 'urgent.*' will search for records having name starting with the string 'urgent'\ \nNote: This is case sensitive search."), - 'server_action_ids': fields.many2many('ir.actions.server', 'Server Action', help="Define Server actions.\neg:Email Reminders, Call Object Service, etc.."), + 'server_action_ids': fields.one2many('ir.actions.server', 'action_rule_id', 'Server Action', help="Define Server actions.\neg:Email Reminders, Call Object Service, etc.."), 'filter_id':fields.many2one('ir.filters', 'Filter', required=False), #TODO: set domain [('model_id','=',model)] 'last_run': fields.datetime('Last Run', readonly=1), } @@ -321,6 +321,12 @@ trigger date, like sending a reminder 15 minutes before a meeting."), base_action_rule() +class actions_server(osv.osv): + _inherit = 'ir.actions.server' + _columns = { + 'action_rule_id': fields.many2one("base.action.rule", string="Action Rule") + } +actions_server() class ir_cron(osv.osv): _inherit = 'ir.cron' diff --git a/addons/base_action_rule/base_action_rule_view.xml b/addons/base_action_rule/base_action_rule_view.xml index bd5b868e3f9..7c1b6c43b0e 100644 --- a/addons/base_action_rule/base_action_rule_view.xml +++ b/addons/base_action_rule/base_action_rule_view.xml @@ -15,7 +15,7 @@ - + @@ -47,16 +47,23 @@ - + + + + - - - - - + + + + + + + + + From 4dc1a8b348999ab94eabd4c46ddef27ae12717ee Mon Sep 17 00:00:00 2001 From: "Harry (OpenERP)" Date: Fri, 5 Oct 2012 13:38:41 +0530 Subject: [PATCH 023/211] [FIX] crm: typo bzr revid: hmo@tinyerp.com-20121005080841-bti2swdj7kosxse7 --- addons/crm/crm_action_rule_view.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/crm/crm_action_rule_view.xml b/addons/crm/crm_action_rule_view.xml index b7ac5037c31..e21b74de382 100644 --- a/addons/crm/crm_action_rule_view.xml +++ b/addons/crm/crm_action_rule_view.xml @@ -8,11 +8,11 @@ - + - + From 54c66ff0ff9e4ab3aca0a58a31e9a3cd47039640 Mon Sep 17 00:00:00 2001 From: "Harry (OpenERP)" Date: Fri, 5 Oct 2012 14:04:24 +0530 Subject: [PATCH 024/211] [IMP] base_action_rule: improve view bzr revid: hmo@tinyerp.com-20121005083424-pback5jfsvjb0dlo --- addons/base_action_rule/base_action_rule_view.xml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/addons/base_action_rule/base_action_rule_view.xml b/addons/base_action_rule/base_action_rule_view.xml index 7c1b6c43b0e..2bffbf5b92c 100644 --- a/addons/base_action_rule/base_action_rule_view.xml +++ b/addons/base_action_rule/base_action_rule_view.xml @@ -36,10 +36,8 @@ - - - - + + From b2661913d4ae1ca15e558ed5b8310d78a0fcc4a2 Mon Sep 17 00:00:00 2001 From: "Foram Katharotiya (OpenERP)" Date: Fri, 5 Oct 2012 16:01:36 +0530 Subject: [PATCH 025/211] [IMP] solve error When no pages define in edit survey bzr revid: fka@tinyerp.com-20121005103136-ji9uo2h4eow9aqec --- addons/survey/wizard/survey_answer.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/addons/survey/wizard/survey_answer.py b/addons/survey/wizard/survey_answer.py index 5a027601446..7e1417ecdb7 100644 --- a/addons/survey/wizard/survey_answer.py +++ b/addons/survey/wizard/survey_answer.py @@ -134,6 +134,8 @@ class survey_question_wiz(osv.osv_memory): page_number += 1 if sur_name_rec.page_no > - 1: pre_button = True + else: + flag = True else: if sur_name_rec.page_no != 0: p_id = p_id[sur_name_rec.page_no - 1] @@ -146,7 +148,15 @@ class survey_question_wiz(osv.osv_memory): pre_button = True if flag: pag_rec = page_obj.browse(cr, uid, p_id, context=context) - xml_form = etree.Element('form', {'string': tools.ustr(pag_rec.title or sur_rec.title)}) + note = False + question_ids = [] + if pag_rec: + title = pag_rec.title + note = pag_rec.note + question_ids=pag_rec.question_ids + else: + title=sur_rec.title + xml_form = etree.Element('form', {'string': tools.ustr(title)}) if context.has_key('active') and context.get('active',False) and context.has_key('edit'): context.update({'page_id' : tools.ustr(p_id),'page_number' : sur_name_rec.page_no , 'transfer' : sur_name_read.transfer}) xml_group3 = etree.SubElement(xml_form, 'group', {'col': '4', 'colspan': '4'}) @@ -174,10 +184,10 @@ class survey_question_wiz(osv.osv_memory): fields["wizardid_" + str(wiz_id)] = {'type':'char', 'size' : 255, 'string':"", 'views':{}} etree.SubElement(xml_form, 'field', {'invisible':'1','name': "wizardid_" + str(wiz_id),'default':str(lambda *a: 0),'modifiers':'{"invisible":true}'}) - if pag_rec.note: - for que_test in pag_rec.note.split('\n'): + if note: + for que_test in note.split('\n'): etree.SubElement(xml_form, 'label', {'string': to_xml(tools.ustr(que_test)), 'align':"0.0"}) - que_ids = pag_rec.question_ids + que_ids = question_ids qu_no = 0 for que in que_ids: From d79f2cb7b8d6fc2510607f2f3aa7fe8c2690c8dd Mon Sep 17 00:00:00 2001 From: "Twinkle Christian (OpenERP)" Date: Mon, 8 Oct 2012 12:23:16 +0530 Subject: [PATCH 026/211] [FIX]warning:Field res.partner.address is deprecated bzr revid: tch@tinyerp.com-20121008065316-fblbc7ycbhmv0w1s --- openerp/addons/base/test/test_osv_expression.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openerp/addons/base/test/test_osv_expression.yml b/openerp/addons/base/test/test_osv_expression.yml index 3843d374e64..39712fb08dd 100644 --- a/openerp/addons/base/test/test_osv_expression.yml +++ b/openerp/addons/base/test/test_osv_expression.yml @@ -83,7 +83,7 @@ Test one2many operator with False - !assert {model: res.partner, search: "[('child_ids', '=', False)]"}: - - address in (False, None, []) + - child_ids in (False, None, []) - Test many2many operator with empty search list - From 09e5d404df56c542e7f9f8b6256d77183797b9ba Mon Sep 17 00:00:00 2001 From: "Divyesh Makwana (Open ERP)" Date: Mon, 8 Oct 2012 14:18:04 +0530 Subject: [PATCH 027/211] [IMP] mail : Improved the terminologies. bzr revid: mdi@tinyerp.com-20121008084804-9mmxzdlyxhyarf0j --- addons/mail/mail_message.py | 4 ++-- addons/mail/mail_thread_view.xml | 2 +- addons/mail/wizard/mail_compose_message_view.xml | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/addons/mail/mail_message.py b/addons/mail/mail_message.py index bbf68509277..61ea9fb9f6b 100644 --- a/addons/mail/mail_message.py +++ b/addons/mail/mail_message.py @@ -580,11 +580,11 @@ class mail_message(osv.Model): partner_wo_email_lst.append(partner) if not partner_wo_email_lst: return {} - warning_msg = _('The following partners chosen as recipients for the email have no email address linked :') + warning_msg = _('The following contacts do not have an email address specified.') for partner in partner_wo_email_lst: warning_msg += '\n- %s' % (partner.name) return {'warning': { - 'title': _('Partners email addresses not found'), + 'title': _('Email not found'), 'message': warning_msg, } } diff --git a/addons/mail/mail_thread_view.xml b/addons/mail/mail_thread_view.xml index 3507e7c449f..5f504f3c3da 100644 --- a/addons/mail/mail_thread_view.xml +++ b/addons/mail/mail_thread_view.xml @@ -9,7 +9,7 @@ sequence="10"/> - + diff --git a/addons/mail/wizard/mail_compose_message_view.xml b/addons/mail/wizard/mail_compose_message_view.xml index 0f384dc5a0d..c7b9ed36a39 100644 --- a/addons/mail/wizard/mail_compose_message_view.xml +++ b/addons/mail/wizard/mail_compose_message_view.xml @@ -58,10 +58,10 @@ - - Date: Mon, 8 Oct 2012 14:35:29 +0530 Subject: [PATCH 028/211] [IMP] mail : Partners should always be replaced with Customer, Supplier, or Contact (if it can be both). bzr revid: mdi@tinyerp.com-20121008090529-pi43dm3zxc1jsqbm --- addons/mail/mail_message.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/addons/mail/mail_message.py b/addons/mail/mail_message.py index 61ea9fb9f6b..68e40ef705c 100644 --- a/addons/mail/mail_message.py +++ b/addons/mail/mail_message.py @@ -580,8 +580,13 @@ class mail_message(osv.Model): partner_wo_email_lst.append(partner) if not partner_wo_email_lst: return {} - warning_msg = _('The following contacts do not have an email address specified.') for partner in partner_wo_email_lst: + terminology = 'Contact' + if partner.customer and not partner.supplier: + terminology = 'Customer' + elif partner.supplier and not partner.customer: + terminology = 'Supplier' + warning_msg = _('The following %s do not have an email address specified.') % (terminology,) warning_msg += '\n- %s' % (partner.name) return {'warning': { 'title': _('Email not found'), From 65e70487c2842b72a2236876650a3dc4e595808f Mon Sep 17 00:00:00 2001 From: "Divyesh Makwana (Open ERP)" Date: Mon, 8 Oct 2012 14:40:18 +0530 Subject: [PATCH 029/211] [IMP] mail : Partners should always be replaced with Customer, Supplier, or Contact (if it can be both). bzr revid: mdi@tinyerp.com-20121008091018-s116zi83vwfqkngy --- addons/mail/mail_message.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/mail/mail_message.py b/addons/mail/mail_message.py index 68e40ef705c..df169f94404 100644 --- a/addons/mail/mail_message.py +++ b/addons/mail/mail_message.py @@ -581,11 +581,11 @@ class mail_message(osv.Model): if not partner_wo_email_lst: return {} for partner in partner_wo_email_lst: - terminology = 'Contact' + terminology = 'contact' if partner.customer and not partner.supplier: - terminology = 'Customer' + terminology = 'customer' elif partner.supplier and not partner.customer: - terminology = 'Supplier' + terminology = 'supplier' warning_msg = _('The following %s do not have an email address specified.') % (terminology,) warning_msg += '\n- %s' % (partner.name) return {'warning': { From 39eea5b86c60ba3f3314d3397eadbbe00f6c1beb Mon Sep 17 00:00:00 2001 From: "Divyesh Makwana (Open ERP)" Date: Mon, 8 Oct 2012 15:00:50 +0530 Subject: [PATCH 030/211] [IMP] procurement : 'Compute schedulers' should be 'Run schedulers'. bzr revid: mdi@tinyerp.com-20121008093050-xvhx0vtz010xk2qg --- addons/procurement/wizard/schedulers_all_view.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/procurement/wizard/schedulers_all_view.xml b/addons/procurement/wizard/schedulers_all_view.xml index 2e72dfdbadc..321f05bb223 100644 --- a/addons/procurement/wizard/schedulers_all_view.xml +++ b/addons/procurement/wizard/schedulers_all_view.xml @@ -2,10 +2,10 @@ - + - Compute Schedulers + Run Schedulers procurement.order.compute.all
@@ -13,7 +13,7 @@
-
@@ -21,7 +21,7 @@
- Date: Mon, 8 Oct 2012 15:44:22 +0530 Subject: [PATCH 031/211] [IMP]all : improve string bzr revid: mma@tinyerp.com-20121008101422-hen3r94996e6pzye --- addons/base_calendar/base_calendar.py | 6 ++--- addons/base_calendar/crm_meeting_view.xml | 2 +- .../crm_partner_assign/res_partner_view.xml | 2 +- addons/hr_expense/hr_expense.py | 2 +- addons/membership/membership.py | 2 +- addons/product/product_view.xml | 4 ++-- addons/sale/sale_view.xml | 22 +++++++++++++++++-- 7 files changed, 29 insertions(+), 11 deletions(-) diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py index 5b8c41787d4..bcfb9340966 100644 --- a/addons/base_calendar/base_calendar.py +++ b/addons/base_calendar/base_calendar.py @@ -1016,9 +1016,9 @@ defines the list of date/time exceptions for a recurring calendar component."), rule or repeating pattern of time to exclude from the recurring rule."), 'rrule': fields.function(_get_rulestring, type='char', size=124, \ fnct_inv=_rrule_write, store=True, string='Recurrent Rule'), - 'rrule_type': fields.selection([('none', ''), ('daily', 'Daily'), \ - ('weekly', 'Weekly'), ('monthly', 'Monthly'), \ - ('yearly', 'Yearly'),], + 'rrule_type': fields.selection([('none', ''), ('daily', 'Day(s)'), \ + ('weekly', 'Week(s)'), ('monthly', 'Month(s)'), \ + ('yearly', 'Year(s)'),], 'Recurrency', states={'done': [('readonly', True)]}, help="Let the event automatically repeat at that interval"), 'alarm_id': fields.many2one('res.alarm', 'Reminder', states={'done': [('readonly', True)]}, diff --git a/addons/base_calendar/crm_meeting_view.xml b/addons/base_calendar/crm_meeting_view.xml index adcfc23a520..26c11262a2c 100644 --- a/addons/base_calendar/crm_meeting_view.xml +++ b/addons/base_calendar/crm_meeting_view.xml @@ -86,7 +86,7 @@ - + diff --git a/addons/crm_partner_assign/res_partner_view.xml b/addons/crm_partner_assign/res_partner_view.xml index f5a1e9aad25..d1e72432550 100644 --- a/addons/crm_partner_assign/res_partner_view.xml +++ b/addons/crm_partner_assign/res_partner_view.xml @@ -77,7 +77,7 @@ - + diff --git a/addons/hr_expense/hr_expense.py b/addons/hr_expense/hr_expense.py index 91dc44fed61..a0d133aef86 100644 --- a/addons/hr_expense/hr_expense.py +++ b/addons/hr_expense/hr_expense.py @@ -233,7 +233,7 @@ hr_expense_expense() class product_product(osv.osv): _inherit = "product.product" _columns = { - 'hr_expense_ok': fields.boolean('Can Constitute an Expense', help="Determines if the product can be visible in the list of product within a selection from an HR expense sheet line."), + 'hr_expense_ok': fields.boolean('Can be Expensed', help="Determines if the product can be visible in the list of product within a selection from an HR expense sheet line."), } def on_change_hr_expense_ok(self, cr, uid, id, hr_expense_ok): diff --git a/addons/membership/membership.py b/addons/membership/membership.py index 87af723f2f9..f3192948afc 100644 --- a/addons/membership/membership.py +++ b/addons/membership/membership.py @@ -323,7 +323,7 @@ class Partner(osv.osv): help = 'The price negotiated by the partner'), 'membership_state': fields.function( __get_membership_state, - string = 'Current Membership State', type = 'selection', + string = 'Current Membership Status', type = 'selection', selection = STATE, store = { 'account.invoice': (_get_invoice_partner, ['state'], 10), diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml index 8c19aee026f..266a70e0fe3 100644 --- a/addons/product/product_view.xml +++ b/addons/product/product_view.xml @@ -144,7 +144,7 @@ - + @@ -763,7 +763,7 @@ - + diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index 5505a6a88b5..920e64d46da 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -131,7 +131,24 @@ - + + + + + + + + + + + + sale.order.tree + sale.order + 2 + + + + @@ -358,7 +375,7 @@ - Sales Orders + Sale Orders ir.actions.act_window sale.order form @@ -405,6 +422,7 @@ ir.actions.act_window sale.order form + tree,form,calendar,graph {'show_address': 1} [('state','in',('draft','sent','cancel'))] From 31336151de7d65cbc2fe324c071d7167d1ae72ec Mon Sep 17 00:00:00 2001 From: "Divyesh Makwana (Open ERP)" Date: Mon, 8 Oct 2012 15:58:36 +0530 Subject: [PATCH 032/211] [IMP] mrp_byproduct : Renamed 'subproduct' to 'byproduct'. bzr revid: mdi@tinyerp.com-20121008102836-rwd3ooy413yxqou8 --- addons/{mrp_subproduct => mrp_byproduct}/__init__.py | 2 +- .../{mrp_subproduct => mrp_byproduct}/__openerp__.py | 10 +++++----- addons/{mrp_subproduct => mrp_byproduct}/i18n/ab.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/ar.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/bg.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/bs.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/ca.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/cs.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/da.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/de.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/es.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/es_AR.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/es_CR.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/es_EC.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/es_MX.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/es_VE.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/et.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/fi.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/fr.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/gl.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/hr.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/hu.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/id.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/it.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/ja.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/ko.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/lt.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/mn.po | 0 .../i18n/mrp_subproduct.pot | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/nb.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/nl.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/nl_BE.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/oc.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/pl.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/pt.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/pt_BR.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/ro.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/ru.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/sk.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/sl.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/sq.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/sr.po | 0 .../{mrp_subproduct => mrp_byproduct}/i18n/sr@latin.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/sv.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/tlh.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/tr.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/uk.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/vi.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/zh_CN.po | 0 addons/{mrp_subproduct => mrp_byproduct}/i18n/zh_TW.po | 0 .../mrp_byproduct.py} | 10 +++++----- .../mrp_byproduct_view.xml} | 6 +++--- .../security/ir.model.access.csv | 0 .../test/mrp_byproduct.yml} | 0 54 files changed, 14 insertions(+), 14 deletions(-) rename addons/{mrp_subproduct => mrp_byproduct}/__init__.py (97%) rename addons/{mrp_subproduct => mrp_byproduct}/__openerp__.py (88%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/ab.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/ar.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/bg.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/bs.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/ca.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/cs.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/da.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/de.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/es.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/es_AR.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/es_CR.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/es_EC.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/es_MX.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/es_VE.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/et.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/fi.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/fr.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/gl.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/hr.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/hu.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/id.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/it.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/ja.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/ko.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/lt.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/mn.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/mrp_subproduct.pot (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/nb.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/nl.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/nl_BE.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/oc.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/pl.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/pt.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/pt_BR.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/ro.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/ru.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/sk.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/sl.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/sq.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/sr.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/sr@latin.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/sv.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/tlh.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/tr.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/uk.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/vi.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/zh_CN.po (100%) rename addons/{mrp_subproduct => mrp_byproduct}/i18n/zh_TW.po (100%) rename addons/{mrp_subproduct/mrp_subproduct.py => mrp_byproduct/mrp_byproduct.py} (92%) rename addons/{mrp_subproduct/mrp_subproduct_view.xml => mrp_byproduct/mrp_byproduct_view.xml} (86%) rename addons/{mrp_subproduct => mrp_byproduct}/security/ir.model.access.csv (100%) rename addons/{mrp_subproduct/test/mrp_subproduct.yml => mrp_byproduct/test/mrp_byproduct.yml} (100%) diff --git a/addons/mrp_subproduct/__init__.py b/addons/mrp_byproduct/__init__.py similarity index 97% rename from addons/mrp_subproduct/__init__.py rename to addons/mrp_byproduct/__init__.py index 5b48431ef16..7e507e0fe0a 100644 --- a/addons/mrp_subproduct/__init__.py +++ b/addons/mrp_byproduct/__init__.py @@ -18,5 +18,5 @@ # along with this program. If not, see . # ############################################################################## -import mrp_subproduct +import mrp_byproduct # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/mrp_subproduct/__openerp__.py b/addons/mrp_byproduct/__openerp__.py similarity index 88% rename from addons/mrp_subproduct/__openerp__.py rename to addons/mrp_byproduct/__openerp__.py index 6475cbe4a91..58e7a194771 100644 --- a/addons/mrp_subproduct/__openerp__.py +++ b/addons/mrp_byproduct/__openerp__.py @@ -21,14 +21,14 @@ { - 'name': 'MRP Subproducts', + 'name': 'MRP Byproducts', 'version': '1.0', 'category': 'Manufacturing', 'description': """ This module allows you to produce several products from one production order. ============================================================================= -You can configure sub-products in the bill of material. +You can configure by-products in the bill of material. Without this module: -------------------- @@ -40,14 +40,14 @@ With this module: """, 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', - 'images': ['images/bom_subproduct.jpeg'], + 'images': ['images/bom_byproduct.jpeg'], 'depends': ['base', 'mrp'], 'data': [ 'security/ir.model.access.csv', - 'mrp_subproduct_view.xml' + 'mrp_byproduct_view.xml' ], 'demo': [], - 'test': ['test/mrp_subproduct.yml'], + 'test': ['test/mrp_byproduct.yml'], 'installable': True, 'auto_install': False, } diff --git a/addons/mrp_subproduct/i18n/ab.po b/addons/mrp_byproduct/i18n/ab.po similarity index 100% rename from addons/mrp_subproduct/i18n/ab.po rename to addons/mrp_byproduct/i18n/ab.po diff --git a/addons/mrp_subproduct/i18n/ar.po b/addons/mrp_byproduct/i18n/ar.po similarity index 100% rename from addons/mrp_subproduct/i18n/ar.po rename to addons/mrp_byproduct/i18n/ar.po diff --git a/addons/mrp_subproduct/i18n/bg.po b/addons/mrp_byproduct/i18n/bg.po similarity index 100% rename from addons/mrp_subproduct/i18n/bg.po rename to addons/mrp_byproduct/i18n/bg.po diff --git a/addons/mrp_subproduct/i18n/bs.po b/addons/mrp_byproduct/i18n/bs.po similarity index 100% rename from addons/mrp_subproduct/i18n/bs.po rename to addons/mrp_byproduct/i18n/bs.po diff --git a/addons/mrp_subproduct/i18n/ca.po b/addons/mrp_byproduct/i18n/ca.po similarity index 100% rename from addons/mrp_subproduct/i18n/ca.po rename to addons/mrp_byproduct/i18n/ca.po diff --git a/addons/mrp_subproduct/i18n/cs.po b/addons/mrp_byproduct/i18n/cs.po similarity index 100% rename from addons/mrp_subproduct/i18n/cs.po rename to addons/mrp_byproduct/i18n/cs.po diff --git a/addons/mrp_subproduct/i18n/da.po b/addons/mrp_byproduct/i18n/da.po similarity index 100% rename from addons/mrp_subproduct/i18n/da.po rename to addons/mrp_byproduct/i18n/da.po diff --git a/addons/mrp_subproduct/i18n/de.po b/addons/mrp_byproduct/i18n/de.po similarity index 100% rename from addons/mrp_subproduct/i18n/de.po rename to addons/mrp_byproduct/i18n/de.po diff --git a/addons/mrp_subproduct/i18n/es.po b/addons/mrp_byproduct/i18n/es.po similarity index 100% rename from addons/mrp_subproduct/i18n/es.po rename to addons/mrp_byproduct/i18n/es.po diff --git a/addons/mrp_subproduct/i18n/es_AR.po b/addons/mrp_byproduct/i18n/es_AR.po similarity index 100% rename from addons/mrp_subproduct/i18n/es_AR.po rename to addons/mrp_byproduct/i18n/es_AR.po diff --git a/addons/mrp_subproduct/i18n/es_CR.po b/addons/mrp_byproduct/i18n/es_CR.po similarity index 100% rename from addons/mrp_subproduct/i18n/es_CR.po rename to addons/mrp_byproduct/i18n/es_CR.po diff --git a/addons/mrp_subproduct/i18n/es_EC.po b/addons/mrp_byproduct/i18n/es_EC.po similarity index 100% rename from addons/mrp_subproduct/i18n/es_EC.po rename to addons/mrp_byproduct/i18n/es_EC.po diff --git a/addons/mrp_subproduct/i18n/es_MX.po b/addons/mrp_byproduct/i18n/es_MX.po similarity index 100% rename from addons/mrp_subproduct/i18n/es_MX.po rename to addons/mrp_byproduct/i18n/es_MX.po diff --git a/addons/mrp_subproduct/i18n/es_VE.po b/addons/mrp_byproduct/i18n/es_VE.po similarity index 100% rename from addons/mrp_subproduct/i18n/es_VE.po rename to addons/mrp_byproduct/i18n/es_VE.po diff --git a/addons/mrp_subproduct/i18n/et.po b/addons/mrp_byproduct/i18n/et.po similarity index 100% rename from addons/mrp_subproduct/i18n/et.po rename to addons/mrp_byproduct/i18n/et.po diff --git a/addons/mrp_subproduct/i18n/fi.po b/addons/mrp_byproduct/i18n/fi.po similarity index 100% rename from addons/mrp_subproduct/i18n/fi.po rename to addons/mrp_byproduct/i18n/fi.po diff --git a/addons/mrp_subproduct/i18n/fr.po b/addons/mrp_byproduct/i18n/fr.po similarity index 100% rename from addons/mrp_subproduct/i18n/fr.po rename to addons/mrp_byproduct/i18n/fr.po diff --git a/addons/mrp_subproduct/i18n/gl.po b/addons/mrp_byproduct/i18n/gl.po similarity index 100% rename from addons/mrp_subproduct/i18n/gl.po rename to addons/mrp_byproduct/i18n/gl.po diff --git a/addons/mrp_subproduct/i18n/hr.po b/addons/mrp_byproduct/i18n/hr.po similarity index 100% rename from addons/mrp_subproduct/i18n/hr.po rename to addons/mrp_byproduct/i18n/hr.po diff --git a/addons/mrp_subproduct/i18n/hu.po b/addons/mrp_byproduct/i18n/hu.po similarity index 100% rename from addons/mrp_subproduct/i18n/hu.po rename to addons/mrp_byproduct/i18n/hu.po diff --git a/addons/mrp_subproduct/i18n/id.po b/addons/mrp_byproduct/i18n/id.po similarity index 100% rename from addons/mrp_subproduct/i18n/id.po rename to addons/mrp_byproduct/i18n/id.po diff --git a/addons/mrp_subproduct/i18n/it.po b/addons/mrp_byproduct/i18n/it.po similarity index 100% rename from addons/mrp_subproduct/i18n/it.po rename to addons/mrp_byproduct/i18n/it.po diff --git a/addons/mrp_subproduct/i18n/ja.po b/addons/mrp_byproduct/i18n/ja.po similarity index 100% rename from addons/mrp_subproduct/i18n/ja.po rename to addons/mrp_byproduct/i18n/ja.po diff --git a/addons/mrp_subproduct/i18n/ko.po b/addons/mrp_byproduct/i18n/ko.po similarity index 100% rename from addons/mrp_subproduct/i18n/ko.po rename to addons/mrp_byproduct/i18n/ko.po diff --git a/addons/mrp_subproduct/i18n/lt.po b/addons/mrp_byproduct/i18n/lt.po similarity index 100% rename from addons/mrp_subproduct/i18n/lt.po rename to addons/mrp_byproduct/i18n/lt.po diff --git a/addons/mrp_subproduct/i18n/mn.po b/addons/mrp_byproduct/i18n/mn.po similarity index 100% rename from addons/mrp_subproduct/i18n/mn.po rename to addons/mrp_byproduct/i18n/mn.po diff --git a/addons/mrp_subproduct/i18n/mrp_subproduct.pot b/addons/mrp_byproduct/i18n/mrp_subproduct.pot similarity index 100% rename from addons/mrp_subproduct/i18n/mrp_subproduct.pot rename to addons/mrp_byproduct/i18n/mrp_subproduct.pot diff --git a/addons/mrp_subproduct/i18n/nb.po b/addons/mrp_byproduct/i18n/nb.po similarity index 100% rename from addons/mrp_subproduct/i18n/nb.po rename to addons/mrp_byproduct/i18n/nb.po diff --git a/addons/mrp_subproduct/i18n/nl.po b/addons/mrp_byproduct/i18n/nl.po similarity index 100% rename from addons/mrp_subproduct/i18n/nl.po rename to addons/mrp_byproduct/i18n/nl.po diff --git a/addons/mrp_subproduct/i18n/nl_BE.po b/addons/mrp_byproduct/i18n/nl_BE.po similarity index 100% rename from addons/mrp_subproduct/i18n/nl_BE.po rename to addons/mrp_byproduct/i18n/nl_BE.po diff --git a/addons/mrp_subproduct/i18n/oc.po b/addons/mrp_byproduct/i18n/oc.po similarity index 100% rename from addons/mrp_subproduct/i18n/oc.po rename to addons/mrp_byproduct/i18n/oc.po diff --git a/addons/mrp_subproduct/i18n/pl.po b/addons/mrp_byproduct/i18n/pl.po similarity index 100% rename from addons/mrp_subproduct/i18n/pl.po rename to addons/mrp_byproduct/i18n/pl.po diff --git a/addons/mrp_subproduct/i18n/pt.po b/addons/mrp_byproduct/i18n/pt.po similarity index 100% rename from addons/mrp_subproduct/i18n/pt.po rename to addons/mrp_byproduct/i18n/pt.po diff --git a/addons/mrp_subproduct/i18n/pt_BR.po b/addons/mrp_byproduct/i18n/pt_BR.po similarity index 100% rename from addons/mrp_subproduct/i18n/pt_BR.po rename to addons/mrp_byproduct/i18n/pt_BR.po diff --git a/addons/mrp_subproduct/i18n/ro.po b/addons/mrp_byproduct/i18n/ro.po similarity index 100% rename from addons/mrp_subproduct/i18n/ro.po rename to addons/mrp_byproduct/i18n/ro.po diff --git a/addons/mrp_subproduct/i18n/ru.po b/addons/mrp_byproduct/i18n/ru.po similarity index 100% rename from addons/mrp_subproduct/i18n/ru.po rename to addons/mrp_byproduct/i18n/ru.po diff --git a/addons/mrp_subproduct/i18n/sk.po b/addons/mrp_byproduct/i18n/sk.po similarity index 100% rename from addons/mrp_subproduct/i18n/sk.po rename to addons/mrp_byproduct/i18n/sk.po diff --git a/addons/mrp_subproduct/i18n/sl.po b/addons/mrp_byproduct/i18n/sl.po similarity index 100% rename from addons/mrp_subproduct/i18n/sl.po rename to addons/mrp_byproduct/i18n/sl.po diff --git a/addons/mrp_subproduct/i18n/sq.po b/addons/mrp_byproduct/i18n/sq.po similarity index 100% rename from addons/mrp_subproduct/i18n/sq.po rename to addons/mrp_byproduct/i18n/sq.po diff --git a/addons/mrp_subproduct/i18n/sr.po b/addons/mrp_byproduct/i18n/sr.po similarity index 100% rename from addons/mrp_subproduct/i18n/sr.po rename to addons/mrp_byproduct/i18n/sr.po diff --git a/addons/mrp_subproduct/i18n/sr@latin.po b/addons/mrp_byproduct/i18n/sr@latin.po similarity index 100% rename from addons/mrp_subproduct/i18n/sr@latin.po rename to addons/mrp_byproduct/i18n/sr@latin.po diff --git a/addons/mrp_subproduct/i18n/sv.po b/addons/mrp_byproduct/i18n/sv.po similarity index 100% rename from addons/mrp_subproduct/i18n/sv.po rename to addons/mrp_byproduct/i18n/sv.po diff --git a/addons/mrp_subproduct/i18n/tlh.po b/addons/mrp_byproduct/i18n/tlh.po similarity index 100% rename from addons/mrp_subproduct/i18n/tlh.po rename to addons/mrp_byproduct/i18n/tlh.po diff --git a/addons/mrp_subproduct/i18n/tr.po b/addons/mrp_byproduct/i18n/tr.po similarity index 100% rename from addons/mrp_subproduct/i18n/tr.po rename to addons/mrp_byproduct/i18n/tr.po diff --git a/addons/mrp_subproduct/i18n/uk.po b/addons/mrp_byproduct/i18n/uk.po similarity index 100% rename from addons/mrp_subproduct/i18n/uk.po rename to addons/mrp_byproduct/i18n/uk.po diff --git a/addons/mrp_subproduct/i18n/vi.po b/addons/mrp_byproduct/i18n/vi.po similarity index 100% rename from addons/mrp_subproduct/i18n/vi.po rename to addons/mrp_byproduct/i18n/vi.po diff --git a/addons/mrp_subproduct/i18n/zh_CN.po b/addons/mrp_byproduct/i18n/zh_CN.po similarity index 100% rename from addons/mrp_subproduct/i18n/zh_CN.po rename to addons/mrp_byproduct/i18n/zh_CN.po diff --git a/addons/mrp_subproduct/i18n/zh_TW.po b/addons/mrp_byproduct/i18n/zh_TW.po similarity index 100% rename from addons/mrp_subproduct/i18n/zh_TW.po rename to addons/mrp_byproduct/i18n/zh_TW.po diff --git a/addons/mrp_subproduct/mrp_subproduct.py b/addons/mrp_byproduct/mrp_byproduct.py similarity index 92% rename from addons/mrp_subproduct/mrp_subproduct.py rename to addons/mrp_byproduct/mrp_byproduct.py index bacdeb2c675..bf2a798aeff 100644 --- a/addons/mrp_subproduct/mrp_subproduct.py +++ b/addons/mrp_byproduct/mrp_byproduct.py @@ -30,10 +30,10 @@ class mrp_subproduct(osv.osv): 'product_id': fields.many2one('product.product', 'Product', required=True), 'product_qty': fields.float('Product Qty', digits_compute=dp.get_precision('Product Unit of Measure'), required=True), 'product_uom': fields.many2one('product.uom', 'Product Unit of Measure', required=True), - 'subproduct_type': fields.selection([('fixed','Fixed'),('variable','Variable')], 'Quantity Type', required=True, help="Define how the quantity of subproducts will be set on the production orders using this BoM.\ - 'Fixed' depicts a situation where the quantity of created subproduct is always equal to the quantity set on the BoM, regardless of how many are created in the production order.\ + 'subproduct_type': fields.selection([('fixed','Fixed'),('variable','Variable')], 'Quantity Type', required=True, help="Define how the quantity of byproducts will be set on the production orders using this BoM.\ + 'Fixed' depicts a situation where the quantity of created byproduct is always equal to the quantity set on the BoM, regardless of how many are created in the production order.\ By opposition, 'Variable' means that the quantity will be computed as\ - '(quantity of subproduct set on the BoM / quantity of manufactured product set on the BoM * quantity of manufactured product in the production order.)'"), + '(quantity of byproduct set on the BoM / quantity of manufactured product set on the BoM * quantity of manufactured product in the production order.)'"), 'bom_id': fields.many2one('mrp.bom', 'BoM'), } _defaults={ @@ -59,7 +59,7 @@ class mrp_bom(osv.osv): _inherit='mrp.bom' _columns={ - 'sub_products':fields.one2many('mrp.subproduct', 'bom_id', 'sub_products'), + 'sub_products':fields.one2many('mrp.subproduct', 'bom_id', 'Byproducts'), } mrp_bom() @@ -106,7 +106,7 @@ class mrp_production(osv.osv): def _get_subproduct_factor(self, cr, uid, production_id, move_id=None, context=None): """Compute the factor to compute the qty of procucts to produce for the given production_id. By default, it's always equal to the quantity encoded in the production order or the production wizard, but with - the module mrp_subproduct installed it can differ for subproducts having type 'variable'. + the module mrp_byproduct installed it can differ for byproducts having type 'variable'. :param production_id: ID of the mrp.order :param move_id: ID of the stock move that needs to be produced. Identify the product to produce. :return: The factor to apply to the quantity that we should produce for the given production order and stock move. diff --git a/addons/mrp_subproduct/mrp_subproduct_view.xml b/addons/mrp_byproduct/mrp_byproduct_view.xml similarity index 86% rename from addons/mrp_subproduct/mrp_subproduct_view.xml rename to addons/mrp_byproduct/mrp_byproduct_view.xml index 94da87ef0de..754d7ef1b34 100644 --- a/addons/mrp_subproduct/mrp_subproduct_view.xml +++ b/addons/mrp_byproduct/mrp_byproduct_view.xml @@ -7,15 +7,15 @@ - + - + - + diff --git a/addons/mrp_subproduct/security/ir.model.access.csv b/addons/mrp_byproduct/security/ir.model.access.csv similarity index 100% rename from addons/mrp_subproduct/security/ir.model.access.csv rename to addons/mrp_byproduct/security/ir.model.access.csv diff --git a/addons/mrp_subproduct/test/mrp_subproduct.yml b/addons/mrp_byproduct/test/mrp_byproduct.yml similarity index 100% rename from addons/mrp_subproduct/test/mrp_subproduct.yml rename to addons/mrp_byproduct/test/mrp_byproduct.yml From 92d7b599cf9dd9087b57386cbb7514dc2f9d91b7 Mon Sep 17 00:00:00 2001 From: "Mayur Maheshwari (OpenERP)" Date: Mon, 8 Oct 2012 16:00:13 +0530 Subject: [PATCH 033/211] [IMP]base : improve manu string and demo data bzr revid: mma@tinyerp.com-20121008103013-bis8xilyyqjv6far --- openerp/addons/base/res/res_country_view.xml | 2 +- openerp/addons/base/res/res_partner_demo.xml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/openerp/addons/base/res/res_country_view.xml b/openerp/addons/base/res/res_country_view.xml index c8046d34eb2..a5c846fb8ee 100644 --- a/openerp/addons/base/res/res_country_view.xml +++ b/openerp/addons/base/res/res_country_view.xml @@ -45,7 +45,7 @@ Display and manage the list of all countries that can be assigned to your partner records. You can create or delete countries to make sure the ones you are working on will be maintained. - + diff --git a/openerp/addons/base/res/res_partner_demo.xml b/openerp/addons/base/res/res_partner_demo.xml index e51c4dc2e6b..28c8fe34cc2 100644 --- a/openerp/addons/base/res/res_partner_demo.xml +++ b/openerp/addons/base/res/res_partner_demo.xml @@ -116,7 +116,7 @@ 1 Fremont - CA 94538 + 94538 3661 Station Street @@ -148,7 +148,7 @@ 1 Chicago - IL 60623 + 60623 23 Rockwell Lane @@ -206,7 +206,7 @@ 1 Miami - FL 33169 + 33169 contact@jackson.com @@ -270,7 +270,7 @@ 1 Detroit - MI 48212 + 48212 60, Rosewood Court @@ -327,7 +327,7 @@ 1 Boston - MA 02203 + 02203 info@thinkbig.com +1 857 349 3049 From 9a264c33699fae73e8d9fa139ac4df668e480910 Mon Sep 17 00:00:00 2001 From: "Divyesh Makwana (Open ERP)" Date: Mon, 8 Oct 2012 16:11:51 +0530 Subject: [PATCH 034/211] [IMP] There is no consistency throughout OpenERP with 'Source document', 'Source', 'Origin'. It should always be 'Source document'. bzr revid: mdi@tinyerp.com-20121008104151-opvu1mig2xbxxpli --- addons/account/account_invoice.py | 2 +- addons/event/event.py | 2 +- addons/purchase_requisition/purchase_requisition.py | 2 +- addons/stock/stock.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py index c543b493831..1df4032a3a4 100644 --- a/addons/account/account_invoice.py +++ b/addons/account/account_invoice.py @@ -1359,7 +1359,7 @@ class account_invoice_line(osv.osv): _description = "Invoice Line" _columns = { 'name': fields.text('Description', required=True), - 'origin': fields.char('Source', size=256, help="Reference of the document that produced this invoice."), + 'origin': fields.char('Source Document', size=256, help="Reference of the document that produced this invoice."), 'invoice_id': fields.many2one('account.invoice', 'Invoice Reference', ondelete='cascade', select=True), 'uos_id': fields.many2one('product.uom', 'Unit of Measure', ondelete='set null'), 'product_id': fields.many2one('product.product', 'Product', ondelete='set null'), diff --git a/addons/event/event.py b/addons/event/event.py index d86fd92d054..e7b562f4c2e 100644 --- a/addons/event/event.py +++ b/addons/event/event.py @@ -327,7 +327,7 @@ class event_registration(osv.osv): _inherit = ['ir.needaction_mixin','mail.thread'] _columns = { 'id': fields.integer('ID'), - 'origin': fields.char('Source', size=124,readonly=True,help="Name of the sale order which create the registration"), + 'origin': fields.char('Source Document', size=124,readonly=True,help="Name of the sale order which create the registration"), 'nb_register': fields.integer('Number of Participants', required=True, readonly=True, states={'draft': [('readonly', False)]}), 'event_id': fields.many2one('event.event', 'Event', required=True, readonly=True, states={'draft': [('readonly', False)]}), 'partner_id': fields.many2one('res.partner', 'Partner', states={'done': [('readonly', True)]}), diff --git a/addons/purchase_requisition/purchase_requisition.py b/addons/purchase_requisition/purchase_requisition.py index 8954de6c1dc..ea2346d3aab 100644 --- a/addons/purchase_requisition/purchase_requisition.py +++ b/addons/purchase_requisition/purchase_requisition.py @@ -34,7 +34,7 @@ class purchase_requisition(osv.osv): _inherit = ['mail.thread', 'ir.needaction_mixin'] _columns = { 'name': fields.char('Requisition Reference', size=32,required=True), - 'origin': fields.char('Source', size=32), + 'origin': fields.char('Source Document', size=32), 'date_start': fields.datetime('Requisition Date'), 'date_end': fields.datetime('Requisition Deadline'), 'user_id': fields.many2one('res.users', 'Responsible'), diff --git a/addons/stock/stock.py b/addons/stock/stock.py index 91e300eaa07..25a05a1f458 100644 --- a/addons/stock/stock.py +++ b/addons/stock/stock.py @@ -627,7 +627,7 @@ class stock_picking(osv.osv): _columns = { 'name': fields.char('Reference', size=64, select=True, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}), - 'origin': fields.char('Source', size=64, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="Reference of the document", select=True), + 'origin': fields.char('Source Document', size=64, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="Reference of the document", select=True), 'backorder_id': fields.many2one('stock.picking', 'Back Order of', states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="If this shipment was split, then this field links to the shipment which contains the already processed part.", select=True), 'type': fields.selection([('out', 'Sending Goods'), ('in', 'Getting Goods'), ('internal', 'Internal')], 'Shipping Type', required=True, select=True, readonly=True, help="Shipping type specify, goods coming in or going out."), 'note': fields.text('Notes', states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}), From 9c58413280ffa5bb8e75d3f449148471d8c54bbd Mon Sep 17 00:00:00 2001 From: "Divyesh Makwana (Open ERP)" Date: Mon, 8 Oct 2012 16:19:35 +0530 Subject: [PATCH 035/211] [IMP] mrp : In manufacturing orders, 'Consumed product' should have an 'S'. bzr revid: mdi@tinyerp.com-20121008104935-pdeix1mw0do90z19 --- addons/mrp/mrp_view.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index abf0f823e5c..21d4bca9955 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -692,7 +692,7 @@ - + From 79b2eae9eb6b2b72cc5029c3ac087e3d293fafef Mon Sep 17 00:00:00 2001 From: "Mayur Maheshwari (OpenERP)" Date: Mon, 8 Oct 2012 16:22:22 +0530 Subject: [PATCH 036/211] [IMP]all : improve button string bzr revid: mma@tinyerp.com-20121008105222-9n6sfk9xnerfwxgj --- addons/base_vat/base_vat_view.xml | 2 +- addons/project_gtd/project_gtd_view.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/base_vat/base_vat_view.xml b/addons/base_vat/base_vat_view.xml index ec98b7922de..6d15099dc5a 100644 --- a/addons/base_vat/base_vat_view.xml +++ b/addons/base_vat/base_vat_view.xml @@ -11,7 +11,7 @@ diff --git a/addons/project_gtd/project_gtd_view.xml b/addons/project_gtd/project_gtd_view.xml index fdb8ae8495c..da9ffebc0d4 100644 --- a/addons/project_gtd/project_gtd_view.xml +++ b/addons/project_gtd/project_gtd_view.xml @@ -93,7 +93,7 @@ - + From 9487c2d9ba9381e04c677d861864e29895f48e8e Mon Sep 17 00:00:00 2001 From: "Mayur Maheshwari (OpenERP)" Date: Mon, 8 Oct 2012 16:35:49 +0530 Subject: [PATCH 037/211] [IMP]account : improve string bzr revid: mma@tinyerp.com-20121008110549-zt946y9190avok3d --- addons/account/account_invoice.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py index c543b493831..71f37180848 100644 --- a/addons/account/account_invoice.py +++ b/addons/account/account_invoice.py @@ -206,7 +206,7 @@ class account_invoice(osv.osv): ('open','Open'), ('paid','Paid'), ('cancel','Cancelled'), - ],'State', select=True, readonly=True, + ],'Status', select=True, readonly=True, help=' * The \'Draft\' state is used when a user is encoding a new and unconfirmed Invoice. \ \n* The \'Pro-forma\' when invoice is in Pro-forma state,invoice does not have an invoice number. \ \n* The \'Open\' state is used when user create invoice,a invoice number is generated.Its in open state till user does not pay invoice. \ From 0f2c1ef0df4cc84089a5b4982965065c3ec6e242 Mon Sep 17 00:00:00 2001 From: "Mayur Maheshwari (OpenERP)" Date: Mon, 8 Oct 2012 18:50:14 +0530 Subject: [PATCH 038/211] [IMP]purchase,stock : improve string bzr revid: mma@tinyerp.com-20121008132014-iv7zc5ux9raopaip --- addons/purchase/purchase_view.xml | 6 +++--- addons/stock/stock.py | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/addons/purchase/purchase_view.xml b/addons/purchase/purchase_view.xml index 7702d182b09..fe69c952f4a 100644 --- a/addons/purchase/purchase_view.xml +++ b/addons/purchase/purchase_view.xml @@ -82,7 +82,7 @@ action="base.action_partner_supplier_form" sequence="15"/> - @@ -262,7 +262,7 @@ - + @@ -356,7 +356,7 @@ - + diff --git a/addons/stock/stock.py b/addons/stock/stock.py index 91e300eaa07..7538f76cebd 100644 --- a/addons/stock/stock.py +++ b/addons/stock/stock.py @@ -627,7 +627,7 @@ class stock_picking(osv.osv): _columns = { 'name': fields.char('Reference', size=64, select=True, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}), - 'origin': fields.char('Source', size=64, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="Reference of the document", select=True), + 'origin': fields.char('Source Document', size=64, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="Reference of the document", select=True), 'backorder_id': fields.many2one('stock.picking', 'Back Order of', states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}, help="If this shipment was split, then this field links to the shipment which contains the already processed part.", select=True), 'type': fields.selection([('out', 'Sending Goods'), ('in', 'Getting Goods'), ('internal', 'Internal')], 'Shipping Type', required=True, select=True, readonly=True, help="Shipping type specify, goods coming in or going out."), 'note': fields.text('Notes', states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}), @@ -653,8 +653,8 @@ class stock_picking(osv.osv): * Cancelled: has been cancelled, can't be confirmed anymore""" ), 'min_date': fields.function(get_min_max_date, fnct_inv=_set_minimum_date, multi="min_max_date", - store=True, type='datetime', string='Scheduled Date', select=1, help="Scheduled date for the shipment to be processed"), - 'date': fields.datetime('Date', help="Creation date, usually the date of the order.", select=True, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}), + store=True, type='datetime', string='Scheduled Time', select=1, help="Scheduled date for the shipment to be processed"), + 'date': fields.datetime('Time', help="Creation date, usually the date of the order.", select=True, states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}), 'date_done': fields.datetime('Date Done', help="Date of Completion", states={'done':[('readonly', True)], 'cancel':[('readonly',True)]}), 'max_date': fields.function(get_min_max_date, fnct_inv=_set_maximum_date, multi="min_max_date", store=True, type='datetime', string='Max. Expected Date', select=2), @@ -3047,7 +3047,7 @@ class stock_picking_in(osv.osv): ('assigned', 'Ready to Receive'), ('done', 'Received'), ('cancel', 'Cancelled'),], - 'State', readonly=True, select=True, + 'Status', readonly=True, select=True, help="""* Draft: not confirmed yet and will not be scheduled until confirmed\n * Waiting Another Operation: waiting for another move to proceed before it becomes automatically available (e.g. in Make-To-Order flows)\n * Waiting Availability: still waiting for the availability of products\n From 2cd8c0bf8c287e343cc57564cad9fc34f10bdf0b Mon Sep 17 00:00:00 2001 From: "pankita shah (Open ERP)" Date: Tue, 9 Oct 2012 10:48:20 +0530 Subject: [PATCH 039/211] [IMP] whether instead of wheter bzr revid: shp@tinyerp.com-20121009051820-2kllcfgd985opk0t --- addons/product/product_view.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml index 8c19aee026f..defffa5162e 100644 --- a/addons/product/product_view.xml +++ b/addons/product/product_view.xml @@ -321,7 +321,7 @@

Click to define a new product.

- You must define a product for everything you purchase, wheter + You must define a product for everything you purchase, whether it's a physical product, a consumable or services you buy to subcontractants.

From d430a8976dc3e86efb74a97c76f93a90d49b646d Mon Sep 17 00:00:00 2001 From: "Mayur Maheshwari (OpenERP)" Date: Tue, 9 Oct 2012 10:51:31 +0530 Subject: [PATCH 040/211] [IMP]purchase: improve menu string bzr revid: mma@tinyerp.com-20121009052131-vwy6zp7xdtqv0780 --- addons/stock/stock_view.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml index f5320a963c7..0f9cd0c817b 100644 --- a/addons/stock/stock_view.xml +++ b/addons/stock/stock_view.xml @@ -1482,7 +1482,7 @@ - Receive Products + Incoming Products stock.move ir.actions.act_window form From d12acd17a0b5b82ed8a14432f5569f6393bed93e Mon Sep 17 00:00:00 2001 From: "Mayur Maheshwari (OpenERP)" Date: Tue, 9 Oct 2012 11:00:02 +0530 Subject: [PATCH 041/211] [IMP]membership : improve string bzr revid: mma@tinyerp.com-20121009053002-188wqmud5wtywxjy --- addons/membership/membership.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/membership/membership.py b/addons/membership/membership.py index f3192948afc..c5e2ed3a0bc 100644 --- a/addons/membership/membership.py +++ b/addons/membership/membership.py @@ -150,7 +150,7 @@ class membership_line(osv.osv): 'account_invoice_line': fields.many2one('account.invoice.line', 'Account Invoice line', readonly=True), 'account_invoice_id': fields.related('account_invoice_line', 'invoice_id', type='many2one', relation='account.invoice', string='Invoice', readonly=True), 'state': fields.function(_state, - string='Membership State', type='selection', + string='Membership Status', type='selection', selection=STATE, store = { 'account.invoice': (_get_membership_lines, ['state'], 10), 'res.partner': (_get_partners, ['membership_state'], 12), From 18e59b63527c5a8185c481da8ab991f6a840f89b Mon Sep 17 00:00:00 2001 From: "pankita shah (Open ERP)" Date: Tue, 9 Oct 2012 11:11:05 +0530 Subject: [PATCH 042/211] [IMP] massively instead of massicely bzr revid: shp@tinyerp.com-20121009054105-5q25k6dq4b2wbhjk --- addons/crm/crm_phonecall_menu.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/crm/crm_phonecall_menu.xml b/addons/crm/crm_phonecall_menu.xml index c359aa461e7..30303d4205c 100644 --- a/addons/crm/crm_phonecall_menu.xml +++ b/addons/crm/crm_phonecall_menu.xml @@ -123,7 +123,7 @@ OpenERP allows you to easily define all the calls to be done by your sales team and follow up based on their summary.

- You can use the import feature to massicely import a new list of + You can use the import feature to massively import a new list of prospects to qualify.

From 97329f23bf87421d89ec7dfafed4c9f47164d8e9 Mon Sep 17 00:00:00 2001 From: "Nimesh (Open ERP)" Date: Tue, 9 Oct 2012 11:20:44 +0530 Subject: [PATCH 043/211] [ADD] add oe_highlight class to save button. bzr revid: nco@tinyerp.com-20121009055044-2g8qj43otkx4euht --- openerp/addons/base/res/res_users_view.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openerp/addons/base/res/res_users_view.xml b/openerp/addons/base/res/res_users_view.xml index 78579fc66df..f09866b76ab 100644 --- a/openerp/addons/base/res/res_users_view.xml +++ b/openerp/addons/base/res/res_users_view.xml @@ -214,7 +214,7 @@
From d9a27d19024333de53ca5d435e9c0fb5c6f2b9b9 Mon Sep 17 00:00:00 2001 From: "Nimesh (Open ERP)" Date: Tue, 9 Oct 2012 11:22:23 +0530 Subject: [PATCH 044/211] [REMOVE] remove change password button. bzr revid: nco@tinyerp.com-20121009055223-vflb9wxzo3nvw310 --- openerp/addons/base/res/res_users.py | 7 ------- openerp/addons/base/res/res_users_view.xml | 1 - 2 files changed, 8 deletions(-) diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index 8bd5c3a0179..59c60b23dfd 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -488,13 +488,6 @@ class res_users(osv.osv): 'tag': 'reload', } - def preference_change_password(self, cr, uid, ids, context=None): - return { - 'type': 'ir.actions.client', - 'tag': 'change_password', - 'target': 'new', - } - def has_group(self, cr, uid, group_ext_id): """Checks whether user belongs to given group. diff --git a/openerp/addons/base/res/res_users_view.xml b/openerp/addons/base/res/res_users_view.xml index f09866b76ab..7c4988bd1f0 100644 --- a/openerp/addons/base/res/res_users_view.xml +++ b/openerp/addons/base/res/res_users_view.xml @@ -213,7 +213,6 @@
-
From 11c0784d710502447fd86c9aed227c93402d2196 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Wed, 24 Oct 2012 13:37:28 +0200 Subject: [PATCH 208/211] [IMP] hr_timesheet_sheet form view bzr revid: fp@tinyerp.com-20121024113728-r3nx6p8c8q0mh64q --- .../hr_timesheet_sheet_view.xml | 34 +++++++++---------- .../static/src/xml/timesheet.xml | 8 ++--- 2 files changed, 20 insertions(+), 22 deletions(-) diff --git a/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml b/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml index fc35a17377f..f5438432927 100644 --- a/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml +++ b/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml @@ -54,18 +54,18 @@
- - + + @@ -85,21 +85,19 @@ -
-
- - - - + - + @@ -123,13 +121,13 @@
- - + + - + - + diff --git a/addons/hr_timesheet_sheet/static/src/xml/timesheet.xml b/addons/hr_timesheet_sheet/static/src/xml/timesheet.xml index 0c4ad857d3b..a5b2f779bd0 100644 --- a/addons/hr_timesheet_sheet/static/src/xml/timesheet.xml +++ b/addons/hr_timesheet_sheet/static/src/xml/timesheet.xml @@ -12,7 +12,7 @@ - TOTAL + Total @@ -36,8 +36,8 @@
-
-
TOTAL
+
+
Total
@@ -53,4 +53,4 @@ - \ No newline at end of file + From 4c591fa6062cf28d9593e009d5a9ff0c53ab3411 Mon Sep 17 00:00:00 2001 From: Olivier Dony Date: Wed, 24 Oct 2012 14:47:09 +0200 Subject: [PATCH 209/211] [FIX] ir_attachment: fix regression when counting attachments (OPW 576295) Cherry-pick forward-port of rev-id odo@openerp.com-20120816154020-5s6wbwfb5l2xsnyv from 6.1. Fixes regression introduced by r.4069. bzr revid: odo@openerp.com-20121024124709-28w8rh8xnelvuhwg --- openerp/addons/base/ir/ir_attachment.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openerp/addons/base/ir/ir_attachment.py b/openerp/addons/base/ir/ir_attachment.py index 4978378f22a..730df212b4c 100644 --- a/openerp/addons/base/ir/ir_attachment.py +++ b/openerp/addons/base/ir/ir_attachment.py @@ -57,7 +57,7 @@ class ir_attachment(osv.osv): def _search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False, access_rights_uid=None): ids = super(ir_attachment, self)._search(cr, uid, args, offset=offset, limit=limit, order=order, - context=context, count=count, + context=context, count=False, access_rights_uid=access_rights_uid) if not ids: if count: From 9582a8bc825891ff65eb387aa96a2b61201c69ab Mon Sep 17 00:00:00 2001 From: Olivier Dony Date: Wed, 24 Oct 2012 18:15:27 +0200 Subject: [PATCH 210/211] [FIX] res.lang: ar_AR does not exist (Arabic in Argentina?!) -> replaced with ar_SY ar_SY is the default locale alias for the `ar` code in babel, so we can use that until a translation team asks for a regional variation of Arabic. This should also fix an issue in the web client, where ar_AR was not working, because silently replaced with ar_SY. This will only work for new databases, old ones should be manually fixed. bzr revid: odo@openerp.com-20121024161527-vec2r46a4o5lk47x --- openerp/tools/misc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openerp/tools/misc.py b/openerp/tools/misc.py index ba6ea1137d1..caf28e54481 100644 --- a/openerp/tools/misc.py +++ b/openerp/tools/misc.py @@ -597,7 +597,7 @@ def get_iso_codes(lang): ALL_LANGUAGES = { 'ab_RU': u'Abkhazian / аҧсуа', - 'ar_AR': u'Arabic / الْعَرَبيّة', + 'ar_SY': u'Arabic / الْعَرَبيّة', 'bg_BG': u'Bulgarian / български език', 'bs_BS': u'Bosnian / bosanski jezik', 'ca_ES': u'Catalan / Català', From 013f14931bdc13c63fa6e169cf7fff364d5dda5a Mon Sep 17 00:00:00 2001 From: Launchpad Translations on behalf of openerp <> Date: Thu, 25 Oct 2012 05:35:47 +0000 Subject: [PATCH 211/211] Launchpad automatic translations update. bzr revid: launchpad_translations_on_behalf_of_openerp-20121025053547-u65gilonqbpjbgzy --- addons/crm_claim/i18n/ru.po | 26 +++++++++--------- addons/crm_helpdesk/i18n/ru.po | 46 ++++++++++++++++---------------- addons/document_page/i18n/ru.po | 14 +++++----- addons/procurement/i18n/ru.po | 11 ++++---- addons/product_expiry/i18n/ru.po | 8 +++--- 5 files changed, 52 insertions(+), 53 deletions(-) diff --git a/addons/crm_claim/i18n/ru.po b/addons/crm_claim/i18n/ru.po index cea6d33e47d..d92bca12fa9 100644 --- a/addons/crm_claim/i18n/ru.po +++ b/addons/crm_claim/i18n/ru.po @@ -8,13 +8,13 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:36+0000\n" -"PO-Revision-Date: 2012-10-24 04:51+0000\n" +"PO-Revision-Date: 2012-10-24 05:01+0000\n" "Last-Translator: Chertykov Denis \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-10-24 04:55+0000\n" +"X-Launchpad-Export-Date: 2012-10-25 05:35+0000\n" "X-Generator: Launchpad (build 16179)\n" #. module: crm_claim @@ -474,7 +474,7 @@ msgstr "Июнь" #. module: crm_claim #: view:res.partner:0 msgid "Partners Claim" -msgstr "" +msgstr "Претензии партнера" #. module: crm_claim #: field:crm.claim,partner_phone:0 @@ -489,7 +489,7 @@ msgstr "Пользователь" #. module: crm_claim #: field:crm.claim,active:0 msgid "Active" -msgstr "" +msgstr "Активен" #. module: crm_claim #: selection:crm.claim.report,month:0 @@ -621,13 +621,13 @@ msgstr "Открыть" #. module: crm_claim #: view:crm.claim:0 msgid "New Claims" -msgstr "" +msgstr "Новые претензии" #. module: crm_claim #: view:crm.claim:0 #: selection:crm.claim,state:0 msgid "In Progress" -msgstr "Выполняется" +msgstr "В работе" #. module: crm_claim #: view:crm.claim:0 @@ -638,17 +638,17 @@ msgstr "Ответственный" #. module: crm_claim #: view:crm.claim.report:0 msgid "Claims created in current year" -msgstr "" +msgstr "Претензии созданные в текущем году" #. module: crm_claim #: view:crm.claim:0 msgid "Unassigned Claims" -msgstr "" +msgstr "Не назначенные претензии" #. module: crm_claim #: view:crm.claim.report:0 msgid "Claims created in current month" -msgstr "" +msgstr "Претензии созданные в текущем месяце" #. module: crm_claim #: field:crm.claim.report,delay_expected:0 @@ -718,7 +718,7 @@ msgstr "Выполненные действия" #. module: crm_claim #: view:crm.claim.report:0 msgid "Claims created in last month" -msgstr "" +msgstr "Претензии созданные в прошлом месяце" #. module: crm_claim #: model:crm.case.stage,name:crm_claim.stage_claim5 @@ -760,7 +760,7 @@ msgstr "Год" #. module: crm_claim #: view:crm.claim.report:0 msgid "My company" -msgstr "" +msgstr "Моя компания" #. module: crm_claim #: selection:crm.claim.report,month:0 @@ -780,7 +780,7 @@ msgstr "Идентификатор" #. module: crm_claim #: constraint:res.partner:0 msgid "Error ! You cannot create recursive associated members." -msgstr "" +msgstr "Ошибка! Вы не можете создавать рекурсивные ссылки на участников." #. module: crm_claim #: view:crm.claim:0 @@ -810,7 +810,7 @@ msgstr "Дата создания" #. module: crm_claim #: view:crm.claim:0 msgid "In Progress Claims" -msgstr "" +msgstr "Претензии \"В работе\"" #~ msgid "Probability" #~ msgstr "Вероятность" diff --git a/addons/crm_helpdesk/i18n/ru.po b/addons/crm_helpdesk/i18n/ru.po index c0338447d34..452bdda501b 100644 --- a/addons/crm_helpdesk/i18n/ru.po +++ b/addons/crm_helpdesk/i18n/ru.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:36+0000\n" -"PO-Revision-Date: 2010-12-20 08:54+0000\n" +"PO-Revision-Date: 2012-10-24 05:08+0000\n" "Last-Translator: Chertykov Denis \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-10-19 05:34+0000\n" -"X-Generator: Launchpad (build 16165)\n" +"X-Launchpad-Export-Date: 2012-10-25 05:35+0000\n" +"X-Generator: Launchpad (build 16179)\n" #. module: crm_helpdesk #: field:crm.helpdesk.report,delay_close:0 @@ -46,7 +46,7 @@ msgstr "Март" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "Helpdesk requests occurred in current year" -msgstr "" +msgstr "Запросы на техподдержку в текущем году" #. module: crm_helpdesk #: field:crm.helpdesk,company_id:0 @@ -80,7 +80,7 @@ msgstr "Добавить внутреннею заметку" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "Date of helpdesk requests" -msgstr "" +msgstr "Дата запросов техподдержки" #. module: crm_helpdesk #: view:crm.helpdesk:0 @@ -95,7 +95,7 @@ msgstr "Сообщения" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "My company" -msgstr "" +msgstr "Моя компания" #. module: crm_helpdesk #: selection:crm.helpdesk,state:0 @@ -156,7 +156,7 @@ msgstr "Раздел" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "Helpdesk requests occurred in last month" -msgstr "" +msgstr "последний месяц" #. module: crm_helpdesk #: view:crm.helpdesk:0 @@ -166,14 +166,14 @@ msgstr "Отправить новое эл. письмо" #. module: crm_helpdesk #: view:crm.helpdesk:0 msgid "Helpdesk requests during last 7 days" -msgstr "" +msgstr "Запросы на техподдержку за последние 7 дней" #. module: crm_helpdesk #: view:crm.helpdesk:0 #: selection:crm.helpdesk,state:0 #: view:crm.helpdesk.report:0 msgid "New" -msgstr "" +msgstr "Новый" #. module: crm_helpdesk #: model:ir.model,name:crm_helpdesk.model_crm_helpdesk_report @@ -207,7 +207,7 @@ msgstr "# Писем" #: view:crm.helpdesk:0 #: view:crm.helpdesk.report:0 msgid "My Sales Team(s)" -msgstr "" +msgstr "Мои отделы продаж" #. module: crm_helpdesk #: field:crm.helpdesk,create_date:0 @@ -252,7 +252,7 @@ msgstr "Категории" #. module: crm_helpdesk #: view:crm.helpdesk:0 msgid "New Helpdesk Request" -msgstr "" +msgstr "Новый запрос техподдержки" #. module: crm_helpdesk #: view:crm.helpdesk:0 @@ -267,13 +267,13 @@ msgstr "Даты" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "Month of helpdesk requests" -msgstr "" +msgstr "Месяц запросов техподдержки" #. module: crm_helpdesk #: code:addons/crm_helpdesk/crm_helpdesk.py:101 #, python-format msgid "No Subject" -msgstr "" +msgstr "Без темы" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 @@ -283,12 +283,12 @@ msgstr "№ техподдержки" #. module: crm_helpdesk #: view:crm.helpdesk:0 msgid "All pending Helpdesk Request" -msgstr "" +msgstr "Все ожидающие запросы техподдержки" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "Year of helpdesk requests" -msgstr "" +msgstr "Год запросов техподдержки" #. module: crm_helpdesk #: view:crm.helpdesk:0 @@ -324,7 +324,7 @@ msgstr "Дата изменения" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "Helpdesk requests occurred in current month" -msgstr "" +msgstr "Запросы техподдержки в текущем месяце" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 @@ -345,7 +345,7 @@ msgstr "Категория" #. module: crm_helpdesk #: view:crm.helpdesk:0 msgid "Responsible User" -msgstr "" +msgstr "Ответственный пользователь" #. module: crm_helpdesk #: view:crm.helpdesk:0 @@ -361,7 +361,7 @@ msgstr "Планируемые затраты" #. module: crm_helpdesk #: help:crm.helpdesk,channel_id:0 msgid "Communication channel." -msgstr "" +msgstr "Канал общения" #. module: crm_helpdesk #: help:crm.helpdesk,email_cc:0 @@ -575,7 +575,7 @@ msgstr "Дерево поддержи" #. module: crm_helpdesk #: selection:crm.helpdesk,state:0 msgid "In Progress" -msgstr "" +msgstr "В работе" #. module: crm_helpdesk #: view:crm.helpdesk:0 @@ -660,7 +660,7 @@ msgstr "Название" #. module: crm_helpdesk #: view:crm.helpdesk.report:0 msgid "Month-1" -msgstr "" +msgstr "Месяц-1" #. module: crm_helpdesk #: model:ir.ui.menu,name:crm_helpdesk.menu_help_support_main @@ -699,17 +699,17 @@ msgstr "" #. module: crm_helpdesk #: view:crm.helpdesk:0 msgid "Todays's Helpdesk Requests" -msgstr "" +msgstr "Запросы техподдержки за сегодня" #. module: crm_helpdesk #: view:crm.helpdesk:0 msgid "Request Date" -msgstr "" +msgstr "Дата запроса" #. module: crm_helpdesk #: view:crm.helpdesk:0 msgid "Open Helpdesk Request" -msgstr "" +msgstr "Открыть запрос техподдержки" #. module: crm_helpdesk #: selection:crm.helpdesk,priority:0 diff --git a/addons/document_page/i18n/ru.po b/addons/document_page/i18n/ru.po index 52b81a58fc2..6b0f0f158fb 100644 --- a/addons/document_page/i18n/ru.po +++ b/addons/document_page/i18n/ru.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-02-08 01:37+0100\n" -"PO-Revision-Date: 2012-08-13 12:11+0000\n" +"PO-Revision-Date: 2012-10-24 05:09+0000\n" "Last-Translator: Chertykov Denis \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: 2012-10-19 05:39+0000\n" -"X-Generator: Launchpad (build 16165)\n" +"X-Launchpad-Export-Date: 2012-10-25 05:35+0000\n" +"X-Generator: Launchpad (build 16179)\n" #. module: document_page #: field:document.page.type,template:0 @@ -270,7 +270,7 @@ msgstr "История всех страниц" #. module: document_page #: model:ir.model,name:document_page.model_wiki_wiki msgid "document.page" -msgstr "" +msgstr "document.page" #. module: document_page #: help:document.page.type,method:0 @@ -285,7 +285,7 @@ msgstr "Закрыть" #. module: document_page #: model:ir.model,name:document_page.model_wizard_wiki_history_show_diff msgid "wizard.document.page.history.show_diff" -msgstr "" +msgstr "wizard.document.page.history.show_diff" #. module: document_page #: field:document.page.history,wiki_id:0 @@ -357,7 +357,7 @@ msgstr "Это существенные изменения ?" #: model:ir.model,name:document_page.model_wiki_groups #: model:ir.ui.menu,name:document_page.menu_action_wiki_groups view:document.page.type:0 msgid "Document Types" -msgstr "" +msgstr "Типы документов" #. module: document_page #: view:document.page:0 @@ -374,7 +374,7 @@ msgstr "Изменено" #: field:document.page,type:0 #, python-format msgid "Type" -msgstr "" +msgstr "Тип" #. module: document_page #: view:document.page.type:0 view:document.page.page.open:0 diff --git a/addons/procurement/i18n/ru.po b/addons/procurement/i18n/ru.po index b4541872669..be374ec29cd 100644 --- a/addons/procurement/i18n/ru.po +++ b/addons/procurement/i18n/ru.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:37+0000\n" -"PO-Revision-Date: 2012-08-30 18:15+0000\n" +"PO-Revision-Date: 2012-10-24 16:47+0000\n" "Last-Translator: Chertykov Denis \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-10-19 05:32+0000\n" -"X-Generator: Launchpad (build 16165)\n" +"X-Launchpad-Export-Date: 2012-10-25 05:35+0000\n" +"X-Generator: Launchpad (build 16179)\n" #. module: procurement #: view:make.procurement:0 @@ -51,7 +51,7 @@ msgstr "Группировать по ..." #. module: procurement #: help:stock.warehouse.orderpoint,procurement_draft_ids:0 msgid "Draft procurement of the product and location of that orderpoint" -msgstr "Черновик закупки ТМЦ и положение точки заказа" +msgstr "Черновик снабжения ТМЦ и положение точки заказа" #. module: procurement #: code:addons/procurement/procurement.py:291 @@ -380,8 +380,7 @@ msgstr "Количество" #: code:addons/procurement/procurement.py:379 #, python-format msgid "Not enough stock and no minimum orderpoint rule defined." -msgstr "" -"Не достаточный запас и не определено правило минимальной точки заказа." +msgstr "Не достаточен запас и нет правила минимума точки заказа." #. module: procurement #: code:addons/procurement/procurement.py:137 diff --git a/addons/product_expiry/i18n/ru.po b/addons/product_expiry/i18n/ru.po index 86ccf672713..186124080e5 100644 --- a/addons/product_expiry/i18n/ru.po +++ b/addons/product_expiry/i18n/ru.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-02-08 00:37+0000\n" -"PO-Revision-Date: 2010-11-22 07:21+0000\n" +"PO-Revision-Date: 2012-10-24 05:12+0000\n" "Last-Translator: Chertykov Denis \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-10-19 05:28+0000\n" -"X-Generator: Launchpad (build 16165)\n" +"X-Launchpad-Export-Date: 2012-10-25 05:35+0000\n" +"X-Generator: Launchpad (build 16179)\n" #. module: product_expiry #: model:ir.model,name:product_expiry.model_stock_production_lot @@ -162,7 +162,7 @@ msgstr "" #. module: product_expiry #: field:product.product,alert_time:0 msgid "Product Alert Time" -msgstr "" +msgstr "Время оповещения товара" #~ msgid "" #~ "Error: The default UOM and the purchase UOM must be in the same category."