forked from Techsystech/web
MIG 9.0 support_branding
parent
a18a84675a
commit
1ba1b92669
|
@ -1,6 +1,8 @@
|
|||
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
|
||||
:alt: License: AGPL-3
|
||||
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
||||
:alt: License: AGPL-3
|
||||
|
||||
================
|
||||
Support branding
|
||||
================
|
||||
|
||||
|
@ -52,6 +54,20 @@ add the following XML::
|
|||
Note that the email button is only visible if you configure an email address,
|
||||
the default is empty!
|
||||
|
||||
Usage
|
||||
=====
|
||||
|
||||
To use this module, you need to:
|
||||
|
||||
#. On developer mode go to Settings > Technical > Paremeters > System Parameters
|
||||
#. Configure parameters related with support branding
|
||||
#. Support branding is showed on left menu and when raises an exception
|
||||
|
||||
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
|
||||
:alt: Try me on Runbot
|
||||
:target: https://runbot.odoo-community.org/runbot/162/9.0
|
||||
|
||||
|
||||
Bug Tracker
|
||||
===========
|
||||
|
||||
|
@ -69,6 +85,7 @@ Contributors
|
|||
|
||||
* Holger Brunn <hbrunn@therp.nl>
|
||||
* Stefan Rijnhart <srijnhart@therp.nl>
|
||||
* Angel Moya <odoo@tecnativa.com>
|
||||
|
||||
Icon
|
||||
----
|
||||
|
|
|
@ -1,30 +1,14 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# This module copyright (C) 2012-2015 Therp BV (<http://therp.nl>).
|
||||
#
|
||||
# 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/>.
|
||||
#
|
||||
##############################################################################
|
||||
# Copyright 2012-2015 Therp BV (<http://therp.nl>)
|
||||
# Copyright 2016 - Tecnativa - Angel Moya <odoo@tecnativa.com>
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
{
|
||||
"name": "Support branding",
|
||||
"summary": "Adds your branding to an Odoo instance",
|
||||
"category": "Dependecy/Hidden",
|
||||
"version": "8.0.2.0.0",
|
||||
"version": "9.0.2.0.0",
|
||||
"license": "AGPL-3",
|
||||
"author": "Therp BV,Odoo Community Association (OCA)",
|
||||
"author": "Therp BV,Tecnativa,Odoo Community Association (OCA)",
|
||||
"website": 'http://therp.nl',
|
||||
"depends": [
|
||||
'web',
|
||||
|
@ -36,5 +20,5 @@
|
|||
"data/ir_config_parameter.xml",
|
||||
'views/qweb.xml',
|
||||
],
|
||||
'installable': False,
|
||||
'installable': True,
|
||||
}
|
||||
|
|
|
@ -1,109 +1,86 @@
|
|||
/*
|
||||
/* Copyright 2012-2015 Therp
|
||||
* Copyright 2016 - Tecnativa - Angel Moya <odoo@tecnativa.com>
|
||||
* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */
|
||||
|
||||
Copyright (C) 2012-2015 Therp BV
|
||||
License: GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
Version 3 or any later version
|
||||
|
||||
Usage: if you run an OpenERP support company and you support
|
||||
customers without an OPW, you can brand the OpenERP instance
|
||||
accordingly using this module. Please enter the two variables
|
||||
in the code below, 'support_name' and 'support_link'. They will
|
||||
replace the unfriendly message about the OpenERP instance not
|
||||
being supported.
|
||||
|
||||
*/
|
||||
|
||||
openerp.support_branding = function(instance) {
|
||||
var QWeb = instance.web.qweb,
|
||||
_t = instance.web._t;
|
||||
|
||||
instance.web.CrashManager.include({
|
||||
init: function()
|
||||
{
|
||||
odoo.define('web.support_branding', function(require) {
|
||||
var CrashManager = require('web.CrashManager');
|
||||
var core = require('web.core');
|
||||
var Model = require('web.Model')
|
||||
var _t = core._t;
|
||||
CrashManager.extend({
|
||||
init: function() {
|
||||
var self = this,
|
||||
ir_config_parameter = new openerp.web.Model('ir.config_parameter');
|
||||
ir_config_parameter = new Model('ir.config_parameter');
|
||||
ir_config_parameter.call(
|
||||
'get_param', ['support_branding.support_email']).then(
|
||||
function(email)
|
||||
{
|
||||
function(email) {
|
||||
self.support_branding_support_email = email;
|
||||
});
|
||||
ir_config_parameter.call(
|
||||
'get_param', ['support_branding.company_name']).then(
|
||||
function(name)
|
||||
{
|
||||
function(name) {
|
||||
self.support_branding_company_name = name;
|
||||
});
|
||||
return this._super(this, arguments);
|
||||
},
|
||||
show_error: function(error)
|
||||
{
|
||||
show_error: function(error) {
|
||||
var self = this;
|
||||
this._super.apply(this, arguments);
|
||||
jQuery('.support-branding-submit-form').each(function()
|
||||
{
|
||||
jQuery('.support-branding-submit-form').each(function() {
|
||||
var $form = jQuery(this),
|
||||
$button = $form.find('button'),
|
||||
$description = $form.find('textarea[name="description"]'),
|
||||
$subject = $form.find('input[name="subject"]'),
|
||||
$body = $form.find('input[name="body"]');
|
||||
if(self.support_branding_support_email)
|
||||
{
|
||||
if (self.support_branding_support_email) {
|
||||
$form.attr(
|
||||
'action',
|
||||
'mailto:' + self.support_branding_support_email);
|
||||
$form.parents('.modal').find('.modal-body')
|
||||
.css('max-height', '70vh');
|
||||
$button.click(function(ev)
|
||||
{
|
||||
var mail_mail = new instance.web.Model('mail.mail');
|
||||
if(!$description.val())
|
||||
{
|
||||
$button.click(function(ev) {
|
||||
var mail_mail = new Model('mail.mail');
|
||||
if (!$description.val()) {
|
||||
$description.parent().addClass('oe_form_invalid');
|
||||
ev.preventDefault();
|
||||
return;
|
||||
}
|
||||
mail_mail.call(
|
||||
'create',
|
||||
[{
|
||||
state: 'outgoing',
|
||||
auto_delete: true,
|
||||
email_to: self.support_branding_support_email,
|
||||
subject: $subject.val(),
|
||||
body_html: jQuery('<div/>').append(
|
||||
jQuery('<div/>').text($description.val()),
|
||||
jQuery('<pre/>').text($body.val())
|
||||
).html(),
|
||||
}])
|
||||
.then(function(mail_id)
|
||||
{
|
||||
return mail_mail.call('send', [[mail_id]]);
|
||||
}, function()
|
||||
{
|
||||
// if the call failed, fire the mailto link
|
||||
// hoping there is a properly configured email
|
||||
// client
|
||||
$body.val($description.val() + '\n' + $body.val())
|
||||
$button.unbind('click');
|
||||
$button.click();
|
||||
})
|
||||
.then(function()
|
||||
{
|
||||
$form.parents('.modal').modal('hide');
|
||||
});
|
||||
'create', [{
|
||||
state: 'outgoing',
|
||||
auto_delete: true,
|
||||
email_to: self.support_branding_support_email,
|
||||
subject: $subject.val(),
|
||||
body_html: jQuery('<div/>').append(
|
||||
jQuery('<div/>').text($description.val()),
|
||||
jQuery('<pre/>').text($body.val())
|
||||
).html(),
|
||||
}])
|
||||
.then(function(mail_id) {
|
||||
return mail_mail.call('send', [
|
||||
[mail_id]
|
||||
]);
|
||||
}, function() {
|
||||
// if the call failed, fire the mailto link
|
||||
// hoping there is a properly configured email
|
||||
// client
|
||||
$body.val($description.val() + '\n' + $body.val())
|
||||
$button.unbind('click');
|
||||
$button.click();
|
||||
})
|
||||
.then(function() {
|
||||
$form.parents('.modal').modal('hide');
|
||||
});
|
||||
ev.preventDefault();
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
$description.hide();
|
||||
$button.hide();
|
||||
}
|
||||
if(self.support_branding_company_name)
|
||||
{
|
||||
if (self.support_branding_company_name) {
|
||||
$button.text(
|
||||
_.str.sprintf(
|
||||
openerp.web._t('Email to %s'),
|
||||
_t('Email to %s'),
|
||||
self.support_branding_company_name));
|
||||
}
|
||||
$form.prependTo(
|
||||
|
@ -111,4 +88,4 @@ openerp.support_branding = function(instance) {
|
|||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue