From f009f19fc5610efe6f02830b6b8953027733b1d1 Mon Sep 17 00:00:00 2001 From: "Xavier Bol (xbo)" Date: Wed, 18 Oct 2023 09:20:49 +0200 Subject: [PATCH] [FIX] web_hierarchy,hr_org_chart: remove highlight on focus record Before this commit, the highlight added on a focus record, that styling added was useful when we displayed only the first result in the search to be able to build a tree but since now all the records found with the search made by the user are shown without building a tree if it is not possible then it is no longer needed to highlight the records found. This commit removes the highlight added on the focused record, the one found by the search since it is not really needed. task-3556262 closes odoo/odoo#138803 Signed-off-by: Sofie Gvaladze (sgv) --- addons/hr_org_chart/tests/test_employee.py | 6 +---- addons/web_hierarchy/models/models.py | 4 +--- .../static/src/hierarchy_card.scss | 4 ---- .../static/src/hierarchy_card.xml | 6 ++--- .../static/src/hierarchy_model.js | 22 +------------------ .../static/tests/hierarchy_view_tests.js | 20 +++++++---------- 6 files changed, 13 insertions(+), 49 deletions(-) diff --git a/addons/hr_org_chart/tests/test_employee.py b/addons/hr_org_chart/tests/test_employee.py index fc9f86c9468..819b903512c 100644 --- a/addons/hr_org_chart/tests/test_employee.py +++ b/addons/hr_org_chart/tests/test_employee.py @@ -88,8 +88,6 @@ class TestEmployee(TestHrCommon): self.assertEqual(len(result), 3) for emp in employees: emp_dict = {'id': emp.id, 'parent_id': emp.parent_id.id and (emp.parent_id.id, emp.parent_id.display_name)} - if emp == self.employee_georges: - emp_dict['__focus__'] = True self.assertIn(emp_dict, result) self.employee_pierre.parent_id = self.employee_georges @@ -97,14 +95,12 @@ class TestEmployee(TestHrCommon): self.assertEqual(len(result), 3) for emp in employees: emp_dict = {'id': emp.id, 'parent_id': emp.parent_id.id and (emp.parent_id.id, emp.parent_id.display_name)} - if emp == self.employee_georges: - emp_dict['__focus__'] = True self.assertIn(emp_dict, result) result = HrEmployee.hierarchy_read([('id', '=', self.employee_pierre.id)], ['id'], 'parent_id') self.assertEqual(len(result), 2) self.assertIn( - {'id': self.employee_pierre.id, 'parent_id': (self.employee_georges.id, self.employee_georges.name), '__focus__': True}, + {'id': self.employee_pierre.id, 'parent_id': (self.employee_georges.id, self.employee_georges.name)}, result ) self.assertIn( diff --git a/addons/web_hierarchy/models/models.py b/addons/web_hierarchy/models/models.py index e4260f83fac..aa8d2db4ee6 100644 --- a/addons/web_hierarchy/models/models.py +++ b/addons/web_hierarchy/models/models.py @@ -35,10 +35,8 @@ class Base(models.AbstractModel): ) } result = records.read(fields) - if children_ids_per_record_id or focus_record: + if children_ids_per_record_id: for record_data in result: if record_data['id'] in children_ids_per_record_id: record_data['__child_ids__'] = children_ids_per_record_id[record_data['id']] - if record_data['id'] == focus_record.id: - record_data['__focus__'] = True return result diff --git a/addons/web_hierarchy/static/src/hierarchy_card.scss b/addons/web_hierarchy/static/src/hierarchy_card.scss index f9d3ce1f18b..d06aa5ed725 100644 --- a/addons/web_hierarchy/static/src/hierarchy_card.scss +++ b/addons/web_hierarchy/static/src/hierarchy_card.scss @@ -33,10 +33,6 @@ cursor: pointer; } - &.o_hierarchy_node_highlighted { - border: 3px solid green; - } - .o_hierarchy_node_header { height: 30px; diff --git a/addons/web_hierarchy/static/src/hierarchy_card.xml b/addons/web_hierarchy/static/src/hierarchy_card.xml index 8c118304dc6..12da00fecb2 100644 --- a/addons/web_hierarchy/static/src/hierarchy_card.xml +++ b/addons/web_hierarchy/static/src/hierarchy_card.xml @@ -12,11 +12,9 @@ -
{ assert.containsOnce(target, ".o_hierarchy_line_right"); assert.containsN(target, ".o_hierarchy_node_container", 3); assert.containsN(target, ".o_hierarchy_node", 3); - assert.containsNone(target, ".o_hierarchy_node_highlighted"); assert.containsN(target, ".o_hierarchy_node_button", 2); assert.containsOnce(target, ".o_hierarchy_node_button.btn-primary"); assert.strictEqual(target.querySelector(".o_hierarchy_node_button.btn-primary").textContent.trim(), "Unfold 1"); @@ -251,8 +250,10 @@ QUnit.module("Views", (hooks) => { assert.containsN(target, ".o_hierarchy_row", 2); assert.containsN(target, ".o_hierarchy_node", 2); assert.containsN(target, ".o_hierarchy_separator", 1); - assert.containsOnce(target, ".o_hierarchy_node_highlighted"); - assert.strictEqual(target.querySelector(".o_hierarchy_node_highlighted").textContent.trim(), "LouisJosephine"); + assert.deepEqual( + getNodesTextContent(target.querySelectorAll(".o_hierarchy_node_content")), + ["JosephineAlbert", "LouisJosephine"], + ); }); QUnit.test("search record in hierarchy view with child field name defined in the arch", async function (assert) { @@ -267,8 +268,10 @@ QUnit.module("Views", (hooks) => { assert.containsN(target, ".o_hierarchy_row", 2); assert.containsN(target, ".o_hierarchy_node", 2); assert.containsN(target, ".o_hierarchy_separator", 1); - assert.containsOnce(target, ".o_hierarchy_node_highlighted"); - assert.strictEqual(target.querySelector(".o_hierarchy_node_highlighted").textContent.trim(), "LouisJosephine"); + assert.deepEqual( + getNodesTextContent(target.querySelectorAll(".o_hierarchy_node_content")), + ["JosephineAlbert", "LouisJosephine"], + ); }); QUnit.test("fetch parent record", async function (assert) { @@ -282,8 +285,6 @@ QUnit.module("Views", (hooks) => { assert.containsN(target, ".o_hierarchy_row", 2); assert.containsN(target, ".o_hierarchy_node", 2); assert.containsN(target, ".o_hierarchy_separator", 1); - assert.containsOnce(target, ".o_hierarchy_node_highlighted"); - assert.strictEqual(target.querySelector(".o_hierarchy_node_highlighted").textContent.trim(), "LouisJosephine"); let rows = target.querySelectorAll(".o_hierarchy_row"); let row = rows[0]; assert.containsOnce(row, ".o_hierarchy_node"); @@ -300,8 +301,6 @@ QUnit.module("Views", (hooks) => { assert.containsN(target, ".o_hierarchy_row", 3); assert.containsN(target, ".o_hierarchy_node", 4); assert.containsN(target, ".o_hierarchy_separator", 2); - assert.containsOnce(target, ".o_hierarchy_node_highlighted"); - assert.strictEqual(target.querySelector(".o_hierarchy_node_highlighted").textContent.trim(), "LouisJosephine"); rows = target.querySelectorAll(".o_hierarchy_row"); row = rows[0]; assert.containsOnce(row, ".o_hierarchy_node"); @@ -682,8 +681,5 @@ QUnit.module("Views", (hooks) => { ["JosephineAlbert", "LisaJosephine", "LouisJosephine"] ); assert.containsOnce(target, ".o_hierarchy_node_container button[name=hierarchy_search_parent_node]"); - assert.containsOnce(target, ".o_hierarchy_node_highlighted"); - assert.containsOnce(target, ".o_hierarchy_node.o_hierarchy_node_highlighted"); - assert.strictEqual(target.querySelector(".o_hierarchy_node_highlighted .o_hierarchy_node_content").textContent, "LisaJosephine"); }); });