97 lines
2.6 KiB
PHP
97 lines
2.6 KiB
PHP
<?php defined('BLUDIT') or die('Bludit CMS.');
|
|
|
|
// ============================================================================
|
|
// Check role
|
|
// ============================================================================
|
|
|
|
if($Login->role()!=='admin') {
|
|
Alert::set($Language->g('you-do-not-have-sufficient-permissions'));
|
|
Redirect::page('admin', 'dashboard');
|
|
}
|
|
|
|
// ============================================================================
|
|
// Functions
|
|
// ============================================================================
|
|
|
|
function edit($oldCategoryKey, $newCategory)
|
|
{
|
|
global $Language;
|
|
global $dbPages;
|
|
global $dbCategories;
|
|
|
|
if( Text::isEmpty($oldCategoryKey) || Text::isEmpty($newCategory) ) {
|
|
Alert::set($Language->g('Empty fields'));
|
|
Redirect::page('categories');
|
|
}
|
|
|
|
if( $dbCategories->edit($oldCategoryKey, $newCategory) == false ) {
|
|
Alert::set($Language->g('Already exist a category'));
|
|
}
|
|
else {
|
|
$dbPages->changeCategory($oldCategoryKey, $newCategory);
|
|
Alert::set($Language->g('The changes have been saved'));
|
|
}
|
|
|
|
// Add to syslog
|
|
$Syslog->add(array(
|
|
'dictionaryKey'=>'category-edited',
|
|
'notes'=>$newCategory
|
|
));
|
|
|
|
Redirect::page('categories');
|
|
}
|
|
|
|
function delete($categoryKey)
|
|
{
|
|
global $Language;
|
|
global $dbCategories;
|
|
|
|
// Remove the category by key
|
|
$dbCategories->remove($categoryKey);
|
|
|
|
// Add to syslog
|
|
$Syslog->add(array(
|
|
'dictionaryKey'=>'category-deleted',
|
|
'notes'=>$categoryKey
|
|
));
|
|
|
|
// Create an alert
|
|
Alert::set($Language->g('The changes have been saved'));
|
|
|
|
// Redirect
|
|
Redirect::page('categories');
|
|
}
|
|
|
|
// ============================================================================
|
|
// Main before POST
|
|
// ============================================================================
|
|
|
|
// ============================================================================
|
|
// POST Method
|
|
// ============================================================================
|
|
|
|
if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
|
{
|
|
if( isset($_POST['delete']) ) {
|
|
delete($_POST['categoryKey']);
|
|
}
|
|
elseif( isset($_POST['edit']) ) {
|
|
edit($_POST['categoryKey'], $_POST['category']);
|
|
}
|
|
}
|
|
|
|
// ============================================================================
|
|
// Main after POST
|
|
// ============================================================================
|
|
|
|
$categoryKey = $layout['parameters'];
|
|
|
|
if( !$dbCategories->exists($categoryKey) ) {
|
|
Log::set(__METHOD__.LOG_SEP.'Error occurred when trying to get the category: '.$categoryKey);
|
|
Redirect::page('categories');
|
|
}
|
|
|
|
$category = $dbCategories->getName($layout['parameters']);
|
|
|
|
$layout['title'] .= ' - '.$Language->g('Edit Category').' - '.$category;
|