# -*- encoding: utf-8 -*- ############################################################################## # # Asterisk click2dial CRM module for OpenERP # Copyright (c) 2011 Zikzakmedia S.L. (http://zikzakmedia.com) # All Rights Reserved. # Copyright (c) 2012 Akretion (http://www.akretion.com) # @author: Jesús Martín # @author: Alexis de Lattre # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published # by the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . # ############################################################################## from osv import osv, fields class res_partner_address(osv.osv): _inherit = "res.partner.address" def dial(self, cr, uid, ids, phone_field='phone', context=None): ''' This method open the phone call history when the phone click2dial button of asterisk_click2dial module is pressed :return the phone call history view of the partner ''' if context is None: context = {} super(res_partner_address, self).dial( cr, uid, ids, phone_field=phone_field, context=context ) user = self.pool.get('res.users').browse(cr, uid, uid, context=context) context['partner_address_id'] = ids[0] action_start_wizard = { 'name': 'Create phone call in CRM', 'type': 'ir.actions.act_window', 'res_model': 'wizard.create.crm.phonecall', 'view_type': 'form', 'view_mode': 'form', 'nodestroy': True, 'target': 'new', 'context': context, } if user.context_propose_creation_crm_call: return action_start_wizard else: return True res_partner_address() class res_users(osv.osv): _inherit = "res.users" _columns = { # Field name starts with 'context_' to allow modification by the user # in his preferences, cf server/openerp/addons/base/res/res_users.py # in "def write" of "class users" # This exists in since OpenERP 6.0 (it is not in OpenERP 5.0) 'context_propose_creation_crm_call': fields.boolean( 'Propose to create a call in CRM after a click2dial' ), } _defaults = { 'context_propose_creation_crm_call': lambda *a: True, } res_users()