Commit Graph
1310 Commits
Author SHA1 Message Date
Aaron Bohy 68b61db3a2 [IMP] web: form_view: stat buttons hover style 2015-06-23 09:02:05 +02:00
Martin Geubelle f18caa435c [IMP] web: remove the strange color on links in the view-manager 2015-06-18 11:10:31 +02:00
qsm-odoo 17893c60bc [IMP] Add design compatibility for templates
Add compatibility rules for the templates to look good on both
enterprise and community editions
2015-06-18 10:57:52 +02:00
qsm-odoo 46bf047e86 [IMP] web, web_*, mail, board : New modals and dialogs 2015-06-17 09:49:46 +02:00
Christophe Simonis fe2b5f35a4 [MERGE] forward port of branch saas-6 up to bf1e999 2015-05-28 14:27:38 +02:00
Valerie Pirenne c24332e6da [IMP][ADD] mail, various: timeline view.
This commit introduces a new view type, the timeline view. This view is
intended to display messages like the previous chatter. This is now a view
like the form or list view. Like other views it will be possible to have
custom templates for some specific needs, allowing customization.

[IMP] mail: the value tracking is modified. Previously messages were created
containing the modified values. Those values are now stored, using a new
model mail.tracking.value. The message body is dynamically build based on
the values. Tests have been updated.

This version is temporary. Indeed two main modifications will come in a short
future :

 - the new design will improve the display
 - the slack mode will change the way the Inbox and notifications are managed

All glory to the Hypnotoad.

Special thanks to Valerie Pirenne (vpi), Jerome Maes (jem) and Richat Mathot
(rim) that did not code but said a lot of things. Martin Trigaux (mat) did
nothing, a bit like for the slides modules, but he is busy sending emails.
2015-05-21 12:10:25 +02:00
Aaron Bohy e7ff2d2c6a [IMP] Web: ListView: semantics classes for row decoration
based on bootstrap contextual colors, and bold/italic fonts.

Backward compatibility is ensured as the ListView is monkey-patched
to keep interpreting colors and fonts attributes.
2015-05-15 09:17:18 +02:00
qsm-odoo 84208a6ba1 [IMP] web: New generic progressbar widget + FieldProgressBar adaptation 2015-05-13 17:04:20 +02:00
Yannick Tivisse 5748d98a89 [FIX] web : Trying to reconnect banner was creating a banner
each time the rpc_error function was called. There was several call
to setInterval method, and several block were created with the same
content.
Also, the banner was not centered, and a blur effect was created
by the fa-spin class
2015-05-13 13:42:28 +02:00
Nicolas Lempereur a1fab04894 [FIX] web: view list lines in media print
List view elements were not displayed when printing a list view via the
browser interface.

Also now, with firefox (and maybe other browser but not with webkit
based ones) the page break should not happen in the middle of a row
(hence something cutting a sentence vertically on two pages).

closes #6581
opw-634588
2015-05-08 11:59:59 +02:00
Vidhin Mehta e09ea0de92 [IMP] web : replace timezone warning icon with a form widget 2015-04-30 11:24:43 +02:00
Christophe Simonis a9471c43b9 [MERGE] forward port of branch saas-6 up to e941c0f 2015-04-17 15:33:00 +02:00
Christophe Simonis 0e2a453fe2 [MERGE] forward port of branch 8.0 up to ba54a66 2015-04-14 12:22:33 +02:00
Nicolas Lempereur 00099db4f3 [FIX] css: move ie9 targetted rules to ie.css
Moving existing rules targetting IE9 or less to addons/web/static/src/css/ie.css
2015-04-13 18:24:10 +02:00
Nicolas Lempereur 8a285e6a62 [FIX] css: ie9 specific fixes
Create a new stylesheet for IE9 and less custom css.

The issue #6198 and #6201 is present in IE9 since a div with height 100% inside
a table-cell (i.e: td tag) element only take the minimum height possible for the
content.

For issue #6198: in IE9 a kanban tile could not be moved to an empty kanban,
this fix sets a minimum height for a empty column (80px, the size of two empty
tiles) so now a tile can be moved in the 80px in the top of the column.

For issue #6201: graphs took the minimum height in IE9, this fix set a fixed
height to improve the situation.

For issue #6200: in IE9, the list view could wrongly not go the next line
even if its width is 100%. For the given case, the display CSS property of
these listview is set to value "block".

opw-632415 opw-632417 opw-632416
2015-04-13 18:23:58 +02:00
Aaron Bohy d1056939ad [FIX] Web: pager for ListView in One2Many fields
The pager was not displayed in One2Many List views. This fix applies the
same behavior as in One2Many Kanban views, which is probably not the
best way to do it, but which works fine.

