[pLog-svn] r2907 - in plog/trunk: class/action/admin js/ui locale
styles templates/admin
mark at devel.lifetype.net
mark at devel.lifetype.net
Mon Feb 6 06:12:46 GMT 2006
Author: mark
Date: 2006-02-06 06:12:45 +0000 (Mon, 06 Feb 2006)
New Revision: 2907
Modified:
plog/trunk/class/action/admin/adminchangepostscategoryaction.class.php
plog/trunk/js/ui/plogui.js
plog/trunk/locale/locale_en_UK.php
plog/trunk/locale/locale_zh_TW.php
plog/trunk/styles/admin.css
plog/trunk/templates/admin/editposts.template
Log:
1. Now, massive change support category multiple selection
2. Add a new show/hide option to make UI eaiser (I guess)
3. Locales implement done.
Modified: plog/trunk/class/action/admin/adminchangepostscategoryaction.class.php
===================================================================
--- plog/trunk/class/action/admin/adminchangepostscategoryaction.class.php 2006-02-05 20:15:07 UTC (rev 2906)
+++ plog/trunk/class/action/admin/adminchangepostscategoryaction.class.php 2006-02-06 06:12:45 UTC (rev 2907)
@@ -5,19 +5,18 @@
include_once( PLOG_CLASS_PATH."class/dao/articles.class.php" );
include_once( PLOG_CLASS_PATH."class/template/cachecontrol.class.php" );
include_once( PLOG_CLASS_PATH."class/data/validator/arrayvalidator.class.php" );
- include_once( PLOG_CLASS_PATH."class/data/validator/integervalidator.class.php" );
/**
* \ingroup Action
* @private
*
- * Massive changes posts category
+ * Massive changes posts categories
*/
class AdminChangePostsCategoryAction extends AdminAction
{
var $_postIds;
- var $_postCategory;
+ var $_postCategories;
/**
* Constructor. If nothing else, it also has to call the constructor of the parent
@@ -27,7 +26,7 @@
{
$this->AdminAction( $actionInfo, $request );
$this->registerFieldValidator( "postIds", new ArrayValidator());
- $this->registerFieldValidator( "postCategory", new IntegerValidator() );
+ $this->registerFieldValidator( "postCategories", new ArrayValidator() );
$view = new AdminPostsListView( $this->_blogInfo );
$view->setErrorMessage( $this->_locale->tr("error_incorrect_article_id"));
$this->setValidationErrorView( $view );
@@ -53,7 +52,7 @@
$this->notifyEvent( EVENT_PRE_POST_UPDATE, Array( "article" => &$post ));
// update the post category
- $post->setCategoryIds( array( $this->_postCategory ) );
+ $post->setCategoryIds( $this->_postCategories );
$result = $articles->updateArticle( $post );
if( !$result ) {
@@ -93,7 +92,7 @@
// prepare the parameters.. If there's only one category id, then add it to
// an array.
$this->_postIds = $this->_request->getValue( "postIds" );
- $this->_postCategory = $this->_request->getValue( "postCategory" );
+ $this->_postCategories = $this->_request->getValue( "postCategories" );
$this->_changePostsCategory();
}
Modified: plog/trunk/js/ui/plogui.js
===================================================================
--- plog/trunk/js/ui/plogui.js 2006-02-05 20:15:07 UTC (rev 2906)
+++ plog/trunk/js/ui/plogui.js 2006-02-06 06:12:45 UTC (rev 2907)
@@ -155,4 +155,39 @@
$('optionIconLink').title = msgShowOptionPanel;
}} );
}
+}
+
+function submitPostsList(op)
+{
+ if ( op == 'changePostsStatus' )
+ {
+ if ( document.getElementById("postsList").postStatus.value == -1 )
+ window.alert(errorPostStatusMsg);
+ else
+ {
+ document.getElementById("postsList").op.value = op;
+ document.getElementById("postsList").submit();
+ }
+ }
+ else
+ {
+ document.getElementById("postsList").op.value = op;
+ document.getElementById("postsList").submit();
+ }
+}
+
+function switchMassiveOption()
+{
+ if ( $('massiveChangeOption').style.display == 'none' )
+ {
+ Element.show($('massiveChangeOption'));
+ $('optionIconLink').innerHTML = hideMassiveChangeOption;
+ $('optionIconLink').title = hideMassiveChangeOption;
+ }
+ else
+ {
+ Element.hide($('massiveChangeOption'));
+ $('optionIconLink').innerHTML = showMassiveChangeOption;
+ $('optionIconLink').title = showMassiveChangeOption;
+ }
}
\ No newline at end of file
Modified: plog/trunk/locale/locale_en_UK.php
===================================================================
--- plog/trunk/locale/locale_en_UK.php 2006-02-05 20:15:07 UTC (rev 2906)
+++ plog/trunk/locale/locale_en_UK.php 2006-02-06 06:12:45 UTC (rev 2907)
@@ -983,4 +983,10 @@
$messages['help_num_blogs_per_user'] = 'Number of blogs that an owner can create through the administration interface';
+$messages['messave_change_option'] = 'Massive Change Option';
+$messages['show_massive_change_option'] = 'Show Massive Change Options';
+$messages['hide_massive_change_option'] = 'Hide Massive Change Options';
+$messages['error_post_status'] = 'Please select post status.';
+$messages['change_status'] = 'Change Status';
+$messages['change_category'] = 'Change Category';
?>
\ No newline at end of file
Modified: plog/trunk/locale/locale_zh_TW.php
===================================================================
--- plog/trunk/locale/locale_zh_TW.php 2006-02-05 20:15:07 UTC (rev 2906)
+++ plog/trunk/locale/locale_zh_TW.php 2006-02-06 06:12:45 UTC (rev 2907)
@@ -972,12 +972,21 @@
$messages['show_in_summary_help'] = 'Include this blog in the summary page of this site.';
$messages['saving_message'] = '儲存中 ...';
-$messages['show_option_panel'] = '顯示選項';
-$messages['hide_option_panel'] = '隱藏選項';
+$messages['show_option_panel'] = '顯示文章選項';
+$messages['hide_option_panel'] = '隱藏文章選項';
$messages['quick_launches'] = '快捷列';
$messages['confirmation_message_resent_ok'] = 'Confirmation message resent successfully.';
$messages['goto_blog_page'] = '打開 %s 首頁';
+
+$messages['help_num_blogs_per_user'] = 'Number of blogs that an owner can create through the administration interface';
+
+$messages['messave_change_option'] = '大量修改選項';
+$messages['show_massive_change_option'] = '顯示大量修改選項';
+$messages['hide_massive_change_option'] = '隱藏大量修改選項';
+$messages['error_post_status'] = '請選擇文章狀態。';
+$messages['change_status'] = '修改狀態';
+$messages['change_category'] = '修改分類';
?>
\ No newline at end of file
Modified: plog/trunk/styles/admin.css
===================================================================
--- plog/trunk/styles/admin.css 2006-02-05 20:15:07 UTC (rev 2906)
+++ plog/trunk/styles/admin.css 2006-02-06 06:12:45 UTC (rev 2907)
@@ -473,6 +473,7 @@
.optionIcon
{
text-align : right;
+ font-size : 12px;
}
.optionIcon a
Modified: plog/trunk/templates/admin/editposts.template
===================================================================
--- plog/trunk/templates/admin/editposts.template 2006-02-05 20:15:07 UTC (rev 2906)
+++ plog/trunk/templates/admin/editposts.template 2006-02-06 06:12:45 UTC (rev 2907)
@@ -1,38 +1,10 @@
{include file="$admintemplatepath/header.template"}
{include file="$admintemplatepath/navigation.template" showOpt=editPosts title=$locale->tr("editPosts")}
+ <script type="text/javascript" src="js/ui/plogui.js"></script>
<script type="text/javascript">
- var errorPostStatusMsg = '{$locale->tr("error_post_status")}';
- var errorPostCategoryMsg = '{$locale->tr("error_post_category")}';
- {literal}
- function submitPostsList(op)
- {
- if ( op == 'changePostsStatus' )
- {
- if ( document.getElementById("postsList").postStatus.value == -1 )
- window.alert(errorPostStatusMsg);
- else
- {
- document.getElementById("postsList").op.value = op;
- document.getElementById("postsList").submit();
- }
- }
- else if ( op == 'changePostsCategory' )
- {
- if ( document.getElementById("postsList").postCategory.value == -1 )
- window.alert(errorPostCategoryMsg);
- else
- {
- document.getElementById("postsList").op.value = op;
- document.getElementById("postsList").submit();
- }
- }
- else
- {
- document.getElementById("postsList").op.value = op;
- document.getElementById("postsList").submit();
- }
- }
- {/literal}
+ var errorPostStatusMsg = '{$locale->tr("error_post_status")}';
+ var showMassiveChangeOption = '{$locale->tr("show_massive_change_option")}';
+ var hideMassiveChangeOption = '{$locale->tr("hide_massive_change_option")}';
</script>
<div id="list_nav_bar">
<div id="list_nav_select">
@@ -102,6 +74,9 @@
</div>
<form id="postsList" action="admin.php" method="post">
+ <div class="optionIcon">
+ <a id="optionIconLink" href="#" title="{$locale->tr("show_massive_change_option")}" onclick="switchMassiveOption()">{$locale->tr("show_massive_change_option")}</a>
+ </div>
<div id="list">
{include file="$admintemplatepath/successmessage.template"}
{include file="$admintemplatepath/errormessage.template"}
@@ -183,24 +158,28 @@
</div>
<div id="list_action_bar">
{include file="$admintemplatepath/adminpager.template" style=list}
- <label for="postStatus">{$locale->tr("status")}</label>
- <select name="postStatus" id="postStatus">
- <option value="-1">-{$locale->tr("select")}-</option>
- {foreach from=$poststatusWithoutAll key=name item=status}
- <option value="{$status}" {if $currentstatus == $status} selected="selected"{/if}>{$locale->tr($name)}</option>
- {/foreach}
- </select>
- <input type="button" name="changePostsStatus" value="{$locale->tr("change_status")}" class="submit" onClick="javascript:submitPostsList('changePostsStatus');" />
- <label for="postCategory">{$locale->tr("categories")}</label>
- <select name="postCategory" id="postCategory">
- <option value="-1">-{$locale->tr("select")}-</option>
- {foreach from=$categories item=category}
- <option value="{$category->getId()}" {if $currentcategory == $category->getId()} selected="selected" {/if}>{$category->getName()}</option>
- {/foreach}
- </select>
- <input type="button" name="changePostsCategory" value="{$locale->tr("change_category")}" class="submit" onClick="javascript:submitPostsList('changePostsCategory');" />
<input type="button" name="delete" value="{$locale->tr("delete")}" class="submit" onClick="javascript:submitPostsList('deletePosts');" />
<input type="hidden" name="op" value="" />
+ <div id="massiveChangeOption" style="display: none">
+ <fieldset>
+ <legend>{$locale->tr("messave_change_option")}</legend>
+ <label for="postStatus">{$locale->tr("status")}</label>
+ <select name="postStatus" id="postStatus">
+ <option value="-1">-{$locale->tr("select")}-</option>
+ {foreach from=$poststatusWithoutAll key=name item=status}
+ <option value="{$status}">{$locale->tr($name)}</option>
+ {/foreach}
+ </select>
+ <input type="button" name="changePostsStatus" value="{$locale->tr("change_status")}" class="submit" onClick="javascript:submitPostsList('changePostsStatus');" />
+ <label for="postCategories[]">{$locale->tr("categories")}</label>
+ <select name="postCategories[]" id="postCategories" size="5" multiple="multiple">
+ {foreach name=categories from=$categories item=category}
+ <option value="{$category->getId()}" {if $smarty.foreach.categories.first} selected="selected" {/if}>{$category->getName()}</option>
+ {/foreach}
+ </select>
+ <input type="button" name="changePostsCategory" value="{$locale->tr("change_category")}" class="submit" onClick="javascript:submitPostsList('changePostsCategory');" />
+ </fieldset>
+ </div>
</div>
</form>
More information about the pLog-svn
mailing list