Heya!
Everything that you mention here is all to do with how the information
is displayed to the users. It doesnt really have much of an impact on
mobwrite system itself. I think you already understand this from your
suggested fixes. My point is that any scenario can be easily fixed to
accommodate mobwrite (real-time collab).
fix 1) While is valid, It isn't real-time collab. And so has very
little to do with mobwrite. If you want your client to support this
then just impliment GET/PUT/LOCK/UNLOCK ? That said, Authorization and
Authentication support is something desirable, which would mean you
can select who can edit and do what to the documents.
fix 2+3) Mobwrite is always live. the "submit" button is for users to
double-check there changes have been made. A publish step might move
the mobwrite document into a "published" location (live webserver?).
Because you have the mobwrite document and you know where its going,
you can diff the two, and show the user whats going to be changed when
published. The user might be given some checkboxes next to the list of
changes so they can select which bits to include and which bits not to
include. So the spelling correction can be done instantly, while user
A's stuff can be ignored. This is however specific to your
application, Its something that your client should handle outside of
mobwrite.
fix 4) is a bit tricky. To tell what changes have been made requires a
point of reference. Keep one and show the users a list of patches that
have been made to the live mobwrite document (something i plan on
doing). It opens up a whole new set of problems tho. If i "uncheck" an
edit, does it vanish? off my patch list too? If no, you now need 3
points of reference (original, mobwrite document, clientView document)
etc. Making patches becomes a whole lot harder!
fix 5+6) Yep could do, this is closely related to colouring and
highlighting. Something already in the pipelines. But doesnt really
solve your scenario on its own.
Mobwrite is a method of synchronizing data. Yes, these things listed
above cannot be done with a simple form, they are all specific to your
application. While mobwrite does offer some editors, they are in early
stages of development. The examples are more to show you what you can
do to your web pages using mobwrite. Any input element can be collab'd
using mobwrite.
As for the other bits.
Submit = Force Mobwrite Document Sync.
Cancel = Delete current document (as neil said, if another user is
editing it, they "recreate" automatically)
I take "Revert" to mean to different things.
Do you mean, completely remove all edits? If so, you again need a
point of reference. And you simply replace the mobwrite document with
the original it was created from.
If your talking about "Undo/Redo". First you have to decide who's
edits are you going to be undo'ing and redo'ing? With the Gedit
plugin, the undo/redo function only changes what the current user has
typed. All changes from other users can not be "undone". It made the
most sense for me, as i intend to list all changes from the original
in a list at the bottom of the page, so when typing the user only
affects there content, but still has the option to undo/redo ALL edits
made on the document. but depends on your application.
Mike