summaryrefslogtreecommitdiff
path: root/odoo
diff options
context:
space:
mode:
authorKevin Baptiste <kba@odoo.com>2019-08-12 07:18:23 +0000
committerYannick Tivisse <yti@odoo.com>2019-11-28 10:05:12 +0000
commitff1c35513aecef5fbc30f7c2f3834450e719714e (patch)
tree8149f14df17095845e735d6cccaf9317a1f97af6 /odoo
parent4c030311ada2ad19a2ee81b15544b7aed35b642b (diff)
[IMP] web: update to fontawesome 4.7.0 to 5.11.2
FontAwesome 5 introduced new names for some icons as described on https://fontawesome.com/how-to-use/on-the-web/setup/upgrading-from-version-4#name-changes This commit replaces the old names to the new ones. closes odoo/odoo#35826 Taskid: 2050241 Related: odoo/enterprise#5180 Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Diffstat (limited to 'odoo')
-rw-r--r--odoo/addons/base/data/ir_demo_data.xml2
-rw-r--r--odoo/addons/base/tests/test_translate.py6
-rw-r--r--odoo/addons/base/tests/test_view_validation.py189
-rw-r--r--odoo/addons/base/views/ir_actions_views.xml4
-rw-r--r--odoo/addons/base/views/ir_mail_server_views.xml2
-rw-r--r--odoo/addons/base/views/ir_qweb_widget_templates.xml12
-rw-r--r--odoo/addons/base/views/res_company_views.xml2
-rw-r--r--odoo/addons/base/views/res_currency_views.xml2
-rw-r--r--odoo/addons/base/views/res_lang_views.xml4
-rw-r--r--odoo/addons/base/views/res_partner_views.xml2
-rw-r--r--odoo/addons/base/views/res_users_views.xml10
-rw-r--r--odoo/addons/base/wizard/base_document_layout_views.xml2
-rw-r--r--odoo/addons/base/wizard/base_module_update_views.xml2
-rw-r--r--odoo/addons/test_exceptions/view.xml44
14 files changed, 236 insertions, 47 deletions
diff --git a/odoo/addons/base/data/ir_demo_data.xml b/odoo/addons/base/data/ir_demo_data.xml
index 60f8c9cb50c..32066df1a7b 100644
--- a/odoo/addons/base/data/ir_demo_data.xml
+++ b/odoo/addons/base/data/ir_demo_data.xml
@@ -15,7 +15,7 @@
<div class="col-12 text-center">
<div class="card text-white bg-danger mb-3 w-75 ml64">
<div class="card-header">
- <span class="fa fa-2x fa-warning" t-translation="off">&amp;nbsp;</span>
+ <span class="fas fa-2x fa-exclamation-triangle" t-translation="off">&amp;nbsp;</span>
<span class="text-white text-uppercase">Danger Zone</span>
</div>
<div class="card-body bg-transparent text-center">
diff --git a/odoo/addons/base/tests/test_translate.py b/odoo/addons/base/tests/test_translate.py
index 0d421842e0d..c1f56f76387 100644
--- a/odoo/addons/base/tests/test_translate.py
+++ b/odoo/addons/base/tests/test_translate.py
@@ -118,13 +118,13 @@ class TranslationToolsTestCase(BaseCase):
source = """<form string="Form stuff">
<div>
<label for="stuff"/>
- <span class="fa fa-globe" title="Title stuff"/>
+ <span class="fa fa-globe-americas" title="Title stuff"/>
</div>
</form>"""
result = xml_translate(terms.append, source)
self.assertEqual(result, source)
self.assertItemsEqual(terms,
- ['Form stuff', '<span class="fa fa-globe" title="Title stuff"/>'])
+ ['Form stuff', '<span class="fa fa-globe-americas" title="Title stuff"/>'])
def test_translate_xml_inline5(self):
""" Test xml_translate() with inline elements with empty translated attrs only. """
@@ -132,7 +132,7 @@ class TranslationToolsTestCase(BaseCase):
source = """<form string="Form stuff">
<div>
<label for="stuff"/>
- <span class="fa fa-globe" title=""/>
+ <span class="fa fa-globe-americas" title=""/>
</div>
</form>"""
result = xml_translate(terms.append, source)
diff --git a/odoo/addons/base/tests/test_view_validation.py b/odoo/addons/base/tests/test_view_validation.py
new file mode 100644
index 00000000000..95a0e4de85a
--- /dev/null
+++ b/odoo/addons/base/tests/test_view_validation.py
@@ -0,0 +1,189 @@
+# -*- coding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from lxml import etree
+import io
+
+from odoo.tests.common import BaseCase
+from odoo.tools.view_validation import (
+ valid_page_in_book, valid_att_in_form, valid_type_in_colspan,
+ valid_type_in_col, valid_att_in_field, valid_att_in_label,
+ valid_field_in_graph, valid_field_in_tree, valid_alternative_image_text,
+ valid_simili_button,
+ valid_simili_progressbar, valid_dialog, valid_simili_dropdown,
+ valid_focusable_button, valid_prohibited_none_role, valid_simili_tabpanel,
+ valid_simili_tab, valid_simili_tablist, valid_alerts
+)
+
+invalid_form = etree.parse(io.BytesIO(b'''\
+<form>
+ <label></label>
+ <ul class="dropdown-menu"><li/><li/></ul>
+ <div role="presentation"/>
+ <group>
+ <div>
+ <page></page>
+ <label colspan="True" string=""></label>
+ <field></field>
+ </div>
+ </group>
+ <notebook>
+ <page>
+ <group col="Two">
+ <div>
+ <div class="o_progressbar">100%</div>
+ <label string=""></label>
+ <img/>
+ <span class="fas fa-exclamation-triangle"/>
+ <field colspan="Five"> </field>
+ </div>
+ </group>
+ <a class="btn"/>
+ <div class="btn"/>
+ <div class="tab-pane"/>
+ </page>
+ </notebook>
+ <div class="modal"/>
+ <a data-toggle="tab"/>
+ <div class="nav-tabs"/>
+ <div class="alert alert-success"/>
+</form>
+''')).getroot()
+
+valid_form = etree.parse(io.BytesIO(b'''\
+<form string="">
+ <field name=""></field>
+ <field name=""></field>
+ <ul class="dropdown-menu" role="menu"></ul>
+ <notebook>
+ <page>
+ <field name=""></field>
+ <label for="" string=""></label>
+ <field name=""></field>
+ </page>
+ <page>
+ <group colspan="5" col="2">
+ <div class="o_progressbar" role="progressbar" aria-valuenow="14" aria-valuemin="0" aria-valuemax="100">14%</div>
+ <label for=""></label>
+ <label for="" string="" colspan="5"></label>
+ <img alt="Test image"/>
+ <span class="fa fa-success" aria-label="Test span" title="Test span"/>
+ <a class="fa fa-success"><span aria-label="test" title="test"/></a>
+ <a class="btn" role="button"/>
+ <i class="fa fa-check"/> Test icon
+ <i class="fa fa-check"/>
+ </group>
+ </page>
+ </notebook>
+ <div role="dialog" class="modal">
+ <header class="modal-header"/>
+ <main class="modal-body"/>
+ <i class="fa fa-check"/> <span>Test</span>
+ <footer class="modal-footer"/>
+ </div>
+ <div class="tab-pane" role="tabpanel"/>
+ <a data-toggle="tab" role="tab" aria-selected="true" aria-controls="test"/>
+ <div class="nav-tabs" role="tablist"/>
+ <div class="alert alert-success" role="alert"/>
+ <div class="alert alert-success" role="alertdialog"/>
+ <div class="alert alert-success" role="status"/>
+</form>
+''')).getroot()
+
+invalid_graph = etree.parse(io.BytesIO(b'''\
+<graph>
+ <label/>
+ <group>
+ <div>
+ <field></field>
+ <field></field>
+ </div>
+ </group>
+</graph>
+''')).getroot()
+
+valid_graph = etree.parse(io.BytesIO(b'''\
+<graph string="">
+ <field name=""></field>
+ <field name=""></field>
+</graph>
+''')).getroot()
+
+invalid_tree = etree.parse(io.BytesIO(b'''\
+<tree>
+ <group>
+ <div>
+ <field></field>
+ <field></field>
+ </div>
+ </group>
+</tree>
+''')).getroot()
+
+valid_tree = etree.parse(io.BytesIO(b'''\
+<tree string="">
+ <field name=""></field>
+ <field name=""></field>
+ <button/>
+ <field name=""></field>
+</tree>
+''')).getroot()
+
+
+class TestViewValidation(BaseCase):
+ """ Test the view validation code (but not the views themselves). """
+
+ def test_page_validation(self):
+ assert not valid_page_in_book(invalid_form)
+ assert valid_page_in_book(valid_form)
+
+ def test_all_field_validation(self):
+ assert not valid_att_in_field(invalid_form)
+ assert valid_att_in_field(valid_form)
+
+ def test_all_label_validation(self):
+ assert not valid_att_in_label(invalid_form)
+ assert valid_att_in_label(valid_form)
+
+ def test_form_string_validation(self):
+ assert valid_att_in_form(valid_form)
+
+ def test_graph_validation(self):
+ assert not valid_field_in_graph(invalid_graph)
+ assert valid_field_in_graph(valid_graph)
+
+ def test_tree_validation(self):
+ assert not valid_field_in_tree(invalid_tree)
+ assert valid_field_in_tree(valid_tree)
+
+ def test_colspan_datatype_validation(self):
+ assert not valid_type_in_colspan(invalid_form)
+ assert valid_type_in_colspan(valid_form)
+
+ def test_col_datatype_validation(self):
+ assert not valid_type_in_col(invalid_form)
+ assert valid_type_in_col(valid_form)
+
+ def test_a11y_validation(self):
+ assert valid_alternative_image_text(invalid_form) == "Warning"
+ assert valid_alternative_image_text(valid_form) is True
+ assert valid_simili_button(invalid_form) == "Warning"
+ assert valid_simili_button(valid_form) is True
+ assert valid_dialog(invalid_form) == "Warning"
+ assert valid_dialog(valid_form) is True
+ assert valid_simili_dropdown(invalid_form) == "Warning"
+ assert valid_simili_dropdown(valid_form) is True
+ assert valid_simili_progressbar(invalid_form) == "Warning"
+ assert valid_simili_progressbar(valid_form) is True
+ assert valid_simili_tabpanel(invalid_form) == "Warning"
+ assert valid_simili_tabpanel(valid_form) is True
+ assert valid_simili_tablist(invalid_form) == "Warning"
+ assert valid_simili_tablist(valid_form) is True
+ assert valid_simili_tab(invalid_form) == "Warning"
+ assert valid_simili_tab(valid_form) is True
+ assert valid_focusable_button(invalid_form) == "Warning"
+ assert valid_focusable_button(valid_form) is True
+ assert valid_prohibited_none_role(invalid_form) == "Warning"
+ assert valid_prohibited_none_role(valid_form) is True
+ assert valid_alerts(invalid_form) == "Warning"
+ assert valid_alerts(valid_form) is True
diff --git a/odoo/addons/base/views/ir_actions_views.xml b/odoo/addons/base/views/ir_actions_views.xml
index 65b141cf0c3..3a924e016f9 100644
--- a/odoo/addons/base/views/ir_actions_views.xml
+++ b/odoo/addons/base/views/ir_actions_views.xml
@@ -399,7 +399,7 @@ env['res.partner'].create({'name': partner_name})
<button name="action_launch" states="open" string="Launch" type="object" icon="fa-cogs" help="Launch Configuration Wizard"/>
<button name="action_open" states="done"
string="Todo" type="object" help="Set as Todo"
- icon="fa-exchange"/>
+ icon="fa-exchange-alt"/>
</tree>
</field>
</record>
@@ -415,7 +415,7 @@ env['res.partner'].create({'name': partner_name})
help="Launch Configuration Wizard"/>
<button name="action_open" states="done"
string="Set as Todo" type="object"
- icon="fa-exchange" class="oe_highlight"/>
+ icon="fa-exchange-alt" class="oe_highlight"/>
<field name="state" widget="statusbar" statusbar_visible="open,done" nolabel="1" readonly="1" />
</header>
<sheet>
diff --git a/odoo/addons/base/views/ir_mail_server_views.xml b/odoo/addons/base/views/ir_mail_server_views.xml
index 2d795a82f90..98fa1c2eb7d 100644
--- a/odoo/addons/base/views/ir_mail_server_views.xml
+++ b/odoo/addons/base/views/ir_mail_server_views.xml
@@ -19,7 +19,7 @@
<field name="smtp_encryption"/>
<field name="smtp_user"/>
<field name="smtp_pass" password="True"/>
- <button name="test_smtp_connection" type="object" string="Test Connection" icon="fa-television"/>
+ <button name="test_smtp_connection" type="object" string="Test Connection" icon="fa-tv"/>
</group>
</sheet>
</form>
diff --git a/odoo/addons/base/views/ir_qweb_widget_templates.xml b/odoo/addons/base/views/ir_qweb_widget_templates.xml
index 470ef1482aa..608e42413cc 100644
--- a/odoo/addons/base/views/ir_qweb_widget_templates.xml
+++ b/odoo/addons/base/views/ir_qweb_widget_templates.xml
@@ -22,11 +22,11 @@
</t>
<div itemprop="address" itemscope="itemscope" itemtype="http://schema.org/PostalAddress">
<div t-if="address and 'address' in fields" class="d-flex align-items-baseline">
- <i t-if="not options.get('no_marker')" class="fa fa-map-marker fa-fw" role="img" aria-label="Address" title="Address"/>
+ <i t-if="not options.get('no_marker')" class="fas fa-map-marker-alt fa-fw" role="img" aria-label="Address" title="Address"/>
<span class="w-100 o_force_ltr" itemprop="streetAddress" t-raw="address.replace('\n', options.get('no_tag_br') and ', ' or ('&lt;br/&gt;%s' % ('' if options.get('no_marker') else '')))"/>
</div>
<div t-if="city and 'city' in fields" class="d-flex align-items-baseline">
- <i t-if="not options.get('no_marker')" class="fa fa-map-marker fa-fw" role="img" aria-label="Address" title="Address"/>
+ <i t-if="not options.get('no_marker')" class="fas fa-map-marker-alt fa-fw" role="img" aria-label="Address" title="Address"/>
<span class="o_force_ltr">
<div>
<span itemprop="addressLocality" t-esc="city"/>,
@@ -35,13 +35,13 @@
</span>
</div>
<div t-if="phone and 'phone' in fields"><i t-if="not options.get('no_marker') or options.get('phone_icons')" class='fa fa-phone fa-fw' role="img" aria-label="Phone" title="Phone"/> <span class="o_force_ltr" itemprop="telephone" t-esc="phone"/></div>
- <div t-if="mobile and 'mobile' in fields"><i t-if="not options.get('no_marker') or options.get('phone_icons')" class='fa fa-mobile fa-fw' role="img" aria-label="Mobile" title="Mobile"/> <span class="o_force_ltr" itemprop="telephone" t-esc="mobile"/></div>
- <div t-if="fax and 'fax' in fields"><i t-if="not options.get('no_marker') or options.get('phone_icons')" class='fa fa-fax fa-fw' role="img" aria-label="Fax" title="Fax"/> <span class="o_force_ltr" itemprop="faxNumber" t-esc="fax"/></div>
+ <div t-if="mobile and 'mobile' in fields"><i t-if="not options.get('no_marker') or options.get('phone_icons')" class='fas fa-mobile-alt fa-fw' role="img" aria-label="Mobile" title="Mobile"/> <span class="o_force_ltr" itemprop="telephone" t-esc="mobile"/></div>
+ <div t-if="fax and 'fax' in fields"><i t-if="not options.get('no_marker') or options.get('phone_icons')" class='fab fa-fax fa-fw' role="img" aria-label="Fax" title="Fax"/> <span class="o_force_ltr" itemprop="faxNumber" t-esc="fax"/></div>
<div t-if="website and 'website' in fields">
- <i t-if="not options.get('no_marker')" class='fa fa-globe' role="img" aria-label="Website" title="Website"/>
+ <i t-if="not options.get('no_marker')" class='fa fa-globe-americas' role="img" aria-label="Website" title="Website"/>
<a t-att-href="website and '%s%s' % ('http://' if '://' not in website else '',website)"><span itemprop="website" t-esc="website"/></a>
</div>
- <div t-if="email and 'email' in fields"><i t-if="not options.get('no_marker')" class='fa fa-envelope fa-fw' role="img" aria-label="Email" title="Email"/> <span itemprop="email" t-esc="email"/></div>
+ <div t-if="email and 'email' in fields"><i t-if="not options.get('no_marker')" class='far fa-envelope fa-fw' role="img" aria-label="Email" title="Email"/> <span itemprop="email" t-esc="email"/></div>
</div>
<t t-if="object.country_id and object.country_id.name_position == 'after'">
<t t-call="base.contact_name"/>
diff --git a/odoo/addons/base/views/res_company_views.xml b/odoo/addons/base/views/res_company_views.xml
index 93f739c2766..0d6e18ad092 100644
--- a/odoo/addons/base/views/res_company_views.xml
+++ b/odoo/addons/base/views/res_company_views.xml
@@ -71,7 +71,7 @@
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
<div t-attf-class="#{!selection_mode ? 'text-center' : ''}">
- <i class="fa fa-building" role="img" aria-label="Enterprise" title="Enterprise"></i> <strong><field name="name"/></strong>
+ <i class="far fa-building" role="img" aria-label="Enterprise" title="Enterprise"></i> <strong><field name="name"/></strong>
</div>
<hr class="mt4 mb4"/>
<div class="row" t-if="!selection_mode">
diff --git a/odoo/addons/base/views/res_currency_views.xml b/odoo/addons/base/views/res_currency_views.xml
index bb7c987160e..6cf4ccdd378 100644
--- a/odoo/addons/base/views/res_currency_views.xml
+++ b/odoo/addons/base/views/res_currency_views.xml
@@ -120,7 +120,7 @@
<sheet>
<div class="oe_button_box" name="button_box">
<button class="oe_stat_button" string="Rates" type="action" name="%(act_view_currency_rates)d"
- icon="fa-money" widget="statinfo" attrs="{'invisible': [('active', '=', False)]}"/>
+ icon="fa-money-bill-alt" widget="statinfo" attrs="{'invisible': [('active', '=', False)]}"/>
</div>
<group>
<group>
diff --git a/odoo/addons/base/views/res_lang_views.xml b/odoo/addons/base/views/res_lang_views.xml
index 483f2c1879f..41250f9364e 100644
--- a/odoo/addons/base/views/res_lang_views.xml
+++ b/odoo/addons/base/views/res_lang_views.xml
@@ -15,7 +15,7 @@
<button name="%(base.action_view_base_language_install)d"
string="Activate Language and Update Translations"
type="action"
- icon="fa-refresh"/>
+ icon="fa-sync"/>
</tree>
</field>
</record>
@@ -31,7 +31,7 @@
name="%(base.action_view_base_language_install)d"
type="action"
class="oe_stat_button"
- icon="fa-refresh" />
+ icon="fa-sync" />
</div>
<div class="oe_title">
<label for="name" class="oe_edit_only"/>
diff --git a/odoo/addons/base/views/res_partner_views.xml b/odoo/addons/base/views/res_partner_views.xml
index 0c9071d2d60..d65d82f962e 100644
--- a/odoo/addons/base/views/res_partner_views.xml
+++ b/odoo/addons/base/views/res_partner_views.xml
@@ -276,7 +276,7 @@
<button
type="action"
name="%(base.res_lang_act_window)d"
- class="btn-sm btn-link mb4 fa fa-globe"
+ class="btn-sm btn-link mb4 fa fa-globe-americas"
aria-label="More languages"
groups="base.group_system"
title="More languages"
diff --git a/odoo/addons/base/views/res_users_views.xml b/odoo/addons/base/views/res_users_views.xml
index 98d8542e96d..45ae154d492 100644
--- a/odoo/addons/base/views/res_users_views.xml
+++ b/odoo/addons/base/views/res_users_views.xml
@@ -220,7 +220,7 @@
<button
type="action"
name="%(base.res_lang_act_window)d"
- class="btn-sm btn-link mb4 fa fa-globe"
+ class="btn-sm btn-link mb4 fa fa-globe-americas"
aria-label="More languages"
title="More languages"/>
</div>
@@ -273,13 +273,13 @@
</div>
<div class="oe_kanban_details">
<ul>
- <li class="text-success float-right mb4" t-if="record.active.raw_value"><i class="fa fa-circle" role="img" aria-label="Ok" title="Ok"></i></li>
- <li class="text-danger float-right mb4" t-if="!record.active.raw_value"><i class="fa fa-circle" role="img" aria-label="Invalid" title="Invalid"></i></li>
+ <li class="text-success float-right mb4" t-if="record.active.raw_value"><i class="far fa-circle" role="img" aria-label="Ok" title="Ok"></i></li>
+ <li class="text-danger float-right mb4" t-if="!record.active.raw_value"><i class="far fa-circle" role="img" aria-label="Invalid" title="Invalid"></i></li>
<li class="mb4">
<strong><field name="name"/></strong>
</li>
<li class="badge badge-pill float-right mb4" t-if="record.lang.raw_value"><field name="lang"/></li>
- <li class="mb4" t-if="record.login.raw_value" title="Login"><i class="fa fa-envelope" role="img" aria-label="Login"/> <field name="login"/></li>
+ <li class="mb4" t-if="record.login.raw_value" title="Login"><i class="far fa-envelope" role="img" aria-label="Login"/> <field name="login"/></li>
</ul>
</div>
</div>
@@ -358,7 +358,7 @@
<button
type="action"
name="%(base.res_lang_act_window)d"
- class="btn-sm btn-link mb4 fa fa-globe"
+ class="btn-sm btn-link mb4 fa fa-globe-americas"
aria-label="More languages"
groups="base.group_system"
title="More languages"
diff --git a/odoo/addons/base/wizard/base_document_layout_views.xml b/odoo/addons/base/wizard/base_document_layout_views.xml
index 53f76eb34be..8ae5f3778c3 100644
--- a/odoo/addons/base/wizard/base_document_layout_views.xml
+++ b/odoo/addons/base/wizard/base_document_layout_views.xml
@@ -20,7 +20,7 @@
<field name="primary_color" widget="color" class="mb-4" />
<field name="secondary_color" widget="color" class="mb-4" />
<button class="btn btn-link" title="Reset to logo colors" attrs="{'invisible': [('custom_colors', '=', False)]}">
- <label for="custom_colors" class="fa fa-refresh mb-4" string="" />
+ <label for="custom_colors" class="fas fa-sync mb-4" string="" />
</button>
</div>
<field name="font" widget="font" class="mb-4" />
diff --git a/odoo/addons/base/wizard/base_module_update_views.xml b/odoo/addons/base/wizard/base_module_update_views.xml
index 2b1b8a00ffb..f1b252c1dcd 100644
--- a/odoo/addons/base/wizard/base_module_update_views.xml
+++ b/odoo/addons/base/wizard/base_module_update_views.xml
@@ -45,7 +45,7 @@
groups="base.group_no_one"
parent="menu_management"
sequence="40"
- icon="fa-exchange"/>
+ icon="fa-exchange-alt"/>
</data>
</odoo>
diff --git a/odoo/addons/test_exceptions/view.xml b/odoo/addons/test_exceptions/view.xml
index 0e8f96a7c91..72c047e8da8 100644
--- a/odoo/addons/test_exceptions/view.xml
+++ b/odoo/addons/test_exceptions/view.xml
@@ -11,92 +11,92 @@
<separator/>
<group>
<div>
- <button name="generate_except_osv" string="except_osv" type="object" icon="fa-refresh text-primary" />
+ <button name="generate_except_osv" string="except_osv" type="object" icon="fa-sync text-primary" />
<label for="generate_except_osv" string="Warning-description"/>
</div>
<div>
- <button name="generate_except_orm" string="except_orm" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_except_orm" string="except_orm" type="object" icon="fa-sync text-primary"/>
<label for="generate_except_orm" string="Warning-description"/>
</div>
<div>
- <button name="generate_warning" string="Warning" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_warning" string="Warning" type="object" icon="fa-sync text-primary"/>
<label for="generate_warning" string="Warning-description"/>
</div>
<div>
- <button name="generate_redirect_warning" string="RedirectWarning" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_redirect_warning" string="RedirectWarning" type="object" icon="fa-sync text-primary"/>
<label for="generate_redirect_warning" string="Warning-description-redirection button"/>
</div>
<div>
- <button name="generate_access_denied" string="AccessDenied" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_access_denied" string="AccessDenied" type="object" icon="fa-sync text-primary"/>
<label for="generate_access_denied" string="Access denied-traceback"/>
</div>
<div>
- <button name="generate_access_error" string="AccessError" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_access_error" string="AccessError" type="object" icon="fa-sync text-primary"/>
<label for="generate_access_error" string="Access rights error-description" class="oe_inline"/>
</div>
<div>
- <button name="generate_exc_access_denied" string="Exc AccessDenied" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_exc_access_denied" string="Exc AccessDenied" type="object" icon="fa-sync text-primary"/>
<label for="generate_exc_access_denied" string="Access denied-traceback"/>
</div>
<div>
- <button name="generate_undefined" string="Undefined" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_undefined" string="Undefined" type="object" icon="fa-sync text-primary"/>
<label for="generate_undefined" string="Server error-traceback"/>
</div>
<div>
- <button name="generate_user_error" string="UserError" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_user_error" string="UserError" type="object" icon="fa-sync text-primary"/>
<label for="generate_user_error" string="Warning-description"/>
</div>
<div>
- <button name="generate_missing_error" string="MissingError" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_missing_error" string="MissingError" type="object" icon="fa-sync text-primary"/>
<label for="generate_missing_error" string="Missing Error-description"/>
</div>
<div>
- <button name="generate_validation_error" string="ValidationError" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_validation_error" string="ValidationError" type="object" icon="fa-sync text-primary"/>
<label for="generate_validation_error" string="Validation Error-description"/>
</div>
<div>
- <button name="generate_except_osv_safe_eval" string="except_osv*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_except_osv_safe_eval" string="except_osv*" type="object" icon="fa-sync text-primary"/>
<label for="generate_except_osv_safe_eval" string="Warning-description"/>
</div>
<div>
- <button name="generate_except_orm_safe_eval" string="except_orm*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_except_orm_safe_eval" string="except_orm*" type="object" icon="fa-sync text-primary"/>
<label for="generate_except_orm_safe_eval" string="Warning-description"/>
</div>
<div>
- <button name="generate_warning_safe_eval" string="Warning*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_warning_safe_eval" string="Warning*" type="object" icon="fa-sync text-primary"/>
<label for="generate_warning_safe_eval" string="Warning-description"/>
</div>
<div>
- <button name="generate_redirect_warning_safe_eval" string="RedirectWarning*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_redirect_warning_safe_eval" string="RedirectWarning*" type="object" icon="fa-sync text-primary"/>
<label for="generate_redirect_warning_safe_eval" string="Warning-description-redirection button" class="oe_inline"/>
</div>
<div>
- <button name="generate_access_denied_safe_eval" string="AccessDenied*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_access_denied_safe_eval" string="AccessDenied*" type="object" icon="fa-sync text-primary"/>
<label for="generate_access_denied_safe_eval" string="Access denied-traceback"/>
</div>
<div>
- <button name="generate_access_error_safe_eval" string="AccessError*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_access_error_safe_eval" string="AccessError*" type="object" icon="fa-sync text-primary"/>
<label for="generate_access_error_safe_eval" string="Access rights error-description"/>
</div>
<div>
- <button name="generate_exc_access_denied_safe_eval" string="Exc AccessDenied*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_exc_access_denied_safe_eval" string="Exc AccessDenied*" type="object" icon="fa-sync text-primary"/>
<label for="generate_exc_access_denied_safe_eval" string="Access denied-traceback"/>
</div>
<div>
- <button name="generate_undefined_safe_eval" string="Undefined*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_undefined_safe_eval" string="Undefined*" type="object" icon="fa-sync text-primary"/>
<label for="generate_undefined_safe_eval" string="Server error-traceback"/>
</div>
<div>
- <button name="generate_user_error_safe_eval" string="UserError*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_user_error_safe_eval" string="UserError*" type="object" icon="fa-sync text-primary"/>
<label for="generate_user_error_safe_eval" string="Warning-description"/>
</div>
<div>
- <button name="generate_missing_error_safe_eval" string="MissingError*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_missing_error_safe_eval" string="MissingError*" type="object" icon="fa-sync text-primary"/>
<label for="generate_missing_error_safe_eval" string="Missing Error-description"/>
</div>
<div>
- <button name="generate_validation_error_safe_eval" string="ValidationError*" type="object" icon="fa-refresh text-primary"/>
+ <button name="generate_validation_error_safe_eval" string="ValidationError*" type="object" icon="fa-sync text-primary"/>
<label for="generate_validation_error_safe_eval" string="Validation Error-description"/>
</div>
</group>