mirror of https://github.com/OCA/web.git
[IMP] web_tree_many2one_clickable: Fix pre-commit + improve readme
parent
f31af38338
commit
513dec0dfd
|
@ -14,13 +14,13 @@ Clickable many2one fields for tree views
|
||||||
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
||||||
:alt: License: AGPL-3
|
:alt: License: AGPL-3
|
||||||
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github
|
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github
|
||||||
:target: https://github.com/OCA/web/tree/14.0/web_tree_many2one_clickable
|
:target: https://github.com/OCA/web/tree/15.0/web_tree_many2one_clickable
|
||||||
:alt: OCA/web
|
:alt: OCA/web
|
||||||
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
||||||
:target: https://translation.odoo-community.org/projects/web-14-0/web-14-0-web_tree_many2one_clickable
|
:target: https://translation.odoo-community.org/projects/web-15-0/web-15-0-web_tree_many2one_clickable
|
||||||
:alt: Translate me on Weblate
|
:alt: Translate me on Weblate
|
||||||
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
|
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
|
||||||
:target: https://runbot.odoo-community.org/runbot/162/14.0
|
:target: https://runbot.odoo-community.org/runbot/162/15.0
|
||||||
:alt: Try me on Runbot
|
:alt: Try me on Runbot
|
||||||
|
|
||||||
|badge1| |badge2| |badge3| |badge4| |badge5|
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
||||||
|
@ -39,12 +39,16 @@ Usage
|
||||||
|
|
||||||
Put the mouse pointer over a many2one cell and click the button.
|
Put the mouse pointer over a many2one cell and click the button.
|
||||||
|
|
||||||
.. image:: https://raw.githubusercontent.com/OCA/web/14.0/web_tree_many2one_clickable/static/img/clickable.gif
|
.. image:: https://raw.githubusercontent.com/OCA/web/15.0/web_tree_many2one_clickable/static/img/clickable.gif
|
||||||
|
|
||||||
Known issues / Roadmap
|
Known issues / Roadmap
|
||||||
======================
|
======================
|
||||||
|
|
||||||
This widget is currently not working on the product field in the lines tree of the sale order form, see https://github.com/OCA/web/pull/1438 for further details.
|
This widget is currently not working on the product field in the lines tree of the
|
||||||
|
sale order form, see https://github.com/OCA/web/pull/1438 for further details.
|
||||||
|
|
||||||
|
To add this functionality to lines of sales, purchases and invoices, as they are
|
||||||
|
special views, is required a glue module that add this feature.
|
||||||
|
|
||||||
Bug Tracker
|
Bug Tracker
|
||||||
===========
|
===========
|
||||||
|
@ -52,7 +56,7 @@ Bug Tracker
|
||||||
Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/issues>`_.
|
Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/issues>`_.
|
||||||
In case of trouble, please check there if your issue has already been reported.
|
In case of trouble, please check there if your issue has already been reported.
|
||||||
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
||||||
`feedback <https://github.com/OCA/web/issues/new?body=module:%20web_tree_many2one_clickable%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
`feedback <https://github.com/OCA/web/issues/new?body=module:%20web_tree_many2one_clickable%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
||||||
|
|
||||||
Do not contact contributors directly about support or help with technical issues.
|
Do not contact contributors directly about support or help with technical issues.
|
||||||
|
|
||||||
|
@ -90,6 +94,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
|
||||||
mission is to support the collaborative development of Odoo features and
|
mission is to support the collaborative development of Odoo features and
|
||||||
promote its widespread use.
|
promote its widespread use.
|
||||||
|
|
||||||
This module is part of the `OCA/web <https://github.com/OCA/web/tree/14.0/web_tree_many2one_clickable>`_ project on GitHub.
|
This module is part of the `OCA/web <https://github.com/OCA/web/tree/15.0/web_tree_many2one_clickable>`_ project on GitHub.
|
||||||
|
|
||||||
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Odoo Server 14.0\n"
|
"Project-Id-Version: Odoo Server 15.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
|
|
|
@ -1 +1,5 @@
|
||||||
This widget is currently not working on the product field in the lines tree of the sale order form, see https://github.com/OCA/web/pull/1438 for further details.
|
This widget is currently not working on the product field in the lines tree of the
|
||||||
|
sale order form, see https://github.com/OCA/web/pull/1438 for further details.
|
||||||
|
|
||||||
|
To add this functionality to lines of sales, purchases and invoices, as they are
|
||||||
|
special views, is required a glue module that add this feature.
|
||||||
|
|
|
@ -367,7 +367,7 @@ ul.auto-toc {
|
||||||
!! This file is generated by oca-gen-addon-readme !!
|
!! This file is generated by oca-gen-addon-readme !!
|
||||||
!! changes will be overwritten. !!
|
!! changes will be overwritten. !!
|
||||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||||
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/web/tree/14.0/web_tree_many2one_clickable"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-14-0/web-14-0-web_tree_many2one_clickable"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/14.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/web/tree/15.0/web_tree_many2one_clickable"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-15-0/web-15-0-web_tree_many2one_clickable"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/15.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
||||||
<p>This addon forces Odoo to use many2one widget on a many2one fields in
|
<p>This addon forces Odoo to use many2one widget on a many2one fields in
|
||||||
tree views. This allows users to open linked resources from trees directly,
|
tree views. This allows users to open linked resources from trees directly,
|
||||||
using a button without accessing the form.</p>
|
using a button without accessing the form.</p>
|
||||||
|
@ -388,18 +388,21 @@ using a button without accessing the form.</p>
|
||||||
<div class="section" id="usage">
|
<div class="section" id="usage">
|
||||||
<h1><a class="toc-backref" href="#id1">Usage</a></h1>
|
<h1><a class="toc-backref" href="#id1">Usage</a></h1>
|
||||||
<p>Put the mouse pointer over a many2one cell and click the button.</p>
|
<p>Put the mouse pointer over a many2one cell and click the button.</p>
|
||||||
<img alt="https://raw.githubusercontent.com/OCA/web/14.0/web_tree_many2one_clickable/static/img/clickable.gif" src="https://raw.githubusercontent.com/OCA/web/14.0/web_tree_many2one_clickable/static/img/clickable.gif" />
|
<img alt="https://raw.githubusercontent.com/OCA/web/15.0/web_tree_many2one_clickable/static/img/clickable.gif" src="https://raw.githubusercontent.com/OCA/web/15.0/web_tree_many2one_clickable/static/img/clickable.gif" />
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="known-issues-roadmap">
|
<div class="section" id="known-issues-roadmap">
|
||||||
<h1><a class="toc-backref" href="#id2">Known issues / Roadmap</a></h1>
|
<h1><a class="toc-backref" href="#id2">Known issues / Roadmap</a></h1>
|
||||||
<p>This widget is currently not working on the product field in the lines tree of the sale order form, see <a class="reference external" href="https://github.com/OCA/web/pull/1438">https://github.com/OCA/web/pull/1438</a> for further details.</p>
|
<p>This widget is currently not working on the product field in the lines tree of the
|
||||||
|
sale order form, see <a class="reference external" href="https://github.com/OCA/web/pull/1438">https://github.com/OCA/web/pull/1438</a> for further details.</p>
|
||||||
|
<p>To add this functionality to lines of sales, purchases and invoices, as they are
|
||||||
|
special views, is required a glue module that add this feature.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="bug-tracker">
|
<div class="section" id="bug-tracker">
|
||||||
<h1><a class="toc-backref" href="#id3">Bug Tracker</a></h1>
|
<h1><a class="toc-backref" href="#id3">Bug Tracker</a></h1>
|
||||||
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/web/issues">GitHub Issues</a>.
|
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/web/issues">GitHub Issues</a>.
|
||||||
In case of trouble, please check there if your issue has already been reported.
|
In case of trouble, please check there if your issue has already been reported.
|
||||||
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
||||||
<a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_tree_many2one_clickable%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
<a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_tree_many2one_clickable%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||||
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="section" id="credits">
|
<div class="section" id="credits">
|
||||||
|
@ -431,7 +434,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
|
||||||
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
|
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
|
||||||
mission is to support the collaborative development of Odoo features and
|
mission is to support the collaborative development of Odoo features and
|
||||||
promote its widespread use.</p>
|
promote its widespread use.</p>
|
||||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/14.0/web_tree_many2one_clickable">OCA/web</a> project on GitHub.</p>
|
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/15.0/web_tree_many2one_clickable">OCA/web</a> project on GitHub.</p>
|
||||||
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
td.o_many2one_cell {
|
td.o_many2one_cell {
|
||||||
a {
|
a {
|
||||||
margin-left: 0.5em;
|
margin-left: 0.5em;
|
||||||
visibility: hidden;
|
visibility: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:hover a {
|
&:hover a {
|
||||||
visibility: visible;
|
visibility: visible;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,62 +7,62 @@
|
||||||
* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */
|
* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */
|
||||||
|
|
||||||
odoo.define("web_tree_many2one_clickable.many2one_clickable", function (require) {
|
odoo.define("web_tree_many2one_clickable.many2one_clickable", function (require) {
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
var ListRenderer = require("web.ListRenderer");
|
var ListRenderer = require("web.ListRenderer");
|
||||||
var ListFieldMany2One = require("web.relational_fields").ListFieldMany2One;
|
var ListFieldMany2One = require("web.relational_fields").ListFieldMany2One;
|
||||||
|
|
||||||
ListRenderer.include({
|
ListRenderer.include({
|
||||||
_renderBodyCell: function (record, node, colIndex, options) {
|
_renderBodyCell: function (record, node, colIndex, options) {
|
||||||
if (
|
if (
|
||||||
!node.attrs.widget &&
|
!node.attrs.widget &&
|
||||||
node.attrs.name &&
|
node.attrs.name &&
|
||||||
this.state.fields[node.attrs.name] &&
|
this.state.fields[node.attrs.name] &&
|
||||||
this.state.fields[node.attrs.name].type === "many2one"
|
this.state.fields[node.attrs.name].type === "many2one"
|
||||||
) {
|
) {
|
||||||
// No explicit widget provided on a many2one field,
|
// No explicit widget provided on a many2one field,
|
||||||
// force `many2one` widget
|
// force `many2one` widget
|
||||||
node.attrs.widget = "many2one";
|
node.attrs.widget = "many2one";
|
||||||
}
|
}
|
||||||
return this._super(record, node, colIndex, options);
|
return this._super(record, node, colIndex, options);
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
ListFieldMany2One.include({
|
ListFieldMany2One.include({
|
||||||
_renderReadonly: function () {
|
_renderReadonly: function () {
|
||||||
this._super.apply(this, arguments);
|
this._super.apply(this, arguments);
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|
||||||
if (!this.noOpen && this.value) {
|
if (!this.noOpen && this.value) {
|
||||||
// Replace '<a>' element
|
// Replace '<a>' element
|
||||||
this.$el.removeClass("o_form_uri");
|
this.$el.removeClass("o_form_uri");
|
||||||
this.$el = $("<span/>", {
|
this.$el = $("<span/>", {
|
||||||
html: this.$el.html(),
|
html: this.$el.html(),
|
||||||
class: this.$el.attr("class") + " o_field_text",
|
class: this.$el.attr("class") + " o_field_text",
|
||||||
name: this.$el.attr("name"),
|
name: this.$el.attr("name"),
|
||||||
});
|
});
|
||||||
|
|
||||||
// Append button
|
// Append button
|
||||||
var $a = $("<a/>", {
|
var $a = $("<a/>", {
|
||||||
href: "#",
|
href: "#",
|
||||||
class: "o_form_uri btn btn-sm btn-secondary fa fa-angle-double-right",
|
class: "o_form_uri btn btn-sm btn-secondary fa fa-angle-double-right",
|
||||||
}).on("click", function (ev) {
|
}).on("click", function (ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
ev.stopPropagation();
|
ev.stopPropagation();
|
||||||
|
|
||||||
self.do_action({
|
self.do_action({
|
||||||
type: "ir.actions.act_window",
|
type: "ir.actions.act_window",
|
||||||
res_model: self.field.relation,
|
res_model: self.field.relation,
|
||||||
res_id: self.value.res_id,
|
res_id: self.value.res_id,
|
||||||
views: [[false, "form"]],
|
views: [[false, "form"]],
|
||||||
target: "target",
|
target: "target",
|
||||||
context: self.record.getContext({
|
context: self.record.getContext({
|
||||||
additionalContext: self.attrs.context || {},
|
additionalContext: self.attrs.context || {},
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.$el.append($a);
|
this.$el.append($a);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue