Commit Graph
11 Commits
Author SHA1 Message Date
Jigar Patel 159f6c9e1f [IMP] event: The timezone of the event should be required field because if the user does not set timezone then in website_event(frontend) for event's timezone is not intuitive 2016-03-07 09:20:34 +01:00
Paramjit Singh Sahota 8ada8b8276 [IMP] event, event_sale, website_event_track: usability improvements
Among others small improvements :

 - [event] remove automatic logging of new registrations on event; for big events
 it produces only noise
 - [event_sale] fix product creation from event management; better display of
 address and date of the event
 - [website_event_track] add a cancel state on the track model. The stat button
 on the event shows only not-canceled state. Also added some tips.
2015-08-11 16:11:19 +02:00
Olivier Dony 3c8c1a96a2 [FIX] event: only auto-trigger after_sub mails during registration + fix tests
Previously, all existing event.mail schedulers were
auto-triggered at each registration, which could
make the behavior unpredictable/surprising,
including during the tests. Only trigger `after-sub`
event.mail schedulers, as only those are related
to a new registration.
Tests fixed to take into account this new behavior.
2015-05-28 23:38:58 +02:00
Jeremy Kersten b220f68b4f [FIX] website_event_sale, event: fix registration to event
First bug, was that the /registration/confirm had never attendee.
Because partner_ids was initialized with set() and so partner_ids &= set(xxx)
will be always empty.
Now the user have confirmation on screen that the registration is done...

Another bug/usuability problem was that when user register to a webinar
less than 1 hours before the event, if scheduler was not run menwhile,
the user has the link after that the webinar was starded...
Now, we force the mail to be send asap, and launch the scheduler at
each confirmation... Anyway, the list of email registration to send should be
never big, because every registration will launch the scheduler.

Test updated since the mail are sent direcly, it's normal to have 0 mail.
2015-05-13 17:43:09 +02:00
Mahendra Barad d9fa702d5e [IMP] event and event_* modules: onboarding improvements
event:
- added tip
- default subscription/reminder/thanks templates for registrations are now using
the reply_to defined on the event
- fixed check of available seats: use seats_availability field, unlimited events
should never trigger the constraint
- added a sequence on scheduled emails on events
- config: wording improvements
- various improvements in event, registration, event_mail and event_report views

event_sale:
- removed override of seats_max: should not depend on available seats in
tickets. Indeed you may have less available places than the sum of seats for
each ticket type, for example if you have 0-10 VIP and 0-20 Standard tickets
for a 20-seats event.
- removed a duplicated view override
- added a seats_availability field on tickets, same meaning as on event.
- improved event form view: registration tab is now replaced by the tickets tab
when tickets are used

website_event:
- better management of sold-out event in the front-end, when doing registrations

website_event_sale:
- removed register link on the event kanban view. There is no need to to from
the back-end to the front-end from the kanban view. The published button on the
event form view already allows to go to the front-end view on the event
- better management of sold-out event in the front-end, when doing registrations
- fixed a template that was in customize and should not

website_event_track:
- wording improvements
- small improvements in the front-end of tracks
2015-01-29 17:39:41 +01:00
Christophe Simonis 902be20de0 [FIX] *: remove deprecated checks attribute of tests modules 2015-01-19 17:17:26 +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
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
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
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
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