<?php class NP_AdmTools extends NucleusPlugin { function getName() { return 'AdmTools'; } function getAuthor() { return 'moraes'; } function getURL() { return 'http://forum.nucleuscms.org'; } function getVersion() { return '0.4'; } function getDescription() { return 'Tools to help blog management.'; } function supportsFeature($feature) { switch($feature) { case 'SqlTablePrefix': return 1; default: return 0; } } function getEventList() { return array('QuickMenu'); } function hasAdminArea() { return 1; } function event_QuickMenu(&$data) { global $member; // only show the quick menu link to admins if (!($member->isLoggedIn() && $member->isAdmin())) return; array_push( $data['options'], array( 'title' => 'AdmTools', 'url' => $this->getAdminURL(), 'tooltip' => 'AdmTools' ) ); } } // class ?>
<?php /*****************************************/ /* NP_AdmTools */ /* ------------------------------------ */ /* by Rodrigo Moraes */ /* http://www.tipos.com.br */ /*****************************************/ $strRel = '../../../'; include($strRel . 'config.php'); include($DIR_LIBS . 'PLUGINADMIN.php'); // create the admin area page $oPluginAdmin = new PluginAdmin('AdmTools'); $oPluginAdmin->start(); if (!$member->isLoggedIn()) { doError('You are not logged in.'); $oPluginAdmin->end(); } $admtools=$CONF['PluginURL']; // plugin headline echo '<h2>Adm Tools</h2>'; copyItem(); function blogToCopy() { echo '<form method="post" action="'.$admtools.'">'; echo '<input type="hidden" name="action" value="categorytocopy" />'; echo '<table><thead><tr>'; echo '<th colspan="2">Copy Item: Step 1 of 2</th></tr></thead><tbody>'; echo '<tr><td>'; echo 'Copy item number:'; echo '</td><td>'; echo '<input type="text" name="item_id" />'; echo '</td></tr>'; echo '<tr><td>'; echo 'To blog:'; echo '</td><td>'; echo '<select name="blog_id">'; $query = sql_query("SELECT bnumber, bname FROM ".sql_table('blog')." ORDER BY bnumber ASC"); while($row=mysql_fetch_array($query)) { $blog = new BLOG($row['bnumber']); $blog_id = $blog->getID(); $blog_name = $blog->getName(); echo '<option value="'.$blog_id.'">'.$blog_name.'</option>'; } echo '</select>'; echo '</td></tr>'; echo '<tr><td colspan="2">'; echo '<input type="submit" name="submit" value="next step" />'; echo '</td></tr>'; echo '</tbody></table>'; echo '</form>'; } function categoryToCopy() { $item_id = postVar('item_id'); $blog_id = postVar('blog_id'); echo '<form method="post" action="'.$admtools.'">'; echo '<input type="hidden" name="action" value="copyitem" />'; echo '<input type="hidden" name="item_id" value="'.$item_id.'" />'; echo '<input type="hidden" name="blog_id" value="'.$blog_id.'" />'; echo '<table><thead><tr>'; echo '<th colspan="2">Copy Item: Step 2 of 2</th></tr></thead><tbody>'; echo '<tr><td>'; echo 'Select a category:'; echo '</td><td>'; echo '<select name="category_id">'; $query = sql_query("SELECT catid, cname FROM ".sql_table('category')." WHERE cblog=$blog_id ORDER BY cname ASC"); $blog = new BLOG($blog_id); while($row=mysql_fetch_array($query)) { $category_id = $row['catid']; $category_name = $blog->getCategoryName($category_id); echo '<option value="'.$category_id.'">'.$category_name.'</option>'; } echo '</select>'; echo '</td></tr>'; echo '<tr><td colspan="2">'; echo '<input type="submit" name="submit" value="copy item" />'; echo '</td></tr>'; echo '</tbody></table>'; echo '</form>'; } function copyItem() { $item_id = postVar('item_id'); $blog_id = postVar('blog_id'); $category_id = postVar('category_id'); if(empty($blog_id)) { blogToCopy(); } elseif(empty($category_id)) { categoryToCopy(); } else { $query = sql_query("SELECT * FROM ".sql_table('item')." WHERE inumber=".$item_id); if(mysql_num_rows($query) == 1) { $idata = mysql_fetch_array($query); echo '<p>'.$idata['ititle'].'</p>'; if (getNucleusVersion() < 330) { $atquery = "INSERT INTO ".sql_table('item')." VALUES ('', '".addslashes($idata['ititle'])."', '".addslashes($idata['ibody'])."', '".addslashes($idata['imore'])."', '".$blog_id."', '".$idata['iauthor']."', '".$idata['itime']."', '".$idata['iclosed']."', '".$idata['idraft']."', '".$idata['ikarmapos']."', '".$category_id."', '".$idata['ikarmaneg']."')"; } else { $atquery = "INSERT INTO ".sql_table('item'); $atquery .= " (inumber,ititle,ibody,imore,iblog,iauthor,itime,iclosed,idraft,ikarmapos,icat,ikarmaneg,iposted)"; $atquery .= " VALUES ('', '".addslashes($idata['ititle'])."', '".addslashes($idata['ibody'])."', '".addslashes($idata['imore'])."', '".$blog_id."', '".$idata['iauthor']."', '".$idata['itime']."', '".$idata['iclosed']."', '".$idata['idraft']."', '".$idata['ikarmapos']."', '".$category_id."', '".$idata['ikarmaneg']."', '".$idata['ikarmaneg']."')"; } sql_query($atquery); echo '<p>Success! The item was copied.</p>'; blogToCopy(); } else { echo '<p>No such item exists.</p>'; } } } $oPluginAdmin->end(); ?>