samvera / hyrax

Hyrax is a Ruby on Rails Engine built by the Samvera community. Hyrax provides a foundation for creating many different digital repository applications.
http://hyrax.samvera.org/
Apache License 2.0
184 stars 124 forks source link

Admin Sets should be closed for deposit by default #357

Closed mjgiarlo closed 7 years ago

mjgiarlo commented 7 years ago

Admin Sets are currently open by default, despite the fact that we've created a new role for depositing to Admin Sets. Admin Sets should instead be closed by default, with the ability for Admin Set Managers to open them up for deposit by all registered users (via some sort of widget -- design needed here -- in the new/edit forms).

Note: the Default Admin Set should remain OPEN by default, but should be able to be made closed via the above widget.

Cc: @hannahfrost @ggeisler

ggeisler commented 7 years ago

@mjgiarlo @hannahfrost Proposed design below. There's a lot of explanation but my recommendation comes down to:

Details

I'll offer a couple of alternatives for the "widget" that enables the Admin Set Manager to easily open an admin set up for deposit: a button and a checkbox. I recommend the button version, because I unchecking the checkbox duplicates the Remove button functionality that is already there and I think that has the potential for confusion (and hiding a checkbox when it is in one state seems wrong to me).

Button Version

Two scenarios: the default admin set and non-default admin sets.

Default Admin Set

There's no need for the widget in this scenario because we'll assign the Registered Users group to the Depositor role by default. The Admin Set Manager can easily revoke that decision by clicking the Remove button.

button-step2

If the Admin Set Manager does indeed remove the Registered Users group, the widget should appear as described below.

Non-Default Admin Sets

The Registered Users group is not added by default but because this could be a common goal for many admin sets, we want to make it easy and clear to the Admin Set Manager who wants to open the admin set up. So when the Registered Users group is not currently assigned to the Depositor role, we show a button:

button-step1

(Note that this mockup assumes that ticket #429 is completed -- that's where the No depositors have been added to this administrative set line comes from -- but I don't think that ticket is a blocker for this one; they can be done in either order.)

We would show the button in the same way for the default admin set if the Admin Set Manager has removed the Registered Users group.

I think we still want to show the button if other users have been added as Depositors:

button-step3

But when the Admin Set Manager clicks this button to add the Registered Users group to the Depositor role, I think we should then hide the button, since it has no purpose in that state.

button-step2

Alternative Widget

If we went with a checkbox instead of a button, and didn't hide it, it would look like this:

checkbox-step1

checkbox-step2

checkbox-step3

With that approach, the checkbox is acting as a toggle, which seems clear enough. But it also is potentially confusing because unchecking the checkbox does the same thing as the Remove button in the Registered Users row.

hannahfrost commented 7 years ago

@ggeisler This makes sense to me. I have a slight preference for the Button version. Can move out of Design Needed provided all questions have been answered.

mjgiarlo commented 7 years ago

@julesies reported this as a bug in Sufia as well: https://github.com/projecthydra/sufia/issues/3108 I have asked how high of a priority this is for her use cases, to get a sense of whether we should do this in Sufia or Hyrax.

mjgiarlo commented 7 years ago

We believe Admin Sets are now closed for deposit.

TODO

mjgiarlo commented 7 years ago

Created #994. Closing.