Summary:- Use a dialog for now.
- Save model is OK as is.
- For the abstract, build a simplified toolbar so that inline styles and lists can be used. Try it in its own tab.
- Show metadata inside the object as it will look when the thing is published.
- For example: When
an author includes metadata for a module that differs from the book
level metadata, that will show in the module itself. For instance, if
the module has a different author than the book, it will say "By John
Doe". When you click on that, you will go to the metadata dialog, though
and be able to change it.
- Investigate a few ideas + one new one that kathi had while writing this up (See "Investigate a few ideas" in detail below):
Detail:
We looked at
w-editor-27.html to get an idea of what a dialog for collections/books and modules/chapters would look like. We also discussed having the metadata be editable directly within the edit pane. That might be more natural for authors and would allow us to reuse the editor toolbar within the abstract/summary/description. But it would be much more complex to develop, and it might be more work to figure out how to unify the behavior for books/collections. So for now we will stick with a dialog that has tabs to avoid getting too long. Maybe the description/summary/abstract can be in its own tab also.
We looked at the current CNX metadata editing also. Authors are added, by starting to type the author's name and it auto completes existing authors in the Connexions database. Each author's name becomes a moveable, deletable field like gmail authors or old tagging systems. For github, we do want to allow authors who are just typed in and may not have a github account, but it would also be nifty to autocomplete github accounts if practical. Would need to show the github avatar and make it possible to go to their profile to make sure you got the right person.
We also looked at
https://github.com/oerpub/github-bookeditor/tree/mockup-toc-icons-06, which shows a new "v ->" set of icons next to each book, chapter, module. The -> always opens the thing for editing. The v has a little menu with "rename, edit author/description, delete" inside it. These show up on hover over the "v" so that it is one click to get to those actions. We thus have a way to edit metadata for modules and collections, we have made opening books for editing and renaming things easier.
Metadata uncovers something that is a bit awkward about the save model. Changes that affect the -nav.html and .opf file are autosaved, and thus changing book metadata will be autosaved. Changes that affect the modules (<chap-module>.html) are only saved when you hit the [Save all] button. So module level metadata will be hand saved. This is the same as what happens if you edit metadata about an image, so while a bit obtuse, it is at least consistent. If you edit any metadata, the module will show an * showing that it is dirty. I think that the "diff" under the save should pick that up and show it automatically, so it will be OK.
We are going to
investigate a few ideas. - When you edit a title, we may either pop up the whole metadata dialog, or have a link to easily do that. Thus making metadata editing more discoverable.
- If you start to edit module/page level metadata, the book metadata will be auto-filled. If there is no book level metadata, we may ask if you would rather edit that and have it apply to all the modules (you can always change them later ...)
- How to show metadata in the module and allow editing it (which will bring up the dialog).
- New (not discussed on call): Maybe we should create a "front matter" module for collections where cover art can go, and where the book level metadata is displayed and can be edited by clicking and getting the dialog.