Rothamsted-Ecoinformatics / farm_rothamsted

Custom farmOS features for Rothamsted Research.
GNU General Public License v2.0
6 stars 1 forks source link

Rothamsted module: Add 'bin' for deleted records #573

Open aislinnpearson opened 1 year ago

aislinnpearson commented 1 year ago

Because we have over a hundred users we are having problems where records and assets have been accidentally deleted. We've restricted these permissions so that only Data Admins can delete things or revert changes in issue #373 but this doesn't allow people to remove accidental errors from the system (e.g. logs which have accidentally been entered twice).

As such we were wondering if a possible solution to this is to:

  1. create a 'Status' called 'Bin' that logs can be moved to as an alternative to 'archived'
  2. Add a button at the bottom of all logs, assets, taxonomy terms and rserach entites where the 'Delete' button currenlty is and replace it with one called 'Bin' instead (the Delete and Bin version would only be visible to the Data Admin users).

We can even call it 'Trash Can' so it is in keeping with the American vernacular :)

Duplicate for #474

paul121 commented 1 year ago

cc @mstenta for ideas on this!

mstenta commented 1 year ago

This idea of "soft deletion" has come up before. @symbioquine described some ideas here: https://farmos.discourse.group/t/proposal-for-farmos-3-x-core-datamodel-improvements-immutable-quantities-soft-entity-deletion/1490

I like the idea of adding a new status, and allowing users to set that (with the help of a button in the same place as the current "Delete" button), and simply don't grant the "delete" permission so the existing option is hidden.

Perhaps we could start it as a sub-module of Rothamsted's, which adds all these elements, but do it in a way that could potentially be generalized and considered for a core/contrib farmOS module?

mstenta commented 1 year ago

Oh just remembered this too: https://farmos.discourse.group/t/ability-to-create-abandoned-logs/1636

mstenta commented 1 year ago

In that thread we landed on adding an "Abandoned" status. That could work for both assets and logs, potentially. Although it may not be perfectly intuitive for this use case ("toss it in the bin").

It feels like what we want in this case is something like "queue for deletion". And then maybe we have a special page that only shows assets/logs queued for deletion, which an admin with more permissions can review from time to time and delete the records.

aislinnpearson commented 11 months ago

Notes from 28/11/2023: