Projects/Summer of Code/2007/Projects/Kontact Journal Blog Support
Kontact Journal/Blog Support
Name: Mike Arthur
CV: http://www.mikearthur.co.uk/~mike/work/cv.pdf
Mentor: Cornelius Schumacher
Tutorial: Blog from KOrganizer HOWTO
Requires: KDEPIM 4.1
Abstract
At the start of this project, KDE's Kontact provided basic journal support. However, this could not be currently posted remotely and no more than plain-text could be used in creating entries. This project aimed to improve this journal support, integration with the KBlog blog-posting library, adding a WYSIWYG editor and other desired functionality.
Benefits to the KDE Community
- Providing the ability to store, save and modify blog posts from Kontact
- Allowing "rich" journal content
- Aiding creation of a stable library for KDE application developers to make blog posts
Project Details
Kontact/KOrganizer had "Journal" support. This was fairly limited, allowing a user to create a basic, plain text document which could be attached to a time and date in Kontact. However, this could not be customised or made to export the journal to any external source.
Several codebases existed to implement this functionality. The main library providing this functionality was KBlog[1], in kdepimlibs in the KDE SVN. This provided an interface to send blog posts to a Blogger 1.0 or MetaWebLog compatible server. KLuJe[2] was a KDE LiveJournal blog poster, allowing more LiveJournal-specific functionality such as emotions. I hoped to integrate the LiveJournal support from KLuJe to KBlog, as well as aid the creation of Google Data and Atom 1.0 support. This was dependent on how much work the creator of KBlog was willing to perform towards this task. The other needed features I would work on were full-GUI integration for the KBlog library with Kontact, customisation, easy setup, Akonadi integration and a WYSIWYG editor. C++ will be used for all development for Akonadi and Kontact integration.
The status on Akonadi was somewhat uncertain at the time of writing. The KDE-PIM team were unsure whether KDE 4.0 will have a KDE-PIM release at all or if it will simply be used without Akonadi until KDE 4.1. As a result, if Akonadi was delayed, the focus would be on producing code that can be not only used in Akonadi but also in KDE 4.0.
Several feature requests have been made for Kontact's Journal integration. These can be viewed at http://bugs.kde.org/simple_search.cgi?id=journal. Allowing for time, as many of these features would be integrated as possible, but the priority was to focus on the aforementioned features.
Results
The results of this project can be viewed in kdepimlibs/kblog, the "Journal in a blog" resource in KOrganizer and KOrganizer's improved journal view and journal editor.
A tutorial for using this feature can be seen on my blog.
I'm still working on bugs 120657 and 147569.
I implemented bugs 125731, 125731, 92499 and 134956.
I closed bug 134954 for being invalid.