diff options
Diffstat (limited to 'tderesources/blogging/API_Blog.cpp')
-rw-r--r-- | tderesources/blogging/API_Blog.cpp | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/tderesources/blogging/API_Blog.cpp b/tderesources/blogging/API_Blog.cpp new file mode 100644 index 000000000..981390fa1 --- /dev/null +++ b/tderesources/blogging/API_Blog.cpp @@ -0,0 +1,121 @@ +/*************************************************************************** +* Copyright (C) 2004-05 Reinhold Kainhofer <reinhold@kainhofer.com> * +* * +* This program is free software; you can redistribute it and/or modify * +* it under the terms of the GNU General Public License as published by * +* the Free Software Foundation; either version 2 of the License, or * +* (at your option) any later version. * +***************************************************************************/ +#include "API_Blog.h" +#include <kdebug.h> +#include <tqvariant.h> + +using namespace KBlog; + +APIBlog::APIBlog( const KURL &url, TQObject *parent, const char *name ) : + TQObject( parent, name ), + mServerURL( url ), mAppID( TQString() ), mDownloadCount( 20 ) +{} + +APIBlog::~APIBlog() +{} + +void APIBlog::dumpBlog( BlogPosting *blog ) +{ + kdDebug() << "-----------------------------------" << endl; + kdDebug() << "Post " << blog->postID() << " by \"" << + blog->userID() << "\" on " << + blog->dateTime().toString() << endl; + kdDebug() << "Title: " << blog->title() << endl; + kdDebug() << blog->content() <<endl; + kdDebug() << "-----------------------------------" << endl; +} + + + +/*void APIBlog::setTemplateTags( const BlogTemplate& Template ) +{ + mTemplate = Template; +} +BlogTemplate APIBlog::templateTags() const +{ + return mTemplate; +}*/ + +/*void APIBlog::deletePost( const TQString &postID ) +{ + BlogPosting *post = new BlogPosting(); + post->setPostID( postID ); + deletePost( post ); + delete post; +}*/ + +TQValueList<TQVariant> APIBlog::defaultArgs( const TQString &id ) +{ + TQValueList<TQVariant> args; + args << TQVariant( mAppID ); + if ( !id.isNull() ) { + args << TQVariant( id ); + } + args << TQVariant( mUsername ) + << TQVariant( mPassword ); + return args; +} + + +KCal::Journal *APIBlog::journalFromPosting( KBlog::BlogPosting *blog ) +{ + if ( !blog ) return 0; + KCal::Journal *j = new KCal::Journal(); + TQDateTime dt = blog->dateTime(); + TQDateTime creationDt = blog->creationDateTime(); + TQDateTime modificationDt = blog->modificationDateTime(); +kdDebug() << "dt ="<<dt.toString( TQt::ISODate ) << endl; +kdDebug() << "creationDt ="<<creationDt.toString( TQt::ISODate ) << endl; +kdDebug() << "modificationDt="<<modificationDt.toString( TQt::ISODate ) << endl; + if ( dt.isValid() && !dt.isNull() ) { + j->setDtStart( dt ); + } else if ( creationDt.isValid() && !creationDt.isNull() ) { + j->setDtStart( creationDt ); + } else if ( modificationDt.isValid() && !modificationDt.isNull() ) { + j->setDtStart( modificationDt ); + } + + j->setCreated( blog->creationDateTime() ); + j->setLastModified( blog->modificationDateTime() ); + j->setFloats( false ); + kdDebug() << "Date for blog " << blog->title() << " is " + << blog->dateTime().toString()<<endl; + j->setSummary( blog->title() ); + j->setDescription( blog->content() ); + j->setCategories( TQStringList( blog->category() ) ); + j->setOrganizer( blog->userID() ); + j->setCustomProperty( "KCalBloggerRes", "UserID", blog->userID() ); + j->setCustomProperty( "KCalBloggerRes", "BlogID", blog->blogID() ); + j->setCustomProperty( "KCalBloggerRes", "PostID", blog->postID() ); + + // TODO: Set the read-only flag in the resource! +// j->setReadOnly( readOnly() ); + + return j; +} + +KBlog::BlogPosting *APIBlog::postingFromJournal( KCal::Journal *journal ) +{ + KBlog::BlogPosting *item = new KBlog::BlogPosting(); + if ( journal && item ) { + item->setContent( journal->description() ); + item->setTitle( journal->summary() ); + item->setCategory( journal->categories().first() ); + item->setDateTime( journal->dtStart() ); + item->setModificationDateTime( journal->lastModified() ); + item->setCreationDateTime( journal->created() ); + item->setUserID( journal->customProperty( "KCalBloggerRes", "UserID" ) ); + item->setBlogID( journal->customProperty( "KCalBloggerRes", "BlogID" ) ); + item->setPostID( journal->customProperty( "KCalBloggerRes", "PostID" ) ); + } + return item; +} + + +#include "API_Blog.moc" |