From 98a85772f58bca43b7c9950ecc9ef0046eb67ee4 Mon Sep 17 00:00:00 2001 From: nicolasconnault Date: Thu, 1 Nov 2007 08:45:30 +0000 Subject: [PATCH] MDL-11912 Creating 1000's layer directory first, then userid directory: no need for recursion --- backup/backuplib.php | 13 ++++++++++++- lib/moodlelib.php | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/backup/backuplib.php b/backup/backuplib.php index 135ce99af4..e49dac9ab3 100644 --- a/backup/backuplib.php +++ b/backup/backuplib.php @@ -2219,7 +2219,18 @@ $data = count_records("backup_ids","backup_code",$preferences->backup_unique_code, "table_name","user", "old_id",$userid); //If exists, copy it if ($data) { - $status = backup_copy_file($userinfo['basedir'] . '/' . $userinfo['userfolder'], + $parts = explode('/', $userinfo['userfolder']); + $status = true; + + if (is_array($parts)) { + $group = $parts[0]; + $userid = $parts[1]; + + // Create group dir first + $status = check_dir_exists($userinfo['basedir'] . '/' . $group, true); + } + + $status = $status && backup_copy_file($userinfo['basedir'] . '/' . $userinfo['userfolder'], "$CFG->dataroot/temp/backup/$preferences->backup_unique_code/user_files/{$userinfo['userfolder']}"); } } diff --git a/lib/moodlelib.php b/lib/moodlelib.php index 3371cb5232..e0bbc0bd34 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -4183,7 +4183,7 @@ function get_user_directories($only_non_empty=true, $legacy=false) { $dirlist = array(); //Check if directory exists - if (is_dir($rootdir)) { + if (check_dir_exists($rootdir, true)) { if ($legacy) { if ($userlist = get_directory_list($rootdir, '', true, true, false)) { foreach ($userlist as $userid) { -- 2.39.5