The issue was caused by 2 things:
   - The One2Many.FormView template removes the condition around  the
     buttons/pager divs of the FormView template. However, it was using a
     selector that does not seem to be used anymore. We thus removed it
     and the buttons/pager divs are now in the rendered One2Many List View
   - The rendered pager was appended to this.options.$pager whereas it
     should be appended to the corresponding div in its own template.

This commit should not be forwardported
2015-04-08 10:48:50 +02:00
Christophe Simonis 16f23dd43a [MERGE] forward port of branch 8.0 up to 8ad1105 2015-04-01 19:31:22 +02:00
David Monjoie 27594146b5 [IMP] web: added readonly checkmarks fix in saas file
I forgot to put the new rule of cc9f2919be in the saas file.
opw 630611
2015-03-31 14:28:52 +02:00
Yannick Tivisse 981b978a35 [IMP] web: responsive centering of the 'Try to reconnect' banner + color uniformization 2015-03-31 10:06:07 +02:00
David Monjoie cc9f2919be [FIX] web: fixed opacity of readonly checkboxes
Apparently, browsers decide how they want to style readonly inputs,
and it seems like Firefox is greying them out while Chrome doesn't.
We use an opacity: 0.5 rule to grey them out ourselves in Chrome,
but in Firefox they are not dark enough to read easily because of
the double greying. I checked with the designers but they don't
have any better fix for that.
2015-03-30 15:00:34 +02:00
Christophe Simonis 5aba579e74 [MERGE] forward port of branch saas-6 up to 42db2db 2015-03-21 15:54:05 +01:00
Aaron Bohy 546c07a58f [IMP] Web: Use of a ControlPanel in One2Many Fields
Creation of the One2ManyControlPanel template. The One2ManyControlPanel
can only contain action_buttons and a pager. Typically, in One2Many
Kanban, buttons are displayed (in edit mode) and in One2Many Lists,
the pager is displayed.

Improvement of all Views.buttons templates so that if there is no
button to render, it does not render an empty div. This was necessary
for Kanban buttons to prevent padding when there is no button
displayed. Changes in the other views were motivated by uniformity
concerns. This prevents to add empty div in the DOM as well.
Exception for FormView where the outer div is required for the option
footer_to_buttons to work.

This fixes a bug as the pager is now available in One2Many Lists, which
was not the case before, even if there were more than 80 items in the
list, i.e. some items were unreachable.

cp_bus argument in ViewManager init() is now required. If there is no
ControlPanel to communicate with, a dummy Bus should be given ot the
ViewManager.
2015-03-20 16:34:41 +01:00
Aaron Bohy 1280bf2513 [IMP] Web and all views: ControlPanel atomic update
Change the logic of rendering and displaying/hidding the control
elements (buttons, sidebar and pager) of all views. The views do no
more render automatically their elements as this is rather done
through the render_[element] function called by the ViewManager.
This function only appends the element to the $node given as argument.
If no argument is given, then it may appends it to the DOM directly,
within the adequate div of its template.
This allows the ViewManager to attach/detach all elements of the
ControlPanel in an atomic may, to prevent the ControlPanel from
flickering.
Also detach the contents of the ControlPanel in headless mode. Headless
means that the ControlPanel exists, but is hidden. Detaching its
contents permits to have a cleaner DOM.

Also remove the oe_form_dirty class on the buttons in the FormView, as
this class is only used on the view itself.

Side changes:
* base_import: import.js:
    Extend render_buttons function to be compliant with the new buttons
    rendering logic
* board: dashboard.js:
    Set flag search_view to True as the searchview is needed for the
    Views displayed in the Dashboard to retrieve the records to display.
    Necessary since we do no more construct the searchview when this
    is set to false
* google_drive: drive.js,
  share: share.js:
    Module extending the Sidebar widget often add their own buttons
    by extending the start(), which is called each time the Widget
    is appended to the DOM. With our new design, this could be done
    in start() anymore as it should be done only one. It is now done
    in init() instead.
2015-03-20 16:34:39 +01:00
Aaron Bohy 7aa0836420 [IMP] Web: views.js, view_editor.js: DebugManager
Creation of a widget for the DebugManager and move it from the ControlPanel
to the Systray.

Refactoring of the widget to improve/facilitate the way of adding
options in the DebugManager as the view_editor does.

Add a do_action() function in the WebClient that forwards the action to
the main ActionManager so that widget that are not in the scope of the
ActionManager (e.g. Menu) can performed actions as well.

