[pLog-svn] r3505 - in plugins/trunk: . cocomment cocomment/class
cocomment/class/action cocomment/class/view cocomment/locale
cocomment/template
oscar at devel.lifetype.net
oscar at devel.lifetype.net
Thu Jun 1 20:21:29 GMT 2006
Author: oscar
Date: 2006-06-01 20:21:29 +0000 (Thu, 01 Jun 2006)
New Revision: 3505
Added:
plugins/trunk/cocomment/
plugins/trunk/cocomment/README.txt
plugins/trunk/cocomment/class/
plugins/trunk/cocomment/class/action/
plugins/trunk/cocomment/class/action/plugincocommentconfigaction.class.php
plugins/trunk/cocomment/class/action/plugincocommentupdateconfigaction.class.php
plugins/trunk/cocomment/class/action/showcocommentaction.class.php
plugins/trunk/cocomment/class/view/
plugins/trunk/cocomment/class/view/plugincocommentconfigview.class.php
plugins/trunk/cocomment/locale/
plugins/trunk/cocomment/locale/locale_en_UK.php
plugins/trunk/cocomment/locale/locale_zh_TW.php
plugins/trunk/cocomment/plugincocomment.class.php
plugins/trunk/cocomment/template/
plugins/trunk/cocomment/template/cocomment.template
Log:
added the cocomment plugin
Added: plugins/trunk/cocomment/README.txt
===================================================================
--- plugins/trunk/cocomment/README.txt 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/README.txt 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,23 @@
+[USAGES]:
+1. Upload: Upload all the extract files and directorys to $LifeType_Install_Dir/plugin/cocomment
+2. Modify template: Use $cocomment->show($postId) in template file to enbed coComment toggle-integration script in LiFeType.
+
+
+[IMPORTANT NOTICE]
+1. The form must has name and id attribute with value "NewComment", just like
+Code:
+<form id="NewComment" name="NewComment" ....>
+
+2. The submit button must has name and id attribute with value "post", like
+Code:
+<input type="submit" name="post" id="post"....>
+
+
+
+[EXAMPLE]:
+Add the following code in commentform.template to replace </form>:
+
+Code:
+{assign var="postId" value=$post->getId()}
+{$cocomment->show($postId)}
+</form>
\ No newline at end of file
Added: plugins/trunk/cocomment/class/action/plugincocommentconfigaction.class.php
===================================================================
--- plugins/trunk/cocomment/class/action/plugincocommentconfigaction.class.php 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/class/action/plugincocommentconfigaction.class.php 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,26 @@
+<?php
+
+ include_once( PLOG_CLASS_PATH."class/action/admin/adminaction.class.php" );
+ include_once( PLOG_CLASS_PATH."plugins/cocomment/class/view/plugincocommentconfigview.class.php" );
+
+ /**
+ * shows a form with the current configuration
+ */
+ class PlugincoCommentConfigAction extends AdminAction
+ {
+
+ function PlugincoCommentConfigAction( $actionInfo, $request )
+ {
+ $this->AdminAction( $actionInfo, $request );
+ }
+
+ function perform()
+ {
+ $this->_view = new PlugincoCommentConfigView( $this->_blogInfo );
+
+ $this->setCommonData();
+
+ return true;
+ }
+ }
+?>
\ No newline at end of file
Added: plugins/trunk/cocomment/class/action/plugincocommentupdateconfigaction.class.php
===================================================================
--- plugins/trunk/cocomment/class/action/plugincocommentupdateconfigaction.class.php 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/class/action/plugincocommentupdateconfigaction.class.php 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,58 @@
+<?php
+
+ include_once( PLOG_CLASS_PATH."class/action/admin/adminaction.class.php" );
+ include_once( PLOG_CLASS_PATH."plugins/cocomment/class/view/plugincocommentconfigview.class.php" );
+
+ /**
+ * updates the plugin configuration
+ */
+ class PlugincoCommentUpdateConfigAction extends AdminAction
+ {
+ var $_pluginEnabled;
+
+ function PlugincoCommentUpdateConfigAction( $actionInfo, $request )
+ {
+ $this->AdminAction( $actionInfo, $request );
+ }
+
+ function validate()
+ {
+ $this->_pluginEnabled = $this->_request->getValue( "pluginEnabled" );
+ $this->_pluginEnabled = ($this->_pluginEnabled != "" );
+
+ return true;
+ }
+
+ function perform()
+ {
+ // update the plugin configurations to blog setting
+ $blogSettings = $this->_blogInfo->getSettings();
+ $blogSettings->setValue( "plugin_cocomment_enabled", $this->_pluginEnabled );
+ $this->_blogInfo->setSettings( $blogSettings );
+
+ // save the blogs settings
+ $blogs = new Blogs();
+ if( !$blogs->updateBlog( $this->_blogInfo )) {
+ $this->_view = new PlugincoCommentConfigView( $this->_blogInfo );
+ $this->_view->setErrorMessage( $this->_locale->tr("error_updating_settings"));
+ $this->setCommonData();
+
+ return false;
+ }
+
+ // if everything went ok...
+ $this->_blogInfo->setSettings( $blogSettings );
+ $this->_session->setValue( "blogInfo", $this->_blogInfo );
+ $this->saveSession();
+
+ $this->_view = new PlugincoCommentConfigView( $this->_blogInfo );
+ $this->_view->setSuccessMessage( $this->_locale->tr("cocomment_settings_saved_ok"));
+ $this->setCommonData();
+
+ // clear the cache
+ CacheControl::resetBlogCache( $this->_blogInfo->getId());
+
+ return true;
+ }
+ }
+?>
\ No newline at end of file
Added: plugins/trunk/cocomment/class/action/showcocommentaction.class.php
===================================================================
--- plugins/trunk/cocomment/class/action/showcocommentaction.class.php 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/class/action/showcocommentaction.class.php 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,25 @@
+<?php
+
+ include_once( PLOG_CLASS_PATH."class/action/blogaction.class.php" );
+ include_once( PLOG_CLASS_PATH."class/view/plugintemplatedview.class.php" );
+
+ class ShowcoCommentAction extends BlogAction
+ {
+ var $_cocommentTemplate;
+
+ function ShowcoCommentAction( $actionInfo, $request )
+ {
+ $this->BlogAction( $actionInfo, $request );
+ }
+
+ function perform()
+ {
+ $this->_cocommentTemplate = $this->_request->getValue( "show" );
+
+ $this->_view = new PluginTemplatedView( $this->_blogInfo, "cocomment", $this->_cocommentTemplate );
+ $this->setCommonData();
+
+ return true;
+ }
+ }
+?>
\ No newline at end of file
Added: plugins/trunk/cocomment/class/view/plugincocommentconfigview.class.php
===================================================================
--- plugins/trunk/cocomment/class/view/plugincocommentconfigview.class.php 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/class/view/plugincocommentconfigview.class.php 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,28 @@
+<?php
+
+ include_once( PLOG_CLASS_PATH."class/view/admin/adminplugintemplatedview.class.php" );
+
+ /**
+ * implements the main view of the feed reader plugin
+ */
+ class PlugincoCommentConfigView extends AdminPluginTemplatedView
+ {
+
+ function PlugincoCommentConfigView( $blogInfo )
+ {
+ $this->AdminPluginTemplatedView( $blogInfo, "cocomment", "cocomment" );
+ }
+
+ function render()
+ {
+ // load some configuration settings
+ $blogSettings = $this->_blogInfo->getSettings();
+ $pluginEnabled = $blogSettings->getValue( "plugin_cocomment_enabled" );
+
+ // create a view and export the settings to the template
+ $this->setValue( "pluginEnabled", $pluginEnabled );
+
+ parent::render();
+ }
+ }
+?>
\ No newline at end of file
Added: plugins/trunk/cocomment/locale/locale_en_UK.php
===================================================================
--- plugins/trunk/cocomment/locale/locale_en_UK.php 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/locale/locale_en_UK.php 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,13 @@
+<?php
+$messages["manageAppearancePlugins"] = "Appearance Management";
+$messages["coComment"] = "coComment";
+
+$messages["cocomment_plugin_enabled"] = "Enable this plugin";
+$messages["cocomment_plugin"] = "coComment Plugin";
+$messages["detail"] = "Detail";
+
+$messages["cocomment_settings_saved_ok"] = "coComment settings saved successfully!";
+
+$messages["label_configuration"] = "Configuration";
+$messages["label_enable"] = "Enable";
+?>
\ No newline at end of file
Added: plugins/trunk/cocomment/locale/locale_zh_TW.php
===================================================================
--- plugins/trunk/cocomment/locale/locale_zh_TW.php 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/locale/locale_zh_TW.php 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,13 @@
+<?php
+$messages["manageAppearancePlugins"] = "網誌外觀管理";
+$messages["coComment"] = "coComment迴響追蹤設定";
+
+$messages["cocomment_plugin_enabled"] = "啟動外掛程式";
+$messages["cocomment_plugin"] = "coComment迴響追蹤外掛程式";
+$messages["detail"] = "詳細";
+
+$messages["cocomment_settings_saved_ok"] = "coComment迴響追蹤設定儲存成功。";
+
+$messages["label_configuration"] = "設定";
+$messages["label_enable"] = "啟動";
+?>
\ No newline at end of file
Added: plugins/trunk/cocomment/plugincocomment.class.php
===================================================================
--- plugins/trunk/cocomment/plugincocomment.class.php 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/plugincocomment.class.php 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,78 @@
+<?php
+ include_once( PLOG_CLASS_PATH."class/plugin/pluginbase.class.php" );
+ include_once( PLOG_CLASS_PATH."class/plugin/pluginmanager.class.php" );
+
+ class PlugincoComment extends PluginBase
+ {
+ var $pluginEnabled;
+
+ function PlugincoComment()
+ {
+ $this->PluginBase();
+
+ $this->id = "cocomment";
+ $this->author = "James Huang";
+ $this->desc = "Integrate cocomment into LifeType commentform template.";
+
+ $this->locales = Array( "en_UK" , "zh_TW" );
+
+ $this->init();
+ }
+
+ function init()
+ {
+ $this->registerBlogAction( "coComment", "ShowcoCommentAction" );
+ $this->registerAdminAction( "coCommentConfig", "PlugincoCommentConfigAction" );
+ $this->registerAdminAction( "updatecoCommentConfig", "PlugincoCommentUpdateConfigAction" );
+
+ $menu =& Menu::getMenu();
+ if( !$menu->entryExists( "/menu/controlCenter/manageAppearancePlugins" ))
+ $this->addMenuEntry( "/menu/controlCenter", "manageAppearancePlugins", "", "", true, false );
+ $this->addMenuEntry( "/menu/controlCenter/manageAppearancePlugins", "coComment", "?op=coCommentConfig", "" );
+ }
+
+ function register()
+ {
+ $blogSettings = $this->blogInfo->getSettings();
+ $this->pluginEnabled = $blogSettings->getValue( "plugin_cocomment_enabled" );
+ }
+
+ function isEnabled()
+ {
+ return $this->pluginEnabled;
+ }
+
+ function show()
+ {
+ $locale = $this->blogInfo->getLocale();
+
+ $rg = $this->blogInfo->getBlogRequestGenerator();
+ $baseUrl = $rg->getBaseUrl();
+
+ $str = '';
+ $str = '<script type="text/javascript">';
+ $str .= 'var blogTool = "LifeType";';
+ $str .= 'var blogURL = "{$url->blogLink()}";';
+ $str .= 'var blogTitle = "{$blog->getBlog()}";';
+ $str .= 'var postURL = "{$url->postPermalink($post)}";';
+ $str .= 'var postTitle = "{$post->getTopic()} ";';
+ if ( $user_ID ) {
+ $str .= 'var commentAuthor = "'.$user_identity.'"';
+ } else {
+ $str.= 'var commentAuthorFieldName = "author";';
+ }
+ $str .= 'var commentAuthorLoggedIn =';
+ if ( !$user_ID ) {
+ $str .= false.';';
+ }else {
+ $str .=true.';';
+ }
+ $str .='var commentFormID = "commentform";';
+ $str .='var commentTextFieldName = "commentText";';
+ $str .='var commentButtonName = "post";';
+ $str .='var cocomment_force = false;';
+ $str .='</script>';
+ return $str;
+ }
+ }
+?>
\ No newline at end of file
Added: plugins/trunk/cocomment/template/cocomment.template
===================================================================
--- plugins/trunk/cocomment/template/cocomment.template 2006-06-01 20:14:33 UTC (rev 3504)
+++ plugins/trunk/cocomment/template/cocomment.template 2006-06-01 20:21:29 UTC (rev 3505)
@@ -0,0 +1,24 @@
+{include file="$admintemplatepath/header.template"}
+{include file="$admintemplatepath/navigation.template" showOpt=coComment title=$locale->tr("cocomment_plugin")}
+<form name="cocommentPluginConfig" method="post">
+ <fieldset class="inputField">
+ <legend>{$locale->tr("label_configuration")}</legend>
+ {include file="$admintemplatepath/successmessage.template"}
+ {include file="$admintemplatepath/errormessage.template"}
+ <div class="field">
+ <label for="pluginEnabled">{$locale->tr("label_enable")}</label>
+ <div class="formHelp">
+ <input class="checkbox" type="checkbox" name="pluginEnabled" id="pluginEnabled" {if $pluginEnabled} checked="checked" {/if} value="1" />{$locale->tr("cocomment_plugin_enabled")}
+ </div>
+ </div>
+
+ </fieldset>
+
+ <div class="buttons">
+ <input type="hidden" name="op" value="updatecoCommentConfig" />
+ <input type="reset" name="{$locale->tr("reset")}" />
+ <input type="submit" name="{$locale->tr("update_settings")}" value="{$locale->tr("update")}" />
+ </div>
+</form>
+{include file="$admintemplatepath/footernavigation.template"}
+{include file="$admintemplatepath/footer.template"}
\ No newline at end of file
More information about the pLog-svn
mailing list