summaryrefslogtreecommitdiff
path: root/addons
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
parentd345c7b07a0d08bac01d3d5936c1f1d1516f0f46 (diff)
[IMP] view: no message alias
bzr revid: chm@openerp.com-20130123103102-81kafjq0l61uq8qx
Diffstat (limited to 'addons')
-rw-r--r--addons/web/static/src/js/view_list.js1
-rw-r--r--addons/web/static/src/js/views.js29
-rw-r--r--addons/web_kanban/static/src/js/kanban.js5
3 files changed, 32 insertions, 3 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);
+ }
+ });
+ }
+ },
});
/**
diff --git a/addons/web_kanban/static/src/js/kanban.js b/addons/web_kanban/static/src/js/kanban.js
index 758c4246d87..b1ed4f16973 100644
--- a/addons/web_kanban/static/src/js/kanban.js
+++ b/addons/web_kanban/static/src/js/kanban.js
@@ -453,6 +453,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
}
},
no_result: function() {
+ var self = this;
if (this.groups.group_by
|| !this.options.action
|| !this.options.action.help) {
@@ -460,10 +461,10 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
}
this.$el.find('table:first').css("position", "absolute");
$(QWeb.render('KanbanView.nocontent', { content : this.options.action.help})).insertAfter(this.$('table:first'));
- var create_nocontent = this.$buttons;
this.$el.find('.oe_view_nocontent').click(function() {
- create_nocontent.openerpBounce();
+ self.$buttons.openerpBounce();
});
+ this.insert_alias(this.$el.find('.oe_view_nocontent_content'));
},
remove_no_result: function() {
this.$el.find('table:first').css("position", false);