There are four states in which the visibility of initiatives is restricted. They currently behave as follows:
internal name
hidden
prepare
incoming
moderation
external name
n/a
In Vorbereitung
In Prüfung
Finale Prüfung
appears in admin interface
✓
✓
✓
✓
viewable by moderators ("staff")
✓
✓
✓
✓
moderators see filter
✓
✓
✓
viewable by users
✓
users see filter
✓
✓
viewable by public
public sees filter
✓
filter displays initiative count
✓
filter disappears if count is zero
✓
There are number of things wrong with this:
People shouldn't see filters for initiatives they can't view. Everyone sees the "Finale Prüfung" filter, but unless they're moderators, they never see any initiatives in it. With the possible exception of hidden initiatives not having a filter (even for moderators who can view them and access them through the admin interface), seeing a filter and being able to view initiatives should coincide. This identity should probably be enforced in the code by making it dependent on the same permission in both cases.
The differences between "In Prüfung" and "Finale Prüfung" seem arbitrary. The only reason I can think of why there should be any difference at all is that according to the AO the initiative is "published" after the initial moderation, which raises the question whether it can be "unpublished" during the final moderation.
There is a currently completely unrestricted state "final edit" ("Finale Überarbeitung"). Again, other than the fact that the initiative has been "published" at this point, I don't see a reason for the differences between this phase and the corresponding phase "prepare" ("In Vorbereitung").
Disabling the filter when there are no initiatives for it seems like a bad idea; in any case doing it only for one particular state seems unnecessarily confusing.
We should go through this, decide how the table should look, and implement that.
There are four states in which the visibility of initiatives is restricted. They currently behave as follows:
There are number of things wrong with this:
We should go through this, decide how the table should look, and implement that.