array('id' => 3, 'value' => 'low', 'text' => $hesklang['low'], 'formatted' => $hesklang['low']), 'medium' => array('id' => 2, 'value' => 'medium', 'text' => $hesklang['medium'], 'formatted' => $hesklang['medium']), 'high' => array('id' => 1, 'value' => 'high', 'text' => $hesklang['high'], 'formatted' => $hesklang['high']), 'critical' => array('id' => 0, 'value' => 'critical', 'text' => $hesklang['critical'], 'formatted' => $hesklang['critical']), ); /* What should we do? */ if ( $action = hesk_REQUEST('a') ) { if ($action == 'linkcode') {generate_link_code();} elseif ( defined('HESK_DEMO') ) {hesk_process_messages($hesklang['ddemo'], 'manage_categories.php', 'NOTICE');} elseif ($action == 'new') {new_cat();} elseif ($action == 'rename') {rename_cat();} elseif ($action == 'remove') {remove();} elseif ($action == 'order') {order_cat();} elseif ($action == 'autoassign') {toggle_autoassign();} elseif ($action == 'type') {toggle_type();} elseif ($action == 'priority') {change_priority();} } /* Print header */ require_once(HESK_PATH . 'inc/header.inc.php'); /* Print main manage users page */ require_once(HESK_PATH . 'inc/show_admin_nav.inc.php'); /* This will handle error, success and notice messages */ if (!hesk_SESSION('error')) { hesk_handle_messages(); } ?>

'.$mycat['name'].''; ?> data-category-id="">
' . $hesklang['cpri'] . ''; ?>
(%) 1) { if ($j == 1) { ?>
>

'; hesk_handle_messages(); echo '
'; } ?>
value="">
:
'.stripslashes($catname).''),'manage_categories.php','SUCCESS'); } // End new_cat() function rename_cat() { global $hesk_settings, $hesklang; /* A security check */ hesk_token_check('POST'); $_SERVER['PHP_SELF'] = 'manage_categories.php?catid='.intval( hesk_POST('catid') ); $catid = hesk_isNumber( hesk_POST('catid'), $hesklang['choose_cat_ren'], $_SERVER['PHP_SELF']); $_SESSION['selcat'] = $catid; $_SESSION['selcat2'] = $catid; $catname = hesk_input( hesk_POST('name'), $hesklang['cat_ren_name'], $_SERVER['PHP_SELF']); $_SESSION['catname2'] = stripslashes($catname); $res = hesk_dbQuery("SELECT `id` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` WHERE `name` LIKE '".hesk_dbEscape( hesk_dbLike($catname) )."' LIMIT 1"); if (hesk_dbNumRows($res) != 0) { $old = hesk_dbFetchAssoc($res); if ($old['id'] == $catid) { hesk_process_messages($hesklang['noch'],$_SERVER['PHP_SELF'],'NOTICE'); } else { hesk_process_messages($hesklang['cndupl'],$_SERVER['PHP_SELF']); } } hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` SET `name`='".hesk_dbEscape($catname)."' WHERE `id`='".intval($catid)."'"); unset($_SESSION['selcat']); unset($_SESSION['catname2']); hesk_process_messages($hesklang['cat_renamed_to'].' '.stripslashes($catname).'',$_SERVER['PHP_SELF'],'SUCCESS'); } // End rename_cat() function remove() { global $hesk_settings, $hesklang; /* A security check */ hesk_token_check(); $_SERVER['PHP_SELF'] = 'manage_categories.php'; $mycat = intval( hesk_GET('catid') ) or hesk_error($hesklang['no_cat_id']); if ($mycat == 1) { hesk_process_messages($hesklang['cant_del_default_cat'],$_SERVER['PHP_SELF']); } hesk_dbQuery("DELETE FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` WHERE `id`='".intval($mycat)."'"); if (hesk_dbAffectedRows() != 1) { hesk_error("$hesklang[int_error]: $hesklang[cat_not_found]."); } hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."tickets` SET `category`=1 WHERE `category`='".intval($mycat)."'"); hesk_process_messages($hesklang['cat_removed_db'],$_SERVER['PHP_SELF'],'SUCCESS'); } // End remove() function order_cat() { global $hesk_settings, $hesklang; /* A security check */ hesk_token_check(); $catid = intval( hesk_GET('catid') ) or hesk_error($hesklang['cat_move_id']); $_SESSION['selcat2'] = $catid; $cat_move=intval( hesk_GET('move') ); hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` SET `cat_order`=`cat_order`+".intval($cat_move)." WHERE `id`='".intval($catid)."'"); if (hesk_dbAffectedRows() != 1) { hesk_error("$hesklang[int_error]: $hesklang[cat_not_found]."); } /* Update all category fields with new order */ $res = hesk_dbQuery("SELECT `id` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` ORDER BY `cat_order` ASC"); $i = 10; while ($mycat=hesk_dbFetchAssoc($res)) { hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` SET `cat_order`=".intval($i)." WHERE `id`='".intval($mycat['id'])."'"); $i += 10; } header('Location: manage_categories.php'); exit(); } // End order_cat() function toggle_autoassign() { global $hesk_settings, $hesklang; /* A security check */ hesk_token_check(); $catid = intval( hesk_GET('catid') ) or hesk_error($hesklang['cat_move_id']); $_SESSION['selcat2'] = $catid; if ( intval( hesk_GET('s') ) ) { $autoassign = 1; $tmp = $hesklang['caaon']; } else { $autoassign = 0; $tmp = $hesklang['caaoff']; } /* Update auto-assign settings */ hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` SET `autoassign`='".intval($autoassign)."' WHERE `id`='".intval($catid)."'"); if (hesk_dbAffectedRows() != 1) { hesk_process_messages($hesklang['int_error'].': '.$hesklang['cat_not_found'],'./manage_categories.php'); } hesk_process_messages($tmp,'./manage_categories.php','SUCCESS'); } // End toggle_autoassign() function toggle_type() { global $hesk_settings, $hesklang; /* A security check */ hesk_token_check(); $catid = intval( hesk_GET('catid') ) or hesk_error($hesklang['cat_move_id']); $_SESSION['selcat2'] = $catid; if ( intval( hesk_GET('s') ) ) { $type = 1; $tmp = $hesklang['cpriv']; } else { $type = 0; $tmp = $hesklang['cpub']; } /* Update auto-assign settings */ hesk_dbQuery("UPDATE `".hesk_dbEscape($hesk_settings['db_pfix'])."categories` SET `type`='{$type}' WHERE `id`='".intval($catid)."'"); if (hesk_dbAffectedRows() != 1) { hesk_process_messages($hesklang['int_error'].': '.$hesklang['cat_not_found'],'./manage_categories.php'); } hesk_process_messages($tmp,'./manage_categories.php','SUCCESS'); } // End toggle_type() ?>