Commit Graph
102 Commits
Author SHA1 Message Date
Thibault Delavallée 12c51cd847 [FIX] mail_thread inheritance: add api.returns on override of message_post
As message_post is defined on mail.thread abstract class its api.returns
is not automatically added on overridden versions of the method. This
commit add missing api.returns on all overrides of the method.
2017-02-28 10:07:19 +01:00
Nicolas Lempereur de658350df [FIX] website_blog: active/archive typo new API
With 86793a75 some regressions had been introduced.

opw-702025
2016-12-19 16:02:02 +01:00
Jeremy Kersten e94de1484f [FIX] *: make field 'name' from some *.tag model tanslatable 2016-11-22 16:44:25 +01:00
Jeremy Kersten 74e1d6940d [FIX] website_blog: fix depends for post_date
Before this commit, create a blog post since the backend raise
an error because the post_date is False.

It should never arrive, since it is a compute field that is the
publish date or fallback on the create_date.

But because set post_date, change the published_date, the depend from
publish date cannot be triggered again since it change the post_date.

So _set_post_date don't trigger _compute_post_date. And call it manually
will make 'max recursion depth python'.

The 'hack' to update publish date, without retrigger the _compute_post_date
and set post_date manually, is to use the _write method that don't trigger
all depends fields.

Courtesy of @rco-odoo

This commit closes #13829
2016-10-17 17:32:42 +02:00
Christophe Simonis 53d8f76a40 [MERGE] forward port branch saas-12 up to e8e4145 2016-10-17 16:00:39 +02:00
Thibault Delavallée 6b143e6089 [FIX] website_blog: handle replies to Blog Post Published as notes
As the Blog Post Published message is posted on a channel every reply
to this message is also posted on the blog. However blogs may holds
lot of followers not necessarily interested in being spammed by answers
to that message. We consider now that those replies are notes to avoid
spam. Blog managers can follow the note subtype to be warned about
those messages.
2016-10-14 11:03:57 +02:00
Thibault Delavallée fcd6813dc9 [FIX][IMP] various: unsudo mail/view controller and get_access_action
This is a backport of saas-13 commit a9bd9ab160.

mail/view controller is a generic controller that redirects the user to a
given view, depending on the record and the user. Users may be redirected
to the backend form view, or to a website view. This is done notably by
calling get_access_action method that gives the action to perform (act_window
or url).

Previously this method was called using SUPERUSER. However it was therefore
impossible to know who the user was. This method is now called using the
current user. Various overrides of get_access_action have been updated to
add some logic and access rights check directly in the method allowing
more fine-grain behavior of the access action.
2016-09-26 14:42:25 +02:00
Thibault Delavallée 458aaca328 [IMP] mail: reimplement grouping of notification recipients
There is now a single method easier to inherit to add specific behavior
for the display of access button as well as actions buttons. All addons
using this mechanism are updated accordingly.
2016-09-23 10:01:41 +02:00
Thibault Delavallée a9bd9ab160 [FIX][IMP] various: unsudo mail/view controller and get_access_action
mail/view controller is a generic controller that redirects the user to a
given view, depending on the record and the user. Users may be redirected
to the backend form view, or to a website view. This is done notably by
calling get_access_action method that gives the action to perform (act_window
or url).

Previously this method was called using SUPERUSER. However it was therefore
impossible to know who the user was. This method is now called using the
current user. Various overrides of get_access_action have been updated to
add some logic and access rights check directly in the method allowing
more fine-grain behavior of the access action.
2016-09-23 10:01:04 +02:00
Thibault Delavallée dac08836bc [FIX] website_blog: fix use of undefined variable 2016-09-15 12:49:33 +02:00
Thibault Delavallée af703b8275 [IMP] mail, website_forum, website_blog: avoid storing message needaction partners
Forum and blog are public models that could have a lot of followers. After
notifying followers of a new comment, discard the needaction information.
For those models email is considered as sufficient. This way we avoid storing
a lot of unnecessary entries in the m2m table between message and partner.
2016-09-01 13:28:36 +02:00
qsm-odoo c204d621bb [IMP] website_blog: use valid website snippet as default content for blog post
Adapt the default content of blog post to be a valid website snippet.
Previous content was not entirely possible to remove (there still was
a remaining .container) and was not easily customizable (user had to
remove it if he wants something great).

