Skip to content
Snippets Groups Projects
Commit e3a79697 authored by Peter Rotich's avatar Peter Rotich
Browse files

Add util methods

 - get_path_info() - simply returns the PATH_INFO if available
 - get_var() - get var from an array - checks if index is set & can validate type.
parent ba72326a
No related branches found
No related tags found
No related merge requests found
......@@ -26,11 +26,11 @@ define('LOG_WARN',LOG_WARNING);
class osTicket {
var $loglevel=array(1=>'Error','Warning','Debug');
//Page errors.
var $errors;
//System
//System
var $system;
......@@ -47,7 +47,7 @@ class osTicket {
var $csrf;
function osTicket($cfgId) {
$this->config = Config::lookup($cfgId);
//DB based session storage was added starting with v1.7
......@@ -109,7 +109,7 @@ class osTicket {
$name = $name?$name:$this->getCSRF()->getTokenName();
if(isset($_POST[$name]) && $this->validateCSRFToken($_POST[$name]))
return true;
if(isset($_SERVER['HTTP_X_CSRFTOKEN']) && $this->validateCSRFToken($_SERVER['HTTP_X_CSRFTOKEN']))
return true;
......@@ -129,7 +129,7 @@ class osTicket {
}
function isFileTypeAllowed($file, $mimeType='') {
if(!$file || !($allowedFileTypes=$this->getConfig()->getAllowedFileTypes()))
return false;
......@@ -148,9 +148,9 @@ class osTicket {
/* Replace Template Variables */
function replaceTemplateVariables($input, $vars=array()) {
$replacer = new VariableReplacer();
$replacer->assign(array_merge($vars,
$replacer->assign(array_merge($vars,
array('url' => $this->getConfig()->getBaseUrl())
));
......@@ -220,7 +220,7 @@ class osTicket {
function alertAdmin($subject, $message, $log=false) {
//Set admin's email address
if(!($to=$this->getConfig()->getAdminEmail()))
$to=ADMIN_EMAIL;
......@@ -231,7 +231,7 @@ class osTicket {
//Try getting the alert email.
$email=null;
if(!($email=$this->getConfig()->getAlertEmail()))
if(!($email=$this->getConfig()->getAlertEmail()))
$email=$this->getConfig()->getDefaultEmail(); //will take the default email.
if($email) {
......@@ -257,7 +257,7 @@ class osTicket {
function logWarning($title, $message, $alert=true) {
return $this->log(LOG_WARN, $title, $message, $alert);
}
function logError($title, $error, $alert=true) {
return $this->log(LOG_ERR, $title, $error, $alert);
}
......@@ -275,8 +275,8 @@ class osTicket {
//We are providing only 3 levels of logs. Windows style.
switch($priority) {
case LOG_EMERG:
case LOG_ALERT:
case LOG_CRIT:
case LOG_ALERT:
case LOG_CRIT:
case LOG_ERR:
$level=1; //Error
break;
......@@ -306,9 +306,9 @@ class osTicket {
',log_type='.db_input($loglevel[$level]).
',log='.db_input($message).
',ip_address='.db_input($_SERVER['REMOTE_ADDR']);
mysql_query($sql); //don't use db_query to avoid possible loop.
return true;
}
......@@ -320,11 +320,48 @@ class osTicket {
//System logs
$sql='DELETE FROM '.SYSLOG_TABLE.' WHERE DATE_ADD(created, INTERVAL '.$gp.' MONTH)<=NOW()';
db_query($sql);
//TODO: Activity logs
return true;
}
/*
* Util functions
*
*/
function get_var($index, $vars, $default='', $type=null) {
if(is_array($vars)
&& array_key_exists($index, $vars)
&& (!$type || gettype($vars[$index])==$type))
return $vars[$index];
return $default;
}
function get_db_input($index, $vars, $quote=true) {
return db_input($this->get_var($index, $vars), $quote);
}
function get_path_info() {
if(isset($_SERVER['PATH_INFO']))
return $_SERVER['PATH_INFO'];
if(isset($_SERVER['ORIG_PATH_INFO']))
return $_SERVER['ORIG_PATH_INFO'];
//TODO: conruct possible path info.
return null;
}
/* returns true if script is being executed via commandline */
function is_cli() {
return (!strcasecmp(substr(php_sapi_name(), 0, 3), 'cli')
|| (!$_SERVER['REQUEST_METHOD'] && !$_SERVER['HTTP_HOST']) //Fallback when php-cgi binary is used via cli
);
}
/**** static functions ****/
function start($configId) {
......@@ -338,13 +375,6 @@ class osTicket {
return $ost;
}
/* is_cli */
function is_cli() {
return (!strcasecmp(substr(php_sapi_name(), 0, 3), 'cli')
|| (!$_SERVER['REQUEST_METHOD'] && !$_SERVER['HTTP_HOST']) //Fallback when php-cgi binary is used via cli
);
}
}
?>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment