Provide real-time document editing capabilities similar to what Etherpad or WebODF does. This means that several people can edit the same document at the same time and all changes are visible by all participants in near real-time.
It should be possible to save different revisions of the document as well as assigning colours to text contributed by the different participants.
**Rationale:**
Tools like Etherpad and Google Docs have shown the value that real-time collaborative editing has brought to people. Being able to invite others to edit a document together is turning more and more into something people expect from their collaboration solution. The full value however is only realized when we support full ODF editing opposed to simple (rich) text editing.
**Plan:**
This will be accomplished will be done using [[ http://webodf.org/ | WebODF ]].
WebODF comes with an editor called [[ https://github.com/kogmbh/Wodo.TextEditor_release | Wodo ]], which runs entirely on the client-side for single-user editing of ODT documents. Editing spreadsheets and presentations is not yet possible.
For a useful collaborative editing solution that utilizes WebODF, there needs to be written a complete web application that:
1. Accepts user authorization/authentication through a pluggable system //(LDAP via to be used for Kolab integration)//
2. Allows uploading/importing documents through various techniques //(WebDAV for Kolab)// and appropriately restricting access to them
3. Provides a server to convert documents between various formats for //Export as...//
3. Provides a server to let connected clients exchange edit changesets in real-time
4. Persists the complete edit history and frequent snapshots of live documents to disk
Some work towards this has already been done previously in the form of [[ https://github.com/kogmbh/Kotype | KoType ]], which is a prototype. The parts of KoType that deal with exchanging operations amongst clients are the most important, and would be borrowed for this project.