mirror of https://github.com/OCA/web.git
[IMP] : patch getDir function to serve files
[REM] : remove jscolor route and replace it with JSpull/777/head
parent
8554dc9f93
commit
0fc48ded31
|
@ -23,4 +23,3 @@
|
|||
# @author Adil Houmadi <ah@taktik.be>
|
||||
#
|
||||
##############################################################################
|
||||
from . import controller
|
||||
|
|
|
@ -1,61 +0,0 @@
|
|||
# -*- encoding: utf-8 -*-
|
||||
############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Web Color
|
||||
# Copyright (C) 2012 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
|
||||
# Copyright (C) 2014 Anybox <http://anybox.fr>
|
||||
# Copyright (C) 2015 Taktik SA <http://taktik.be>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# @author Étienne Beaudry Auger <etienne.b.auger@savoirfairelinux.com>
|
||||
# @author Adil Houmadi <ah@taktik.be>
|
||||
#
|
||||
##############################################################################
|
||||
import openerp.http as http
|
||||
from openerp.http import request
|
||||
from os.path import join, abspath, exists
|
||||
import mimetypes
|
||||
|
||||
|
||||
class JsColor(http.Controller):
|
||||
@http.route("/jscolor/<string:image>", type="http", auth="user")
|
||||
def jscolor(self, image):
|
||||
addons_path = http.addons_manifest['web_widget_color']['addons_path']
|
||||
path = join(
|
||||
addons_path,
|
||||
'web_widget_color',
|
||||
'static',
|
||||
'lib',
|
||||
'jscolor',
|
||||
image
|
||||
)
|
||||
if not exists(path):
|
||||
return request.not_found()
|
||||
try:
|
||||
image_file = open(abspath(path))
|
||||
image_data = image_file.read()
|
||||
image_file.close()
|
||||
mime_type = mimetypes.guess_type(path)
|
||||
if len(mime_type) > 1:
|
||||
mime_type = mime_type[0]
|
||||
else:
|
||||
return request.not_found()
|
||||
except:
|
||||
return request.not_found()
|
||||
headers = [
|
||||
('Content-Type', '%s' % mime_type),
|
||||
('Content-Length', len(image_data)),
|
||||
]
|
||||
return request.make_response(image_data, headers)
|
|
@ -1,5 +1,14 @@
|
|||
openerp.web_widget_color = function (instance) {
|
||||
|
||||
var _super_getDir = jscolor.getDir.prototype;
|
||||
jscolor.getDir = function () {
|
||||
var dir = _super_getDir.constructor();
|
||||
if (dir.indexOf('web_widget_color') === -1) {
|
||||
jscolor.dir = 'web_widget_color/static/lib/jscolor/';
|
||||
}
|
||||
return jscolor.dir;
|
||||
};
|
||||
|
||||
instance.web.form.widgets.add('color', 'instance.web.form.FieldColor');
|
||||
|
||||
instance.web.search.fields.add('color', 'instance.web.search.CharField');
|
||||
|
|
Loading…
Reference in New Issue