summaryrefslogtreecommitdiff
path: root/addons/event/models
AgeCommit message (Collapse)Author
2021-03-19[FIX] event: respect scheduled date when calling mail schedulers executeThibault Delavallée
In this commit we ensure calling ``execute`` method on communication schedulers do not send emails or SMS if their scheduled date is still not achieved. Currently only the cron method does it (see ``run``). It is now safe to call ``execute`` directly on event communication schedulers. Related to Task ID-2414658 COM PR odoo/odoo#68158
2021-03-19[FIX] event: allow event user to confirm registrations even with mail schedulersThibault Delavallée
Due to ACLs it is currently impossible for event users to confirm a draft registration if schedulers are involved. Indeed it implies updating the scheduler which is not do-able for them. In this commit we sudo the update of schedulers, as this is a technical object and access is granted through registrations. Related to Task ID-2414658 COM PR odoo/odoo#68158
2021-03-19[FIX] event: do not autocommit when running event mail schedulers in test modeThibault Delavallée
Otherwise it creates a lot of issues in your tests and database. Always avoid that kind of error-prone statements in testing mode. Related to Task ID-2414658 COM PR odoo/odoo#68158
2021-02-10[FIX] event: fix seats_limit and configuration stored editable computed ↵Thibault Delavallée
fields compute method RATIONALE Stored editable fields receive their values either from compute either from user input. If a user input is given to create / write compute method is not called. If multiple fields are computed through the same method giving one field value discard call to compute method and other fields are not called. SPECIFICATIONS Split ``_compute_from_event_type`` compute method so that event template configuration related fields are independent. Fix seats_limited being computed in sevearl method which should not occur. LINKS COM PR #65688 Task ID-2455165
2021-02-10[FIX] event: split stored editable computed fields compute methodThibault Delavallée
RATIONALE Stored editable fields receive their values either from compute either from user input. If a user input is given to create / write compute method is not called. If multiple fields are computed through the same method giving one field value discard call to compute method and other fields are not called. SPECIFICATIONS Split ``_compute_contact_info`` compute method so that partner related fields are independent. LINKS COM PR #65688 Task ID-2455165
2020-12-17[FIX] event: make ticket sale start date inclusiveAurélien Warnon
This commit fixes the ticket sale start date to be considered inclusive. Indeed, before this commit, if the sales of a ticket starts on the 1st of December, people arriving on the website at that exact date will NOT be able to buy tickets although they should be. They will have to wait for the next day to be able to buy tickets. A small test was added to ensure this behavior. Task 2415917 closes odoo/odoo#63512 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-11-19[FIX] event: avoid too large prefetching of event.mailPaul Morelle
The prefetching engine wants to prefetch all the registrations to all the events of all the schedulers, which may make a lot of data. If the autocommit is on, then all this prefetched data is discarded at each loop. This commit limits the prefetching to each scheduler, so that we avoid prefetching the data unnecessarily. closes odoo/odoo#62051 X-original-commit: 904a46f28cb64e3bd51c40dc364b256d434d1c93 Signed-off-by: Olivier Dony (odo) <odo@openerp.com> Signed-off-by: Paul Morelle <madprog@users.noreply.github.com>
2020-11-19[FIX] event: allow de installation of all track submodules at onceThibault Delavallée
Website event track module is an advanced event module that is required notably in some sub modules: live, quizzes, exhibitors. When unchecking Schedule & Tracks in event settings, submodules checkboxes are hidden. It means that currently you may uncheck module_website_event_track while still keeping sub modules (_track_live, _track_quiz, _track_exhibitor) checked. When saving, modules are uninstalled, then installed again if one of sub module is still checked. In this commit we add an onchange so that unchecking track also unchecks all its sub modules to effectively remove them all. Task ID-2389569 closes odoo/odoo#61995 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-10-29[FIX] *: correct typos and bad EnglishMartin Trigaux
Courtesy of translators Reexport .pot of modified modules closes odoo/odoo#61002 Related: odoo/enterprise#14485 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-10-13[FIX] event: split unstored / stored fields computationThibault Delavallée
Otherwise computing unstored fields forces to compute all other already stored fields. When being in a high charge context this may have a big impact on DB use. Task ID-2351463 closes odoo/odoo#59750 X-original-commit: 2168c4656308f404d71dd997064873ded977cfb7 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-08-21[IMP] (website_)event: ease configuration of Online featuresThibault Delavallée
PURPOSE Clean organization and models linked to Event Online feature introduced in semi stable saas-13.3 at odoo/odoo@981f95b and odoo/enterprise@1472202 Also clean website event menu not being available in website event but only in website event track, which implies some extra-code to manage it. In short: merge website_event_online in website_event, website_event_track _(online/session) in website_event_track. RATIONALE _online modules have been added to extend content of website_event and website_event_track without having any impact on those module. First step of cleaning is to move this content directly in base module. track_session module is mainly a rewrite of track module. Second step of cleaning is to move its content directly in website_event_track. SPECIFICATIONS Allow to configure Menu CTA button on event from event_type, like other frontend related menus and buttons. Add settings to ease discovering and installing sub event features like * meet; * exhibitor; * live mode; * quizzes; LINKS Task ID-2319779 COM odoo/odoo#56067 ENT odoo/enterprise#12520 UPG odoo/upgrade#1654
2020-08-21[MOV] (website_)event(_online): move tag color field to eventThibault Delavallée
PURPOSE Clean organization and models linked to Event Online feature introduced in semi stable saas-13.3 at odoo/odoo@981f95bbf46658eda9f2d33751b9310cc67d86aa and odoo/enterprise@14722028ae0773c3710ea48ce48ff44703e83b5a Also clean website event menu not being available in website event but only in website event track, which implies some extra-code to manage it. In short: merge website_event_online in website_event, website_event_track _(online/session) in website_event_track. RATIONALE _online modules have been added to extend content of website_event and website_event_track without having any impact on those module. First step of cleaning is to move this content directly in base module. track_session module is mainly a rewrite of track module. Second step of cleaning is to move its content directly in website_event_track. SPECIFICATIONS Move event.tag color field from website event online to event. This field is part of standard event models. LINKS Task ID-2319779 COM odoo/odoo#56067 ENT odoo/enterprise#12520 UPG odoo/upgrade#1654
2020-08-17[FIX] *: adapt action content retrievalMartin Trigaux
Use _for_xml_id to replace all the self.env.ref().read()[0] This has the advantage of having a single point of control and to add the fields filtering and model verification. Add sudo for other operations on ir.actions.*
2020-07-24[FIX] event: fix event creation with demo ticketsThibault Delavallée
PURPOSE Prepare Event Online support by providing fixes and preparatory cleaning commits. SPECIFICATION Currently tickets demo data are not correctly created as they mess up with automatic ticket computation from event_type configuration. Solution is to flush event creation. It means tickets default configuration is computed. Afterwards tickets are created in demo and avoid clashing with the compute in cache. LINKS Task ID 2289148 (Event Bugprovements) Prepares Task ID 2252655 (master Online Event task) Prepares Task ID 2283796 (Event B2Basics) PR #53944 X-original-commit: 6b5ec74b3d9bc008c95a92e7fa954675ae506d1a
2020-07-24[FIX] event: do not erase existing tags when changing categoryThibault Delavallée
PURPOSE Prepare Event Online support by providing fixes and preparatory cleaning commits. SPECIFICATIONS If an event has tags, changing its category resets them. We consider that a category should update an event but not force or reset event tags, only give default values. LINKS Task ID 2289148 (Event Bugprovements) Prepares Task ID 2252655 (master Online Event task) Prepares Task ID 2283796 (Event B2Basics) PR #53944 X-original-commit: 408bad96de293dc10a3aa78fcee6159d8012fadc
2020-07-23[IMP] *: translations improvementsVictor Feyens
Avoid concatenation of translated strings & raw values and/or other translated values, and use the new _ API (by providing the formatting values to ensure the fallback on the english terms in case of wrong translation). By including the expected values inside the string to translate, we ensure that the formatted values are included at the right place in the resulting translated text. This also provides more information on the string to translate to the translators, s.t. the chosen terms for the translations can be more adapted to the translation context. closes odoo/odoo#54635 Related: odoo/enterprise#11925 Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-07-17[FIX] website_event: fix ACL issue during registrationstd-odoo
Bug === Register to an event with a public user. Sometimes an ACL error will be raised. Technical ========= Before flushing the environment (after the creation of the event registration in the endpoint `registration_confirm`), the ORM will recompute all needed stored fields. As we didn't write on some of them (`date_closed`, `utm_campaign_id`, `utm_source_id`, `utm_medium_id`) they are in the list `Environment::all.tocompute`. So, the ORM will recompute the fields even if the state didn't change (this behavior can be verify in `BaseModel::recompute`). This is done after the "create" call of the event registration and so without the SUDO flag. Task-2299227 closes odoo/odoo#54624 X-original-commit: 38f37cd483b7907b20171e2c44e14e69e3e00596 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-07-15[IMP] website, *: make editor closer to WYSIWYGDramixDw
*: event, website_blog, website_event, website_forum, website_sale, website_sale_comparison We're changing most of the "DRAG BUILDING BLOCK HERE" placeholders so that they only appear on drag. Making the preview as close as possible to the page once saved. However, we're still keeping them on empty pages because it make sense there to let know that the area is editable. Part of https://github.com/odoo/odoo/pull/47933 task-2210733 Co-authored-by: qsm-odoo <qsm@odoo.com>
2020-06-30[FIX] *: correct all or improve code translation lookupMartin Trigaux
This commit fixes all issues detected by the new pylint gettext-variable test. It converts some calls to the new syntax _("Foo %s", bar) to progressively migrate the code to the new syntax. A few calls were not technically incorrect but still detected by the linter. _("Foo" + "Bar") has been converted to _("Foo" "Bar") as it has the same effect and make sure the argument is of type asteroid.Const instead of BinOp). closes odoo/odoo#53683 Related: odoo/enterprise#11467 Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-06-18[IMP] *: replace to new _() syntaxMartin Trigaux
Using a few regex like \((_\(.*%s.*)(\) % )([\w\[\]][\w .\[\]\(\)'"]*)\) ($1, $3)) Old syntax is still compatible but starts the migration to the new syntax that catches error.
2020-06-16[FIX] event: avoid removing tickets with registrationsThibault Delavallée
Prevent to unlink tickets when having registrations by adding an ondelete restrict attribute. Otherwise billing information may be lost. Task ID 2244487 PR odoo/odoo#52998 FwdPort of odoo/odoo#52923 X-original-commit: 5322d76d378e4bd88a42dc0e4b01bb46c7b3546a
2020-06-16[FIX] event: do not set a void timezone from typeThibault Delavallée
Synchronize only timezone value from event type if set. Otherwise keep the existing one or fallback on user defined one. Task ID 2244487 PR odoo/odoo#52998 FwdPort of odoo/odoo#52923 X-original-commit: 10094beec786ef0ea6e32e621d4e026fedeba19a
2020-06-16[FIX] event: always synchronize tags, seats_max and auto_confirm with categoryThibault Delavallée
We consider that changing category should always update value of those fields to avoid having oddly-configured events. Indeed if you choose a new event category most of its configuration should be propagated to the event. Task ID 2244487 PR odoo/odoo#52998 FwdPort of odoo/odoo#52923 X-original-commit: f7e747886caebf37d60037a3e0e760f95bd0fb68
2020-06-16[FIX] event(_questions): take better care of 2many fields when updating from ↵Sébastien Mottet (oms)
event type PURPOSE Fix various issues spotted in 13.3 when testing event. Notably computation of 2many fields coming from template. SPECIFICATIONS When updating template on an event, one2many fields should be better managed. Previous heuristic was * if event type uses o2m configuration (use_ticket / _schedule / _question) and has lines * erase existing lines; * create new lines based on old one; This has the drawback of loosing information of what is sent (mail) or sold (tickets) or answered( questions). Another drawback is that only types having line are synchronized. This means that if updating several times the event type you could end up with an XMas configuration with lines coming from different event types, depending on their o2m configuration. We choose a better heuristic that should solve this issue * every time we change type, independently of its use_* field that is used mainly for UX on the type itself: * erase existing lines that have not been used yet (no mail sent, no ticket linked to registrations, no answer linked to registrations) * create new lines based on old one; if type has no lines, event will have its old empty line erased as well; It means that we try to synchronize more the type to the event while keeping configuration line already used in some registrations. Also provide some other fixes like deletion restrictions or better domain for UX purpose. See sub commits for more details. LINKS Task ID 2244487 PR odoo/odoo#52998 FwdPort of odoo/odoo#52923 X-original-commit: 645f70cad033083e82a3ef9102c694c331badef9 Co-authored-by: Sebastien Mottet <oms@odoo.com> Co-authored-by: Thibault Delavallée <tde@odoo.com>
2020-06-10[IMP] event: add payment status in barcode / attendee kanban viewNasreddin Boulif
PURPOSE Introduce a clearer way of handling registrations for multiple events occurring at the same time and place by * improve attendess kanban view; * introducing a Registration Desk menu item; SPECIFICATIONS Introduce a computed "payment_status" selection field, allowing to display status of a registration, based on its SO and ``is_paid```field. It is better fro UX and display. It is not stored as currently stored fields are sufficient for current requirement. Add it to the kanban view. Prepare barcode improvements by improving _get_registration_summary returned data dict, adding some information to display in event_barcode. Reorganize registrations actions, and prepare a generic one leading to attendees kanban view for registration desk. LINKS Task ID #2214290 Community PR odoo/odoo#47511 Enterprise PR odoo/enterprise#9190
2020-06-10[IMP] event: improve attendees kanban viewNasreddin Boulif
PURPOSE Introduce a clearer way of handling registrations for single / multiple events occurring at the same time and place by * improve attendees kanban view, notably by better supporting mono and multi event (hide unnecessary information); * introducing a Registration Desk menu item to manage multi-event mode; SPECIFICATIONS Improve attendees kanban view, notably due to the following issues * event_ticket_id as char field is hard to recognize. Notably with attendees with same ticket directly in the kanban view; * missing explicit icon/button of the event registration state; Handle mono-event (coming from an event) / multi-event (global attendees view) modes. Replace "event_ticket_id" text by colored badge (random color on each "event.event_ticket_id.id"). Move this field directly into event as now tickets are supported in event, not only with event_sale. Add button or text linked to the registration state. Kanban card structure is therefore ----------------------- Attendee Name Event Name (if in multi mode) Booked by partner_id.display_name ICON/BUTTON Ticket in a tag format ----------------------- Buttons and icons, if registrations is * canceled (nothing to do in Kanban, open the form view) => Canceled text * unconfirmed and is awaiting confirmation => Attended text * confirmed and is awaiting attendance confirmation => Button * done, end of the flow => Icon Mobile specific: put button as big buttons on the right of the card, ensure all cards are displayed using same height and display correct. LINKS Task ID #2214290 PR #47511
2020-05-19[REF] ir.autovacuum: declarative garbage collector registrationJulien Castiaux
The ir.autovacuum model purpose is to run several garbage collecting operations like removing files from the filestore when no attachment references them anymore. The precedent strategy to register new garbage collection tasks was to override the `power_on` method and to imperatively execute a vacuum cleaning method on a given model. All calls were executed in a single SQL transaction without any error handling, meaning a single fail during any call resulted in a complete failure of the entire vacuum cleaning chain. We introduce a new `@autovacuum` api decorator, its purpose it to register garbage collecting methods that will be safely executed in their own transaction by the vacuum cleaner. In order to ensure this new strategy is used, we deprecate `power_on` extensions. By the way, garbage-collecting methods can be quite heavy and we don't want users to directly call them. We now ensure they are private. closes odoo/odoo#47842 Task: 2154079 Signed-off-by: Raphael Collet (rco) <rco@openerp.com> Co-authored-by: Raphael Collet <rco@odoo.com> Co-authored-by: Olivier Dony <odo@odoo.com>
2020-05-19[FIX] website_event: do not tell yet-to-come events are closedThibault Delavallée
Currently if an event has tickets, some of them with start date and some of them without, it is considered has beginning at the minimal start date. However if a ticket has no start date and is not expired, it means it is available for sale. An event start date is therefore the first date of its not expired tickets if they all have a date, otherwise it is set to False (aka, already started). We also fix display in main event page: events not yet open are not considered as Sold out or Closed anymore, just not yet open. Task ID 2244487 PR #51503 closes odoo/odoo#51523 X-original-commit: 8404a6ff12ee82e9b4ec35660f74dbe0b4a90cb0 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-05-19[FIX] (website_)event: fix 'sold out' display condition on frontendSébastien Mottet (oms)
One condition among other to determine if SOLD OUT should be displayed for a ticket is start_sale_date < current date. However is start_sale_date is not set a traceback is raised. Moreover timezones are not taken into account when comparing dates, which may create issues. A tool method 'is_launched' has been added to overcome this problem. It works like the already existing field 'is_expired'. Its value is computed based on start_sale_date and event_id.date_tz. This will be changed into a not stored computed field in master. Task ID 2244487 PR #51503 X-original-commit: 9f81e126cdb1ce79ef26077a708cad8a7614031f
2020-05-14[IMP] crm, event, website_crm_partner_assign: remove useless copy attributesDharmraj Jhala
Editable stored fields are copy by default if their base field allow it (char, integer, ...). Purpose of this commit is to remove unnecessary copy=True statements added when using stored editable fields. PR #49464 Task 2225253 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-04-29[IMP] event: Remove color field from eventNasreddin (bon)
This commit will clean the code by removing the field 'color' from model 'event.event' since the field is not used/needed anymore. Task ID 2243918 closes odoo/odoo#50155 Related: odoo/upgrade#1124 Related: odoo/enterprise#10199 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-04-03[IMP] core: compute field_computed lazilyRaphael Collet
This is a simple refactoring. X-original-commit: 634775bff6d9eba9d4548cc801071a942895a719
2020-04-03[FIX] event_*: remove now unnecessary copy=TrueThibault Delavallée
Commit 397872a07fe22afa7d83b3170e3b037be1ae607a remove most onchange in event related modules to replace them by computed r+w stored fields. At that time copy was by default set to False for computed fields as resulting of standard behavior. Since 4b274d3b4101fbae154a572cdf40d23838899773 this is not True anymore as we consider those fields are duplicable. We can therefore remove unnecessary copy=True on fields to clean their definitions. Task ID 2228189 Community PR odoo/odoo#48652 X-original-commit: c6b378987bd3351deba7770b51c2a5755f7ff341
2020-04-03[FIX] website_event: better sold out computationThibault Delavallée
Purpose of this commit is to remove some complex check embedded in templates and replace them by a computed unstored field. It eases definition and understanding. Its computation has been cleaned, so that sold out appears only when tickets are really sold out, not if their end sales date is reached. Sold out label is displayed in both event list and event specific page views in frontend. Small spacing issues in frontend registration form are also fixed. Task ID 2228189 Community PR odoo/odoo#48652 X-original-commit: c36cf90e7b83d2424b2f52ad8a2fec0bf367e8d8
2020-04-03[FIX] event: ensure event_registrations_open can always be computedThibault Delavallée
Using a compute_sudo ensure this field is correctly computed (aka without crash) if someone is allowed to read the event but not all its sub models. For example event_registrations_open reads the active flag of a product linked to a ticker which may not be readable by public users. This field is used in frontend templates and therefore usable by external people. Also remove unnecessary registrable rendering parameter in website_event as it has been replaced by computed fields. Task ID 2228189 Community PR odoo/odoo#48652 X-original-commit: b2b334a65f3a1379f25717ec39f0a52f3305b19c
2020-04-03[FIX] event: include timezoned event date_end in registration open computationThibault Delavallée
Purpose of this commit is to try to lessen random conditions being concatenated in templates by correctly computing event_registrations_open field that is now correctly based on * event.date_end -> if event is done, registrations are not open anymore; * event.start_sale_date -> lowest start date of tickets (if any; start_sale_date is False if no ticket are defined, see _compute_start_sale_date); * any ticket is available for sale (seats available) if any; * seats are unlimited or seats are available; Some better timezone computation is included even if it could be done better. Task ID 2228189 Community PR odoo/odoo#48652 X-original-commit: a11af9074499465b6dd8ad1400e60c7af96e21c7
2020-04-03[IMP] event: add some test for is_ongoing with timezonesThibault Delavallée
Rumors were heard of is_ongoing not working well. First try with playing with timezones. Task ID 2228189 Community PR odoo/odoo#48652 X-original-commit: d54faa336da29ff3167edb2331edd3e2508bc64f
2020-04-03[IMP] event: improve backend views and help stringsThibault Delavallée
Embedded tickets view: improve labels, start and end dates are now labeled Sales Start and Sales End when having sale installed. Help are added on event_registrations_open and start_sale_date to clearly define what they mean. Some linting is also performed to ease readability, notably some computed fields reorganization to have them ordered by group like fields. Task ID 2228189 Community PR odoo/odoo#48652 X-original-commit: e2deabc451aa2d62365b1e1b43ea3947907d2648
2020-03-31[IMP] base, *: allow html fields not to sanitize formsfja-odoo
* = event, website_event_track, website_sale, website_hr_recruitment, website_livechat, website_sale, website_slides The option to sanitize or not the forms was not available, this will allow better flexibility on whether forms should be sanitized or not on an HTML field. Also we use this new param to allow forms to be added on some already existing html fields where forms where sanitized out. task-2209554 closes odoo/odoo#47318 Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-03-31[REF] (website_)event(_sale): change seats_availability field to seats_limitedPatrick Hoste
PURPOSE Change seats_availability selection field into a boolean field and rename it to seats_limited for consistency. SPECIFICATION Change all the tests accordingly. Task ID : 2198660 PR : #46659
2020-03-31[IMP] (website_)event(_track): change event form view displayPatrick Hoste
PURPOSE Change the event form view to improve its usability and make it clearer. SPECIFICATIONS - Change some stats buttons icons - Change order of the fields and put the range date field in second place since it's a mandatory field. LINKS Task ID : 2198660 PR : #46659
2020-03-26[FIX] event: ticket.sale_available should take into account number of reservedqmo-odoo
Before this commit, _compute_sale_available would only take into account the dates to set the field sale_available. This commit makes it take into account the number of available seats for the ticket as it is wrong to consider a sold out ticket as being available for sale. LINKS: TaskID:2162438 PR: #43856
2020-03-26[IMP] website_event, event: Add event.tag.category and event.tag + rename ↵qmo-odoo
event.type display name This commit changes the display name for the model event.type from "Event Category" to "Event Template" This change was needed before introducing the new model event.tag.category which will be used to group tags (event.tag) This commit introduces two new models: event.tag.category & event.tag The tags will be grouped by category and will be used to filter events. In the front-end, if the user activates the "filter by categories", each event.tag.category will generate a new dropdown of related tags. Clicking on one of these tags will add a new "tag badge" above the events (same way as in eLearning). LINKS: TaskID:2162438 PR: #43856
2020-03-23[REF] event: allow to use UTMs directly in eventThibault Delavallée
PURPOSE Allow to use UTMs directly in event, notably to be able to sort or make statistics on registrations. SPECIFICATIONS Move all UTMs fields definition to event. In base event module they are set by hand or through links (when using mass mailing for example).Shared links with utm bits defined in it allows to track marketing statistics on registrations. In event_sale registrations can be linked to a sale order. UTM information are copied from the sale order to the registration itself. Order defined utm always erase default one coming from event. LINKS Task ID 2212297 Community PR odoo/odoo#47229 Related: odoo/upgrade#913 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-03-23[IMP] event, website_event_track: make create of registration and track multiThibault Delavallée
Purpose is to allow the batch create on those models that may be created in batch, notably through import. LINKS Task ID 2212297 Community PR odoo/odoo#47229
2020-03-23[REF] event: remove origin field of registrationThibault Delavallée
Origin is a char field holding the registration "source name". Its only use is to copy the sale order name when registration is linked to a sale order in event_sale. As we can filter / group / search on sale order or sale order line directly instead of the origin there is no need to keep this char field. If necessary to some internal reasons it can simply be added through studio. LINKS Task ID 2212297 Community PR odoo/odoo#47229
2020-03-10[REF] event: rename event type default_registration_max to seats_maxThibault Delavallée
Purpose is to have matching names between event type and event to ease code understanding. LINKS Task ID 2089156 Community PR odoo/odoo#42911 Upgrade PR odoo/upgrade#912
2020-03-10[IMP] event: set an explicit onchange on partner_id of registrationThibault Delavallée
RATIONALE Manual onchange is necessary because you spot an issue (or customer complains). Automatic update through computed feild is only there to try to add missing pieces of information but cannot decide which is the correct field value to keep. SPECIFICATIONS Keep an explicit onchange on partner_id. Rationale : if user explicitly changes the partner in interface, he wants to update the whole customer information. If partner_id is updated in code (e.g. updating your personal information after registeration in website_event_sale) fields with a value should not be reset as we do not know which one is the correct one. How it should behave as following * computed fields based on partner_id should only update missing information. Indeed automated code cannot decide which information is more accurate; * interface should allow to update all customer related information at once. We consider event users really want to update all fields Tests are added to ensure behavior is not modified without notice. LINKS Task ID 2089156 Community PR odoo/odoo#42911
2020-03-10[REF] event : move from onchange / default to stored editable computed fieldsThibault Delavallée
PURPOSE Try to move from onchange / default_get to stored editable computed fields. Behavior should be the same (computed or set by user), with support of create / write / onchange field update without additional code. SPECIFICATIONS: GLOBAL RULES Update classic fields updated in some cases by onchange and/or default methods by fields with store=True, readonly=False. It means their value comes either from manual user input, either from trigger based computation. Remove onchange and default_get when possible, leading to an unique computation method and clearing fields definition. Also clean some fields definition inconsistencies, notably required fields that should instead be correctly computed or default that have no real meaning. SPECIFICATIONS: REQUIRED FIELDS As computed fields are computed after create required attribute cannot be respected without computing them beforehand. That is why we have some custom code to compute required fields if not given at create and update the creation values accordingly. SPECIFICATIONS: MAIL SCHEDULING Mail scheduling on event type is modified in this commit. Previously checking the use_mail_schedule radio button had no effect on event_type_mail_ids field. It is now reset if unchecked. It is therefore coherent with use_ticket and event_type_ticket_ids field behavior. LINKS Task ID 2089156 Community PR odoo/odoo#42911 Co-Authored-By: Thibault Delavallée <tde@odoo.com> Co-Authored-By: Michaël Mattiello <mcm@odoo.com>
2020-02-28[FIX] event: fix seats computation when creating an eventThibault Delavallée
Dealing with newId is sometimes difficult. closes odoo/odoo#46560 X-original-commit: 416d5ae6f7753c413b6981f9de3d24913943e9c2 Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>