Commit Graph
1769 Commits
Author SHA1 Message Date
Xavier Morel 7352b34f0d [FIX] website: broken rename_page JS method
Variables had been renamed/replaced everywhere except rename_page.
2015-10-02 14:32:58 +02:00
Christophe Simonis d750206c49 [MERGE] forward port of branch saas-6 up to e9f1ee4 2015-10-01 15:16:59 +02:00
Xavier Morel cea29e0c01 [ADD] client-side CSRF support
* add CSRF token as core.csrf_token
* add CSRF tokens to client-generated and/or JS-submitted forms
* remove broken "compatibility" mode of web.ajax.post

  /cc @dmo-odoo I've no idea how that was supposed to work, from looking
  things up all modern browsers seem to support FormData, and old IEs
  which don't don't support fallbacks either and would require
  submitting an actual form as fallback so...
2015-10-01 01:36:50 +02:00
Christophe Simonis 7636b510a2 [ADD] *: CSRF protection in forms and routes
* make CSRF protection the default on all non-SAFE methods
  note: there currently is no way to call a CSRF-protected endpoint
  without a form-encoded entity-body as that's the only place we get the
  CSRF token from.
* simple CSRF token generation: just use the HMAC'd session id, no
  generating a new random token per session then HMAC it
* use constant-time equal function to avoid timing attacks
* assert that a database secret is configured before hashing/validating
  the CSRF token
* opt-out database manager from CSRF: The super-admin password serves
  the purpose of a CSRF token in the database manager screens.
  There is no request database to obtain the
  secret and generate a CSRF token.
2015-10-01 01:36:50 +02:00
Goffin Simon e9f1ee4d4a [FIX] website: edit mailto link
In function bind_data of website.editor.js, either href is a mailto link
or an url link but not both.

The function convert_links must not convert mailto links.

opw:650443
2015-09-30 21:25:17 +02:00
Nicolas Lempereur 7163d1692b [FIX] website: delay tour start till editor is loaded 2015-09-30 16:20:17 +02:00
Martin Geubelle 5946623d3f [FIX] website, web_planner: shared help comportement in frontend/backend
Help has been moved to web_planner, but only in backend. The comportement needs to be defined in website also so it is now shared in frontend and backend (mixin in common)
2015-09-28 15:42:44 +02:00
Jeremy Kersten fe3e91d1ff [FIX] website: fix footer
Inconsistency between col-md and col-lg (offset)
Add auto word wrap to avoid that text override next column
2015-09-25 16:38:09 +02:00
Jeremy Kersten d8f5b28554 [FIX] website: translation - don't crash if translation is empty
Avoid 'Uncaught TypeError: t.value.trim is not a function'
When t.value is empty / false, trim crash and so it's impossible
for end user to make translation.
2015-09-25 15:14:50 +02:00
Christophe Matthieu 21c88933f7 [FIX] web_editor & website: don't display edit placeholder if the node have class oe_no_empty or oe_not_editable 2015-09-24 09:36:41 +02:00
Christophe Matthieu 1c460e3ca8 [FIX] website: can add block in translate mode.
Fix for saas-6 only, don't forward port.

If the user translate a record html field like product... and add block after in English version, the translation doesn't have the new blocks.
In version >= 9.0 the translations contain only textual contents (with font, bold, color...). If a user add a block in english the block appear in all translations (with new text marked to translate).
2015-09-23 16:16:52 +02:00
Christophe Simonis 57168a9e90 [MERGE] forward port of branch saas-6 up to a669433 2015-09-23 14:34:26 +02:00
Denis Ledoux a3648fd23a [MERGE] forward port of branch 8.0 up to aabbdc7 2015-09-21 16:01:58 +02:00
Christophe Matthieu e8b57c1457 [FIX] website: addapt tour rte_translator wait for page load
Next steps executed before the next page loading could cause a test
false positive. Remove hack and use waitFor and WaitNot.
2015-09-21 13:45:36 +02:00
Nicolas Lempereur a473e425b2 [FIX] website: tour rte_translator wait for page load
Next steps executed before the next page loading could cause a test
false positive.
2015-09-18 13:29:48 +02:00
Nicolas Lempereur 3c39b62bce [FIX] website: escaping and external iframe
jQuery has a special behaviour when using .contents() over an iframe
object. This caused an error for escaping when saving the page with an
iframe content of an external domain.

