* member is on the blog team (-1 = none)\r
* @return void\r
*/\r
- static private function selectBlog($name, $mode='blog', $selected = 0, $tabindex = 0, $showNewCat = 0, $iForcedBlogInclude = -1)\r
+ static public function selectBlog($name, $mode='blog', $selected = 0, $tabindex = 0, $showNewCat = 0, $iForcedBlogInclude = -1)\r
{\r
global $member, $CONF;\r
\r
}\r
\r
/**\r
+ * Admin::moveOneCategory()\r
+ * Delete a category by its id\r
+ * \r
+ * @param int $catid category id for move\r
+ * @param int $destblogid blog id for destination\r
+ * @return void\r
+ */\r
+ static public function moveOneCategory($catid, $destblogid)\r
+ {\r
+ global $manager, $member;\r
+ $catid = intval($catid);\r
+ $destblogid = intval($destblogid);\r
+ $blogid = getBlogIDFromCatID($catid);\r
+ // mover should have admin rights on both blogs\r
+ if (!$member->blogAdminRights($blogid)) {\r
+ return _ERROR_DISALLOWED;\r
+ }\r
+ if (!$member->blogAdminRights($destblogid)) {\r
+ return _ERROR_DISALLOWED;\r
+ }\r
+ // cannot move to self\r
+ if ($blogid == $destblogid) {\r
+ return _ERROR_MOVETOSELF;\r
+ }\r
+ // get blogs\r
+ $blog =& $manager->getBlog($blogid);\r
+ $destblog =& $manager->getBlog($destblogid);\r
+ // check if the category is valid\r
+ if (!$blog || !$blog->isValidCategory($catid)) {\r
+ return _ERROR_NOSUCHCATEGORY;\r
+ }\r
+ // don't allow default category to be moved\r
+ if ($blog->getDefaultCategory() == $catid) {\r
+ return _ERROR_MOVEDEFCATEGORY;\r
+ }\r
+ $manager->notify(\r
+ 'PreMoveCategory',\r
+ array(\r
+ 'catid' => &$catid,\r
+ 'sourceblog' => &$blog,\r
+ 'destblog' => &$destblog\r
+ )\r
+ );\r
+ // update comments table (cblog)\r
+ $query = 'SELECT '\r
+ . ' inumber '\r
+ . 'FROM '\r
+ . sql_table('item') . ' '\r
+ . 'WHERE '\r
+ . ' icat = %d';\r
+ $items = sql_query(sprintf($query, $catid));\r
+ while ($oItem = sql_fetch_object($items)) {\r
+ $query = 'UPDATE '\r
+ . sql_table('comment') . ' '\r
+ . 'SET '\r
+ . ' cblog = %d' . ' '\r
+ . 'WHERE '\r
+ . ' citem = %d';\r
+ sql_query(sprintf($query, $destblogid, $oItem->inumber));\r
+ }\r
+ \r
+ // update items (iblog)\r
+ $query = 'UPDATE '\r
+ . sql_table('item') . ' '\r
+ . 'SET '\r
+ . ' iblog = %d '\r
+ . 'WHERE '\r
+ . ' icat = %d';\r
+ sql_query(sprintf($query, $destblogid, $catid));\r
+ \r
+ // move category\r
+ $query = 'UPDATE '\r
+ . sql_table('category') . ' '\r
+ . 'SET '\r
+ . ' cblog = %d' . ' '\r
+ . 'WHERE '\r
+ . ' catid = %d';\r
+ sql_query(sprintf($query, $destblogid, $catid));\r
+ $manager->notify(\r
+ 'PostMoveCategory',\r
+ array(\r
+ 'catid' => &$catid,\r
+ 'sourceblog' => &$blog,\r
+ 'destblog' => $destblog\r
+ )\r
+ );\r
+ return;\r
+ }\r
+\r
+ /**\r
* Admin::action_blogsettingsupdate\r
* Updating blog settings\r
* \r
* @param string $msg message that will be shown\r
* @return void\r
*/\r
- static private function error($msg)\r
+ static public function error($msg)\r
{\r
self::$headMess = $msg;\r
self::pagehead();\r
* @param void\r
* @return void\r
*/\r
- static private function disallow()\r
+ static public function disallow()\r
{\r
ActionLog::add(WARNING, _ACTIONLOG_DISALLOWED . serverVar('REQUEST_URI'));\r
self::error(_ERROR_DISALLOWED);\r
/**\r
* Admin::getAdminextrahead()\r
*/\r
- static function getAdminextrahead()\r
+ static public function getAdminextrahead()\r
{\r
return self::$extrahead;\r
}\r
/**\r
* Admin::getAdminpassvar()\r
*/\r
- static function getAdminpassvar()\r
+ static public function getAdminpassvar()\r
{\r
return self::$passvar;\r
}\r
/**\r
* Admin::getAdminAction()\r
*/\r
- static function getAdminAction()\r
+ static public function getAdminAction()\r
{\r
return self::$action;\r
}\r
/**\r
* Admin::getAdminaOption()\r
*/\r
- static function getAdminaOption()\r
+ static public function getAdminaOption()\r
{\r
return self::$aOptions;\r
}\r
// walk over all selectedids and perform action
foreach ( $selected as $selectedid )
{
- echo $selectedid;
$error = '';
$selectedid = intval($selectedid);
-
switch ( $action )
{
case 'delete':
}
break;
case 'move':
- $error = call_user_func_array(array('Admin', $moveaction), array($selectedid));
+ $error = call_user_func_array(array('Admin', $moveaction), array($selectedid, $destid));
break;
case 'setadmin':
// always succeeds
$parser->parse($template);
$template = ob_get_contents();
ob_end_clean();
-
+ echo Template::fill($template, $data);
}
- echo Template::fill($template, $data);
return;
}
public function parse_batchmovelist()
{
$selected = requestIntArray('batch');
+ $count = 0;
foreach ( $selected as $select )
{
- echo '<input type="hidden" name="batch[' . ($select++) . ']" value="' . intval($select) . "\" />\n";
+ echo '<input type="hidden" name="batch[' . ($count) . ']" value="' . intval($select) . "\" />\n";
+ $count++;
}
return;
}
*/
public function parse_insertpluginfo($type)
{
- $option = Admin::$aOptions;
+ $option = Admin::getAdminaOption();
switch ( $type )
{
case 'id':
*/
public function parse_insplugoptcontent()
{
- $option = Admin::$aOption;
+ $option = Admin::getAdminaOption();
$meta = NucleusPlugin::getOptionMeta($option['typeinfo']);
if ( array_key_exists('access', $meta) && $meta['access'] != 'hidden' )
*/
public function parse_listplugplugoptionrow($templateName = '')
{
- echo listplug_plugOptionRow(Admin::$aOptions, $templateName);
+ echo listplug_plugOptionRow(Admin::getAdminaOption(), $templateName);
return;
}
</form>
]]></part>
<part name="batchcategory"><![CDATA[<a href="<%adminurl%>index.php?action=overview"><%text(_BACKHOME)%></a>
- <h2><%text(BATCH_CATEGORIES)%></h2>
+ <h2><%text(_BATCH_CATEGORIES)%></h2>
<p><%text(_BATCH_EXECUTING)%><b><%adminbatchaction%></b></p>
<ul>
<%adminbatchlist%>
<part name="batchmove"><![CDATA[<h2><%text(_MOVE_TITLE)%></h2>
<form method="post" action="<%adminurl%>index.php">
<div>
- <input type="hidden" name="action" value="batch<%batchmovetype%>" />
+ <input type="hidden" name="action" value="<%batchmovetype%>" />
<input type="hidden" name="batchaction" value="move" />
<%ticket%>
<%batchmovelist%>
<part name="batchmovecat"><![CDATA[<h2><%text(_MOVECAT_TITLE)%></h2>
<form method="post" action="<%adminurl%>index.php">
<div>
- <input type="hidden" name="action" value="batch<%batchmovetype%>" />
+ <input type="hidden" name="action" value="<%batchmovetype%>" />
<input type="hidden" name="batchaction" value="move" />
<%ticket%>
<%batchmovelist%>