summaryrefslogtreecommitdiff
path: root/addons/calendar/static/src/xml
AgeCommit message (Collapse)Author
2018-07-27[REF] *: BS4, 'pull-left/right' -> 'float-left/right'qsm-odoo
2018-07-27[REF] *: BS4, remove the use of btn-smqsm-odoo
Odoo made the bad choice of using the 'btn-sm' class for every button instead of configuring the padding for default 'btn' to be smaller. In BS4, the style of btn-sm is actually more complex, lowering the font-size too. Also, btn-xs was removed so we would not have the possibility to display smaller button than our default ones. This commit removes btn-sm wherever it was used. Unfortunately, this might remove it at some places where it made sense but this can be restored in a second time.
2018-07-02[REF] mail: JS mail refactoringAlexandre Kühn
---------------------- Summary ---------------------- The purpose of this commit is to improve the JS code of the `mail` module. It applies the new coding guidelines and makes some changes on the design of some modules, such as the old ChatManager module. Here is a short summary of the changes that have been made: 1. New coding guidelines - snake_case to camelCase - prefix private attributes and methods with '_' - jsdoc on most methods - one class per module 2. Rename/Merge some classes - 'chat manager' becomes 'mail manager' (internal) and 'mail service' (external) - 'chat window manager' is now included in mail manager - 'thread' widget now named 'thread widget' 3. New model abstraction for mail objects: - modules 'mail.model.*' - modeling: 0..1 0..1 * * ThreadWindow <------> Thread <-------> Message / \ / \ Thread With Cache Document Thread / | \ / | \ Mailbox Channel Support Channel | | DM - Thread: the superclass of threads. - ThreadWindow: the window component of a thread. - Message: mail objects representing messages. - Thread With Cache: threads that can be used with search view (Discuss app compatible). - Document Thread: represents the thread part of a chatter. - Mailbox: represents what was previously called 'static' channel, e.g. 'Inbox'. - Channel: mail objects representing channels, including livechat. - DM: special kind of Channel for 1:1 communication in the backend. - Support Channel: special channel for im_support module. This new modeling approach let us easily add features on all threads, such as the possibility to put any thread in a small window. ---------------------- Known issues ---------------------- [Already Present in Master] 1. When the Discuss app is in the background with 'Inbox' as the selected Thread, when clicking on a document thread preview in the messaging menu of the systray, the rainbow man appears. 2. When a document with the chatter is in the background, when receiving an inbox notification from this document thread, the document thread is automatically marked as read, which removes the notification right away. 3. Sometimes, opening a DM window from the "blank" thread window does not work. 4. Reply-to feature on Inbox is not working: no message is sent in the document thread. 5. On the first login of admin user with demo data, the inbox counter is wrong (it displays 6, instead of 3). Explanation after investigation: > On page load, it fetches the correct number of Inbox messages (3), but the server notifies of 3 needaction messages right away, so it wrongly assumes these are new needaction messages. > Not possible for web client to detect that these messages should not increment the Inbox counter while keeping same API. 6. Notifications for new document thread messages only work when the user sets 'handle with Odoo' for the Notification Management in the preferences. > due to notifications on the longpoll bus for document thread messages that come from needaction notifications. > requires server-side changes to send notification on the longpoll bus to mentionned user. [New] 7. When receiving a message on a unjoined channel, thread window flickers ('open' > 'close' > 'open') Explanation after investigation: > JS logic: a) On auto-join, ask server to join the channel and get channel infos. b) The info tells the channel is not detached, but JS code makes decision to detach it, and tells server the channel is now detached. c) From (a), server notifies on longpoll bus the state of channel, which is not detached. The web client thinks that the window state of the channel has been changed somewhere else, and the channel is now closed. d) From (b), server notifies on longpoll bus the state of channel, which is detached. The web client opens the thread window of this channel. > The flicker didn't occur before refactoring because the web client was only updating the model of channel when it receives the longpoll notification. > Server behaviour on 1st longpoll notification is necessary for cross-tab synchronization for channel window state. > New design implies that model and view should be synchronized, hence the issue now. > Solution: remove server-side thread window synchronization and replace with client-side synchronization. ---------------------- Hacks ---------------------- The module `im_livechat` now uses mail objects that are compatible with Message and Window objects: Modeling for messages: AbstractMessage / \ / \ LivechatMessage Message - AbstractMessage: message compatible with the thread widget. - LivechatMessage: message used by im_livechat. - Message: message used with the mail manager. Modeling for thread windows: AbstractThreadWindow / \ / \ LivechatWindow ThreadWindow - AbstractThreadWindow: behaviour share between all types of thread windows. - LivechatWindow: window used by im_livechat. - ThreadWindow: window used with mail_manager. The reason for these hacks are twofold: 1. Use the thread widget in the frontend and livechat external lib bundles. 2. Do not have a dependency with the mail manager in the frontend and external lib bundles.
2018-05-31[IMP] mail, calendar: add today meetings in systrayBarad Mahendra
Purpose of this commit is to display today meetings in the systray. This will help people in their daily job to have quickly access to their meetings. It is displayed along with activities and reminders to have all current work to do in the same place. Displayed meetings are ongoing or not yet started ones of the current day. All-day meetings of the current day are also shown. Done meetings are not displayed to lessen noise. Clicking on the systray will open the calendar view of meetings in a day mode. This is done by a small modification in the calendar view allowing to choose the display mode from context in addition to the mode attribute of the action definition. This commit is linked to task ID 60593. Closes #24438. Thanks to @ged-odoo for quick reviewing.
2017-05-04[IMP] web: add 'event_open_popup' option on calendar viewChristophe Matthieu
If the option 'event_open_popup' is set to true, then the calendar view will open events (or records) in a FormViewDialog. Otherwise, it will open events in a new form view (with a do_action)
2017-04-27[FIX] web, calendar: reintroduce many2manyattendee fields widgetMartin Geubelle
This widget behaviour hadn't been correctly implemented with the new views. This commit also introduces some tests.
2017-04-11[REF] web, *: redesign all JS viewsGéry Debongnie
This commit introduce a full redesign of all JS views. We started basically from scratch. The goal was to unify all the various views under a common framework, to make them testable, to make then usable in different conditions (in studio, or in the frontend), and to make our lives easier. Some important points are: - we introduced new coding guidelines (camelCase, 80 chars width, ...) - we have a brand new testing framework (still QUnit based) - kanban view moved to the web addon - calendar view (formerly web_calender) moved to web as well - the tree view was removed - all new code should be documented We hope that this code is the start of a new era for the Odoo web client, we want to have a high quality codebase, well documented, well tested, well designed. Work done by the framework team: mostly aab, ged, chm, dmo, qsm
2016-06-20[FIX] calendar: view meeting detail when not loggedJérome Maes
Since the new QWeb engine, `groups` directives on template rendered in a route with auth=none is simply ignored, since all is done as SUPERUSER_ID, it was impossible to instanciate the webclient to check if the session is valid and to display meeting info or redirect to event form view. It seems that we don't want to fix this because routes auth=none are rare, and special. So it is not considered as a bug. The fix for calendar is, however, to do redirection or template rendering server side.
2016-06-02[REF] (web_)calendar: mainly sidebar refactoringAaron Bohy
Also: - keeps unticked filters unticked when deleting a filter or adding a new one - correctly tick filters when clicking on the partner's name (that code was broken) - remove reference to instance.web introduced by a forwardport - wrong use of self in CalendarView's init()
2016-06-02[FIX] calendar: sidebar filters: no many2one if !useContactsAaron Bohy
Also don't allow to delete the filters in that case, as they are automatically computed from the displayed events.
2015-11-27[FIX] calendar: redirection after invitation emailqsm-odoo
When accepting/declining a calendar event invitation received by mail, we landed on an empty gray webclient. The confirmation page had been dropped with passage to new JS API / new calendar / new webclient. Previous mechanism had been reimplemented: custom web client with event information/confirmation if the user is not connected or redirection to the event form view if the user is connected. + FIX manyattendeetag : the status circle did not turn red when an user declined the invitation.
2015-09-11[FIX] calendar: tag template dataqsm-odoo
Tag template data were wrong since many2manytag color introduction
2015-07-29[FIX] (web_)calendar: Refresh code + Filtersqsm-odoo
- Contact filters were dropped with the new design - The 'me' filter was not working correctly (wrong colors) - Remove some useless/unnecessary code - Use new API confirm dialogs - Convert CSS to LESS
2015-07-23[FIX] calendar: Notification (style and new API)qsm-odoo
for compatibility with the enterprise edition. Also add type=button as the type attribute should always be specified for the <button> element (different browsers may use different default types).
2015-06-19[IMP] New many2manytags fieldqsm-odoo
Many2manytag widget is specialized by calendar module so it had to be common for community/enterprise
2015-06-08[IMP] updated icon classes which are renamed in font-awesome v4.2 and ↵Pankaj Joshi
removed useless icon-* classes of old font-awesome
2015-03-19[MERGE] forward port of branch 8.0 up to 7780004Christophe Simonis
2015-03-19[FIX] web_calendar: reactivate the possibility to remove a calendar from ↵Nicolas Martinelli
side list It is now possible again to remove a calendar from the side list thanks to the 'X' opw: 629511
2015-01-21[IMP] Replace all oe_e class by fontawesome + remove entyporegular libraryYannick Tivisse
2014-09-08[FIX] Calendar: fix some display issuesSimon Lejeune
* render the invitation widget inside oe_application * override the margin of oe_right in order to display the two div on the same line
2014-06-23[IMP] calendar: favorite contacts listPariket Trivedi
Improved calendar's favorite meeting list and added a input box to directly insert the partner in favorite list and 'X' to remove the partner's name from the favorite meeting list in calendar view.
2014-04-30[REF] Calendar refactoring - Manage allday in date field and not datetime.Kersten Jeremy
bzr revid: jke@openerp.com-20140430093613-3tdn2tfiwshcahbz
2014-01-13[REF] Refactoring according to CHS and AL reviewjke-openerp
bzr revid: jke@openerp.com-20140113174157-ins4vf57g0p6v82u
2014-01-10[REF] Refactoring according to the first review of CHSjke-openerp
bzr revid: jke@openerp.com-20140110170912-im9p7j5wf229k4d6
2013-12-19[TYPO] Rename base_calendar into calendarjke-openerp
bzr revid: jke@openerp.com-20131219144739-9ic700ycef8uklbc