diff --git a/help_popup/README.rst b/help_popup/README.rst new file mode 100644 index 000000000..1cc6c2246 --- /dev/null +++ b/help_popup/README.rst @@ -0,0 +1,86 @@ + +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :alt: License: AGPL-3 + +Help Popup +=========== + +This module adds an html help popup on each model action. +Two help fields are added to actions: enduser_help (html widget) +and advanced_help. + + +Installation +============ + +It was tested on Odoo 8.0 branch. + + +Configuration +============= + +Go to the action of your choice to add some help content +or put data in some modules. + +To display the button which open the popup, enduser_help or advanced_help field +should be set to any value. + + +Usage +===== + +Click on ? button + + +.. image:: help_popup/static/description/popup.png + :alt: License: Help Popup + + +Alternative +----------- +If you have website module installed, it could be an option +to install help_online instead of this module. + +Help Online is more advanced (allow the end user to add help) +but depends on an other module. +Help popup is more like an embedded help that use power users for end users. + + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +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 feedback +`here `_. + + +Credits +======= + +Contributors +------------ + +* Sylvain Calador +* David Beal + + +Icons +------ +https://www.iconfinder.com/Vecteezy + + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +To contribute to this module, please visit http://odoo-community.org. diff --git a/help_popup/__init__.py b/help_popup/__init__.py new file mode 100644 index 000000000..9186ee3ad --- /dev/null +++ b/help_popup/__init__.py @@ -0,0 +1 @@ +from . import model diff --git a/help_popup/__openerp__.py b/help_popup/__openerp__.py new file mode 100644 index 000000000..24cbf8632 --- /dev/null +++ b/help_popup/__openerp__.py @@ -0,0 +1,44 @@ +# coding: utf-8 +############################################################################## +# +# Odoo, Open Source Management Solution +# Copyright (C) 2015-TODAY Akretion (). +# +# 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 . +# +############################################################################## + +{ + 'name': 'Help Popup', + 'version': '0.5', + 'author': 'Akretion, Odoo Community Association (OCA)', + 'depends': [ + 'web', + ], + 'demo': [], + 'website': 'https://www.akretion.com', + 'data': [ + 'views/popup_help_view.xml', + 'views/action_view.xml', + 'report/report.xml', + 'report/help.xml', + ], + 'demo': [ + 'demo/help.xml', + ], + 'qweb': [ + 'static/src/xml/popup_help.xml', + ], + 'installable': True, +} diff --git a/help_popup/demo/help.xml b/help_popup/demo/help.xml new file mode 100644 index 000000000..777ec69a6 --- /dev/null +++ b/help_popup/demo/help.xml @@ -0,0 +1,55 @@ + + + + + + + Hi Odooer, + +
+
+

+I'm the field 'enduser_help' in the Customer action model +

+

+I'm displayed in a Qweb html report +

+ +

+Don't hesitate to customized me with your own words and syntax +

+ + ]]>
+
+
+ + + + Hi developers, + +
+
+

+I'm the field 'advanced_help' in the customer action also displayed in Qweb report. +

+

+Akretion wrote these words to explain my main purpose: +

+Allows to developers to write documentation on their work. +
+

+

+ +

+ +

You can write any html tag. Here is an image with img tag

