contacts icon indicating copy to clipboard operation
contacts copied to clipboard

Organization chart : When a manager's contact file is deleted, it crashes the organization chart display

Open Jerome-Herbinet opened this issue 3 years ago • 3 comments

Describe the bug

While testing this new feature, I deleted the manager of Dark Sidious and then the chart cannot be displayed anymore. To make it appear again, I have to delete de "Manager" field entry in the Dark Sidious contact file.

2022-10-19_11-51

Steps to reproduce

  1. Create an organization chart
  2. Delete a contact which is manager of another contact
  3. See that you cannot display the chart anymore
  4. Delete the manager field entry in the contact file which was underneath the previously deleted contact in the chart
  5. See that the chart can be displayed again

Expected behavior

When a "manager" contact is deleted, all dependencies should be deleted in order to avoid chart explosion.

Actual behavior

It crashes because of remaining broken dependencies.

Contact version

5.0.1

Operating system

CentOS

PHP engine version

PHP 8.0

Web server

Nginx

Database

MySQL

Additional info

No response

Jerome-Herbinet avatar Oct 19 '22 09:10 Jerome-Herbinet

@bkrith any idea how we could solve this? Ignore all non-existent references when we build the graph?

Additionally, at contact deletion from within this app, we could scan all other contacts of the same address book and delete any references.

ChristophWurst avatar Oct 19 '22 11:10 ChristophWurst

I will check it.. i think the issue is that we scan for the relationships but we don't check if the manager exists.. maybe on deletion we need to scan contacts and make null manager deleted id references.

bkrith avatar Oct 23 '22 08:10 bkrith

@ChristophWurst I have a PR for this please review it when you have time. (#3077)

bkrith avatar Oct 23 '22 11:10 bkrith

Tested on NC 29 30 31. Seems to fixed. Not tested on earlier versions.

Jerome-Herbinet avatar Mar 25 '25 09:03 Jerome-Herbinet