X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=perl%2FSesse%2Fpr0n%2FCommon.pm;h=97ae9cd88d491a65d1e4706394337badcc886718;hb=5867585ba17ba31320e9b8416a28660d952541d1;hp=6317ca4c09f66010a222518cd0a61751426cbe65;hpb=d5656c57d0f9cf32eb61652e49c5b6811e432158;p=pr0n diff --git a/perl/Sesse/pr0n/Common.pm b/perl/Sesse/pr0n/Common.pm index 6317ca4..97ae9cd 100644 --- a/perl/Sesse/pr0n/Common.pm +++ b/perl/Sesse/pr0n/Common.pm @@ -211,7 +211,7 @@ sub get_base { my $r = shift; return $r->dir_config('ImageBase'); } - + sub get_disk_location { my ($r, $id) = @_; my $dir = POSIX::floor($id / 256); @@ -231,6 +231,23 @@ sub get_cache_location { } } +sub ensure_disk_location_exists { + my ($r, $id) = @_; + my $dir = POSIX::floor($id / 256); + + my $img_dir = get_base($r) . "/images/$dir/"; + if (! -d $img_dir) { + $r->log->info("Need to create new image directory $img_dir"); + mkdir($img_dir) or die "Couldn't create new image directory $img_dir"; + } + + my $cache_dir = get_base($r) . "/cache/$dir/"; + if (! -d $cache_dir) { + $r->log->info("Need to create new cache directory $cache_dir"); + mkdir($cache_dir) or die "Couldn't create new image directory $cache_dir"; + } +} + sub get_mipmap_location { my ($r, $id, $width, $height) = @_; my $dir = POSIX::floor($id / 256);