summaryrefslogtreecommitdiff
path: root/addons/share/static/src
diff options
context:
space:
mode:
authorJagdish Panchal (Open ERP) <jap@tinyerp.com>2011-12-21 12:25:53 +0530
committerJagdish Panchal (Open ERP) <jap@tinyerp.com>2011-12-21 12:25:53 +0530
commitc028b3050d84cebf33fdadaf205b24e39b27d2e7 (patch)
treefe426c13b249bd1da2381777710e17e59a3f76a3 /addons/share/static/src
parent22c4f560b3b0622d1465b257f842c0766b65c635 (diff)
parentbf47bea6f7b886384176c0dbb59860f72677e69e (diff)
[MERGE] branch merged with lp:openobject-addons
bzr revid: jap@tinyerp.com-20111221065553-k0h0ksnnr29mklna
Diffstat (limited to 'addons/share/static/src')
-rw-r--r--addons/share/static/src/css/share.css12
-rw-r--r--addons/share/static/src/js/share.js74
-rw-r--r--addons/share/static/src/xml/share.xml5
3 files changed, 31 insertions, 60 deletions
diff --git a/addons/share/static/src/css/share.css b/addons/share/static/src/css/share.css
index 3b47a065b1e..8b137891791 100644
--- a/addons/share/static/src/css/share.css
+++ b/addons/share/static/src/css/share.css
@@ -1,13 +1 @@
-.openerp li.oe-share {
- background: url(../img/share.png) no-repeat;
- padding-left: 20px;
-}
-
-.openerp a.oe-share {
- background: url(../img/share.png) no-repeat;
- display: block;
- float: left;
- width: 20px;
- height: 20px;
-}
diff --git a/addons/share/static/src/js/share.js b/addons/share/static/src/js/share.js
index b2abc1832a4..b084e82f7c9 100644
--- a/addons/share/static/src/js/share.js
+++ b/addons/share/static/src/js/share.js
@@ -1,59 +1,42 @@
openerp.share = function(instance) {
-function launch_wizard(self, view) {
+function launch_wizard(self, view, button) {
+ var button = button || 'go_step_1';
var action = view.widget_parent.action;
var Share = new instance.web.DataSet(self, 'share.wizard', view.dataset.get_context());
- var domain = view.dataset.domain;
-
+ var domain = new instance.web.CompoundDomain(view.dataset.domain);
if (view.fields_view.type == 'form') {
domain = new instance.web.CompoundDomain(domain, [['id', '=', view.datarecord.id]]);
}
-
- Share.create({
- name: action.name,
- domain: domain,
- action_id: action.id,
- }, function(result) {
- var share_id = result.result;
- var step1 = Share.call('go_step_1', [[share_id],], function(result) {
- var action = result;
- self.do_action(action);
- });
- });
-}
-
-var _has_share = null;
-function if_has_share(yes, no) {
- if (!_has_share) {
- _has_share = $.Deferred(function() {
- var self = this;
- instance.connection.on_session_invalid.add_last(function() { _has_share = null; });
- var func = new instance.web.Model(null, "share.wizard").get_func("has_share");
- func(instance.connection.uid).pipe(function(res) {
- if(res) {
- self.resolve();
- } else {
- self.reject();
- }
+ self.rpc('/web/session/eval_domain_and_context', {
+ domains: [domain],
+ contexts: [view.dataset.context]
+ }, function (result) {
+ Share.create({
+ name: action.name,
+ domain: result.domain,
+ action_id: action.id,
+ view_type: view.fields_view.type,
+ }, function(result) {
+ var share_id = result.result;
+ var step1 = Share.call(button, [[share_id],], function(result) {
+ var action = result;
+ self.do_action(action);
+ });
});
});
- }
- _has_share.done(yes).fail(no);
}
-
instance.web.Sidebar = instance.web.Sidebar.extend({
add_default_sections: function() {
this._super();
var self = this;
- if_has_share(function() {
- self.add_items('other', [{
- label: 'Share',
- callback: self.on_sidebar_click_share,
- classname: 'oe-share',
- }]);
- });
+ self.add_items('other', [{
+ label: 'Share',
+ callback: self.on_sidebar_click_share,
+ classname: 'oe-share',
+ }]);
},
on_sidebar_click_share: function(item) {
var view = this.widget_parent
@@ -64,13 +47,14 @@ instance.web.Sidebar = instance.web.Sidebar.extend({
instance.web.ViewManagerAction.include({
start: function() {
var self = this;
- if_has_share(function() {
- self.$element.find('a.oe-share').click(self.on_click_share);
- }, function() {
- self.$element.find('a.oe-share').remove();
- });
+ self.$element.find('a.oe-share_link').click(self.on_click_share_link);
+ self.$element.find('a.oe-share').click(self.on_click_share);
return this._super.apply(this, arguments);
},
+ on_click_share_link: function(e) {
+ e.preventDefault();
+ launch_wizard(this, this.views[this.active_view].controller,'go_step_1_link');
+ },
on_click_share: function(e) {
e.preventDefault();
launch_wizard(this, this.views[this.active_view].controller);
diff --git a/addons/share/static/src/xml/share.xml b/addons/share/static/src/xml/share.xml
index 9a1363846a0..9b030051520 100644
--- a/addons/share/static/src/xml/share.xml
+++ b/addons/share/static/src/xml/share.xml
@@ -5,9 +5,8 @@
<t t-extend="ViewManagerAction">
<t t-jquery=".oe-shortcut-toggle" t-operation="after">
- <a class="oe-share" href="#share" title="Share this in 2 clicks...">
- <!--<img src="/share/static/src/img/share.png"/>-->
- </a>
+ <a class="oe-share_link" href="#share_link" title="Link or embed"><img t-att-src='_s + "/share/static/src/img/share.png"'/></a>
+ <a class="oe-share" href="#share" title="Share by email"><img t-att-src='_s + "/share/static/src/img/share.png"'/></a>
</t>
</t>