Issues

Select view

Select search mode

 

As a user I want to be able to restore a deleted Gantt chart within one week, after the Gantt chart deletion so I can easily fix the accidental chart deletion

Description

As a user I want to be able to restore a deleted Gantt chart within one week, after the Gantt chart deletion so I can easily fix the accidental chart deletion.

We can add checkbox to the existing chart delete dialog, like “[x] Allow to undelete for 7 days“ which would be “on” by default. If they want to remove right away, they will have to uncheck it.

Regarding implementation:
1. Add chart status “deleted” (in addition to our existing statuses).
2. When user deletes a chart, we set status to “deleted”, and set “updated” date to the date of deletion.
3. Deleted charts will be shown at the very bottom of the charts list. The “delete“ button for already “deleted“ charts will actually remove a chart right away. Changing chart status during 7 day period to any other status other than “deleted“ will reinstate the chart and it will never be removed.
4. We will not allow to change status manually to “deleted“, as users in that case might not understand that chart will be removed in 7 days. We’ll set this status ourselves when user clicks delete button and clicks ok for delete confirmation prompt.
5. Add method removeDeleted() on gantt service. It will remove all charts in status “deleted“ that have “updated“ date >= 7 days from now in separate thread (to avoid delays on http requests). It should also write logs that chart XX was removed after 7 days, and write updatedBy and updated date to let us analyse who and when removed.
6. Service will have private Date field (not stored anywhere, just in service) that will store the last “removeDeleted()“ run, as we’d like to run just once per day.
7. Existing chart delete method will be changed to only set status to “deleted”, set updated date to date of deletion, and will write into logs who removed the chart (we already do this when removing).
8. The remove method will be invoked from chart list and chart view servlets. Yes, it will be executed often, but date property on service will let us return from it right away if was already invoked this day.


The good thing of implementation of deleted chart via “deleted“ status is that user can easily restore chart and we don’t have to create separate UI to reinstantiate chart.

Attachments

1

Details

Assignee

Reporter

Labels

App Type

Cloud
DC

QA Passed for

Cloud
Server

Time tracking

3d 18m logged

Fix versions

Priority

Created 21 June 2023 at 07:38
Updated 31 January 2025 at 13:04

Activity

Show:

Oksana Kostolovych6 March 2024 at 14:46

Once the status of a chart is changed to Deleted, it is placed at the bottom of the chart list. The following UI issue is observed when expanding the Status dropdown menu.

Sviatoslav Dubyniak15 November 2023 at 13:25

4. We removed the confirmation prompt for deletion when it causes a change in task status and retained it for actually deleting the chart.

8. We attempt to invoke removeDeleted() every time any chart is opened, but it is actually executed once a day.

We display a warning message when a user opens a chart with the status "DELETED."

Sviatoslav Dubyniak10 November 2023 at 13:21

We need to provide information for users attempting to access the deleted chart.

Loading...