Projects/Summer of Code/2007/Projects/Kontact Journal Blog Support

From KDE TechBase
Revision as of 00:36, 27 September 2008 by Mikearthur (talk | contribs) (Updated information, added tutorial.)

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.

References