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"); ?>