Nikul Chaudhary
6 years ago
7 changed files with 46 additions and 117 deletions
-
13web_tree_image/README.rst
-
36web_tree_image/__manifest__.py
-
17web_tree_image/static/src/js/tooltip.js
-
69web_tree_image/static/src/js/web_tree_image.js
-
3web_tree_image/static/src/less/common.less
-
6web_tree_image/static/src/xml/widget.xml
-
19web_tree_image/view/assets.xml
@ -0,0 +1,17 @@ |
|||
odoo.define('web_tree_image.web_tree_image', function(require) { |
|||
"use strict"; |
|||
|
|||
var ListRenderer = require('web.ListRenderer'); |
|||
|
|||
ListRenderer.include({ |
|||
events: _.extend({}, ListRenderer.prototype.events, { |
|||
'mouseover tbody tr td .o_field_image': '_onHoverRecord_img', |
|||
}), |
|||
_onHoverRecord_img: function (event) { |
|||
var img_src = $(event.currentTarget).children('.img-responsive').attr('src') |
|||
$(event.currentTarget).tooltip({ |
|||
title: "<img src="+img_src+" />" |
|||
}); |
|||
} |
|||
}); |
|||
}) |
@ -1,69 +0,0 @@ |
|||
/* |
|||
OpenERP, Open Source Management Solution |
|||
This module copyright (C) 2014 Therp BV (<http://therp.nl>)
|
|||
(C) 2013 Marcel van der Boom <marcel@hsdev.com> |
|||
Copyright (C) 2016 Serpent Consulting Services Pvt. Ltd. |
|||
(<http://www.serpentcs.com>)
|
|||
|
|||
This program is free software: you can redistribute it and/or modify |
|||
it under the terms of the GNU Affero General Public License as |
|||
published by the Free Software Foundation, either version 3 of the |
|||
License, or (at your option) any later version. |
|||
|
|||
This program is distributed in the hope that it will be useful, |
|||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
GNU Affero General Public License for more details. |
|||
|
|||
You should have received a copy of the GNU Affero General Public License |
|||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/ |
|||
|
|||
odoo.define('web.WebTreeImage', function (require) { |
|||
"use strict"; |
|||
var core = require('web.core'); |
|||
var session = require('web.session'); |
|||
var QWeb = core.qweb; |
|||
var list_widget_registry = core.list_widget_registry; |
|||
|
|||
var WebTreeImage = list_widget_registry.get('field.binary').extend({ |
|||
format: function (row_data, options) { |
|||
/* Return a valid img tag. For image fields, test if the |
|||
field's value contains just the binary size and retrieve |
|||
the image from the dedicated controller in that case. |
|||
Otherwise, assume a character field containing either a |
|||
stock Odoo icon name without path or extension or a fully |
|||
fledged location or data url */ |
|||
if (!row_data[this.id] || !row_data[this.id].value) { |
|||
return ''; |
|||
} |
|||
var value = row_data[this.id].value, src; |
|||
if (this.type === 'binary') { |
|||
if (value && value.substr(0, 10).indexOf(' ') === -1) { |
|||
// The media subtype (png) seems to be arbitrary
|
|||
src = "data:image/png;base64," + value; |
|||
} else { |
|||
var imageArgs = { |
|||
model: options.model, |
|||
field: this.id, |
|||
id: options.id |
|||
} |
|||
if (this.resize) { |
|||
imageArgs.resize = this.resize; |
|||
} |
|||
src = session.url('/web/binary/image', imageArgs); |
|||
} |
|||
} else { |
|||
if (!/\//.test(row_data[this.id].value)) { |
|||
src = '/web/static/src/img/icons/' + row_data[this.id].value + '.png'; |
|||
} else { |
|||
src = row_data[this.id].value; |
|||
} |
|||
} |
|||
return QWeb.render('ListView.row.image', {widget: this, src: src}); |
|||
} |
|||
}); |
|||
|
|||
list_widget_registry |
|||
.add('field.image', WebTreeImage) |
|||
}); |
@ -0,0 +1,3 @@ |
|||
.o_image_cell .o_field_image img{ |
|||
width:30px; |
|||
} |
@ -1,6 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<templates id="template" xml:space="preserve"> |
|||
<img t-name="ListView.row.image" |
|||
t-att-height="widget.height || 16" |
|||
t-att-src="src" /> |
|||
</templates> |
@ -1,10 +1,11 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<openerp> |
|||
<data> |
|||
<template id="assets_backend" name="tree icon assets" inherit_id="web.assets_backend"> |
|||
<xpath expr="." position="inside"> |
|||
<script type="text/javascript" src="/web_tree_image/static/src/js/web_tree_image.js"></script> |
|||
</xpath> |
|||
</template> |
|||
</data> |
|||
</openerp> |
|||
<odoo> |
|||
|
|||
<template id="assets_backend" name="tree icon assets" inherit_id="web.assets_backend"> |
|||
<xpath expr="." position="inside"> |
|||
<link rel='stylesheet' href='/web_tree_image/static/src/less/common.less'/> |
|||
<script type="text/javascript" src="/web_tree_image/static/src/js/tooltip.js"/> |
|||
</xpath> |
|||
</template> |
|||
|
|||
</odoo> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue