From: Mike G. v. a. <we...@ma...> - 2009-02-11 03:41:06
|
Log Message: ----------- Added ability to automatically create html_temp directory -- which is often missing if the course hasn't been used when preparing course for archival. Modified Files: -------------- webwork2/lib/WeBWorK/Utils: CourseIntegrityCheck.pm Revision Data ------------- Index: CourseIntegrityCheck.pm =================================================================== RCS file: /webwork/cvs/system/webwork2/lib/WeBWorK/Utils/CourseIntegrityCheck.pm,v retrieving revision 1.3 retrieving revision 1.4 diff -Llib/WeBWorK/Utils/CourseIntegrityCheck.pm -Llib/WeBWorK/Utils/CourseIntegrityCheck.pm -u -r1.3 -r1.4 --- lib/WeBWorK/Utils/CourseIntegrityCheck.pm +++ lib/WeBWorK/Utils/CourseIntegrityCheck.pm @@ -27,6 +27,7 @@ use warnings; use WeBWorK::Debug; use WeBWorK::Utils::CourseManagement qw/listCourses/; +use WeBWorK::PG::IO; use constant { # constants describing the comparison of two hashes. ONLY_IN_A=>0, @@ -306,6 +307,41 @@ return ( $directories_ok, $str); } +=item $CIchecker->updateCourseDirectories($courseName); + +Creates some course directories automatically. + + +=cut + +sub updateCourseDirectories { + my ($self) = @_; + my $ce = $self->{ce}; + my @webworkDirectories = keys %{$ce->{webworkDirs}}; + my @courseDirectories = keys %{$ce->{courseDirs}}; + + my %updateable_directories = (html_temp=>1); #FIXME this is hardwired for the time being. + + foreach my $dir (sort @courseDirectories) { + next unless exists $updateable_directories{$dir}; + my $path = $ce->{courseDirs}->{$dir}; + unless ( -e $path) { # if by some unlucky chance the tmpDirectory hasn't been created, create it. + my $parentDirectory = $path; + $parentDirectory =~s|/$||; # remove a trailing / + $parentDirectory =~s|/\w*$||; # remove last node + my ($perms, $groupID) = (stat $parentDirectory)[2,5]; + WeBWorK::PG::IO::createDirectory($path, $perms, $groupID) + or warn "Failed to create directory at $path"; + + } + } + + return ( ); +} + + + + ############################################################################## # Database utilities -- borrowed from DBUpgrade.pm ??use or modify??? --MEG ############################################################################## |