Note: maybe we should adapt the snippets so that they are callable with
custom content or do something like what has been done for default
content for job positions (see commit 00cfb0889b).
2016-08-31 16:37:20 +02:00
Thibault Delavallée 02c748be59 [IMP] tools: sanitizer: add and clean sanitize options
Now having

 * sanitize: run the sanitizer to clean the html (removing javascripts,
   unwanted tags, ...)
 * sanitize_tags: only a subset of tags is allowed in html content.
   Unwelcomed tags are remove dand their content stripped.
 * sanitize_attributes: only a subset of attributes is allowed.
 * sanitize_style: only a subset of style attributes is allowed. Style
   attributes are parsed to keep only a white list.
 * strip_style: all style is removed. It bypasses sanitize_style as there
   is no need to sanitize something that is removed.
 * strip_classes: remove class attributes

Fields parameters have also been updated to match the sanitize options. Html
fields by default are sanitized with sanitize_tags activated but without any
further options. All addons have been updated to match the new options
according to their previous behavior.
2016-08-30 15:54:56 +02:00
Christophe Simonis f4738e7bb5 [MERGE] forward port branch saas-12 up to 78e9c7f 2016-08-26 18:06:17 +02:00
Jeremy Kersten 925b480aa9 [FIX] website_blog: link send by mail crash
/mail/view?model=blog.post&res_id=1

crash in 'res_id': self.id

AttributeError: 'blog.post' object has no attribute '_ids'
2016-08-26 13:05:07 +02:00
qsm-odoo 74d7de465e [REF] website_blog: refactore cover option and change opacity behavior
* Isolate website_blog style
* Simplify/Correct the cover option JS
* Allow to modify the cover from the blog list page
* Change cover layout (use a more conventionnal odoo design with a
div which is full width, which contains a container(-fluid) then its
content) -> easier to customize.
* Refactore code to be understandable
* Change behavior of opacity filter: before this commit the cover
filter was not intuitive and did not work on IE or Edge, it mixed
the color of the bg-image and the bg-color in a complex way and the
opacity was just controlling if the image was visible clearly or not
(which led in general to ugly style if the opacity was used). Now, the
color in applied *on top* of the image so that its color changes the
hue of the underlying image. The opacity value controls only the
opacity value of the color to mix.

[MIGRATION] Note: as the opacity behavior has changed, the exact same
behavior is not reproductible at all. But for the change to make a bit
of sense in old databases, this should be applied for the field
"cover_properties" of blog posts (with changes in layout):

if cover_properties.background-color != "oe_none":
    cover_properties.opacity = 0.6
else:
    cover_properties.opacity = 1.0 - cover_properties.opacity
2016-08-19 17:44:28 +02:00
Jeremy Kersten a4d8cf9ead [IMP] website_blog: allow to use publish date in future
Now, you can set the published date in the future.
There will be not visible by visitor until this date.

When a user publish a post, if the published date is in the
past, we update the publish date to now, else we keep the old
published date which one is in the future.
2016-08-17 10:32:57 +02:00
Jeremy Kersten 8cc850f3a5 [IMP] website_blog: refactoring
[IMP] website_blog: display author avatar option
[IMP] website_blog: refactore cover option for blog
[IMP] website_blog: tags are now always displayed and as a label
[IMP] website_blog: side bar cleaning
[IMP] website_blog: new teaser
[IMP] website_blog: replace inline comments by quotes comment
[IMP] website_blog: new grid layout
[WIP] website_blog: read next options
[IMP] website_blog: refactoring sharing links
[IMP] website_blog: Delete cover narrow option
[IMP] website_blog: improvement for sharing links
[IMP] website_blog: blog post list cover is an option
[IMP] website_blog: archives group by year
[IMP] website_blog: if only one blog, no index blog post