+ + + + ]]>
+
+ +
+
diff --git a/help_popup/i18n/fr.po b/help_popup/i18n/fr.po new file mode 100644 index 000000000..5ba5ca0b1 --- /dev/null +++ b/help_popup/i18n/fr.po @@ -0,0 +1,60 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-07-23 13:41+0000\n" +"PO-Revision-Date: 2015-07-23 15:47+0100\n" +"Last-Translator: David BEAL \n" +"Language-Team: \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: \n" +"X-Generator: Poedit 1.7.5\n" + +#. module: help_popup +#: model:ir.actions.report.xml,name:help_popup.report_help_popup +msgid "Contextual Help" +msgstr "Aide contextuelle" + +#. module: help_popup +#: field:ir.actions.act_window,advanced_help:0 +msgid "Custom Help" +msgstr "Aide personnalisée" + +#. module: help_popup +#: field:ir.actions.act_window,enduser_help:0 +msgid "End User Help" +msgstr "Aide Utilisateurs Finaux" + +#. module: help_popup +#: view:website:help_popup.tpl_help +msgid "Help from Odoo" +msgstr "Aide d'Odoo" + +#. module: help_popup +#: view:website:help_popup.tpl_help +msgid "Help from developer" +msgstr "Aide du développeur" + +#. module: help_popup +#: help:ir.actions.act_window,advanced_help:0 +msgid "" +"Use this field to add custom content for documentation purpose\n" +"mainly by developers" +msgstr "" +"Utilisez ce champ pour ajouter du contenu documentaire\n" +"principalement par les développeurs" + +#. module: help_popup +#: help:ir.actions.act_window,enduser_help:0 +msgid "" +"Use this field to add custom content for documentation purpose\n" +"mainly by power users " +msgstr "" +"Utilisez ce champ pour ajouter du contenu documentaire\n" +"principalement par les utilisateurs avancés." diff --git a/help_popup/i18n/help_popup.pot b/help_popup/i18n/help_popup.pot new file mode 100644 index 000000000..a40c588aa --- /dev/null +++ b/help_popup/i18n/help_popup.pot @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * help_popup +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 8.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-07-23 13:41+0000\n" +"PO-Revision-Date: 2015-07-23 13:41+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: help_popup +#: model:ir.actions.report.xml,name:help_popup.report_help_popup +msgid "Contextual Help" +msgstr "" + +#. module: help_popup +#: field:ir.actions.act_window,advanced_help:0 +msgid "Custom Help" +msgstr "" + +#. module: help_popup +#: field:ir.actions.act_window,enduser_help:0 +msgid "End User Help" +msgstr "" + +#. module: help_popup +#: view:website:help_popup.tpl_help +msgid "Help from Odoo" +msgstr "" + +#. module: help_popup +#: view:website:help_popup.tpl_help +msgid "Help from developer" +msgstr "" + +#. module: help_popup +#: help:ir.actions.act_window,advanced_help:0 +msgid "Use this field to add custom content for documentation purpose\n" +"mainly by developers" +msgstr "" + +#. module: help_popup +#: help:ir.actions.act_window,enduser_help:0 +msgid "Use this field to add custom content for documentation purpose\n" +"mainly by power users " +msgstr "" + diff --git a/help_popup/model.py b/help_popup/model.py new file mode 100644 index 000000000..9c0a3b70b --- /dev/null +++ b/help_popup/model.py @@ -0,0 +1,35 @@ +# coding: utf-8 +############################################################################## +# +# Odoo, Open Source Management Solution +# Copyright (C) 2015-TODAY Akretion (). +# +# 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 . +# +############################################################################## + +from openerp import models, fields + + +class IrActionsActwindow(models.Model): + _inherit = 'ir.actions.act_window' + + enduser_help = fields.Html( + string="End User Help", + help="Use this field to add custom content for documentation purpose\n" + "mainly by power users ") + advanced_help = fields.Text( + string="Advanced Help", + help="Use this field to add custom content for documentation purpose\n" + "mainly by developers") diff --git a/help_popup/report/help.xml b/help_popup/report/help.xml new file mode 100644 index 000000000..678aa45d7 --- /dev/null +++ b/help_popup/report/help.xml @@ -0,0 +1,40 @@ + + + + + + + + + + diff --git a/help_popup/report/report.xml b/help_popup/report/report.xml new file mode 100644 index 000000000..b0ecadc69 --- /dev/null +++ b/help_popup/report/report.xml @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/help_popup/static/description/icon.png b/help_popup/static/description/icon.png new file mode 100644 index 000000000..4696ffe5f Binary files /dev/null and b/help_popup/static/description/icon.png differ diff --git a/help_popup/static/description/popup.png b/help_popup/static/description/popup.png new file mode 100644 index 000000000..812551cc9 Binary files /dev/null and b/help_popup/static/description/popup.png differ diff --git a/help_popup/static/src/js/popup_help.js b/help_popup/static/src/js/popup_help.js new file mode 100644 index 000000000..486687279 --- /dev/null +++ b/help_popup/static/src/js/popup_help.js @@ -0,0 +1,35 @@ +openerp.help_popup = function(instance, local) { + + var _t = instance.web._t; + instance.web.ViewManager.include({ + + do_create_view: function(view_type) { + var self = this; + var res = self._super(view_type); + self.$el.find('span.view_help').each(function () { + var $elem = $(this); + if ($elem.data('click-init')) { + return true; + } + $elem.data('click-init', true); + //alert('ee' + self.action) + console.log(self.action.id) + if (self.action.id == undefined || (self.action.advanced_help == '' && self.action.enduser_help == '')) { + self.$el.find('span.view_help').hide() + } + $elem.on('click', function(e) { + var params = 'height=650, width=800, location=no, '; + params += 'resizable=yes, menubar=yes'; + path = self.action.id; + my_window = window.open('/report/html/help_popup.tpl_help/' + path, 'Help', params); + // allows to back to the window if opened previoulsy + setTimeout('my_window.focus()', 1); + }); + + return true; + + }); + return res; + }, + }); +} diff --git a/help_popup/static/src/xml/popup_help.xml b/help_popup/static/src/xml/popup_help.xml new file mode 100644 index 000000000..4c7221eb4 --- /dev/null +++ b/help_popup/static/src/xml/popup_help.xml @@ -0,0 +1,8 @@ + + + + + &nbsp; ? + + + diff --git a/help_popup/views/action_view.xml b/help_popup/views/action_view.xml new file mode 100644 index 000000000..5b59b3b9e --- /dev/null +++ b/help_popup/views/action_view.xml @@ -0,0 +1,18 @@ + + + + + + ir.actions.act_window + + + + + + + + + + + diff --git a/help_popup/views/popup_help_view.xml b/help_popup/views/popup_help_view.xml new file mode 100644 index 000000000..4c4d2df0d --- /dev/null +++ b/help_popup/views/popup_help_view.xml @@ -0,0 +1,11 @@ + + + +