introduced by 8c77c711
opw-649570
2015-09-18 09:41:32 +02:00
qsm-odoo f22686fb4d [FIX] website: published/unpublished button + useless code
For some strange reason, two CSS rules had different priorities between
firefox and chrome (which forced chrome to always display published and
unpublished at the same time).

The chosen solution is to change the value of the button in published/
unpublished instead of toggling and relying on CSS classes (with this
method, the DOM looks better too).

There was also duplicated code in website for assets_backend.
2015-09-15 13:17:43 +02:00
Jeremy Kersten ac8e28405d [FIX] website: website.theme.js make it re-usable and more flexible
Each theme was duplicating this file.
Now we need to improve this file to be re-usable by others themes.

This fix is only to catch input, in case of the selector is an image.
2015-09-14 16:30:39 +02:00
Nicolas Lempereur e03d64cfaa [FIX] website: remove cancelled request for mobile preview
In 7d40a7d, f820c07, 3ed0628 the way the mobile preview iframe is set
was altered several times. This left an inconsistent needless page load.

This page load was cancelled, but as a side effect in a given set of
conditions:

- an ajax request is done early in current (and so iframe) page,
- phantomjs is used for the test,
- server response time

this could lead to a false positive caused by a cancelled xhr request
throwing the error: "Can't load template, http status 0".
2015-09-14 10:13:25 +02:00
Jeremy Kersten 8f97374842 [FIX] website: fix translation - missing escaping 2015-09-07 18:07:34 +02:00
Simon Lejeune ef3d0d87bc [FIX] web_planner: tooltip on progress bar 2015-09-07 13:36:12 +02:00
Aaron Bohy 7d1590ef33 [FIX] web_planner: detach on close 2015-09-07 12:15:44 +02:00
Christophe Simonis 3bb0cb2a50 [MERGE] forward port of branch 8.0 up to 9c8b99a 2015-09-04 18:30:48 +02:00
Nicolas Lempereur 6672e45ba4 [FIX] website: better text node if delete and whitespace
If the node is a text node containing only empty space, we must replace
some of these space by an   so it can be selected.
2015-09-04 11:35:11 +02:00
Jeremy Kersten 443447a2b1 [FIX] website: set oe_manipulators at top of top-bar
Without this, oe_manipulator could be under the bar and so impossible to move, duplicate, delete, ... the snippet
2015-09-03 13:18:52 +02:00
Nicolas Lempereur ea07b7dc2b [FIX] website: don't escape if embedded html field
We should escape arch ir.ui.view arch content, but we should not escape
embedded html field content.
2015-09-02 18:36:19 +02:00
Christophe Simonis ea5520967e [FIX] website: handle "DELETE" correctly on mac 2015-08-31 18:57:04 +02:00
Christophe Simonis f22f6954eb [FIX] website: summernote: do not use magic variable "event" 2015-08-31 18:54:55 +02:00
Yannick Tivisse 42141a5b59 [IMP] website: WidgetWebsiteButton: Add label on website below the publication status 2015-08-31 12:58:44 +02:00
Fabien Pinckaers 276065b3f8 [IMP] tour css glitch 2015-08-30 15:21:38 +02:00
Jeremy Kersten b86d98de24 [IMP] website: imp snippet bar
Force fa size to 14px, to avoid that themes which change body size,
change the fa snippet icon size and display it on severals lines.