Courtesy of @movanoncem
2016-08-10 18:38:28 +02:00
fwi-odoo 86793a7565 [MIG] website_blog: migrate py files 2016-08-10 17:53:49 +02:00
fwi-odoo 3b39e7066a [MOV] website_blog: reorganize files 2016-08-10 17:39:49 +02:00
Thibault Delavallée c8a313d51e [IMP] various: use odoo for imports instead of openerp and update class names 2016-08-10 15:48:07 +02:00
Jérome Maes 9f6ecb239e [REF] website_*: clean method to override when using 2016-08-04 12:02:14 +02:00
rap-odoo a5e7a4c8ae [IMP] Account,...: Change 'string' attribute on some fields to avoid repeated names
In odoo at many places the filter items are having repeated strings eventhough the
fiter works differently , so find all the places where this happens and give
proper string to each filter..
2016-06-08 14:02:23 +02:00
Jigar Patel 7853d0da26 [IMP] website_blog: Add published date, sort posts on this date + frontent filters
=======
Purpose
=======

For now all the views of blog posts sort them based on creation date. This creation date cannot be
changed (even with server actions). This leads to issues in several cases:

- import of old blog posts from a former system -> all the blog posts have the same date, on the website as well
- website visitors see when the blog post has been created, not published...

=============
Functional Spec
=============

Display blog post sorted by publish date in descending order. If the post has not been published yet,
the published date = creation date. When a post is unpublished and then published again, the publish
date should be updated to the last time it is published.

Add a status filter for published/not published blog posts, by default both are active (only visible
for website admin)
2016-06-06 12:56:56 +02:00
Christophe Simonis 6c8141a1df [MERGE] forward port of branch saas-10 up to 2483327 2016-04-01 16:15:35 +02:00
Christophe Simonis ddb0fb2739 [MERGE] forward port of branch saas-9 up to 59d3f63 2016-03-24 16:53:45 +01:00
Denis Ledoux ecfbd3f9b7 [FIX] website_blog: old api call without cr, uid, ids
opw-672398
2016-03-18 17:33:35 +01:00
Hitesh Trivedi ed589ca98a [ADD] Add (Un)archive button on form view of following model
- slide.channel
- slide.slide
- forum.post
- forum.forum
- blog.blog
- blog.post
- survey.survey (only for closed surveys)
- stock.location.route
- stock.warehouse.orderpoint
- stock.picking.type
- stock.incoterms
- stock.warehouse
- stock.location.path
- stock.location
- crm.team
- mrp.bom
- mrp.routing
- mrp.workcenter
- fleet.vehicle.log.contract
- fleet.vehicle
- event.track
- crm.claim
- hr.equipment.request
- hr.equipment
- hr.department
- res.currency
- procurement.rule
2016-03-10 13:06:03 +01:00
Thibault Delavallée 4a132e2afb [IMP] website_blog: raw html from python to data
Using message_post_with_view, raw html contained in python is now moved into
a template data and called from the code. This allows to avoid having raw html
directly embedded in python code.
2016-02-01 12:15:56 +01:00
Martin Trigaux bb56e484b7 [FIX] all: construction of translations lookup
When evaluated, the translation function never finds a match if a variable is
integrated into the untranslated text.

SHAME! 🔔 🙋
2016-01-13 14:46:30 +01:00
Christophe Matthieu e86372c504 [FIX] website_blog: active text translation for blog content
If translate=True AND if sanitize=True (By default sanitize=True) the html field use automatically html_translate method.
2015-12-10 09:10:28 +01:00
Thibault Delavallée 6dfcc5f9c8 [FIX] various: get_access_action form one to multi
As this method is overided in several modules, the mix of new and
old API makes it difficult to handle. Indeed in some cases we
receive the expected dictionary, sometimes in a list, sometimes
in a list of list, due to api.one decorator.

