([^\<]*)\<\/a\>/i');
$to = array("\\r\\n' + \r\n'", "$1", "$1");
return preg_replace($from, $to, $str);
} // END hesk_jsString()
function hesk_myCategories($what = 'category')
{
if (!empty($_SESSION['isadmin'])) {
return '1';
} else {
return " `" . hesk_dbEscape($what) . "` IN ('" . implode("','", array_map('intval', $_SESSION['categories'])) . "')";
}
} // END hesk_myCategories()
function hesk_okCategory($cat, $error = 1, $user_isadmin = false, $user_cat = false)
{
global $hesklang;
/* Checking for current user or someone else? */
if ($user_isadmin === false) {
$user_isadmin = $_SESSION['isadmin'];
}
if ($user_cat === false) {
$user_cat = $_SESSION['categories'];
}
/* Is admin? */
if ($user_isadmin) {
return true;
} /* Staff with access? */
elseif (in_array($cat, $user_cat)) {
return true;
} /* No access */
else {
if ($error) {
hesk_error($hesklang['not_authorized_tickets']);
} else {
return false;
}
}
} // END hesk_okCategory()
function hesk_checkPermission($feature, $showerror = 1)
{
global $hesklang;
/* Admins have full access to all features */
if (isset($_SESSION['isadmin']) && $_SESSION['isadmin']) {
return true;
}
/* Check other staff for permissions */
if (isset($_SESSION['heskprivileges']) && strpos($_SESSION['heskprivileges'], $feature) === false) {
if ($showerror) {
hesk_error($hesklang['no_permission'] . '
' . $hesklang['click_login'] . '');
} else {
return false;
}
} else {
return true;
}
} // END hesk_checkPermission()