From 9ca64cce578690082cb267f099c50fe382e06016 Mon Sep 17 00:00:00 2001
From: "Pedro M. Baeza"
Date: Wed, 3 Feb 2016 08:59:04 +0100
Subject: [PATCH 01/20] [ADD] event_registration_cancel_reason
=============================================
Reasons for event registrations cancellations
=============================================
This module allows to add a predefined reason why a registration for an event
is cancelled.
Configuration
=============
Go to *Marketing > Configuration > Events > Registrations cancel reasons* for
setting the possible reasons you want to handle. You can also set if a reason
is only available for certain events or, if you leave it empty, for all.
Usage
=====
Go to *Marketing > Events > Events*, enter into the details or any of the
events, and press the red circle button in the right part of any of the
registrations. A new screen will appear asking you to enter the reason why the
registration is cancelled.
You will get also the same screen when pressing the button
*Cancel registration* from the details view of a registration in
*Marketing > Events > Registrations*. On this object, you can group by the
cancel reason in the list, calendar or graph view.
---
event_registration_cancel_reason/README.rst | 70 +++++++++++
event_registration_cancel_reason/__init__.py | 7 ++
.../__openerp__.py | 24 ++++
event_registration_cancel_reason/i18n/es.po | 113 ++++++++++++++++++
.../models/__init__.py | 6 +
.../models/event_registration.py | 42 +++++++
.../security/ir.model.access.csv | 2 +
.../static/description/icon.png | Bin 0 -> 9455 bytes
.../tests/__init__.py | 6 +
.../test_event_registration_cancel_reason.py | 33 +++++
.../views/event_registration_view.xml | 56 +++++++++
.../wizard/__init__.py | 6 +
.../event_registration_cancel_log_reason.py | 35 ++++++
...nt_registration_cancel_log_reason_view.xml | 30 +++++
14 files changed, 430 insertions(+)
create mode 100644 event_registration_cancel_reason/README.rst
create mode 100644 event_registration_cancel_reason/__init__.py
create mode 100644 event_registration_cancel_reason/__openerp__.py
create mode 100644 event_registration_cancel_reason/i18n/es.po
create mode 100644 event_registration_cancel_reason/models/__init__.py
create mode 100644 event_registration_cancel_reason/models/event_registration.py
create mode 100644 event_registration_cancel_reason/security/ir.model.access.csv
create mode 100644 event_registration_cancel_reason/static/description/icon.png
create mode 100644 event_registration_cancel_reason/tests/__init__.py
create mode 100644 event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
create mode 100644 event_registration_cancel_reason/views/event_registration_view.xml
create mode 100644 event_registration_cancel_reason/wizard/__init__.py
create mode 100644 event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
create mode 100644 event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
diff --git a/event_registration_cancel_reason/README.rst b/event_registration_cancel_reason/README.rst
new file mode 100644
index 000000000..d585b6e24
--- /dev/null
+++ b/event_registration_cancel_reason/README.rst
@@ -0,0 +1,70 @@
+.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+
+=============================================
+Reasons for event registrations cancellations
+=============================================
+
+This module allows to add a predefined reason why a registration for an event
+is cancelled.
+
+Configuration
+=============
+
+Go to *Marketing > Configuration > Events > Registrations cancellation reasons* for
+setting the possible reasons you want to handle. You can also set if a reason
+is only available for certain types of events or, if you leave it empty, for
+all.
+
+Usage
+=====
+
+Go to *Marketing > Events > Events*, enter into the details of any of the
+events, and press the red circle button in the right part of any of the
+registrations. A new screen will appear asking you to enter the reason why the
+registration is cancelled.
+
+You will get also the same screen when pressing the button
+*Cancel registration* from the details view of a registration in
+*Marketing > Events > Registrations*. On this object, you can group by the
+cancellation reason in the list, calendar or graph view.
+
+.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
+ :alt: Try me on Runbot
+ :target: https://runbot.odoo-community.org/runbot/199/8.0
+
+Bug Tracker
+===========
+
+Bugs are tracked on `GitHub Issues
+`_. In case of trouble, please
+check there if your issue has already been reported. If you spotted it first,
+help us smashing it by providing a detailed and welcomed `feedback
+`_.
+
+Credits
+=======
+
+Contributors
+------------
+
+* Pedro M. Baeza
+
+Maintainer
+----------
+
+.. image:: http://odoo-community.org/logo.png
+ :alt: Odoo Community Association
+ :target: http://odoo-community.org
+
+This module is maintained by the OCA.
+
+OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
+To contribute to this module, please visit http://odoo-community.org.
diff --git a/event_registration_cancel_reason/__init__.py b/event_registration_cancel_reason/__init__.py
new file mode 100644
index 000000000..62a7dd3b7
--- /dev/null
+++ b/event_registration_cancel_reason/__init__.py
@@ -0,0 +1,7 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+from . import models
+from . import wizard
diff --git a/event_registration_cancel_reason/__openerp__.py b/event_registration_cancel_reason/__openerp__.py
new file mode 100644
index 000000000..d2bfae0e8
--- /dev/null
+++ b/event_registration_cancel_reason/__openerp__.py
@@ -0,0 +1,24 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+{
+ "name": "Reasons for event registrations cancellations",
+ "version": "8.0.1.0.0",
+ "license": "AGPL-3",
+ "author": "Antiun Ingeniería S.L., "
+ "Serv. Tecnol. Avanzados - Pedro M. Baeza, "
+ "Odoo Community Association (OCA)",
+ "website": "https://www.antiun.com",
+ "category": "Customer Relationship Management",
+ "depends": [
+ 'event',
+ ],
+ "data": [
+ 'security/ir.model.access.csv',
+ 'views/event_registration_view.xml',
+ 'wizard/event_registration_cancel_log_reason_view.xml',
+ ],
+ "installable": True,
+}
diff --git a/event_registration_cancel_reason/i18n/es.po b/event_registration_cancel_reason/i18n/es.po
new file mode 100644
index 000000000..2b40e853a
--- /dev/null
+++ b/event_registration_cancel_reason/i18n/es.po
@@ -0,0 +1,113 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * event_registration_cancel_reason
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 8.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-02-03 07:55+0000\n"
+"PO-Revision-Date: 2016-02-03 07:55+0000\n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: event_registration_cancel_reason
+#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+msgid "Abort"
+msgstr "Abortar"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.reason,event__type_ids:0
+msgid "Event type"
+msgstr "Tipos de evento"
+
+#. module: event_registration_cancel_reason
+#: view:event.registration:event_registration_cancel_reason.view_registration_search
+msgid "Cancel reason"
+msgstr "Razón de cancelación"
+
+#. module: event_registration_cancel_reason
+#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+msgid "Cancel registration"
+msgstr "Cancelar registro"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.log.reason,create_uid:0
+#: field:event.registration.cancel.reason,create_uid:0
+msgid "Created by"
+msgstr "Creado por"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.log.reason,create_date:0
+#: field:event.registration.cancel.reason,create_date:0
+msgid "Created on"
+msgstr "Creado en"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.log.reason,event_type_id:0
+msgid "Event type"
+msgstr "Tipo de evento"
+
+#. module: event_registration_cancel_reason
+#: model:ir.model,name:event_registration_cancel_reason.model_event_registration
+msgid "Event Registration"
+msgstr "Registro evento"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.log.reason,id:0
+#: field:event.registration.cancel.reason,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.log.reason,write_uid:0
+#: field:event.registration.cancel.reason,write_uid:0
+msgid "Last Updated by"
+msgstr "Última actualización por"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.log.reason,write_date:0
+#: field:event.registration.cancel.reason,write_date:0
+msgid "Last Updated on"
+msgstr "Última actualización en"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.reason,name:0
+msgid "Reason"
+msgstr "Razón"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration,cancel_reason_id:0
+msgid "Reason for cancellation"
+msgstr "Razón para la cancelación"
+
+#. module: event_registration_cancel_reason
+#: field:event.registration.cancel.log.reason,reason_id:0
+msgid "Reason id"
+msgstr "Razón"
+
+#. module: event_registration_cancel_reason
+#: model:ir.actions.act_window,name:event_registration_cancel_reason.event_registration_cancel_reason_action
+#: model:ir.ui.menu,name:event_registration_cancel_reason.menu_event_registration_cancel_reason
+msgid "Registrations cancel reasons"
+msgstr "Razones de cancelación de registros"
+
+#. module: event_registration_cancel_reason
+#: help:event.registration.cancel.reason,event_type_ids:0
+msgid "Select the event types where you want to use this cancellation reason. Leave it empty for using in all"
+msgstr "Seleccione los tipos de evento en los que quiere usar esta razón de cancelación. Déjelo en blanco para usarla en todos."
+
+#. module: event_registration_cancel_reason
+#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+msgid "Select the reason for cancelling the registration:"
+msgstr "Seleccione la razón para cancelar el registro:"
+
+#. module: event_registration_cancel_reason
+#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+msgid "or"
+msgstr "o"
+
diff --git a/event_registration_cancel_reason/models/__init__.py b/event_registration_cancel_reason/models/__init__.py
new file mode 100644
index 000000000..352570740
--- /dev/null
+++ b/event_registration_cancel_reason/models/__init__.py
@@ -0,0 +1,6 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+from . import event_registration
diff --git a/event_registration_cancel_reason/models/event_registration.py b/event_registration_cancel_reason/models/event_registration.py
new file mode 100644
index 000000000..50393a865
--- /dev/null
+++ b/event_registration_cancel_reason/models/event_registration.py
@@ -0,0 +1,42 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+from openerp import api, fields, models
+
+
+class EventRegistration(models.Model):
+ _inherit = 'event.registration'
+
+ cancel_reason_id = fields.Many2one(
+ comodel_name='event.registration.cancel.reason', readonly=True,
+ string="Reason for cancellation", ondelete="restrict")
+
+ @api.multi
+ def button_reg_cancel(self):
+ if self.env.context.get('bypass_reason'):
+ return super(EventRegistration, self).button_reg_cancel()
+ return {
+ 'type': 'ir.actions.act_window',
+ 'name': 'Cancellation reason',
+ 'res_model': 'event.registration.cancel.log.reason',
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'target': 'new',
+ }
+
+ @api.one
+ def do_draft(self):
+ super(EventRegistration, self).do_draft()
+ self.cancel_reason_id = False
+
+
+class EventRegistrationCancelReason(models.Model):
+ _name = 'event.registration.cancel.reason'
+
+ name = fields.Char('Reason', required=True, translate=True)
+ event_type_ids = fields.Many2many(
+ comodel_name="event.type", string="Event types",
+ help="Select the event types where you want to use this cancellation "
+ "reason. Leave it empty for using in all")
diff --git a/event_registration_cancel_reason/security/ir.model.access.csv b/event_registration_cancel_reason/security/ir.model.access.csv
new file mode 100644
index 000000000..f7cac9e09
--- /dev/null
+++ b/event_registration_cancel_reason/security/ir.model.access.csv
@@ -0,0 +1,2 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_event_registration_cancel_reason,event.registration.cancel.reason,model_event_registration_cancel_reason,event.group_event_user,1,1,1,1
diff --git a/event_registration_cancel_reason/static/description/icon.png b/event_registration_cancel_reason/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d
GIT binary patch
literal 9455
zcmW++2RxMjAAjx~&dlBk9S+%}OXg)AGE&Cb*&}d0jUxM@u(PQx^-s)697TX`ehR4?GS^qbkof1cslKgkU)h65qZ9Oc=ml_0temigYLJfnz{IDzUf>bGs4N!v3=Z3jMq&A#7%rM5eQ#dc?k~!
zVpnB`o+K7|Al`Q_U;eD$B
zfJtP*jH`siUq~{KE)`jP2|#TUEFGRryE2`i0**z#*^6~AI|YzIWy$Cu#CSLW3q=GA
z6`?GZymC;dCPk~rBS%eCb`5OLr;RUZ;D`}um=H)BfVIq%7VhiMr)_#G0N#zrNH|__
zc+blN2UAB0=617@>_u;MPHN;P;N#YoE=)R#i$k_`UAA>WWCcEVMh~L_
zj--gtp&|K1#58Yz*AHCTMziU1Jzt_jG0I@qAOHsk$2}yTmVkBp_eHuY$A9)>P6o~I
z%aQ?!(GqeQ-Y+b0I(m9pwgi(IIZZzsbMv+9w{PFtd_<_(LA~0H(xz{=FhLB@(1&qHA5EJw1>>=%q2f&^X>IQ{!GJ4e9U
z&KlB)z(84HmNgm2hg2C0>WM{E(DdPr+EeU_N@57;PC2&DmGFW_9kP&%?X4}+xWi)(
z;)z%wI5>D4a*5XwD)P--sPkoY(a~WBw;E~AW`Yue4kFa^LM3X`8x|}ZUeMnqr}>kH
zG%WWW>3ml$Yez?i%)2pbKPI7?5o?hydokgQyZsNEr{a|mLdt;X2TX(#B1j35xPnPW
z*bMSSOauW>o;*=kO8ojw91VX!qoOQb)zHJ!odWB}d+*K?#sY_jqPdg{Sm2HdYzdEx
zOGVPhVRTGPtv0o}RfVP;Nd(|CB)I;*t&QO8h
zFfekr30S!-LHmV_Su-W+rEwYXJ^;6&3|L$mMC8*bQptyOo9;>Qb9Q9`ySe3%V$A*9
zeKEe+b0{#KWGp$F+tga)0RtI)nhMa-K@JS}2krK~n8vJ=Ngm?R!9G<~RyuU0d?nz#
z-5EK$o(!F?hmX*2Yt6+coY`6jGbb7tF#6nHA
zuKk=GGJ;ZwON1iAfG$E#Y7MnZVmrY|j0eVI(DN_MNFJmyZ|;w4tf@=CCDZ#5N_0K=
z$;R~bbk?}TpfDjfB&aiQ$VA}s?P}xPERJG{kxk5~R`iRS(SK5d+Xs9swCozZISbnS
zk!)I0>t=A<-^z(cmSFz3=jZ23u13X><0b)P)^1T_))Kr`e!-pb#q&J*Q`p+B6la%C
zuVl&0duN<;uOsB3%T9Fp8t{ED108)`y_~Hnd9AUX7h-H?jVuU|}My+C=TjH(jKz
zqMVr0re3S$H@t{zI95qa)+Crz*5Zj}Ao%4Z><+W(nOZd?gDnfNBC3>M8WE61$So|P
zVvqH0SNtDTcsUdzaMDpT=Ty0pDHHNL@Z0w$Y`XO
z2M-_r1S+GaH%pz#Uy0*w$Vdl=X=rQXEzO}d6J^R6zjM1u&c9vYLvLp?W7w(?np9x1
zE_0JSAJCPB%i7p*Wvg)pn5T`8k3-uR?*NT|J`eS#_#54p>!p(mLDvmc-3o0mX*mp_
zN*AeS<>#^-{S%W<*mz^!X$w_2dHWpcJ6^j64qFBft-o}o_Vx80o0>}Du;>kLts;$8
zC`7q$QI(dKYG`Wa8#wl@V4jVWBRGQ@1dr-hstpQL)Tl+aqVpGpbSfN>5i&QMXfiZ>
zaA?T1VGe?rpQ@;+pkrVdd{klI&jVS@I5_iz!=UMpTsa~mBga?1r}aRBm1WS;TT*s0f0lY=JBl66Upy)-k4J}lh=P^8(SXk~0xW=T9v*B|gzIhN
z>qsO7dFd~mgxAy4V?&)=5ieYq?zi?ZEoj)&2o)RLy=@hbCRcfT5jigwtQGE{L*8<@Yd{zg;CsL5mvzfDY}P-wos_6PfprFVaeqNE%h
zKZhLtcQld;ZD+>=nqN~>GvROfueSzJD&BE*}XfU|H&(FssBqY=hPCt`d
zH?@s2>I(|;fcW&YM6#V#!kUIP8$Nkdh0A(bEVj``-AAyYgwY~jB
zT|I7Bf@%;7aL7Wf4dZ%VqF$eiaC38OV6oy3Z#TER2G+fOCd9Iaoy6aLYbPTN{XRPz
z;U!V|vBf%H!}52L2gH_+j;`bTcQRXB+y9onc^wLm5wi3-Be}U>k_u>2Eg$=k!(l@I
zcCg+flakT2Nej3i0yn+g+}%NYb?ta;R?(g5SnwsQ49U8Wng8d|{B+lyRcEDvR3+`O{zfmrmvFrL6acVP%yG98X
zo&+VBg@px@i)%o?dG(`T;n*$S5*rnyiR#=wW}}GsAcfyQpE|>a{=$Hjg=-*_K;UtD
z#z-)AXwSRY?OPefw^iI+
z)AXz#PfEjlwTes|_{sB?4(O@fg0AJ^g8gP}ex9Ucf*@_^J(s_5jJV}c)s$`Myn|Kd
z$6>}#q^n{4vN@+Os$m7KV+`}c%4)4pv@06af4-x5#wj!KKb%caK{A&Y#Rfs
z-po?Dcb1({W=6FKIUirH&(yg=*6aLCekcKwyfK^JN5{wcA3nhO(o}SK#!CINhI`-I
z1)6&n7O&ZmyFMuNwvEic#IiOAwNkR=u5it{B9n2sAJV5pNhar=j5`*N!Na;c7g!l$
z3aYBqUkqqTJ=Re-;)s!EOeij=7SQZ3Hq}ZRds%IM*PtM$wV
z@;rlc*NRK7i3y5BETSKuumEN`Xu_8GP1Ri=OKQ$@I^ko8>H6)4rjiG5{VBM>B|%`&&s^)jS|-_95&yc=GqjNo{zFkw%%HHhS~e=s
zD#sfS+-?*t|J!+ozP6KvtOl!R)@@-z24}`9{QaVLD^9VCSR2b`b!KC#o;Ki<+wXB6
zx3&O0LOWcg4&rv4QG0)4yb}7BFSEg~=IR5#ZRj8kg}dS7_V&^%#Do==#`u
zpy6{ox?jWuR(;pg+f@mT>#HGWHAJRRDDDv~@(IDw&R>9643kK#HN`!1vBJHnC+RM&yIh8{gG2q
zA%e*U3|N0XSRa~oX-3EAneep)@{h2vvd3Xvy$7og(sayr@95+e6~Xvi1tUqnIxoIH
zVWo*OwYElb#uyW{Imam6f2rGbjR!Y3`#gPqkv57dB6K^wRGxc9B(t|aYDGS=m$&S!NmCtrMMaUg(c
zc2qC=2Z`EEFMW-me5B)24AqF*bV5Dr-M5ig(l-WPS%CgaPzs6p_gnCIvTJ=Y<6!gT
zVt@AfYCzjjsMEGi=rDQHo0yc;HqoRNnNFeWZgcm?f;cp(6CNylj36DoL(?TS7eU#+
z7&mfr#y))+CJOXQKUMZ7QIdS9@#-}7y2K1{8)cCt0~-X0O!O?Qx#E4Og+;A2SjalQ
zs7r?qn0H044=sDN$SRG$arw~n=+T_DNdSrarmu)V6@|?1-ZB#hRn`uilTGPJ@fqEy
zGt(f0B+^JDP&f=r{#Y_wi#AVDf-y!RIXU^0jXsFpf>=Ji*TeqSY!H~AMbJdCGLhC)
zn7Rx+sXw6uYj;WRYrLd^5IZq@6JI1C^YkgnedZEYy<&4(z%Q$5yv#Boo{AH8n$a
zhb4Y3PWdr269&?V%uI$xMcUrMzl=;w<_nm*qr=c3Rl@i5wWB;e-`t7D&c-mcQl7x!
zZWB`UGcw=Y2=}~wzrfLx=uet<;m3~=8I~ZRuzvMQUQdr+yTV|ATf1Uuomr__nDf=X
zZ3WYJtHp_ri(}SQAPjv+Y+0=fH4krOP@S&=zZ-t1jW1o@}z;xk8
z(Nz1co&El^HK^NrhVHa-_;&88vTU>_J33=%{if;BEY*J#1n59=07jrGQ#IP>@u#3A
z;!q+E1Rj3ZJ+!4bq9F8PXJ@yMgZL;>&gYA0%_Kbi8?S=XGM~dnQZQ!yBSgcZhY96H
zrWnU;k)qy`rX&&xlDyA%(a1Hhi5CWkmg(`Gb%m(HKi-7Z!LKGRP_B8@`7&hdDy5n=
z`OIxqxiVfX@OX1p(mQu>0Ai*v_cTMiw4qRt3~NBvr9oBy0)r>w3p~V0SCm=An6@3n)>@z!|o-$HvDK
z|3D2ZMJkLE5loMKl6R^ez@Zz%S$&mbeoqH5`Bb){Ei21q&VP)hWS2tjShfFtGE+$z
zzCR$P#uktu+#!w)cX!lWN1XU%K-r=s{|j?)Akf@q#3b#{6cZCuJ~gCxuMXRmI$nGtnH+-h
z+GEi!*X=AP<|fG`1>MBdTb?28JYc=fGvAi2I<$B(rs$;eoJCyR6_bc~p!XR@O-+sD
z=eH`-ye})I5ic1eL~TDmtfJ|8`0VJ*Yr=hNCd)G1p2MMz4C3^Mj?7;!w|Ly%JqmuW
zlIEW^Ft%z?*|fpXda>Jr^1noFZEwFgVV%|*XhH@acv8rdGxeEX{M$(vG{Zw+x(ei@
zmfXb22}8-?Fi`vo-YVrTH*C?a8%M=Hv9MqVH7H^J$KsD?>!SFZ;ZsvnHr_gn=7acz
z#W?0eCdVhVMWN12VV^$>WlQ?f;P^{(&pYTops|btm6aj>_Uz+hqpGwB)vWp0Cf5y<
zft8-je~nn?W11plq}N)4A{l8I7$!ks_x$PXW-2XaRFswX_BnF{R#6YIwMhAgd5F9X
zGmwdadS6(a^fjHtXg8=l?Rc0Sm%hk6E9!5cLVloEy4eh(=FwgP`)~I^5~pBEWo+F6
zSf2ncyMurJN91#cJTy_u8Y}@%!bq1RkGC~-bV@SXRd4F{R-*V`bS+6;W5vZ(&+I<9$;-V|eNfLa5n-6%
z2(}&uGRF;p92eS*sE*oR$@pexaqr*meB)VhmIg@h{uzkk$9~qh#cHhw#>O%)b@+(|
z^IQgqzuj~Sk(J;swEM-3TrJAPCq9k^^^`q{IItKBRXYe}e0Tdr=Huf7da3$l4PdpwWDop%^}n;dD#K4s#DYA8SHZ
z&1!riV4W4R7R#C))JH1~axJ)RYnM$$lIR%6fIVA@zV{XVyx}C+a-Dt8Y9M)^KU0+H
zR4IUb2CJ{Hg>CuaXtD50jB(_Tcx=Z$^WYu2u5kubqmwp%drJ6
z?Fo40g!Qd<-l=TQxqHEOuPX0;^z7iX?Ke^a%XT<13TA^5`4Xcw6D@Ur&VT&CUe0d}
z1GjOVF1^L@>O)l@?bD~$wzgf(nxX1OGD8fEV?TdJcZc2KoUe|oP1#=$$7ee|xbY)A
zDZq+cuTpc(fFdj^=!;{k03C69lMQ(|>uhRfRu%+!k&YOi-3|1QKB
z
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
Xviia!U7SGha1wx#SCgwmn*{w2TRX*I
literal 0
HcmV?d00001
diff --git a/event_registration_cancel_reason/tests/__init__.py b/event_registration_cancel_reason/tests/__init__.py
new file mode 100644
index 000000000..68f4aa01f
--- /dev/null
+++ b/event_registration_cancel_reason/tests/__init__.py
@@ -0,0 +1,6 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+from . import test_event_registration_cancel_reason
diff --git a/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py b/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
new file mode 100644
index 000000000..11faed6fe
--- /dev/null
+++ b/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
@@ -0,0 +1,33 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+from openerp import fields
+from openerp.tests import common
+
+
+class TestEventRegistrationCancelReason(common.TransactionCase):
+ def setUp(self):
+ super(TestEventRegistrationCancelReason, self).setUp()
+ self.event = self.env['event.event'].create(
+ {'name': 'Test event',
+ 'date_begin': fields.Date.today(),
+ 'date_end': fields.Date.today()})
+ self.partner = self.env['res.partner'].create({'name': 'Test partner'})
+ self.cancel_reason = self.env[
+ 'event.registration.cancel.reason'].create({'name': 'Test reason'})
+ self.registration = self.env['event.registration'].create(
+ {'event_id': self.event.id,
+ 'partner_id': self.partner.id})
+
+ def test_cancel(self):
+ action = self.registration.button_reg_cancel()
+ self.assertEqual(action.get('type'), 'ir.actions.act_window')
+ wizard_model = self.env['event.registration.cancel.log.reason']
+ wizard = wizard_model.with_context(
+ active_id=self.registration.id).create(
+ {'reason_id': self.cancel_reason.id})
+ wizard.button_log()
+ self.assertEqual(
+ self.registration.cancel_reason_id, self.cancel_reason)
diff --git a/event_registration_cancel_reason/views/event_registration_view.xml b/event_registration_cancel_reason/views/event_registration_view.xml
new file mode 100644
index 000000000..3c03a1fa8
--- /dev/null
+++ b/event_registration_cancel_reason/views/event_registration_view.xml
@@ -0,0 +1,56 @@
+
+
+
+
+
+ Event registration form (with cancellation reason)
+ event.registration
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Event registration search (with cancellation reason)
+ event.registration
+
+
+
+
+
+
+
+
+
+ Registrations cancel reasons tree
+ event.registration.cancel.reason
+
+
+
+
+
+
+
+
+
+ Registrations cancel reasons
+ event.registration.cancel.reason
+ form
+ tree
+
+
+
+
+
+
diff --git a/event_registration_cancel_reason/wizard/__init__.py b/event_registration_cancel_reason/wizard/__init__.py
new file mode 100644
index 000000000..e0a58f808
--- /dev/null
+++ b/event_registration_cancel_reason/wizard/__init__.py
@@ -0,0 +1,6 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+from . import event_registration_cancel_log_reason
diff --git a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
new file mode 100644
index 000000000..15bf8f28b
--- /dev/null
+++ b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
@@ -0,0 +1,35 @@
+# -*- coding: utf-8 -*-
+# © 2016 Antiun Ingeniería S.L.
+# © 2016 Pedro M. Baeza
+# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
+
+from openerp import api, fields, models
+
+
+class EventRegistrationCancelLogReason(models.TransientModel):
+ _name = 'event.registration.cancel.log.reason'
+
+ event_type_id = fields.Many2one(
+ comodel_name="event.type", string="Event type")
+ reason_id = fields.Many2one(
+ comodel_name="event.registration.cancel.reason", required=True,
+ domain="['|', "
+ " ('event_type_ids', '=', False), "
+ " ('event_type_ids', '=', event_type_id)]")
+
+ @api.model
+ def default_get(self, var_fields):
+ res = super(EventRegistrationCancelLogReason, self).default_get(
+ var_fields)
+ registration = self.env['event.registration'].browse(
+ self.env.context['active_id'])
+ res['event_type_id'] = registration.event_id.type.id
+ return res
+
+ @api.multi
+ def button_log(self):
+ self.ensure_one()
+ registration = self.env['event.registration'].browse(
+ self.env.context['active_id'])
+ registration.cancel_reason_id = self.reason_id.id
+ registration.with_context(bypass_reason=True).button_reg_cancel()
diff --git a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
new file mode 100644
index 000000000..59c6f2259
--- /dev/null
+++ b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
@@ -0,0 +1,30 @@
+
+
+
+
+
+ Wizard for logging registrations cancellation
+ event.registration.cancel.log.reason
+
+
+
+
+
+
+
From 19b17e4bd21fa615b2c1d7075a559bf606c2ae47 Mon Sep 17 00:00:00 2001
From: "Pedro M. Baeza"
Date: Sun, 14 Feb 2016 12:56:22 +0100
Subject: [PATCH 02/20] [IMP] event_registration_cancel_reason: Module
category/Multi support/text
---
event_registration_cancel_reason/README.rst | 16 ++++++++--------
event_registration_cancel_reason/__openerp__.py | 2 +-
event_registration_cancel_reason/i18n/es.po | 8 ++++----
.../models/event_registration.py | 8 ++++----
.../test_event_registration_cancel_reason.py | 2 +-
.../views/event_registration_view.xml | 8 ++++----
.../event_registration_cancel_log_reason.py | 8 ++++----
...event_registration_cancel_log_reason_view.xml | 2 +-
8 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/event_registration_cancel_reason/README.rst b/event_registration_cancel_reason/README.rst
index d585b6e24..b5561a864 100644
--- a/event_registration_cancel_reason/README.rst
+++ b/event_registration_cancel_reason/README.rst
@@ -2,12 +2,12 @@
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
-=============================================
-Reasons for event registrations cancellations
-=============================================
+===========================================
+Reasons for event registration cancellation
+===========================================
-This module allows to add a predefined reason why a registration for an event
-is cancelled.
+This module allows to add predefined reasons for the attendees to report back
+why they cancel their registration to an event.
Configuration
=============
@@ -57,9 +57,9 @@ Contributors
Maintainer
----------
-.. image:: http://odoo-community.org/logo.png
+.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
- :target: http://odoo-community.org
+ :target: https://odoo-community.org
This module is maintained by the OCA.
@@ -67,4 +67,4 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-To contribute to this module, please visit http://odoo-community.org.
+To contribute to this module, please visit https://odoo-community.org.
diff --git a/event_registration_cancel_reason/__openerp__.py b/event_registration_cancel_reason/__openerp__.py
index d2bfae0e8..4b7e1ff5e 100644
--- a/event_registration_cancel_reason/__openerp__.py
+++ b/event_registration_cancel_reason/__openerp__.py
@@ -11,7 +11,7 @@
"Serv. Tecnol. Avanzados - Pedro M. Baeza, "
"Odoo Community Association (OCA)",
"website": "https://www.antiun.com",
- "category": "Customer Relationship Management",
+ "category": "Event Management",
"depends": [
'event',
],
diff --git a/event_registration_cancel_reason/i18n/es.po b/event_registration_cancel_reason/i18n/es.po
index 2b40e853a..05d8e11d6 100644
--- a/event_registration_cancel_reason/i18n/es.po
+++ b/event_registration_cancel_reason/i18n/es.po
@@ -27,7 +27,7 @@ msgstr "Tipos de evento"
#. module: event_registration_cancel_reason
#: view:event.registration:event_registration_cancel_reason.view_registration_search
-msgid "Cancel reason"
+msgid "Cancellation reason"
msgstr "Razón de cancelación"
#. module: event_registration_cancel_reason
@@ -82,7 +82,7 @@ msgstr "Razón"
#. module: event_registration_cancel_reason
#: field:event.registration,cancel_reason_id:0
-msgid "Reason for cancellation"
+msgid "Cancellation reason"
msgstr "Razón para la cancelación"
#. module: event_registration_cancel_reason
@@ -93,12 +93,12 @@ msgstr "Razón"
#. module: event_registration_cancel_reason
#: model:ir.actions.act_window,name:event_registration_cancel_reason.event_registration_cancel_reason_action
#: model:ir.ui.menu,name:event_registration_cancel_reason.menu_event_registration_cancel_reason
-msgid "Registrations cancel reasons"
+msgid "Registration cancellation reasons"
msgstr "Razones de cancelación de registros"
#. module: event_registration_cancel_reason
#: help:event.registration.cancel.reason,event_type_ids:0
-msgid "Select the event types where you want to use this cancellation reason. Leave it empty for using in all"
+msgid "Select the event types where you want to use this cancellation reason. Leave it empty for using in all."
msgstr "Seleccione los tipos de evento en los que quiere usar esta razón de cancelación. Déjelo en blanco para usarla en todos."
#. module: event_registration_cancel_reason
diff --git a/event_registration_cancel_reason/models/event_registration.py b/event_registration_cancel_reason/models/event_registration.py
index 50393a865..d8db60747 100644
--- a/event_registration_cancel_reason/models/event_registration.py
+++ b/event_registration_cancel_reason/models/event_registration.py
@@ -11,7 +11,7 @@ class EventRegistration(models.Model):
cancel_reason_id = fields.Many2one(
comodel_name='event.registration.cancel.reason', readonly=True,
- string="Reason for cancellation", ondelete="restrict")
+ string="Cancellation reason", ondelete="restrict")
@api.multi
def button_reg_cancel(self):
@@ -26,10 +26,10 @@ def button_reg_cancel(self):
'target': 'new',
}
- @api.one
+ @api.multi
def do_draft(self):
super(EventRegistration, self).do_draft()
- self.cancel_reason_id = False
+ self.write({'cancel_reason_id': False})
class EventRegistrationCancelReason(models.Model):
@@ -39,4 +39,4 @@ class EventRegistrationCancelReason(models.Model):
event_type_ids = fields.Many2many(
comodel_name="event.type", string="Event types",
help="Select the event types where you want to use this cancellation "
- "reason. Leave it empty for using in all")
+ "reason. Leave it empty for using in all.")
diff --git a/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py b/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
index 11faed6fe..75e679c26 100644
--- a/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
+++ b/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
@@ -26,7 +26,7 @@ def test_cancel(self):
self.assertEqual(action.get('type'), 'ir.actions.act_window')
wizard_model = self.env['event.registration.cancel.log.reason']
wizard = wizard_model.with_context(
- active_id=self.registration.id).create(
+ active_ids=self.registration.ids).create(
{'reason_id': self.cancel_reason.id})
wizard.button_log()
self.assertEqual(
diff --git a/event_registration_cancel_reason/views/event_registration_view.xml b/event_registration_cancel_reason/views/event_registration_view.xml
index 3c03a1fa8..f08d2efef 100644
--- a/event_registration_cancel_reason/views/event_registration_view.xml
+++ b/event_registration_cancel_reason/views/event_registration_view.xml
@@ -24,16 +24,16 @@
-
+
- Registrations cancel reasons tree
+ Registrations cancellation reasons tree
event.registration.cancel.reason
-
+
@@ -41,7 +41,7 @@
- Registrations cancel reasons
+ Registration cancellation reasons
event.registration.cancel.reason
form
tree
diff --git a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
index 15bf8f28b..e1ae12d74 100644
--- a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
+++ b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
@@ -29,7 +29,7 @@ def default_get(self, var_fields):
@api.multi
def button_log(self):
self.ensure_one()
- registration = self.env['event.registration'].browse(
- self.env.context['active_id'])
- registration.cancel_reason_id = self.reason_id.id
- registration.with_context(bypass_reason=True).button_reg_cancel()
+ registrations = self.env['event.registration'].browse(
+ self.env.context['active_ids'])
+ registrations.write({'cancel_reason_id': self.reason_id.id})
+ registrations.with_context(bypass_reason=True).button_reg_cancel()
diff --git a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
index 59c6f2259..1d29b557e 100644
--- a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
+++ b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
@@ -3,7 +3,7 @@
- Wizard for logging registrations cancellation
+ Logging registration cancellation wizard
event.registration.cancel.log.reason
-
-
+
From 896311090e742e266b27b929eece04df2d1edc98 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Cris=20Mart=C3=ADn?=
Date: Tue, 25 Sep 2018 11:00:07 +0200
Subject: [PATCH 05/20] [11.0][MIG] event_registration_cancel_reason: Migration
to 11.0
---
event_registration_cancel_reason/README.rst | 105 ++--
event_registration_cancel_reason/__init__.py | 3 -
.../{__openerp__.py => __manifest__.py} | 15 +-
.../models/__init__.py | 3 -
.../models/event_registration.py | 5 +-
.../readme/CONFIGURE.rst | 7 +
.../readme/CONTRIBUTORS.rst | 5 +
.../readme/DESCRIPTION.rst | 2 +
.../readme/USAGE.rst | 13 +
.../static/description/index.html | 454 ++++++++++++++++++
.../tests/__init__.py | 3 -
.../test_event_registration_cancel_reason.py | 9 +-
.../wizard/__init__.py | 5 +-
.../event_registration_cancel_log_reason.py | 8 +-
14 files changed, 573 insertions(+), 64 deletions(-)
rename event_registration_cancel_reason/{__openerp__.py => __manifest__.py} (60%)
create mode 100755 event_registration_cancel_reason/readme/CONFIGURE.rst
create mode 100755 event_registration_cancel_reason/readme/CONTRIBUTORS.rst
create mode 100755 event_registration_cancel_reason/readme/DESCRIPTION.rst
create mode 100755 event_registration_cancel_reason/readme/USAGE.rst
create mode 100644 event_registration_cancel_reason/static/description/index.html
diff --git a/event_registration_cancel_reason/README.rst b/event_registration_cancel_reason/README.rst
index d46d5689e..0a53c662d 100644
--- a/event_registration_cancel_reason/README.rst
+++ b/event_registration_cancel_reason/README.rst
@@ -1,67 +1,106 @@
-.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
- :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
- :alt: License: AGPL-3
-
-===========================================
-Reasons for event registration cancellation
-===========================================
+=============================================
+Reasons for event registrations cancellations
+=============================================
+
+.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ !! This file is generated by oca-gen-addon-readme !!
+ !! changes will be overwritten. !!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
+ :target: https://odoo-community.org/page/development-status
+ :alt: Beta
+.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+ :alt: License: AGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fevent-lightgray.png?logo=github
+ :target: https://github.com/OCA/event/tree/11.0/event_registration_cancel_reason
+ :alt: OCA/event
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+ :target: https://translation.odoo-community.org/projects/event-11-0/event-11-0-event_registration_cancel_reason
+ :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
+ :target: https://runbot.odoo-community.org/runbot/199/11.0
+ :alt: Try me on Runbot
+
+|badge1| |badge2| |badge3| |badge4| |badge5|
This module allows to add predefined reasons for the attendees to report back
why they cancel their registration to an event.
+**Table of contents**
+
+.. contents::
+ :local:
+
Configuration
=============
-Go to *Marketing > Configuration > Events > Registrations cancellation reasons* for
-setting the possible reasons you want to handle. You can also set if a reason
-is only available for certain types of events or, if you leave it empty, for
+To configure this module, you need to:
+
+#. Go to **Events > Configuration > Registrations cancellation reasons** for setting the possible reasons you want to handle.
+
+You can also set if a reason
+is only available for certain types of events or if you leave it empty, for
all.
Usage
=====
-Go to *Marketing > Events > Events*, enter into the details of any of the
-events, and press the red circle button in the right part of any of the
-registrations. A new screen will appear asking you to enter the reason why the
-registration is cancelled.
+#. Go to **Events > Events**
+#. Enter into the details of any of the events.
+#. Press the button "Attendees", located at the top right hand corner.
+#. Press the red circle button in the right part of any of the registrations.
+#. A new screen will appear asking you to enter the reason why the registration is cancelled.
+
+You will get also the same screen:
-You will get also the same screen when pressing the button
-*Cancel registration* from the details view of a registration in
-*Marketing > Events > Registrations*. On this object, you can group by the
-cancellation reason in the list, calendar or graph view.
+#. Go to **Events > Attendees**.
+#. Enter into the details of any of the attendees.
+#. Press the button *Cancel registration*.
-.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
- :alt: Try me on Runbot
- :target: https://runbot.odoo-community.org/runbot/199/9.0
+On this object, you can group by the cancellation reason in the list, calendar or graph view.
Bug Tracker
===========
-Bugs are tracked on `GitHub Issues
-`_. In case of trouble, please
-check there if your issue has already been reported. If you spotted it first,
-help us smash it by providing detailed and welcomed feedback.
+Bugs are tracked on `GitHub Issues `_.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+`feedback `_.
+
+Do not contact contributors directly about support or help with technical issues.
Credits
=======
+Authors
+~~~~~~~
+
+* Tecnativa
+
Contributors
-------------
+~~~~~~~~~~~~
+
+* `Tecnativa `__:
-* Pedro M. Baeza
-* Vicent Cubells
+ * Pedro M. Baeza
+ * Vicent Cubells
+ * Cristina Martín
-Maintainer
-----------
+Maintainers
+~~~~~~~~~~~
+
+This module is maintained by the OCA.
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
-This module is maintained by the OCA.
-
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-To contribute to this module, please visit https://odoo-community.org.
+This module is part of the `OCA/event `_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/event_registration_cancel_reason/__init__.py b/event_registration_cancel_reason/__init__.py
index fff013c1c..66907c702 100644
--- a/event_registration_cancel_reason/__init__.py
+++ b/event_registration_cancel_reason/__init__.py
@@ -1,6 +1,3 @@
-# -*- coding: utf-8 -*-
-# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
from . import models
diff --git a/event_registration_cancel_reason/__openerp__.py b/event_registration_cancel_reason/__manifest__.py
similarity index 60%
rename from event_registration_cancel_reason/__openerp__.py
rename to event_registration_cancel_reason/__manifest__.py
index f69793900..dd562db43 100644
--- a/event_registration_cancel_reason/__openerp__.py
+++ b/event_registration_cancel_reason/__manifest__.py
@@ -1,18 +1,17 @@
-# -*- coding: utf-8 -*-
# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
-# Copyright 2017 Vicent Cubells
+# Copyright 2016 Tecnativa - Pedro M. Baeza
+# Copyright 2017 Tecnativa - Vicent Cubells
+# Copyright 2018 Tecnativa - Cristina Martin
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
{
"name": "Reasons for event registrations cancellations",
- "version": "9.0.1.0.0",
+ "version": "11.0.1.0.0",
"license": "AGPL-3",
- "author": "Antiun Ingeniería S.L., "
- "Tecnativa, "
+ "author": "Tecnativa, "
"Odoo Community Association (OCA)",
- "website": "https://www.antiun.com",
- "category": "Event Management",
+ "website": "https://github.com/OCA/event",
+ "category": "Marketing",
"depends": [
'event',
],
diff --git a/event_registration_cancel_reason/models/__init__.py b/event_registration_cancel_reason/models/__init__.py
index d7c9f9f1b..15bae91df 100644
--- a/event_registration_cancel_reason/models/__init__.py
+++ b/event_registration_cancel_reason/models/__init__.py
@@ -1,6 +1,3 @@
-# -*- coding: utf-8 -*-
-# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
from . import event_registration
diff --git a/event_registration_cancel_reason/models/event_registration.py b/event_registration_cancel_reason/models/event_registration.py
index ea9e29bb0..1c41cbfd6 100644
--- a/event_registration_cancel_reason/models/event_registration.py
+++ b/event_registration_cancel_reason/models/event_registration.py
@@ -1,6 +1,7 @@
-# -*- coding: utf-8 -*-
# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
+# Copyright 2016 Tecnativa - Pedro M. Baeza
+# Copyright 2017 Tecnativa - Vicent Cubells
+# Copyright 2018 Tecnativa - Cristina Martin
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
from openerp import api, fields, models
diff --git a/event_registration_cancel_reason/readme/CONFIGURE.rst b/event_registration_cancel_reason/readme/CONFIGURE.rst
new file mode 100755
index 000000000..a385c325c
--- /dev/null
+++ b/event_registration_cancel_reason/readme/CONFIGURE.rst
@@ -0,0 +1,7 @@
+To configure this module, you need to:
+
+#. Go to **Events > Configuration > Registrations cancellation reasons** for setting the possible reasons you want to handle.
+
+You can also set if a reason
+is only available for certain types of events or if you leave it empty, for
+all.
\ No newline at end of file
diff --git a/event_registration_cancel_reason/readme/CONTRIBUTORS.rst b/event_registration_cancel_reason/readme/CONTRIBUTORS.rst
new file mode 100755
index 000000000..c560a1423
--- /dev/null
+++ b/event_registration_cancel_reason/readme/CONTRIBUTORS.rst
@@ -0,0 +1,5 @@
+* `Tecnativa `__:
+
+ * Pedro M. Baeza
+ * Vicent Cubells
+ * Cristina Martín
\ No newline at end of file
diff --git a/event_registration_cancel_reason/readme/DESCRIPTION.rst b/event_registration_cancel_reason/readme/DESCRIPTION.rst
new file mode 100755
index 000000000..9f3513470
--- /dev/null
+++ b/event_registration_cancel_reason/readme/DESCRIPTION.rst
@@ -0,0 +1,2 @@
+This module allows to add predefined reasons for the attendees to report back
+why they cancel their registration to an event.
\ No newline at end of file
diff --git a/event_registration_cancel_reason/readme/USAGE.rst b/event_registration_cancel_reason/readme/USAGE.rst
new file mode 100755
index 000000000..3f36ef36e
--- /dev/null
+++ b/event_registration_cancel_reason/readme/USAGE.rst
@@ -0,0 +1,13 @@
+#. Go to **Events > Events**
+#. Enter into the details of any of the events.
+#. Press the button "Attendees", located at the top right hand corner.
+#. Press the red circle button in the right part of any of the registrations.
+#. A new screen will appear asking you to enter the reason why the registration is cancelled.
+
+You will get also the same screen:
+
+#. Go to **Events > Attendees**.
+#. Enter into the details of any of the attendees.
+#. Press the button *Cancel registration*.
+
+On this object, you can group by the cancellation reason in the list, calendar or graph view.
diff --git a/event_registration_cancel_reason/static/description/index.html b/event_registration_cancel_reason/static/description/index.html
new file mode 100644
index 000000000..9ec5b4841
--- /dev/null
+++ b/event_registration_cancel_reason/static/description/index.html
@@ -0,0 +1,454 @@
+
+
+
+
+
+
+Reasons for event registrations cancellations
+
+
+
+
+
Reasons for event registrations cancellations
+
+
+
+
This module allows to add predefined reasons for the attendees to report back
+why they cancel their registration to an event.
+
Table of contents
+
+
+
+
To configure this module, you need to:
+
+Go to Events > Configuration > Registrations cancellation reasons for setting the possible reasons you want to handle.
+
+
You can also set if a reason
+is only available for certain types of events or if you leave it empty, for
+all.
+
+
+
+
+Go to Events > Events
+Enter into the details of any of the events.
+Press the button “Attendees”, located at the top right hand corner.
+Press the red circle button in the right part of any of the registrations.
+A new screen will appear asking you to enter the reason why the registration is cancelled.
+
+
You will get also the same screen:
+
+Go to Events > Attendees .
+Enter into the details of any of the attendees.
+Press the button Cancel registration .
+
+
On this object, you can group by the cancellation reason in the list, calendar or graph view.
+
+
+
+
Bugs are tracked on GitHub Issues .
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+feedback .
+
Do not contact contributors directly about support or help with technical issues.
+
+
+
+
+
+
+
+Tecnativa :
+Pedro M. Baeza
+Vicent Cubells
+Cristina Martín
+
+
+
+
+
+
+
This module is maintained by the OCA.
+
+
OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
This module is part of the OCA/event project on GitHub.
+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute .
+
+
+
+
+
diff --git a/event_registration_cancel_reason/tests/__init__.py b/event_registration_cancel_reason/tests/__init__.py
index de3a774d4..8c9710b83 100644
--- a/event_registration_cancel_reason/tests/__init__.py
+++ b/event_registration_cancel_reason/tests/__init__.py
@@ -1,6 +1,3 @@
-# -*- coding: utf-8 -*-
-# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
from . import test_event_registration_cancel_reason
diff --git a/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py b/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
index 8e24e5a62..3ce9c961d 100644
--- a/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
+++ b/event_registration_cancel_reason/tests/test_event_registration_cancel_reason.py
@@ -1,11 +1,10 @@
-# -*- coding: utf-8 -*-
# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
-# Copyright 2017 Vicent Cubells
+# Copyright 2016 Tecnativa - Pedro M. Baeza
+# Copyright 2017 Tecnativa - Vicent Cubells
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
-from openerp import exceptions, fields
-from openerp.tests import common
+from odoo import exceptions, fields
+from odoo.tests import common
class TestEventRegistrationCancelReason(common.TransactionCase):
diff --git a/event_registration_cancel_reason/wizard/__init__.py b/event_registration_cancel_reason/wizard/__init__.py
index f8096b56d..39d7999b5 100644
--- a/event_registration_cancel_reason/wizard/__init__.py
+++ b/event_registration_cancel_reason/wizard/__init__.py
@@ -1,6 +1,7 @@
-# -*- coding: utf-8 -*-
# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
+# Copyright 2016 Tecnativa - Pedro M. Baeza
+# Copyright 2017 Tecnativa - Vicent Cubells
+# Copyright 2018 Tecnativa - Cristina Martin
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
from . import event_registration_cancel_log_reason
diff --git a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
index b5a666d51..243f50156 100644
--- a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
+++ b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
@@ -1,10 +1,8 @@
-# -*- coding: utf-8 -*-
-# Copyright 2016 Antiun Ingeniería S.L.
-# Copyright 2016 Pedro M. Baeza
-# Copyright 2017 Vicent Cubells
+# Copyright 2016 Tecnativa - Pedro M. Baeza
+# Copyright 2017 Tecnativa - Vicent Cubells
# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0.html
-from openerp import _, api, exceptions, fields, models
+from odoo import _, api, exceptions, fields, models
class EventRegistrationCancelLogReason(models.TransientModel):
From bcead66cc75825643b683929eb1422dee56bbc1e Mon Sep 17 00:00:00 2001
From: "Victor M.M. Torres"
Date: Mon, 26 Aug 2019 21:33:42 +0200
Subject: [PATCH 06/20] [MIG] event_registration_cancel_reason: Migration to
v12
---
event_registration_cancel_reason/README.rst | 12 +-
.../__manifest__.py | 2 +-
event_registration_cancel_reason/i18n/es.po | 90 ++++++++-----
.../i18n/event_registration_cancel_reason.pot | 125 ++++++++++++++++++
.../models/event_registration.py | 3 +-
.../readme/CONTRIBUTORS.rst | 4 +-
.../static/description/index.html | 8 +-
.../views/event_registration_view.xml | 14 +-
.../event_registration_cancel_log_reason.py | 1 +
...nt_registration_cancel_log_reason_view.xml | 2 +-
10 files changed, 207 insertions(+), 54 deletions(-)
create mode 100644 event_registration_cancel_reason/i18n/event_registration_cancel_reason.pot
diff --git a/event_registration_cancel_reason/README.rst b/event_registration_cancel_reason/README.rst
index 0a53c662d..1b56b4f2c 100644
--- a/event_registration_cancel_reason/README.rst
+++ b/event_registration_cancel_reason/README.rst
@@ -14,13 +14,13 @@ Reasons for event registrations cancellations
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fevent-lightgray.png?logo=github
- :target: https://github.com/OCA/event/tree/11.0/event_registration_cancel_reason
+ :target: https://github.com/OCA/event/tree/12.0/event_registration_cancel_reason
:alt: OCA/event
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
- :target: https://translation.odoo-community.org/projects/event-11-0/event-11-0-event_registration_cancel_reason
+ :target: https://translation.odoo-community.org/projects/event-12-0/event-12-0-event_registration_cancel_reason
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
- :target: https://runbot.odoo-community.org/runbot/199/11.0
+ :target: https://runbot.odoo-community.org/runbot/199/12.0
:alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5|
@@ -67,7 +67,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues `_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback `_.
+`feedback `_.
Do not contact contributors directly about support or help with technical issues.
@@ -84,9 +84,11 @@ Contributors
* `Tecnativa `__:
+ * Rafael Blasco
* Pedro M. Baeza
* Vicent Cubells
* Cristina Martín
+ * Victor M.M. Torres
Maintainers
~~~~~~~~~~~
@@ -101,6 +103,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-This module is part of the `OCA/event `_ project on GitHub.
+This module is part of the `OCA/event `_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/event_registration_cancel_reason/__manifest__.py b/event_registration_cancel_reason/__manifest__.py
index dd562db43..995b1cb99 100644
--- a/event_registration_cancel_reason/__manifest__.py
+++ b/event_registration_cancel_reason/__manifest__.py
@@ -6,7 +6,7 @@
{
"name": "Reasons for event registrations cancellations",
- "version": "11.0.1.0.0",
+ "version": "12.0.1.0.0",
"license": "AGPL-3",
"author": "Tecnativa, "
"Odoo Community Association (OCA)",
diff --git a/event_registration_cancel_reason/i18n/es.po b/event_registration_cancel_reason/i18n/es.po
index b448bbf61..429242a43 100644
--- a/event_registration_cancel_reason/i18n/es.po
+++ b/event_registration_cancel_reason/i18n/es.po
@@ -18,81 +18,97 @@ msgstr ""
"X-Generator: Poedit 1.8.6\n"
#. module: event_registration_cancel_reason
-#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
-msgid "Abort"
-msgstr "Abortar"
-
-#. module: event_registration_cancel_reason
-#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+#: model_terms:ir.ui.view,arch_db:event_registration_cancel_reason.event_registration_cancel_log_reason_view
msgid "Cancel registration"
msgstr "Cancelar registro"
#. module: event_registration_cancel_reason
-#: view:event.registration:event_registration_cancel_reason.view_event_registration_form
-msgid "Cancellation Reason:"
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration__cancel_reason_id
+#, fuzzy
+msgid "Cancellation Reason"
msgstr "Razón de cancelación:"
#. module: event_registration_cancel_reason
-#: view:event.registration:event_registration_cancel_reason.view_registration_search
-#: field:event.registration,cancel_reason_id:0
+#: model_terms:ir.ui.view,arch_db:event_registration_cancel_reason.view_registration_search
msgid "Cancellation reason"
msgstr "Razón de cancelación"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.log.reason,create_uid:0
-#: field:event.registration.cancel.reason,create_uid:0
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__create_uid
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__create_uid
msgid "Created by"
msgstr "Creado por"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.log.reason,create_date:0
-#: field:event.registration.cancel.reason,create_date:0
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__create_date
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__create_date
msgid "Created on"
msgstr "Creado en"
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__display_name
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__display_name
+msgid "Display Name"
+msgstr ""
+
#. module: event_registration_cancel_reason
#: model:ir.model,name:event_registration_cancel_reason.model_event_registration
msgid "Event Registration"
msgstr "Registro evento"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.log.reason,event_type_id:0
+#: model:ir.model,name:event_registration_cancel_reason.model_event_registration_cancel_log_reason
+#, fuzzy
+msgid "Event Registration Cancel Log Reason"
+msgstr "Razones de cancelación de registros"
+
+#. module: event_registration_cancel_reason
+#: model:ir.model,name:event_registration_cancel_reason.model_event_registration_cancel_reason
+#, fuzzy
+msgid "Event Registration Cancel Reason"
+msgstr "Razones de cancelación de registros"
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__event_type_id
msgid "Event type"
msgstr "Tipo de evento"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.reason,event_type_ids:0
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__event_type_ids
msgid "Event types"
msgstr "Tipos de evento"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.log.reason,id:0
-#: field:event.registration.cancel.reason,id:0
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__id
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__id
msgid "ID"
msgstr "ID"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.log.reason,write_uid:0
-#: field:event.registration.cancel.reason,write_uid:0
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason____last_update
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason____last_update
+#, fuzzy
+msgid "Last Modified on"
+msgstr "Última actualización en"
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__write_uid
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__write_uid
msgid "Last Updated by"
msgstr "Última actualización por"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.log.reason,write_date:0
-#: field:event.registration.cancel.reason,write_date:0
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__write_date
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__write_date
msgid "Last Updated on"
msgstr "Última actualización en"
#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.reason,name:0
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__reason_id
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__name
msgid "Reason"
msgstr "Razón"
-#. module: event_registration_cancel_reason
-#: field:event.registration.cancel.log.reason,reason_id:0
-msgid "Reason id"
-msgstr "Razón"
-
#. module: event_registration_cancel_reason
#: model:ir.actions.act_window,name:event_registration_cancel_reason.event_registration_cancel_reason_action
#: model:ir.ui.menu,name:event_registration_cancel_reason.menu_event_registration_cancel_reason
@@ -100,7 +116,7 @@ msgid "Registration cancellation reasons"
msgstr "Razones de cancelación de registros"
#. module: event_registration_cancel_reason
-#: help:event.registration.cancel.reason,event_type_ids:0
+#: model:ir.model.fields,help:event_registration_cancel_reason.field_event_registration_cancel_reason__event_type_ids
msgid ""
"Select the event types where you want to use this cancellation reason. Leave "
"it empty for using in all."
@@ -109,17 +125,21 @@ msgstr ""
"cancelación. Déjelo en blanco para usarla en todos."
#. module: event_registration_cancel_reason
-#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+#: model_terms:ir.ui.view,arch_db:event_registration_cancel_reason.event_registration_cancel_log_reason_view
msgid "Select the reason for cancelling the registration:"
msgstr "Seleccione la razón para cancelar el registro:"
#. module: event_registration_cancel_reason
-#: code:addons/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py:31
+#: code:addons/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py:30
#, python-format
msgid "You cannot cancel registrations from events of different types at once."
msgstr "No puede cancelar registros de eventos de distintos tipos a la vez."
-#. module: event_registration_cancel_reason
-#: view:event.registration.cancel.log.reason:event_registration_cancel_reason.event_registration_cancel_log_reason_view
-msgid "or"
-msgstr "o"
+#~ msgid "Abort"
+#~ msgstr "Abortar"
+
+#~ msgid "Reason id"
+#~ msgstr "Razón"
+
+#~ msgid "or"
+#~ msgstr "o"
diff --git a/event_registration_cancel_reason/i18n/event_registration_cancel_reason.pot b/event_registration_cancel_reason/i18n/event_registration_cancel_reason.pot
new file mode 100644
index 000000000..be4188162
--- /dev/null
+++ b/event_registration_cancel_reason/i18n/event_registration_cancel_reason.pot
@@ -0,0 +1,125 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * event_registration_cancel_reason
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: event_registration_cancel_reason
+#: model_terms:ir.ui.view,arch_db:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+msgid "Cancel registration"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration__cancel_reason_id
+msgid "Cancellation Reason"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model_terms:ir.ui.view,arch_db:event_registration_cancel_reason.view_registration_search
+msgid "Cancellation reason"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__create_uid
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__create_uid
+msgid "Created by"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__create_date
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__create_date
+msgid "Created on"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__display_name
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model,name:event_registration_cancel_reason.model_event_registration
+msgid "Event Registration"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model,name:event_registration_cancel_reason.model_event_registration_cancel_log_reason
+msgid "Event Registration Cancel Log Reason"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model,name:event_registration_cancel_reason.model_event_registration_cancel_reason
+msgid "Event Registration Cancel Reason"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__event_type_id
+msgid "Event type"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__event_type_ids
+msgid "Event types"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__id
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__id
+msgid "ID"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason____last_update
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__write_uid
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__write_uid
+msgid "Last Updated by"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__write_date
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__write_date
+msgid "Last Updated on"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_log_reason__reason_id
+#: model:ir.model.fields,field_description:event_registration_cancel_reason.field_event_registration_cancel_reason__name
+msgid "Reason"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.actions.act_window,name:event_registration_cancel_reason.event_registration_cancel_reason_action
+#: model:ir.ui.menu,name:event_registration_cancel_reason.menu_event_registration_cancel_reason
+msgid "Registration cancellation reasons"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model:ir.model.fields,help:event_registration_cancel_reason.field_event_registration_cancel_reason__event_type_ids
+msgid "Select the event types where you want to use this cancellation reason. Leave it empty for using in all."
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: model_terms:ir.ui.view,arch_db:event_registration_cancel_reason.event_registration_cancel_log_reason_view
+msgid "Select the reason for cancelling the registration:"
+msgstr ""
+
+#. module: event_registration_cancel_reason
+#: code:addons/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py:30
+#, python-format
+msgid "You cannot cancel registrations from events of different types at once."
+msgstr ""
+
diff --git a/event_registration_cancel_reason/models/event_registration.py b/event_registration_cancel_reason/models/event_registration.py
index 1c41cbfd6..14d190af7 100644
--- a/event_registration_cancel_reason/models/event_registration.py
+++ b/event_registration_cancel_reason/models/event_registration.py
@@ -12,7 +12,7 @@ class EventRegistration(models.Model):
cancel_reason_id = fields.Many2one(
comodel_name='event.registration.cancel.reason', readonly=True,
- string="Cancellation reason", ondelete="restrict")
+ string="Cancellation Reason", ondelete="restrict")
@api.multi
def button_reg_cancel(self):
@@ -35,6 +35,7 @@ def do_draft(self):
class EventRegistrationCancelReason(models.Model):
_name = 'event.registration.cancel.reason'
+ _description = 'Event Registration Cancel Reason'
name = fields.Char('Reason', required=True, translate=True)
event_type_ids = fields.Many2many(
diff --git a/event_registration_cancel_reason/readme/CONTRIBUTORS.rst b/event_registration_cancel_reason/readme/CONTRIBUTORS.rst
index c560a1423..629482bec 100755
--- a/event_registration_cancel_reason/readme/CONTRIBUTORS.rst
+++ b/event_registration_cancel_reason/readme/CONTRIBUTORS.rst
@@ -1,5 +1,7 @@
* `Tecnativa `__:
+ * Rafael Blasco
* Pedro M. Baeza
* Vicent Cubells
- * Cristina Martín
\ No newline at end of file
+ * Cristina Martín
+ * Victor M.M. Torres
diff --git a/event_registration_cancel_reason/static/description/index.html b/event_registration_cancel_reason/static/description/index.html
index 9ec5b4841..0f89dfed4 100644
--- a/event_registration_cancel_reason/static/description/index.html
+++ b/event_registration_cancel_reason/static/description/index.html
@@ -367,7 +367,7 @@ Reasons for event registrations cancellations
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-
+
This module allows to add predefined reasons for the attendees to report back
why they cancel their registration to an event.
Table of contents
@@ -416,7 +416,7 @@
Bugs are tracked on GitHub Issues .
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
-feedback .
+feedback .
Do not contact contributors directly about support or help with technical issues.
@@ -431,9 +431,11 @@
Tecnativa :
+Rafael Blasco
Pedro M. Baeza
Vicent Cubells
Cristina Martín
+Victor M.M. Torres
@@ -445,7 +447,7 @@
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
-
This module is part of the OCA/event project on GitHub.
+
This module is part of the OCA/event project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute .
diff --git a/event_registration_cancel_reason/views/event_registration_view.xml b/event_registration_cancel_reason/views/event_registration_view.xml
index 3d9698caa..44ae2b954 100644
--- a/event_registration_cancel_reason/views/event_registration_view.xml
+++ b/event_registration_cancel_reason/views/event_registration_view.xml
@@ -7,11 +7,11 @@
-
-
-
-
-
+
+
@@ -22,8 +22,8 @@
event.registration
-
-
+
+
diff --git a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
index 243f50156..acfa43c9e 100644
--- a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
+++ b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason.py
@@ -7,6 +7,7 @@
class EventRegistrationCancelLogReason(models.TransientModel):
_name = 'event.registration.cancel.log.reason'
+ _description = 'Event Registration Cancel Log Reason'
event_type_id = fields.Many2one(
comodel_name="event.type", string="Event type")
diff --git a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
index 6208dbc75..0ccb20aee 100644
--- a/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
+++ b/event_registration_cancel_reason/wizard/event_registration_cancel_log_reason_view.xml
@@ -7,7 +7,7 @@