ArchivedProject should be removed
tompollard opened this issue · comments
The ArchivedProject
object stores information about ActiveProjects that are deleted or rejected:
There are a couple of major issues with the implementation of ArchivedProject
:
- Converting from an
ActiveProject
to an ArchivedProject is a one way process (i.e. it isn't possible to resurrect a project that has been deleted or rejected). As a result, editors will almost never "reject" a submission for fear of losing the content (see: #2116). - There are a bunch of objects (e.g. References, Authors, EditLogs) that need to point to both
ActiveProject
andArchivedProject
. Our solution is to useGenericForeignKey
s, which are difficult to work with (see: #1496).
I have mostly implemented a switch from ArchivedProject
to ActiveProject
by adding a new ARCHIVED
submission status to the ActiveProject
. In making the change, it has become clear that we don't have a clear approach for tracking events over the life of a project, so I can't see a clean way of logging the rejection or deletion of a project.