Commit Graph
347 Commits
Author SHA1 Message Date
Mahendra Barad e31e11449b [IMP] event, website_event_track: auto subscription.
event: organizer is now automatically added as follower of the event

event_track: responsible and speakers are now automatically added as
followers of the track
2015-01-23 15:54:04 +01:00
Goffin Simon 0fd773a486 [IMP] Cleanup and refactoring of exception handling
Unify and refactor exception handling in framework and addons.

The generic `except_osv` is now deprecated, and replaced by more specialized exception subtypes:
 - `UserError` (renamed from Warning, as it conflicts with the built-in `Warning`) raised when a non-technical error occurs during a business operation. It could be a missing information in the data provided by the user, or a misconfiguration.
 - `AccessError`: raised when any operation is denied because the user conducting it does not have the required access rights.
 - `AccessDenied`: raised when an operation that requires authenticated access is attempted via an unauthenticated request.
 - `MissingError`: raised when an operation is attempted on a record that does not exist.
 - `ValidationError`: raised when an operation violates a SQL or Python constraint.
 - All other exceptions are internal errors due to a system problem or bug, and raised untouched to the client-side, which should display a traceback.

All exceptions take a single message argument.

The `test_exceptions` module has been updated to showcase both new and old (deprecated) exceptions.

A great many old `except_osv` had a useless title with "Error!" or "Warning", those have been removed, as this is handled by the client-side widget that displays the messages.

This commit introduces a more consistent policy for logging errors and warnings:
 - All messages that do not require administrator attention should be logged at INFO level or lower. This includes all errors that are notified to the user in a friendly manner, even for access right problems or validation errors during business operations.
 - All messages that indicate a likely misconfiguration or malicious use by the users should be logged at WARNING level, as they typically require administrator attention.
 - All other unhandled internal errors cannot typically be handled by the user and should be logged at ERROR or higher level, as they require immediate administrator attention.