Note: The DebugManager is currently in the Systray but it will finally be
moved to a dedicated spot above the ControlPanel.
2015-03-20 16:18:35 +01:00
Aaron Bohy 151c90743e [IMP] Web et al.: unique main ControlPanel
A unique main ControlPanel is instantiated by the ActionManager and it
is updated each time the state changes (i.e. when an action is performed
on the ActionManager or when switch_mode() is called on the ViewManager).

Introduction of State classes to facilitate the way of restoring
previously rendered states in ControlPanel. The notion of widgets
previously used in the ActionManager is now encapsulated in the notion
of states.

The search() function has been moved from ControlPanel to ViewManager as
it makes more sense like this.

The ViewManager doesn't have the reference to the ControlPanel but
rather communicate with it through a dedicated bus.

Some refactoring has been done on the ControlPanel as well so that it
doesn't need to know the ActionManager and the current Action anymore
(it communicates with the AM with events, and it updates itself using
information passed in arguments).

Improves the way the ViewManager requests the ControlPanel to
instantiate a SearchView, and how it waits for this SearchView to be
corretly loaded.

Move back the views logic to the ViewManager which directly asks
the ControlPanel to render the buttons and switch-buttons areas with
the views passed in arguments.

Removes option replace_breadcrumb in push_state() of ActionManager as it
is not used.

Side changes:
* Account: account_widget.js:
    Adapt code to retrieve the current state of the ActionManager.
    Required due to the introduction of State classes that encapsulate
    the notions of widgets and inner_widget in the ActionManager.
* Board: dashboard.js:
    Some refactoring to adapt the code according to the new Widgets
    structure. Several dependencies (e.g. searchview, action) were
    unnecessary. Do not append the "add to dashboard" option to the
    Favorite menu if there is no ViewManager available (e.g. in
    Messaging) instead of hidding it with a CSS rule, as a ViewManager
    required to retrieve the active_view.
* Google_spreadsheet: search.js:
    Change the way to retrieve the list_view_id s.t. it does not rely on
    parent of the SearchView anymore.
* Web: search.js:
    Change the way to retrieve the title in search.js for Favorites s.t.
    it does not rely on the parent of the SearchView anymore. Doing so,
    the ControlPanel does not need the title attribute anymore.
2015-03-20 16:18:33 +01:00
Aaron Bohy 53a9f6c081 [IMP] Web et al.: ControlPanel extracted from ViewManager
The ControlPanel is still instantiated by the ViewManager.

Changes details:
* web: views.js:
    Code related to views header is extracted from the ViewManager
    to a new Widget named ControlPanel.

    Also uses the headless flag to tell the inner view not to put
    its buttons (use case: kanban) or pager (use case: list) in the
    header as it is hidden.
* web: view_form.js, base.xml:
    Uses the headless flag at initialization of the One2ManyViewManager
    widget instead of extending the ViewManager template (which doesn't
    handle the header anymore).

* web: view_list.js:
    Test on this.options.$pager instead of this.options.$buttons
    when dealing with pager.

    Note: the behavior for list view is unchanged and has a bug.
    If there are more then 80 records to display, only the 80th
    first are display, and as there is no pager, there is no way
    to see the remaining ones. A fix for this would be to use a
    light ControlPanel in One2Many views as well. With this,
    there won't be duplicated .oe-'view'-buttons/sidebar/pager
    anymore.

* web: view_graph.js, view_pivot.js:
    Only render buttons in non-headless mode

* web_dashboard: dashboard.js:
    Fix some references that were broken with ControlPanel extraction

* web_view_editor: web_view_editor.js:
    Extend ControlPanel instead of ViewManager

* Changes in selector of ControlPanel elements in several addons:
    * base_import
    * mail
    * web
