Files
odoo_source/odoo/addons/base/views/ir_sequence_views.xml
T
kujiu 9de1bc0eef [IMP] Improve compatibility with screen readers (accessibility) (#24574)
Today, Odoo is really tricky to use without seeing the screen, it must be improved to be usable.

This PR forbid to use labels without a "for" attribute, add some title, rule and aria attributes in HTML. With that, Odoo will be fully usable with a screen reader.


* [IMP] Labels must have a for attribute. Improve accessibility.
* [IMP] Better error message when trying to read a missing cached value
* [FIX] Add some aria-label and title attributes for screen readers.
* [FIX] Template name is not included in the error message in case of SyntaxError in QWeb
* [FIX] Improve the Tour failed at step error message to be more explicit.
* [IMP] Add aria-labels
* [FIX] Add missing aria-label on failing test
* [IMP] aria-hidden means hidden. Fix all bad aria-hidden and hide aria-hidden for all.
* [IMP] Color names on kanban views and many2many tags
* [IMP] Add some checks on views for accessibility.
* [IMP] Add `alt` attribute on `img` tags.
* [IMP] Add aria-label and title on non-described icons
* [IMP] Add button role to widgets with btn class
* [IMP] Translate aria and formatted attributes.
* [IMP] Remove wrong aria-labelledby
* [IMP] Add menu role on dropdowns
* [IMP] Buttons must be focusable
* [IMP] Add aria attributes on progress bars
* [IMP] Improve accessibility of basic widgets
* [IMP] Change main layout to more semantic tags
* [IMP] Add menuitem role when missing
* [IMP] Remove wrong role='presentation'
* [IMP] Improve accessibility of tab panels
* [IMP] Add aria-invalid on invalid fields
* [IMP] Add aria-sort on ordered columns
* [IMP] Add role on alerts
* [IMP] Use dialog role, header, main and footer tags for modals
* [IMP] Add labels on o_status
* [IMP] Improve accessibility of kanban view with feeds and articles
* [IMP] Add alerts in case of new messages
* [IMP] Add widget, navigation or img role to aria-labelled items
2018-06-22 21:22:21 +02:00

108 lines
5.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- Sequences -->
<record id="sequence_view" model="ir.ui.view">
<field name="model">ir.sequence</field>
<field name="arch" type="xml">
<form string="Sequences">
<sheet>
<group>
<group>
<field name="name"/>
<field name="implementation"/>
</group>
<group>
<field name="code"/>
<field name="active"/>
<field name="company_id" groups="base.group_multi_company"/>
</group>
</group>
<notebook>
<page string="Sequence">
<group>
<group>
<field name="prefix"/>
<field name="suffix"/>
<field name="use_date_range"/>
</group>
<group>
<field name="padding"/>
<field name="number_increment"/>
<field name="number_next_actual" string="Next Number" attrs="{'invisible': [('use_date_range', '=', True)]}"/>
</group>
</group>
<field name="date_range_ids" attrs="{'invisible': [('use_date_range', '=', False)]}">
<tree string="Sequences" editable="top">
<field name="date_from"/>
<field name="date_to"/>
<field name="number_next_actual" string="Next Number"/>
</tree>
</field>
<group col="3" string="Legend (for prefix, suffix)">
<group>
<span colspan="2">Current Year with Century: %%(year)s</span>
<span colspan="2">Current Year without Century: %%(y)s</span>
<span colspan="2">Month: %%(month)s</span>
<span colspan="2">Day: %%(day)s</span>
</group>
<group>
<span colspan="2">Day of the Year: %%(doy)s</span>
<span colspan="2">Week of the Year: %%(woy)s</span>
<span colspan="2">Day of the Week (0:Monday): %%(weekday)s</span>
</group>
<group>
<span colspan="2">Hour 00->24: %%(h24)s</span>
<span colspan="2">Hour 00->12: %%(h12)s</span>
<span colspan="2">Minute: %%(min)s</span>
<span colspan="2">Second: %%(sec)s</span>
</group>
</group>
<group attrs="{'invisible': [('use_date_range', '=', False)]}">
<div>
When subsequences per date range are used, you can prefix variables with 'range_'
to use the beginning of the range instead of the current date, e.g. %%(range_year)s instead of %%(year)s.
</div>
</group>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="sequence_view_tree" model="ir.ui.view">
<field name="model">ir.sequence</field>
<field name="arch" type="xml">
<tree string="Sequences">
<field name="code"/>
<field name="name"/>
<field name="prefix"/>
<field name="padding"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="number_next_actual" string="Next Number"/>
<field name="number_increment"/>
<field name="implementation"/>
</tree>
</field>
</record>
<record id="view_sequence_search" model="ir.ui.view">
<field name="model">ir.sequence</field>
<field name="arch" type="xml">
<search string="Sequences">
<field name="name" string="Sequence"/>
<field name="code"/>
<field name="company_id" groups="base.group_multi_company"/>
</search>
</field>
</record>
<record id="ir_sequence_form" model="ir.actions.act_window">
<field name="name">Sequences</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">ir.sequence</field>
<field name="view_type">form</field>
<field name="view_id" ref="sequence_view_tree"/>
<field name="context">{'active_test': False}</field>
</record>
<menuitem action="ir_sequence_form" id="menu_ir_sequence_form" parent="next_id_5"/>
</odoo>