Update storage.php
This commit is contained in:
parent
c1e0f92b91
commit
0c1c203427
|
@ -227,6 +227,7 @@ if(!check_function_exists("remove_storage_file")) {
|
||||||
$result = false;
|
$result = false;
|
||||||
|
|
||||||
$storage_type = get_value_in_array("storage_type", $options, "data");
|
$storage_type = get_value_in_array("storage_type", $options, "data");
|
||||||
|
$max_age = intval(get_value_in_array("max_age", $options, 0)); // max_age (seconds), the value 0 is forever
|
||||||
$upload_base_path = get_storage_path($storage_type);
|
$upload_base_path = get_storage_path($storage_type);
|
||||||
$upload_base_url = get_storage_url($storage_type);
|
$upload_base_url = get_storage_url($storage_type);
|
||||||
$upload_filename = sprintf("%s/%s", $upload_base_path, get_safe_path($filename));
|
$upload_filename = sprintf("%s/%s", $upload_base_path, get_safe_path($filename));
|
||||||
|
@ -240,6 +241,19 @@ if(!check_function_exists("remove_storage_file")) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if(file_exists($upload_filename)) {
|
if(file_exists($upload_filename)) {
|
||||||
|
$is_valid = false;
|
||||||
|
$upload_mtime = filemtime($upload_filename);
|
||||||
|
$upload_age = get_current_timestamp() - $upload_mtime;
|
||||||
|
|
||||||
|
if(file_exists($upload_filename)) {
|
||||||
|
if($max_age > 0) {
|
||||||
|
$is_valid = ($upload_age > $max_age);
|
||||||
|
} else {
|
||||||
|
$is_valid = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($is_valid) {
|
||||||
if(!array_key_empty("chmod", $options)) {
|
if(!array_key_empty("chmod", $options)) {
|
||||||
@chmod($upload_filename, $options['chmod']);
|
@chmod($upload_filename, $options['chmod']);
|
||||||
}
|
}
|
||||||
|
@ -259,11 +273,32 @@ if(!check_function_exists("remove_storage_file")) {
|
||||||
|
|
||||||
$result = !file_exists($upload_filename);
|
$result = !file_exists($upload_filename);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(check_function_exists("remove_storage_files")) {
|
||||||
|
function remove_storage_files($storage_type, $options=array()) {
|
||||||
|
$failed = 0;
|
||||||
|
|
||||||
|
$max_age = intval(get_value_in_array("max_age", $options, 0));
|
||||||
|
$filenames = iterate_storage_files($storage_type);
|
||||||
|
foreach($filenames as $filename) {
|
||||||
|
$rm = remove_storage_file($filename, array(
|
||||||
|
"storage_type" => $storage_type,
|
||||||
|
"max_age" => $max_age
|
||||||
|
));
|
||||||
|
if(!$rm) {
|
||||||
|
$failed++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $failed;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(!check_function_exists("write_storage_file")) {
|
if(!check_function_exists("write_storage_file")) {
|
||||||
function write_storage_file($data, $options=array()) {
|
function write_storage_file($data, $options=array()) {
|
||||||
$result = false;
|
$result = false;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user