2015-03-20 16:17:06 +01:00
Géry Debongnie f9cdd19cdb [FIX] web: fix searchview menus height
first, I want to say that I'm not proud of this.  Let's just say that it
is better than the previous code (of which I'm not proud either).

The issue is that the sub menus (filters/groupbys/favorites) aren't very
good when their height is too big, and they're hidden below the screen
without scrollbar.  Previous code tried clumsily to compute the correct
max height in js, but it was only done in filters menu, and did not
always work.  This code do the same in css.  This would be good except
that it is just an estimation: calc(100vh - 125px).  It assumes that
the header will approximately take 120px, and size the max-height
accordingly.
2015-03-12 11:46:33 +01:00
Christophe Simonis 449f601f8e [MERGE] forward port of branch 8.0 up to 948befb 2015-03-09 12:40:57 +01:00
Aaron Bohy a6919adf70 [FIX] Web: base.sass: FormView: overflow in One2Many fields
Override the "overflow: auto" rule of view-manager-content in One2Many
fields to remove useless scrollbar displayed in One2ManyKanban.
2015-03-06 11:11:31 +01:00
Christophe Simonis 5b6617a5e4 [FIX] base: correct m2o design for active items. 2015-03-05 17:29:00 +01:00
Christophe Simonis bab519fd8a [FIX] web: do design changes in sass file!
8ab68d8 introduced css changes not present in sass file.
2015-03-05 17:26:17 +01:00
Denis Ledoux 3508104c97 [FIX] web: autocomplete dropdown wrong initial position
This issue is related to
http://bugs.jqueryui.com/ticket/8656
http://bugs.jqueryui.com/ticket/8749
https://github.com/jquery/jquery-ui/commit/d693ce5324f6f3be8479ef083e4eaf3c705ef043

When opening a form view, scrolling down,
and opening a many2one dropdown menu,
the dropdown menu wasn't directly under its input.
It could be really problematic when the menu was not even
visible on the current browser page (when you had to scroll down
a lot to access the many2one input).

The issue was resolved as soon as you opened the dropdown
menu a second time, and did not happen if you didn't scrolldown.
But, on initialization, the dropdown menu wasn't at the right position.

Fixes #5603
opw-629601
2015-03-05 17:23:41 +01:00
Jérome Maes 8ab68d8048 [FIX] web : fix the dropdown style to delete attachments 2015-02-26 16:41:29 +01:00
Aaron Bohy 38fb6119b4 [FIX] Web: base.sass: 4 spaces indentation
base.sass did not compile because those lines where indented using 2
spaces instead of 4.
2015-02-24 16:56:21 +01:00
Hitesh Trivedi 4cdc19198e [IMP] web: cleaner indicator when connection get lost 2015-02-20 16:45:48 +01:00
Géry Debongnie 7dfceb8f7e [FIX] web: unbreak tree view
The do_show and do_hide methods did not call their _super, which is bad.
Also, add an icon for the poor treeview.
2015-01-30 15:14:33 +01:00
Yannick Tivisse b2eab15594 [FIX] Web : add fontawesome in list handle widget 2015-01-27 15:06:22 +01:00
Yannick Tivisse 93de877e36 [IMP] web : harmonize action buttons css + sass 2015-01-27 14:07:57 +01:00
Simon Lejeune 28c38320a9 [IMP] web: jquery-ui autocomplete widget styling
a little more integrated with the Odoo webclient
2015-01-26 15:00:57 +01:00
Yannick Tivisse 018dcc8e3c [IMP] modify class oe_highlight to harmonize the action buttons 2015-01-26 09:13:02 +01:00
Yannick Tivisse 9207c4645a [IMP] Replace all oe_e class by fontawesome + remove entyporegular library 2015-01-21 16:11:26 +01:00
Mitesh Savani 9162b9930c [ADD][IMP] web: added toogle button for form view. Like already
done in list view, this is a button used for boolean fields
used to switch between pending-grey-false and done-green-true.

hr_holidays: use this newly-introduced button on form view.
I am sure HR people will love R&D now.

Courtesy of RD India: Mitesh Savani (msa@odoo.com)
Reviewed by Use Merge: Thibault Delavallée (tde@odoo.com)
2015-01-12 14:33:07 +01:00
Richard Mathot 7b763176ba [REM] modelines: Gotta catch 'em all 2015-01-08 11:38:58 +01:00
Aaron Bohy ba083dbb47 [IMP] Web: navbar isn't displayed on several lines while rendering
- Add a new SystrayMenu widget to improve and facilitate the way
    of adding widgets in .oe_systray
  - Rendering of the modules menu now waits for the systray and
    user menus to be rendered
  - A few refactoring of the UserMenu and Menu widgets
2015-01-07 15:13:51 +01:00
Aaron Bohy ecc3bb7647 [FIX]: y-truncated username in usermenu 2015-01-07 15:13:51 +01:00
Christophe Simonis fab4d6d442 [MERGE] forward port of branch 8.0 up to ea54d4a 2015-01-06 11:49:04 +01:00
Christophe Matthieu 9069d0127c [IMP] website: use the new summernote editor 2015-01-05 10:59:42 +01:00
Simon Lejeune 099ff0b236 [FIX] web: base.sass: jquery.ui widget in bootstrap's modal
Apply a z-index of 1051 (bootstrap'smodals are 1050). This fixes
an issue with the many2one hidden in a modal. Also, removed a
reference to a removed file.
2015-01-02 10:57:17 +01:00
Paramjit Singh Sahota 5042d2396e [FIX] web: fixed display of datepicker in editable list view.
The icon was quite board, leading to ugly and sometimes too short display
of the date itself.
2014-12-26 16:26:15 +01:00
Denis Ledoux 5a207fa08e [FIX] web: firefox print all pages of list view
opw-619093
2014-12-24 13:52:45 +01:00