3000) {
$_SESSION['ari_error']
.= _("To many files in $msg_path Not all files processed") . "
";
return;
}
if ($recursive_count<$recursive_max && is_dir($msg_path)) {
$dirCount++;
if ($dirCount>10) {
$_SESSION['ari_error']
.= sprintf(_("To many directories in %s Not all files processed"),$msg_path) . "
";
return;
}
$count = $recursive_count + 1;
$path_files = getFiles($msg_path,$filter,$recursive_max,$count);
$files = array_merge($files,$path_files);
}
else {
$found = 0;
if ($filter) {
if (strpos($msg_path,$filter)) {
$found = 1;
}
} else {
$found = 1;
}
if ($found) {
$files[count($files) + 1] = $msg_path;
}
}
}
}
}
return $files;
}
/* Utilities */
/**
* Fixes the path for a trailing slash
*
* @param $path
* path to append
* @return $ret
* path to returned
*/
function fixPathSlash($path) {
$ret = $path;
$slash = '';
if (!preg_match('/\/$/',$path)) {
$slash = '/';
}
$ret .= $slash;
return $ret;
}
/**
* Appends folder to end of path
*
* @param $path
* path to append
* @param $folder
* folder to append to path
* @return $ret
* path to returned
*/
function appendPath($path,$folder) {
$ret = $path;
$m = '';
if (!preg_match('/\/$/',$path)) {
$m = '/';
}
$ret .= $m . $folder;
return $ret;
}
/**
* Get Date format
*
* @param $timestamp
* timestamp to be converted
*/
function getDateFormat($timestamp) {
return date('Y-m-d', $timestamp);
}
/**
* Get time format
*
* @param $timestamp
* timestamp to be converted
*/
function getTimeFormat($timestamp) {
return date('G:i:s', $timestamp);
}
/* */
/**
* Checks ARI dependencies
*/
function checkDependencies() {
// check for PHP
if (!version_compare(phpversion(), '4.3', '>=')) {
echo _("ARI requires a version of PHP 4.3 or later");
exit();
}
// check for PEAR
$include_path = ini_get('include_path');
$buf = split(':|,',$include_path);
$found = 0;
foreach ($buf as $path) {
$path = fixPathSlash($path);
$pear_check_path = $path . "DB.php";
if (is_file($pear_check_path)) {
$found = 1;
break;
}
}
if (!$found) {
echo _("PHP PEAR must be installed. Visit http://pear.php.net for help with installation.");
exit();
}
}
/**
* Starts the session
*/
function startARISession() {
if (!isset($_SESSION['ari_user']) ) {
// start a new session for the user
ini_set('session.name', 'ARI'); // prevent session name clashes
ini_set('session.gc_maxlifetime', '3900'); // make the session timeout a long time
set_time_limit(360);
session_start();
}
}
/**
* Bootstrap
*
* Loads critical variables needed for every page request
*
*/
function bootstrap() {
// set error reporting
error_reporting (E_ALL & ~ E_NOTICE);
}
/**
* Set HTTP headers in preparation for a page response.
*
* TODO: Figure out caching
*/
function ariPageHeader() {
bootstrap();
}
/**
* Perform end-of-request tasks.
*
* This function sets the page cache if appropriate, and allows modules to
* react to the closing of the page by calling hook_exit().
*/
function ariPageFooter() {
}
/**
* Includes and run functions
*/
include_once("./includes/lang.php");
$language = new Language();
$language->set();
checkDependencies();
startARISession();
setARIRoot();
include_once("./includes/main.conf.php");
include_once("./version.php");
include_once("./includes/crypt.php");
include_once("./includes/login.php");
?>