dbqueries = 0; $PERF->logwrites = 0; if (function_exists('microtime')) { $PERF->starttime = microtime(); } if (function_exists('memory_get_usage')) { $PERF->startmemory = memory_get_usage(); } if (function_exists('posix_times')) { $PERF->startposixtimes = posix_times(); } } /** * Create a directory. * * @uses $CFG * @param string $directory a string of directory names under $CFG->dataroot eg stuff/assignment/1 * param bool $shownotices If true then notification messages will be printed out on error. * @return string|false Returns full path to directory if successful, false if not */ function make_upload_directory($directory, $shownotices=true) { global $CFG; $currdir = $CFG->dataroot; umask(0000); if (!file_exists($currdir)) { if (! mkdir($currdir, $CFG->directorypermissions)) { if ($shownotices) { echo '
ERROR: You need to create the directory '. $currdir .' with web server write access
'."
\n"; } return false; } if ($handle = fopen($currdir.'/.htaccess', 'w')) { // For safety @fwrite($handle, "deny from all\r\n"); @fclose($handle); } } $dirarray = explode('/', $directory); foreach ($dirarray as $dir) { $currdir = $currdir .'/'. $dir; if (! file_exists($currdir)) { if (! mkdir($currdir, $CFG->directorypermissions)) { if ($shownotices) { echo '
ERROR: Could not find or create a directory ('. $currdir .')
'."
\n"; } return false; } //@chmod($currdir, $CFG->directorypermissions); // Just in case mkdir didn't do it } } return $currdir; } ?>