From ab01598c88b35c12717fe2ac7ec87c437360fa7e Mon Sep 17 00:00:00 2001 From: Invitu Date: Sat, 15 Jun 2013 07:58:54 -1000 Subject: [PATCH] [IMP] Add registration integration --- asterisk_click2dial_registration/__init__.py | 23 ++++++++ .../__openerp__.py | 45 ++++++++++++++++ .../asterisk_click2dial_registration.py | 52 ++++++++++++++++++ .../registration_view.xml | 53 +++++++++++++++++++ .../wizard/__init__.py | 22 ++++++++ .../wizard/open_calling_partner.py | 29 ++++++++++ .../wizard/open_calling_partner_view.xml | 23 ++++++++ 7 files changed, 247 insertions(+) create mode 100644 asterisk_click2dial_registration/__init__.py create mode 100644 asterisk_click2dial_registration/__openerp__.py create mode 100644 asterisk_click2dial_registration/asterisk_click2dial_registration.py create mode 100644 asterisk_click2dial_registration/registration_view.xml create mode 100644 asterisk_click2dial_registration/wizard/__init__.py create mode 100644 asterisk_click2dial_registration/wizard/open_calling_partner.py create mode 100644 asterisk_click2dial_registration/wizard/open_calling_partner_view.xml diff --git a/asterisk_click2dial_registration/__init__.py b/asterisk_click2dial_registration/__init__.py new file mode 100644 index 0000000..569a391 --- /dev/null +++ b/asterisk_click2dial_registration/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# Asterisk Click2Dial Registration module for OpenERP +# Copyright (C) 2013 Invitu (http://www.invitu.com/) +# +# 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 . +# +############################################################################## + +import wizard +import asterisk_click2dial_registration diff --git a/asterisk_click2dial_registration/__openerp__.py b/asterisk_click2dial_registration/__openerp__.py new file mode 100644 index 0000000..bb442bb --- /dev/null +++ b/asterisk_click2dial_registration/__openerp__.py @@ -0,0 +1,45 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# Asterisk click2dial Registration module for OpenERP +# Copyright (C) 2013 Invitu +# +# 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 . +# +############################################################################## + +{ + "name": "Asterisk Click2dial Registration", + "version": "0.1", + "author": "INVITU", + "website": "http://www.invitu.com", + "license" : "AGPL-3", + "category": "", + "description": """ + This module adds a button "Open Registrations" on the "Open calling partner" wizard and a "Dial" button on the Registration form. + + A detailed documentation for the OpenERP-Asterisk connector is available on the Akretion Web site : http://www.akretion.com/open-source-contributions/openerp-asterisk-voip-connector + """, + "depends": [ + 'asterisk_click2dial', + 'event', + ], + "demo": [], + "data": [ + 'wizard/open_calling_partner_view.xml', + 'registration_view.xml', + ], + "installable": True, + "application": True, +} diff --git a/asterisk_click2dial_registration/asterisk_click2dial_registration.py b/asterisk_click2dial_registration/asterisk_click2dial_registration.py new file mode 100644 index 0000000..fa24457 --- /dev/null +++ b/asterisk_click2dial_registration/asterisk_click2dial_registration.py @@ -0,0 +1,52 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# Asterisk click2dial Registration module for OpenERP +# Copyright (C) 2013 Invitu +# +# 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 openerp.osv import osv, fields + + +class event_registration(osv.osv): + _name = 'event.registration' + _inherit = ['event.registration', 'asterisk.common'] + + + def format_phonenumber_to_e164(self, cr, uid, ids, name, arg, context=None): + return self.generic_phonenumber_to_e164(cr, uid, ids, [('phone', 'phone_e164')], context=context) + + + _columns = { + # Note : even if we only have 1 field, we keep multi='..' + # because the generic function generic_phonenumber_to_e164() is designed + # to return the result as multi + 'phone_e164': fields.function(format_phonenumber_to_e164, type='char', size=64, string='Phone in E.164 format', readonly=True, multi='e164registration', store={ + 'event.registration': (lambda self, cr, uid, ids, c={}: ids, ['phone'], 10), + }), + } + + + def create(self, cr, uid, vals, context=None): + vals_reformated = self._generic_reformat_phonenumbers(cr, uid, vals, context=context) + return super(event_registration, self).create(cr, uid, vals_reformated, context=context) + + + def write(self, cr, uid, ids, vals, context=None): + vals_reformated = self._generic_reformat_phonenumbers(cr, uid, vals, context=context) + return super(event_registration, self).write(cr, uid, ids, vals_reformated, context=context) + diff --git a/asterisk_click2dial_registration/registration_view.xml b/asterisk_click2dial_registration/registration_view.xml new file mode 100644 index 0000000..2a1859d --- /dev/null +++ b/asterisk_click2dial_registration/registration_view.xml @@ -0,0 +1,53 @@ + + + + + + + + asterisk.event.registration.form.dial + event.registration + + + + + +