summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2017-09-06 12:26:36 +0200
committerChristophe Simonis <chs@odoo.com>2017-09-06 12:26:36 +0200
commit64d56995e049d7e7bc3aa7af5a16603220b0d4bc (patch)
tree3bb09a2d0e48acd15e36715a3167bc105eaa1156
parent5563168fe7f91402ac03e28274b6c93f2487d0e5 (diff)
parentef5ac872b8161ba422548bf09bfac5bac27f0922 (diff)
[MERGE] forward port branch saas-15 up to ef5ac872b81
-rw-r--r--addons/base_import/models/base_import.py2
-rw-r--r--addons/base_import/tests/test_base_import.py2
-rw-r--r--addons/mail/controllers/main.py3
-rw-r--r--addons/point_of_sale/static/src/js/db.js7
-rw-r--r--addons/point_of_sale/static/src/js/models.js4
-rw-r--r--addons/website_blog/models/website_blog.py1
-rw-r--r--addons/website_forum/models/forum.py1
-rw-r--r--addons/website_slides/models/slides.py1
-rw-r--r--doc/setup/deploy.rst4
-rw-r--r--odoo/addons/base/base.sql2
10 files changed, 23 insertions, 4 deletions
diff --git a/addons/base_import/models/base_import.py b/addons/base_import/models/base_import.py
index 5d0d508e3cc..190ca2e8773 100644
--- a/addons/base_import/models/base_import.py
+++ b/addons/base_import/models/base_import.py
@@ -453,7 +453,7 @@ class Import(models.TransientModel):
:rtype: (None, None) | (list(str), dict(int: list(str)))
"""
if not options.get('headers'):
- return None, None
+ return [], {}
headers = next(rows)
return headers, {
diff --git a/addons/base_import/tests/test_base_import.py b/addons/base_import/tests/test_base_import.py
index 0502af6d0ab..a0031c192e9 100644
--- a/addons/base_import/tests/test_base_import.py
+++ b/addons/base_import/tests/test_base_import.py
@@ -152,7 +152,7 @@ class TestMatchHeadersMultiple(TransactionCase):
def test_noheaders(self):
self.assertEqual(
- self.env['base_import.import']._match_headers([], [], {}), (None, None)
+ self.env['base_import.import']._match_headers([], [], {}), ([], {})
)
def test_nomatch(self):
diff --git a/addons/mail/controllers/main.py b/addons/mail/controllers/main.py
index 7a45663a01f..62b9da85ade 100644
--- a/addons/mail/controllers/main.py
+++ b/addons/mail/controllers/main.py
@@ -79,7 +79,10 @@ class MailController(http.Controller):
record_action = record.get_access_action()
else:
record_action = record_sudo.get_access_action()
+ if record_action['type'] == 'ir.actions.act_url' and record_action.get('target_type') != 'public':
+ return cls._redirect_to_messaging()
+ record_action.pop('target_type', None)
# the record has an URL redirection: use it directly
if record_action['type'] == 'ir.actions.act_url':
return werkzeug.utils.redirect(record_action['url'])
diff --git a/addons/point_of_sale/static/src/js/db.js b/addons/point_of_sale/static/src/js/db.js
index c2b3fad52f0..ccdd0fb6616 100644
--- a/addons/point_of_sale/static/src/js/db.js
+++ b/addons/point_of_sale/static/src/js/db.js
@@ -477,6 +477,13 @@ var PosDB = core.Class.extend({
}
return orders;
},
+ set_cashier: function(cashier) {
+ // Always update if the user is the same as before
+ this.save('cashier', cashier);
+ },
+ get_cashier: function() {
+ return this.load('cashier');
+ }
});
return PosDB;
diff --git a/addons/point_of_sale/static/src/js/models.js b/addons/point_of_sale/static/src/js/models.js
index 701f2da7d91..923da49c75d 100644
--- a/addons/point_of_sale/static/src/js/models.js
+++ b/addons/point_of_sale/static/src/js/models.js
@@ -247,6 +247,7 @@ exports.PosModel = Backbone.Model.extend({
}
self.db.set_uuid(self.config.uuid);
+ self.cashier = self.get_cashier();
var orders = self.db.get_orders();
for (var i = 0; i < orders.length; i++) {
@@ -588,11 +589,12 @@ exports.PosModel = Backbone.Model.extend({
// returns the user who is currently the cashier for this point of sale
get_cashier: function(){
- return this.cashier || this.user;
+ return this.db.get_cashier() || this.cashier || this.user;
},
// changes the current cashier
set_cashier: function(user){
this.cashier = user;
+ this.db.set_cashier(this.cashier);
},
//creates a new empty order and sets it as the current order
add_new_order: function(){
diff --git a/addons/website_blog/models/website_blog.py b/addons/website_blog/models/website_blog.py
index b70b61b578f..d8daea8a6ff 100644
--- a/addons/website_blog/models/website_blog.py
+++ b/addons/website_blog/models/website_blog.py
@@ -226,6 +226,7 @@ class BlogPost(models.Model):
'type': 'ir.actions.act_url',
'url': self.url,
'target': 'self',
+ 'target_type': 'public',
'res_id': self.id,
}
diff --git a/addons/website_forum/models/forum.py b/addons/website_forum/models/forum.py
index f4301209f17..f77d8dca4fd 100644
--- a/addons/website_forum/models/forum.py
+++ b/addons/website_forum/models/forum.py
@@ -786,6 +786,7 @@ class Post(models.Model):
'type': 'ir.actions.act_url',
'url': '/forum/%s/question/%s' % (self.forum_id.id, self.id),
'target': 'self',
+ 'target_type': 'public',
'res_id': self.id,
}
diff --git a/addons/website_slides/models/slides.py b/addons/website_slides/models/slides.py
index ff4078a103e..830cf910e8a 100644
--- a/addons/website_slides/models/slides.py
+++ b/addons/website_slides/models/slides.py
@@ -450,6 +450,7 @@ class Slide(models.Model):
'type': 'ir.actions.act_url',
'url': '%s' % self.website_url,
'target': 'self',
+ 'target_type': 'public',
'res_id': self.id,
}
return super(Slide, self).get_access_action()
diff --git a/doc/setup/deploy.rst b/doc/setup/deploy.rst
index ec1a31e0a3c..eb5d4cec144 100644
--- a/doc/setup/deploy.rst
+++ b/doc/setup/deploy.rst
@@ -213,6 +213,10 @@ Instead you must have a proxy redirecting requests whose URL starts with
``/longpolling/`` to the longpolling port. Other request should be proxied to
the :option:`normal HTTP port <odoo-bin --xmlrpc-port>`
+.. warning:: The livechat worker requires the ``psycogreen`` Python module,
+ which is not always included with all installation packages.
+ It can be manually installed with ``pip install psycogreen``.
+
Configuration sample
--------------------
diff --git a/odoo/addons/base/base.sql b/odoo/addons/base/base.sql
index 9e3efde69a6..57d57a1389b 100644
--- a/odoo/addons/base/base.sql
+++ b/odoo/addons/base/base.sql
@@ -50,7 +50,7 @@ CREATE TABLE ir_module_module (
website character varying(256),
summary character varying(256),
name character varying(128) NOT NULL,
- author character varying(128),
+ author character varying,
icon varchar,
state character varying(16),
latest_version character varying(64),