It might make sense in a few places, but in a lot of places, "Save and New" is clutter.
Opening a financial batch?
Creating a Contribution Page?
(ok, not "save and new", but still, what does "Done" even mean?)
Price Sets - Add Field:
.. is that "Save and New" really useful? It opens in a popup, so it really only saves 0.5 seconds, but you have to think 0.5 seconds more to click the right button. (edit: there was support to keep it)
And..
New/Edit Petition
New/Edit Survey
Make it makes sense for:
New Contribution (in standalone mode)
?
Edited
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Thanks for bringing these things up. UI is so important. I think generally one save button is best, two is sometimes OK in specific cases, but never three.
Agreed for Financial Batch. Campaign also doesn't need this.
For Contribution Pages, Save just saves the form, but doesn't redirect, Save and Done redirects back to browse. I think we can rename Save and Done to Save and remove Save, since this is how every other admin form works (takes you back to browse after saving). Petitions, Surveys and Events can be handled the same.
For Price Set Fields, I do think this is useful, since you often have to add a bunch of them. But we only need it when the action is add, not when we are editing (this is how it works for Custom Fields). It should also be changed for Profile Fields.
Also makes sense to have Save and New for Contact, Contribution, Membership and Event Registration, but only in standalone mode, not if we have specified a contact id because we are coming from a specific contact.
Relatedly, it drives me nuts that there is no standard for alignment or order of buttons. Sometimes they are on the left, sometimes the right, sometimes Cancel is first, sometimes Save is first.
Ok, I'm going to be the difficult one here. I definitely agree that it's situational, however I think there is merit to considering "Save and..." actions. Joomla has always done this, imo, really well. Contrast that with WordPress where, when editing a post, there is "save". A user clicks it and the post "saves". Ok... but, then if the user wanted to actually save and exit, then what do they do? Or if they want to save and create a new post, which surely happens, they save, exit, add. 3 steps. Yikes.
Clearly, I'm not talking CRM here... but I do think there is a place for it, but it needs to be well thought out.
I do NOT think having a blue "Save & New" immediately beside a blue "Save" is a good idea. I have found myself clicking the wrong one and it irritates me. If the only option is to remove the "Save & New", then I'm a +1 for sure. And maybe there's just not a good use case for "Save & New" or "Save & Copy" in a CRM (as opposed to a CMS).
Thinking about it a bit more, actually, I don't know that I've ever actually wanted to use "Save & New" in CiviCRM. So, I guess I'm a soft +1.
Part of the issue with "Save and Done" might be a lack of breadcrumb or menu (I agree WordPress is weird, when in Gutenberg mode, the exit isn't clear). CiviCRM always has the menu, but the breadcrumb is often incomplete. Keep in mind the early days of CiviCRM did not have the top menu (I found a random screenshot from CiviCRM 2.0 that didn't have it, I think the menu was introduced in 3.0).
There are also some really random "done" redirections.
Go to Administer > Users and Permissions > Permissions (ACLs)
Click Done
You get redirected to the list of "Option Groups". It's just weird, there is no "Done" button on most forms/listings.
For "Save and New", I agree sometimes it can be useful. I don't mind keeping it on "New Price Field" (and other places discussed already), since that's a form used only by power-users.
Manage Event/Contribution/Petition: Remove all: "Save and Done" vs "Save and Next": instead of displaying both:
When it's not the last step/tab, display "Save and Next"
Otherwise display "Save and Done"
Why: these buttons are mostly for discovery - at first, it's not obvious that the tabs act as a configuration wizard.
After more exploring, I found that this is not used in Managed Event, only for Contribution Pages and partially for Petitions. I thought maybe I would implement it for Manage Event, but after much considering, I figured it's not worth it (these interfaces will be replaced by Form Builder one day, right?)
The buttons are not always consistent on one tab to the next, so "Save and Next" didn't make a lot of sense. And not all tabs are required.
The code is kind of meh
.. so I removed it.
"Save and New"
Only display when creating a new entity in standalone form, not when editing an existing entity, or when adding an entity to a contact (ex: New Contribution for Contact, New Pledge for Contact)
.. or if the form is mostly for power-admins, such as managing Custom Fields and Price Set Fields
Why: personally I find it weird to "Save and New" and not validate the data entry, but assuming some people like that, then let's just show it when creating new data. It makes less sense when editing something.
Thanks for making these changes. In general I agree with the aim of reducing clutter and improving the user experience. However, I think that some of the changes have had a negative impact on usability and may need to be reconsidered, in particular the 'Save and Done' button.
You've asked above:
what does "Done" even mean?
What it means for the user, when editing a multi-page form, is that they have made all of the changes that they want to make and the form can be closed.
For a single page form it is fine to have a single Save button. This saves all of the changes and closes the form. Alternatively you can click Cancel to discard all of the changes and close the form.
With a multi-page form there were four possible routes that were represented by the four buttons:
Save = save the changes but keep the form open for further editing (this differs from a single page form in that is doesn't close the form)
Save and Next = save the changes and move to the next page of the form
Save and Done = save the changes and close the form
Cancel = discard the changes and close the form
By reducing this to two buttons (Save and Cancel) we are making it hard for the user to complete the form.
Consider the following steps the user needs to take to create a new event:
click create new event
fill in details on first page of form
click Continue
click tab to move to second page of form
fill in details on second page of form
click Save
repeat steps 4-6 on the remaining six pages as needed
fill in the details on the last page of the form
click Save
then what???
What does the user do now? They have finished editing the event. They have clicked Save, the details are saved, but the form is still open. What should they click?
Well, actually the simplest thing for them to click would be Cancel because they have already saved the details and this would close the form and take them back to the manage events page. But from a user's perspective Cancel is the wrong button to press. It means that you want to discard all of your changes, which is the opposite of what the user wants to do. We shouldn't expect the user to do this but we aren't really leaving them with any other sensible options. Another option would be to use the menu to navigate to the Manage Events screen or another page. Alternatively, they could click on the back button in the browser. Neither of these are good options from a user experience perspective.
Note that by removing the 'Save and Next' button we are making it slightly more work for the user to move from one page to the next - this takes two clicks rather than one. I don't have such strong feelings about this but noting that it is making the user experience slightly worse.
We've just upgraded a client site to CiviCRM 5.70 and have had some feedback from a member of staff on these changes:
I have gone to duplicate an event and the save and done button is no longer appearing as an option.
I really liked the feature as I felt it acted as a final check that I had completed all sections of the event setup.
I'm not saying that we should revert all of the changes made, but I do think we need to address the case of a user editing a multi-page form. Afraid I don't have a solution, but perhaps we should look at how other software handles this use case.