While I was trying to modify the default filters of the hr.holidays Dashboard view I made a huge mistake: I forgot I was not in a python file and I typed a # at the begining of 3 lines in order to turn them to comment... :-/
Since then, when I try to display any view of the Leave module, I get the following error message :
Uncaught TypeError: Cannot read property 'context' of undefined
http://109.100.102.64:8069/web/content/903-175f00e/web.assets_backend.js:2545 Retraçage : TypeError: Cannot read property 'context' of undefined at eval_item (http://109.100.102.64:8069/web/content/903-175f00e/web.assets_backend.js:2545:1422) at http://109.100.102.64:8069/web/content/903-175f00e/web.assets_backend.js:2545:1311 at Function._.map._.collect (http://109.100.102.64:8069/web/content/584-83b2d37/web.assets_common.js:13:270) at Class.prepare_search_inputs (http://109.100.102.64:8069/web/content/903-175f00e/web.assets_backend.js:2545:1252) at Class.start (http://109.100.102.64:8069/web/content/903-175f00e/web.assets_backend.js:2535:397) at Array.<anonymous> (http://109.100.102.64:8069/web/content/584-83b2d37/web.assets_common.js:3113:963) at Array.<anonymous> (http://109.100.102.64:8069/web/content/584-83b2d37/web.assets_common.js:547:681) at fire (http://109.100.102.64:8069/web/content/584-83b2d37/web.assets_common.js:541:299) at Object.add [as done] (http://109.100.102.64:8069/web/content/584-83b2d37/web.assets_common.js:542:467) at Array.<anonymous> (http://109.100.102.64:8069/web/content/584-83b2d37/web.assets_common.js:547:649)
By chance I kept a copy of the xml code I badly modified (remove the # char below to get the original file) :
<?xml version="1.0"?> <search string="Search Leave"> <field name="name"/> <filter domain="[('state','in',('confirm','validate1'))]" string="To Approve" name="approve"/> <filter string="Approved Leaves" domain="[('state', '=', 'validate')]" name="validated"/> <separator/> <filter name="active_types" string="Active Types" domain="[('holiday_status_id.active', '=', True)]" help="Filters only on allocations and requests that belong to an holiday type that is 'active' (active field is True)"/> <separator/> <filter string="Unread Messages" name="message_needaction" domain="[('message_needaction','=',True)]"/> <separator/> #<filter string="My Department Leaves" name="department" domain="[('department_id.manager_id.user_id', '=', uid)]" help="My Department Leaves"/> #<filter name="my_team_leaves" string="My Team Leaves" domain="[('employee_id.parent_id.user_id', '=', uid)]" groups="hr_holidays.group_hr_holidays_manager" help="Leaves of Your Team Member"/> #<separator/> <filter string="To Report in Payslip" name="gray" domain="[('payslip_status', '=', False)]" groups="hr_holidays.group_hr_holidays_manager"/> <separator/> <filter string="To Do" name="todo" domain="[('payslip_status', '=', False), ('holiday_status_id.active', '=', True)]"/> <separator/> <filter name="year" string="Current Year" domain="[('holiday_status_id.active', '=', True)]" help="Active Leaves and Allocations"/> <separator/> <filter string="My Requests" name="my_leaves" domain="[('user_id', '=', uid)]"/> <separator/> <filter name="leaves" string="Leaves" domain="[('type', '=', 'remove')]"/> <filter name="allocations" string="Allocations" domain="[('type', '=', 'add')]"/> <field name="employee_id"/> <field name="department_id"/> <field name="holiday_status_id"/> <group expand="0" string="Group By"> <filter name="group_name" string="Description" context="{'group_by':'name'}"/> <filter name="group_employee" string="Employee" context="{'group_by':'employee_id'}"/> <filter name="group_category" string="Category" context="{'group_by':'category_id'}"/> <filter string="Manager" context="{'group_by':'manager_id'}"/> <filter name="group_type" string="Type" context="{'group_by':'holiday_status_id'}"/> <separator/> <filter name="group_date_from" string="Start Month" context="{'group_by':'date_from'}"/> </group> </search>
I tried to identify this file in the odoo addons folder and I found that in the file addons/hr.holidays/views/hr_holidays_views.xml I could find this exact code without the # char.
I also made a complete search in the files of the addons folder to lookup for the "#<filter" string but I couldn't find any occurence.
For your information, I also use the following addons :
hr_holiday_exclude_special_days
hr_holidays_notify_employee_manager
hr_holidays_settings
Could you please help me correcting my mistake and make the Leave module work again ?