diff --git a/addons/crm/crm_meeting.py b/addons/crm/crm_meeting.py
index 495eb9f351a..6979f3e5eee 100644
--- a/addons/crm/crm_meeting.py
+++ b/addons/crm/crm_meeting.py
@@ -65,7 +65,7 @@ class crm_meeting(osv.osv):
_defaults = {
'state': lambda *a: 'draft',
}
-
+
def open_meeting(self, cr, uid, ids, context=None):
"""
Open Crm Meeting Form for Crm Meeting.
@@ -75,13 +75,14 @@ class crm_meeting(osv.osv):
@param context: A standard dictionary for contextual values
@return: Dictionary value which open Crm Meeting form.
"""
+
if not context:
context = {}
-
+
data_obj = self.pool.get('ir.model.data')
-
+
value = {}
-
+
id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_meet')
id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_meet')
id4 = data_obj._get_id(cr, uid, 'crm', 'crm_case_calendar_view_meet')
@@ -93,17 +94,17 @@ class crm_meeting(osv.osv):
id4 = data_obj.browse(cr, uid, id4, context=context).res_id
for id in ids:
value = {
- 'name': _('Meeting'),
- 'view_type': 'form',
- 'view_mode': 'form,tree',
- 'res_model': 'crm.meeting',
- 'view_id': False,
+ 'name': _('Meeting'),
+ 'view_type': 'form',
+ 'view_mode': 'form,tree',
+ 'res_model': 'crm.meeting',
+ 'view_id': False,
'views': [(id2, 'form'), (id3, 'tree'), (id4, 'calendar')],
- 'type': 'ir.actions.act_window',
- 'res_id': base_calendar.base_calendar_id2real_id(id),
+ 'type': 'ir.actions.act_window',
+ 'res_id': base_calendar.base_calendar_id2real_id(id),
'nodestroy': True
}
-
+
return value
crm_meeting()
diff --git a/addons/crm/crm_opportunity.py b/addons/crm/crm_opportunity.py
index 3e1fc24a803..a50adec95d9 100644
--- a/addons/crm/crm_opportunity.py
+++ b/addons/crm/crm_opportunity.py
@@ -62,9 +62,9 @@ class crm_opportunity(osv.osv):
@param ids: List of Openday’s IDs
@return: difference between current date and log date
@param context: A standard dictionary for contextual values
- """
- cal_obj = self.pool.get('resource.calendar')
- res_obj = self.pool.get('resource.resource')
+ """
+ cal_obj = self.pool.get('resource.calendar')
+ res_obj = self.pool.get('resource.resource')
res = {}
for opportunity in self.browse(cr, uid, ids , context):
@@ -93,7 +93,7 @@ class crm_opportunity(osv.osv):
duration = float(ans.days)
if opportunity.section_id.resource_calendar_id:
- duration = float(ans.days) * 24
+ duration = float(ans.days) * 24
new_dates = cal_obj.interval_get(cr,
uid,
opportunity.section_id.resource_calendar_id and opportunity.section_id.resource_calendar_id.id or False,
@@ -105,9 +105,9 @@ class crm_opportunity(osv.osv):
date_until = mx.DateTime.strptime(date_until, '%Y-%m-%d %H:%M:%S')
for in_time, out_time in new_dates:
if in_time.date not in no_days:
- no_days.append(in_time.date)
+ no_days.append(in_time.date)
if out_time > date_until:
- break
+ break
duration = len(no_days)
res[opportunity.id][field] = abs(int(duration))
return res
@@ -230,7 +230,7 @@ class crm_opportunity(osv.osv):
}
value = {
'name': _('Meetings'),
- 'domain': "[('user_id','=',%s)]" % (uid),
+ 'domain': "[('user_id','=',%s),('opportunity_id','=',%s)]" % (uid,opp.id),
'context': context,
'view_type': 'form',
'view_mode': 'calendar,form,tree',
@@ -241,7 +241,6 @@ class crm_opportunity(osv.osv):
'search_view_id': res['res_id'],
'nodestroy': True
}
-
return value
crm_opportunity()
diff --git a/addons/crm/crm_opportunity_menu.xml b/addons/crm/crm_opportunity_menu.xml
index ba01ca72be4..2655540da38 100644
--- a/addons/crm/crm_opportunity_menu.xml
+++ b/addons/crm/crm_opportunity_menu.xml
@@ -18,8 +18,8 @@
res_model="crm.phonecall"
src_model="crm.opportunity"
view_mode="calendar,tree,form"
- context="{'default_duration': 1.0}"
- domain="[('user_id','=',uid)]"
+ context="{'default_duration': 1.0 ,'default_opportunity_id': active_id}"
+ domain="[('user_id','=',uid),('opportunity_id', '=', active_id)]"
view_type="form"/>
@@ -27,7 +27,7 @@
crm.opportunity
tree,form,graph
- {"search_default_my_oprtnit":1,"search_default_new_oprtnit":1,"search_default_section_id":section_id}
+ {"search_default_my_oprtnit":1,"search_default_new_oprtnit":1,"search_default_section_id":section_id}
diff --git a/addons/crm/wizard/crm_opportunity_to_phonecall.py b/addons/crm/wizard/crm_opportunity_to_phonecall.py
index 148ec3aec6e..ffe91a927d2 100644
--- a/addons/crm/wizard/crm_opportunity_to_phonecall.py
+++ b/addons/crm/wizard/crm_opportunity_to_phonecall.py
@@ -29,10 +29,10 @@ class crm_opportunity2phonecall(osv.osv_memory):
_description = 'Opportunity to Phonecall'
_columns = {
- 'name' : fields.char('Call summary', size=64, required=True, select=1),
- 'user_id' : fields.many2one('res.users', "Assign To"),
- 'date': fields.datetime('Date' , required=True),
- 'section_id': fields.many2one('crm.case.section', 'Sales Team'),
+ 'name' : fields.char('Call summary', size=64, required=True, select=1),
+ 'user_id' : fields.many2one('res.users', "Assign To"),
+ 'date': fields.datetime('Date' , required=True),
+ 'section_id': fields.many2one('crm.case.section', 'Sales Team'),
}
def default_get(self, cr, uid, fields, context=None):
@@ -46,7 +46,6 @@ class crm_opportunity2phonecall(osv.osv_memory):
@return : default values of fields.
"""
-
opp_obj = self.pool.get('crm.opportunity')
record_ids = context and context.get('active_ids', []) or []
res = super(crm_opportunity2phonecall, self).default_get(cr, uid, fields, context=context)
@@ -93,7 +92,7 @@ class crm_opportunity2phonecall(osv.osv_memory):
data_obj = self.pool.get('ir.model.data')
categ_id = mod_obj._get_id(cr, uid, 'crm', 'categ_phone1')
categ_id = data_obj.browse(cr, uid, categ_id, context=context).res_id
-
+
# Select the view
id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_tree_view')
id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_form_view')
@@ -105,31 +104,32 @@ class crm_opportunity2phonecall(osv.osv_memory):
for this in self.browse(cr, uid, ids, context=context):
for opp in opp_obj.browse(cr, uid, record_ids, context=context):
new_case = phonecall_obj.create(cr, uid, {
- 'name' : opp.name,
- 'case_id' : opp.id ,
- 'user_id' : this.user_id and this.user_id.id or False,
- 'categ_id' : categ_id,
- 'description' : opp.description or False,
- 'date' : this.date,
- 'section_id' : opp.section_id and opp.section_id.id or False,
- 'partner_id': opp.partner_id and opp.partner_id.id or False,
- 'partner_address_id': opp.partner_address_id and opp.partner_address_id.id or False,
- 'partner_phone' : opp.phone or (opp.partner_address_id and opp.partner_address_id.phone or False),
- 'partner_mobile' : opp.partner_address_id and opp.partner_address_id.mobile or False,
- 'priority': opp.priority,
+ 'name' : opp.name,
+ 'case_id' : opp.id ,
+ 'user_id' : this.user_id and this.user_id.id or False,
+ 'categ_id' : categ_id,
+ 'description' : opp.description or False,
+ 'date' : this.date,
+ 'section_id' : opp.section_id and opp.section_id.id or False,
+ 'partner_id': opp.partner_id and opp.partner_id.id or False,
+ 'partner_address_id': opp.partner_address_id and opp.partner_address_id.id or False,
+ 'partner_phone' : opp.phone or (opp.partner_address_id and opp.partner_address_id.phone or False),
+ 'partner_mobile' : opp.partner_address_id and opp.partner_address_id.mobile or False,
+ 'priority': opp.priority,
'opp_id': opp.id
}, context=context)
phonecall_obj.case_open(cr, uid, [new_case])
value = {
- 'name': _('Phone Call'),
- 'view_type': 'form',
- 'view_mode': 'tree,form',
- 'res_model': 'crm.phonecall',
- 'res_id' : new_case,
- 'views': [(id3, 'form'), (id2, 'tree'), (False, 'calendar'), (False, 'graph')],
- 'type': 'ir.actions.act_window',
+ 'name': _('Phone Call'),
+ 'domain': "[('user_id','=',%s),('opportunity_id','=',%s)]" % (uid,opp.id),
+ 'view_type': 'form',
+ 'view_mode': 'tree,form',
+ 'res_model': 'crm.phonecall',
+ 'res_id' : new_case,
+ 'views': [(id3, 'form'), (id2, 'tree'), (False, 'calendar'), (False, 'graph')],
+ 'type': 'ir.actions.act_window',
'search_view_id': res['res_id']
}
return value