summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorChristophe Matthieu <chm@openerp.com>2013-01-23 11:31:02 +0100
committerChristophe Matthieu <chm@openerp.com>2013-01-23 11:31:02 +0100
commitb02c1eb263dadb4d4a4bf20025d0e4e448c73204 (patch)
tree210a08421d236a26ea5cf40a18ae97d554d4597d /addons/web/static/src
parentd345c7b07a0d08bac01d3d5936c1f1d1516f0f46 (diff)
[IMP] view: no message alias
bzr revid: chm@openerp.com-20130123103102-81kafjq0l61uq8qx
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/view_list.js1
-rw-r--r--addons/web/static/src/js/views.js29
2 files changed, 29 insertions, 1 deletions
diff --git a/addons/web/static/src/js/view_list.js b/addons/web/static/src/js/view_list.js
index fbbfabcacca..c0231487640 100644
--- a/addons/web/static/src/js/view_list.js
+++ b/addons/web/static/src/js/view_list.js
@@ -850,6 +850,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
this.$el.find('.oe_view_nocontent').click(function() {
create_nocontent.openerpBounce();
});
+ this.insert_alias(this.$el.find('.oe_view_nocontent'));
}
});
instance.web.ListView.List = instance.web.Class.extend( /** @lends instance.web.ListView.List# */{
diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js
index 9fd49367171..8f5eed37521 100644
--- a/addons/web/static/src/js/views.js
+++ b/addons/web/static/src/js/views.js
@@ -1394,7 +1394,34 @@ instance.web.View = instance.web.Widget.extend({
is_action_enabled: function(action) {
var attrs = this.fields_view.arch.attrs;
return (action in attrs) ? JSON.parse(attrs[action]) : true;
- }
+ },
+ /**
+ * insert alias into the dom
+ */
+ insert_alias: function ($dom) {
+ var self = this;
+ var context = this.options.action.context || {};
+ if (context && context.alias) {
+ new instance.web.Model('mail.alias').call("get_alias", [], {'alias': context.alias}).then(function (alias_ids) {
+ if (alias_ids.length) {
+ var $alias = $('<p class="oe_view_nocontent_alias"></p>');
+ var global = false;
+ var inc = 0;
+ _.each(alias_ids, function (alias_id) {
+ if (alias_id.email.match(/@.+/)) {
+ if (inc && global != alias_id.global) {
+ $alias.append('<br/>' + _t("or"));
+ global = alias_id.global;
+ }
+ $alias.append((inc? '<br/>': '') + '<a href="mailto:' + alias_id.email + '">' + alias_id.email + '</a>');
+ inc++;
+ }
+ })
+ $dom.append($alias);
+ }
+ });
+ }
+ },
});
/**