Add text 'Snippets are loading' while snippets template is downloading.
2015-08-29 12:16:48 +02:00
Christophe Simonis edeceba7df [MERGE] forward port of branch saas-6 up to 7a768a4
Due to `sale` rewrite (94716a3f14),
the commit 503820acb6 has been partially
ignored (in sale.order.line) and will be rewritten later using new-api.
2015-08-28 15:07:16 +02:00
Christophe Simonis 6d85a9a4b9 [MERGE] forward port of branch 8.0 up to d744923 2015-08-27 18:30:46 +02:00
Christophe Matthieu 46de6789c6 [FIX] website: computeFonts when mediaEditor is called 2015-08-27 18:09:39 +02:00
Christophe Matthieu 877f38e2be [FIX] website: history buttons "undo", "redo" for embedded editor
* use summernote base history when not editing the website,
* fix the history buttons "undo", "redo" for embedded editor,
2015-08-27 18:09:39 +02:00
Christophe Matthieu a1194b2bb8 [FIX] website: use and improve ctrl-z/v in forum
* fix erroneous paste edge case,
* improve selection and pasting
* delete and backspace with hr

opw-646222
2015-08-27 18:09:39 +02:00
Nicolas Lempereur 8c77c711ee [FIX] website: escaping saved html content
Escape text nodes changed via the web editor before sending the content
it to the server controller.

It is done since the content is unescaped one time when being displayed,
and it is not done for inline style and script tags (which may be
injected by dropping a snippet) since that would break them.

replacing the solution in cdb900044.
2015-08-27 17:27:39 +02:00
Jeremy Kersten 11d09a427f [FIX] website: editor - don't try to load ico and video in only_images mode 2015-08-26 15:33:35 +02:00
Christophe Matthieu b44749f8d5 [IMP] website.theme: add event into the on_select arguments to allow the prevent default 2015-08-26 15:31:28 +02:00
Simon Lejeune 5c374313f6 [REF] planner: back again in a modal
fp's request
2015-08-26 14:53:00 +02:00
Christophe Matthieu b90c663702 [FIX] website: two sliders or galleries can have the same id
(because the user can edit separate part like footer or using versioning)

Backport of 394a0c8bb4.
2015-08-25 17:14:55 +02:00
Christophe Simonis 88c0ce0692 [MERGE] forward port of branch saas-6 up to e16d495 2015-08-24 18:19:19 +02:00
Christophe Matthieu 41e730cbfa [IMP] web_editor: add document into the media editor
User can upload documents and add the link in the page to download it.
2015-08-21 22:06:52 +02:00
Christophe Matthieu d4bae06d08 [IMP] web: use css to display attachment mimetype
Widgets and website display images or display the type with icon like pdf, doc...
2015-08-21 22:06:52 +02:00
Christophe Simonis b2062df319 [MERGE] forward port of branch 8.0 up to 86f98d5 2015-08-21 17:01:17 +02:00
Christophe Matthieu ee0fd9765e [IMP] website: add on_select on Theme object
Called by click or changes with enable or disable.
Called only one time by selection.
Receive all changed inputs.
For e.g.: allow to the designer to use this method to open modal or other option.
2015-08-21 16:01:00 +02:00
Christophe Matthieu 86696c3d70 [FIX] website: can't add a slide in banner 2015-08-21 15:58:53 +02:00
Christophe Matthieu 394a0c8bb4 [FIX] website: two sliders or galleries can have the same id
(because the user can edit separate part like footer or using versioning)
2015-08-21 15:58:53 +02:00
Christophe Matthieu a38e5bee18 [FIX] website: zero index for snippet gallery 2015-08-21 15:58:53 +02:00
Nicolas Lempereur 57c00ebea5 [FIX] website: escape when in a modal don't close editor
When a bootstrap modal is closed via the escape key, the editor would
snatch this keydown event and think we want to stop the editing.
2015-08-21 15:58:52 +02:00