blog->getCategory((integer) $_POST['del_cat']);
if ($c->isEmpty()) {
throw new Exception(__('This category does not exist.'));
}
unset($c);
$core->blog->delCategory($_POST['del_cat']);
http::redirect('categories.php?del=1');
}
catch (Exception $e)
{
$core->error->add($e->getMessage());
}
}
# Reset order
if (!empty($_POST['reset']))
{
try
{
$core->blog->resetCategoriesOrder();
http::redirect('categories.php?reord=1');
}
catch (Exception $e)
{
$core->error->add($e->getMessage());
}
}
/* Display
-------------------------------------------------------- */
dcPage::open(__('Categories'),
dcPage::jsToolMan()."\n".
dcPage::jsLoad('js/_categories.js')
);
if (!empty($_GET['add'])) {
echo '
'.__('The category has been successfully created.').'
';
}
if (!empty($_GET['del'])) {
echo ''.__('The category has been successfully removed.').'
';
}
if (!empty($_GET['reord'])) {
echo ''.__('Categories have been successfully reordered.').'
';
}
if (!empty($_GET['moved'])) {
echo ''.__('The category has been successfully moved.').'
';
}
echo ''.html::escapeHTML($core->blog->name).' › '.__('Categories').'
';
$rs = $core->blog->getCategories(array('post_type'=>'post'));
echo
''.
'
';
if ($rs->isEmpty())
{
echo '
'.__('No category yet.').'
';
}
else
{
echo
'
'.__('Categories list').'
'.
'
';
$ref_level = $level = $rs->level-1;
while ($rs->fetch())
{
$attr = 'id="cat'.$rs->cat_id.'"';
if ($rs->nb_total == 0) {
$attr .= ' class="deletable"';
}
if ($rs->level > $level) {
echo str_repeat('
- ',$rs->level - $level);
} elseif ($rs->level < $level) {
echo str_repeat('
',-($rs->level - $level));
}
if ($rs->level <= $level) {
echo '
';
}
echo
''.html::escapeHTML($rs->cat_title).''.
' ('.
sprintf(($rs->nb_post > 1 ? __('%d entries') : __('%d entry') ),$rs->nb_post).''.
', '.__('total:').' '.$rs->nb_total.')
'.
''.__('URL:').' '.html::escapeHTML($rs->cat_url).'
';
$level = $rs->level;
}
if ($ref_level - $level < 0) {
echo str_repeat('',-($ref_level - $level));
}
echo '
';
}
echo '
';
echo '
'.
'
';
if (!$rs->isEmpty())
{
$deletable = array();
$l = $rs->level;
$full_name = array($rs->cat_title);
while ($rs->fetch())
{
if ($rs->level < $l) {
$full_name = array();
} elseif ($rs->level == $l) {
array_pop($full_name);
}
$full_name[] = html::escapeHTML($rs->cat_title);
if ($rs->nb_post == 0) {
$deletable[implode(' / ',$full_name)] = $rs->cat_id;
}
$l = $rs->level;
}
if (count($deletable) > 0)
{
echo
'
';
}
echo
'
';
}
echo '
';
echo '
';
dcPage::helpBlock('core_categories');
dcPage::close();
?>