This is a change in the method API, however it is currently completely
buggy. Moreover this method is used internally and should not be
used as an external API. Lastly, this method is new from v9.
2015-10-30 15:44:15 +01:00
Thibault Delavallée 59c5ff08be [IMP] various: action buttons in notifications
Main addons updated :

 - crm: Conversion and Won / Lost actions
 - hr_holidays: Approve / Refuse for hr users / officers
 - project: Assign / New (task and issues)
 - forum, website_project_issue, website_portal_sale: go to the
   website view
2015-08-28 17:36:16 +02:00
Antony Lesuisse 1e90257e58 [IMP] tags: add unique constraints
- remove tags translatability
- add unique constraints
- res.partner.category is kept until we remove the parent_store test.
- hr remove tag parenthood
- hr remove unsed views and menu
2015-08-07 00:51:14 +02:00
Damien Bouvy 9be80be142 [FIX] website_blog: do not give a context when calling new-api-style 2015-07-17 09:57:09 +02:00
Thibault Delavallée 4b122ad41d [MIGR] mail: migration to the new API 2015-04-27 10:36:15 +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 16f23dd43a [MERGE] forward port of branch 8.0 up to 8ad1105 2015-04-01 19:31:22 +02:00
Martin Trigaux 12fc5ea840 [FIX] website_blog: safer check of variables in write call
Some code may call write with only one id instead of a list (e.g. translations,
see #5941) and the call to _postproces_content would fail
2015-03-27 16:39:09 +01:00
Jay Patel f516d39beb [IMP] website_blog: translate blogpost title and subtitle 2015-03-25 11:31:09 +01:00
Hitesh Trivedi f2987ea412 [IMP] website_blog : onboarding. The cover image of a blog post is editable (opacity, color, size, ...). Add a new tour, views improvements and new default images 2015-03-17 09:09:27 +01:00
Jeremy Kersten 165c67e879 [FIX] website: improve delete page
Clear cache after delete view
    Move menu to keep all 'New page', 'New blog', 'New forum', ... together
    Disable continue button from popup while user don't confirm with checkbox
    English typo
2015-02-12 18:19:19 +01:00
Christophe Simonis fa75094e6f [MERGE] forward port of branch 8.0 up to 4af53de
ignore .po and .pot changes
2015-02-03 18:47:42 +01:00
Jeremy Kersten 5d1b7d8a31 [FIX] website_blog: fix domain to clean comments 2015-02-03 12:02:02 +01:00
Jeremy Kersten 2833d87dfb [FIX] blog: don't rewrite old uniq name and clean comment(s) linked to a deleted path 2015-02-02 15:30:22 +01:00
Jeremy Kersten 905dd42b87 [IMP] website: allow to delete page - fix 440 - forum Q47292 2015-01-29 11:03:31 +01:00
David Monjoie 04e412ccb8 [IMP][REF] website_blog, website_event, website_event_track,
website_hr_recruitment, website_sale: add published mixin on blog / event /
track / job / product objects and update their website url and form view
according to the publish mixin/button refactoring.
2015-01-20 17:34:33 +01:00
Christophe Simonis fab4d6d442 [MERGE] forward port of branch 8.0 up to ea54d4a 2015-01-06 11:49:04 +01:00
Jérome Maes aaf37d8e87 [IMP] website_blog : allow multi tags and date filter, clean all the routes, remove group_comment from website_mail (only user and portal can post comment on blog.post, but the form is visible for all), modify the redirect controller to the login form when posting comment, and remove the description field of blog.blog 2014-12-26 16:04:29 +01:00
Denis Ledoux 753a4d787d [FIX] website_blog: ids of create_history method may be an integer 2014-12-24 15:13:22 +01:00