2015-01-16 17:15:18 +01:00
Julien De Coster d88c34d11e [IMP] Mass mailings send in cron
1. The merge of the "email_template" module into the "mail" module.
2. The send action of the mass mailing has been moved from the frontend to a cron, because it was too slow to send over 10,000 mails (the user's browser was blocked for 15 - 20 minutes). Mass mailings have now their own process in the kanban view.
3. Mails sent from the mail form are sent immediatly instead of from the mail queue (for instance, when you go to sales > customers > list view > select 2 -3 customers > More > Partner Mass Mailing).
4. Users have now the choice from which mailing list they want to unsubscribe when they click on the unsubscribe link at the bottom of the mail.
5. Mass mailings inherit from their campaign UTMs and mass mailing campaigns are linked to an UTM campaign.
6. Many little improvements
2015-01-07 18:01:58 +01:00
Mahendrasinh Barad e2e38076aa [IMP] website_event_sale: validation of seats availability in cart.
Attendees are created and deleted on changing the quantity from the cart.

Added sale_order_id and sale_order_line_id fields on registrations, allowing
to find the order and the order line that created the registration without
to rely on origin and ticket.

Also fixed check_auto_confirmation, now in multi mode to avoid issues due to
the specific behavior of api.one.
2014-12-24 14:23:21 +01:00
Thibault Delavallée b2563509ff [IMP] event: chatter on registration proposes to add
the partner and attendee email as followers.
2014-11-17 14:09:33 +01:00
Thibault Delavallée a69400e714 [CLEAN] event: removed unnecessary count_registrations field;
on form view, display attendees (not canceled, ...) instead of
registration count.
2014-11-17 14:09:33 +01:00
Mahendra barad ad48bf6d7d [IMP] [ADD] event: mail schedulign system.
This commit adds a way to configure scheduled emails on events. It replaces
existing automatic emails at confirmation and subscription. It proposes to
configure some schedulers, based on subscription or event, using a template
and a configurable timedelta.

A cron is added that regularly checks for event mailing schedulers to execute
and launch them. The granularity of send emails is therefore limited to the
granularity of the cron, aka 1 hour.

[TEST] Added tests for this feature.

Also cleaned a bit event, country_id is now a pure related instead
of a computed field trying to be a related. Also removed default templates
on event category. Configuration in the event itself should be easy
enough for most use cases.
2014-10-17 16:48:29 +02:00
Christophe Simonis 52fee2811d [MERGE] forward port of branch 8.0 up to 2b192be 2014-10-16 16:04:39 +02:00
Denis Ledoux 99c44334f1 [FIX] event: convert related country_id field to compute field
To avoid being able to change the country of the address (res.partner) from this field
2014-10-16 11:15:34 +02:00
Paramjit Singh Sahota ca862e7b85 [IMP] event: Split Ticket: registration are now for one attendee only.
Registration are now for one attendee only. When buying several seats for an event
you have now one registration for each attendee.

event: nb_register field is removed; as well as unnecessary user_id and it subscribe /
unsubscribe behavior. Also slighly cleaned some views.
event_sale: do not auto confirm registrations linked to a draft sale order. Note: strange
origin is a char field, not a sale_order_id. Added a small wizard to edit attendees
data when confirming a sale order containing event related lines.
website_event: when buying free tickets, ask for attendee details. Added template,
controllers to handle that behavior.
website_event_sale: when buying tickets, ask for attendee details. Events ecommerce
should be better integrated with online events, using inheritance to add details
instead of being very different.
2014-10-09 10:09:06 +02:00
Thibault Delavallée 7c7c2c72ee [CLEAN] event: lint / remove dead code
- event.event: removed is_subscribed
- event.registration: removed log_ids
- res.partner: removed speaker boolean field, used nowhere
- linted the event module
2014-10-02 16:18:13 +02:00
Bhavik Bagdiya eb5adb8093 [IMP] event: refactored event form view. Usability reviews
showed that the form view was complicated and difficult to use. Now
that stat button and edition options in the front-end exist, it is
possible to remove some of the numerous tabs as well as some options
from the form view.

Coming: further cleaning of the model, behavior and probably the various
event-related views.
2014-10-02 13:04:10 +02:00
cod-odoo 16b560c441 [IMP][TEST] event: auto confirmation option, allowing to
automatically confirm events. In a simple flow it is usefull to automatically
confirm event and registrations.

[TEST] event: moved draft2done test into a unittest, easier to finely tune
in order to test the auto confirm option. Moreover this gives a basis to
further add python tests in the module. Hooray.
2014-10-02 11:44:07 +02:00
Christophe Simonis 709c9868de [MERGE] forward port of branch 8.0 up to e883193 2014-10-01 19:18:14 +02:00
Prashant Panchal 3ad9349373 [IMP] event: new kanban view. New! Shiny! With popcorn!
Added two features in kanban view
- having a data-routing attribute on the oe_kanban_global_click
container allow to have a custom routing instead of only
'form view' / 'edit view'. This is used for example to go to
the website view of events.
- allow type=url along with object, action, ... to have some specific
urls for links.
2014-10-01 14:03:39 +02:00
Dikshit Prajapati 8840312be5 [IMP] event: remove automatic date_end assignation based on
date_begin; also quickly fixed view of event locations.
2014-10-01 13:44:25 +02:00
Thibault Delavallée e8783d1a8a [FIX] event: jump on the correct menu after installing
the event application (event kanban view).

Also added a missing description on event.type model.
2014-10-01 10:47:28 +02:00
Thibault Delavallée 8eb4efc35f [FIX] event: added missing description on event.event model, leading to event model having Email Thread has description due to inheritance. 2014-09-30 09:40:44 +02:00
Martin Trigaux e31d25c867 [FIX] event: subscribe customer error
The onchange methods needs to work with browse records and address_get returns an id. Fixes #2484
2014-09-18 11:08:19 +02:00
Thibault Delavallée ced0da960e [FIX] event: registration and confirmation template now have a domain on event.registration.
Otherwise all templates are displayed and this will lead to some issues.

Also added a description on event.registration, because currently its
displayed name is Email Thread.
2014-08-01 10:11:36 +02:00
Martin Trigaux f138aa2608 [FIX] models: display_name and name_get mismatch
- display_name uses name_get and not the other way around:
name_get should not call _compute_display_name, _compute_display_name should call name_get.
The previous behaviour was not backward-compatible with the old api.
All the models redefining name_get would have 2 different behaviors between name_get and display_name.

- Do not set an inverse function to display_name:
In most cases, writing on display_name writes on _rec_name (if any, not mandatory).
If the display_name computation is redefined, we need to redefine as well the inverse method to avoid unexpected behaviour
This required to also modify tests in base_import as readonly fields are avoided.

- Remove search method on display_name:
For the same reason as for the first point, it could be good that searching on display_name use name_search (and not the other way around).
However doing this would be very inefficiant (need to do the search, without limit, extract the ids of the name_get result just to generate
a subdomain ('id', 'in', [...]). As in most cases it would anyway mean to search on the _rec_name it's better to directly do so.

- Changing label to avoid mismatch:
In view displaying the list of fields or when a match is made on the label of a field (e.g. when importing csv file,
matching is made on both label and technical name), the fact that display_name field has '
Calling it 'Display Name' will avoid most errors.

- remove display_name definition from website_forum_doc,ir_model:
These fields are doing the same thing as the display_name of the new api, we can remove them.
We need to keep the one for res.partner as it's a stored field.
2014-07-25 13:58:59 +02:00
Christophe Simonis f654a7719b [MERGE] forward port of branch saas-5 up to 73d39a0 2014-07-10 22:49:53 +02:00
Christophe Simonis 73d39a0c8c [MERGE] forward port of branch saas-4 up to a361947 2014-07-10 22:12:16 +02:00
Christophe Simonis a361947143 [MERGE] forward port of branch saas-3 up to a35aec2 2014-07-10 22:02:58 +02:00
Richard Mathot a0a17fa46e [TYPO] in event, event_sale 2014-07-10 14:11:01 +02:00
Raphael Collet cbe2dbb672 [MERGE] new v8 api by rco
A squashed merge is required as the conversion of the apiculture branch from
bzr to git was not correctly done. The git history contains irrelevant blobs
and commits. This branch brings a lot of changes and fixes, too many to list
exhaustively.

- New orm api, objects are now used instead of ids
- Environements to encapsulates cr uid context while maintaining backward compatibility
- Field compute attribute is a new object oriented way to define function fields
- Shared browse record cache
- New onchange protocol
- Optional copy flag on fields
- Documentation update
- Dead code cleanup
- Lots of fixes
2014-07-06 17:05:41 +02:00
Jeremy Kersten fd8ae038d8 [FIX] Event - Remove limit size 64 in the field name 2014-06-26 13:07:06 +02:00
Jaydeep Barot 026e38b48f [REM] Unnecessary size parameters on char fields 2014-06-25 17:13:43 +02:00
Xavier Morel d325c0caef [REV] attempt to revert incorrect removals in f4d78ae738 2014-05-30 16:00:28 +02:00
Kersten Jeremy 0826340b8a [FIX] Event - Don't update the context but a copy when we recompute dates with the timezone specified for the event.
bzr revid: jke@openerp.com-20140509123121-xchv133t7gh0e5nh
2014-05-09 14:31:21 +02:00
Kersten Jeremy 67fb735b50 [FIX] Event - Allow to specify the timezone from the event and use it in template mail.
bzr revid: jke@openerp.com-20140509121827-3ngkf93jhduobcoa
2014-05-09 14:18:27 +02:00
Raphael Collet 1d0a6e20a4 [FIX] event: move definition of fields track_ids and count_tracks to the right module
bzr revid: rco@openerp.com-20140505085739-z2asr1vrx6yyjtlh
2014-05-05 10:57:39 +02:00
Gery Debongnie 5aa2fa150c [MERGE] merge from trunk
bzr revid: ged@openerp.com-20140502130753-4z24z1to9pkrckvq
2014-05-02 15:07:53 +02:00
Olivier Dony 3891e0f2aa [FIX] event_sale: call to parent store trigger resolver fails due to class mismatch for <unbound_method>
bzr revid: odo@openerp.com-20140429105020-0itp8j0oa4im3bj7
2014-04-29 12:50:20 +02:00
Richard Mathot (OpenERP) 11680fd1f7 [IMP] Usability of event and event_sale
bzr revid: rim@openerp.com-20140423133917-zpulvflwflgz12sw
2014-04-23 15:39:17 +02:00
Gery Debongnie f57b767361 [MERGE] merge from trunk
bzr revid: ged@openerp.com-20140415150146-5ovdjzta58t5dhd2
2014-04-15 17:01:46 +02:00
Gery Debongnie 0a3987b6c9 [FIX] correct the spelling 'registration' to 'registration' in addon event
bzr revid: ged@openerp.com-20140414132706-qn2q82d33jdq59q6
2014-04-14 15:27:06 +02:00
Fabien Pinckaers 1c4b74a7d1 [IMP] translateable event description
bzr revid: fp@tinyerp.com-20140414123443-qom78utc45e86lh1
2014-04-14 14:34:43 +02:00
Gery Debongnie 2e9ee9c76e [MERGE] merge from rma branch
bzr revid: ged@openerp.com-20140410145131-fj17mdpi13wa5a9m
2014-04-10 16:51:31 +02:00
Martin Trigaux ad7e8b39f4 [IMP] event: add trigger field for stored seats_* fields and remove print
bzr revid: mat@openerp.com-20140404123700-w576o0biixy32udc
2014-04-04 14:37:00 +02:00
Martin Trigaux 8fdc0384ca [MERGE] [IMP] event: store number of seat used to avoid unnecessary computations (performance improvement)
bzr revid: mat@openerp.com-20140404121735-dtfc79y7ax9qwx6e
2014-04-04 14:17:35 +02:00
Anael Closson eb1274f612 [IMP] event: performance improvement for event with large amount of registration.
lp bug: https://launchpad.net/bugs/1294607 fixed

bzr revid: acl@openerp.com-20140404100956-epbv1o3fq63l1n5f
2014-04-04 12:09:56 +02:00
Yogesh Parekh (OpenERP) b86c9ccd13 [IMP]: Convert buttons into stat button in event module
bzr revid: ypa@tinyerp.com-20140326121108-odkq61lnf1cuyog5
2014-03-26 17:41:08 +05:30
Olivier Dony 76d89c0477 [MERGE] Forward-port of latest saas-2 bugfixes, up to rev. 9133 dle@openerp.com-20140214131810-9abebxpfeoga1crn
bzr revid: odo@openerp.com-20140217091203-kmeg4qsn2qyvll23
2014-02-17 10:12:03 +01:00
Denis Ledoux 0ef17beed0 [MERGE] Forward-port of latest 7.0 bugfixes, up to rev. 9846 revid:dle@openerp.com-20140217124044-o8sgz1esfqeha01f
bzr revid: dle@openerp.com-20140214100922-m6rf7c6x85nv67sl
bzr revid: dle@openerp.com-20140214114713-oab4kbearvv7g3nh
bzr revid: dle@openerp.com-20140214131810-9abebxpfeoga1crn
bzr revid: dle@openerp.com-20140217124230-ov201kfep88f5tn7
2014-02-17 13:42:30 +01:00
Denis Ledoux ea007a4810 [FIX] event: on_change methods must return a dict, always.
bzr revid: dle@openerp.com-20140214114627-yi05u3y45w797fza
2014-02-14 12:46:27 +01:00
Denis Ledoux b3268a48c2 [FIX] event: put back country_id related field as needed in event itself (not just website_event)
bzr revid: dle@openerp.com-20140130122051-cm2u2hotlnfv4bxj
2014-01-30 13:20:51 +01:00
Christophe Matthieu 07adc071df [IMP] website_event: split module: remove depends with sale and move event's ticket form into a bridge: website_event_sale
bzr revid: chm@openerp.com-20140128113101-aon81actmpahyn58
2014-01-28 12:31:01 +01:00
Christophe Matthieu d588e44d34 [IMP] event,event_sale: refactoring; remove crappy 9999 hardcoded values; remove visibility; add constraints
[FIX] remove module_portal_anonymous ref
[IMP] website: res_config with wizard
[IMP] event: remove related field to res.partner
[FIX] website_sale: change crappy _get_pricelist method (who return a browse record to a function field type many2one)

bzr revid: chm@openerp.com-20140128092037-zrrbz1hrmgat88o4
2014-01-28 10:20:37 +01:00
Christophe Matthieu 43044d8ee7 [IMP] event,event_sale: refactoring; remove crappy 9999 hardcoded values; remove visibility; add constraints
bzr revid: chm@openerp.com-20140127135828-z848mvpis5d9xyh8
2014-01-27 14:58:28 +01:00