X-Git-Url: https://git.p6c8.net/jirafeau_mojo42.git/blobdiff_plain/379a0267c27b3731c60b7221f8f533aaf418fcae..2b4714c704f8ca5567c85a26e9202d5c9b3550e4:/script.php diff --git a/script.php b/script.php index 50726f2..105023f 100644 --- a/script.php +++ b/script.php @@ -81,7 +81,6 @@ if (isset($_FILES['file']) && is_writable(VAR_FILES) exit; } } - $key = ''; if (isset($_POST['key'])) { $key = $_POST['key']; @@ -127,10 +126,17 @@ if (isset($_FILES['file']) && is_writable(VAR_FILES) exit; } + // Check if one time download is enabled + if (!$cfg['one_time_download'] && isset($_POST['one_time_download'])) { + echo 'Error 26: One time download is disabled.'; + exit; + } + $res = jirafeau_upload($_FILES['file'], - isset($_POST['one_time_download']), - $key, $time, get_ip_address($cfg), - $cfg['enable_crypt'], $cfg['link_name_length']); + isset($_POST['one_time_download']), + $key, $time, get_ip_address($cfg), + $cfg['enable_crypt'], $cfg['link_name_length'], + $cfg['file_hash']); if (empty($res) || $res['error']['has_error']) { echo 'Error 6 ' . $res['error']['why']; @@ -180,8 +186,8 @@ if (isset($_FILES['file']) && is_writable(VAR_FILES) echo 'Error 10'; exit; } - $p = s2p($link['md5']); - if (!file_exists(VAR_FILES . $p . $link['md5'])) { + $p = s2p($link['hash']); + if (!file_exists(VAR_FILES . $p . $link['hash'])) { echo 'Error 11'; exit; } @@ -192,7 +198,7 @@ if (isset($_FILES['file']) && is_writable(VAR_FILES) header('Content-Disposition: attachment; filename="' . $link['file_name'] . '"'); - $r = fopen(VAR_FILES . $p . $link['md5'], 'r'); + $r = fopen(VAR_FILES . $p . $link['hash'], 'r'); while (!feof($r)) { print fread($r, 1024); ob_flush(); @@ -204,8 +210,7 @@ if (isset($_FILES['file']) && is_writable(VAR_FILES) } exit; } elseif (isset($_GET['get_capacity'])) { - echo min(jirafeau_ini_to_bytes(ini_get('post_max_size')), - jirafeau_ini_to_bytes(ini_get('upload_max_filesize'))); + echo jirafeau_get_max_upload_size_bytes(); } elseif (isset($_GET['get_maximal_upload_size'])) { echo $cfg['maximal_upload_size']; } elseif (isset($_GET['get_version'])) { @@ -333,17 +338,35 @@ if [ "$1" == "send" ]; then fi cnt=$(( cnt + 1 )) done) + key_code=$(cnt=0; echo "$res" | while read l; do + if [[ "$cnt" == "2" ]]; then + echo "$l" + fi + cnt=$(( cnt + 1 )) + done) echo echo "Download page:" - echo " ${url}${downloadpage}?h=$code" + if [[ $key_code ]]; then + echo " ${url}${downloadpage}?h=$code&k=$key_code" + else + echo " ${url}${downloadpage}?h=$code" + fi echo "Direct download:" - echo " ${url}${downloadpage}?h=$code&d=1" + if [[ $key_code ]]; then + echo " ${url}${downloadpage}?h=$code&k=$key_code&d=1" + else + echo " ${url}${downloadpage}?h=$code&d=1" + fi echo "Delete link:" echo " ${url}${downloadpage}?h=$code&d=$del_code" echo echo "Download via API:" - echo " ${0} get ${url}${apipage}?h=$code [PASSWORD}" + if [[ $key_code ]]; then + echo " ${0} get ${url}${apipage}?h=$code&k=$key_code [PASSWORD}" + else + echo " ${0} get ${url}${apipage}?h=$code [PASSWORD}" + fi echo "Delete via API:" echo " ${0} delete ${url}${downloadpage}?h=$code&d=$del_code" @@ -392,6 +415,12 @@ elseif (isset($_GET['init_async'])) { $key = $_POST['key']; } + // Check if one time download is enabled + if (!$cfg['one_time_download'] && isset($_POST['one_time_download'])) { + echo 'Error 26: One time download is disabled.'; + exit; + } + $time = time(); if (!isset($_POST['time']) || !$cfg['availabilities'][$_POST['time']]) { echo 'Error 22'; @@ -450,7 +479,7 @@ elseif (isset($_GET['end_async'])) { || !isset($_POST['code'])) { echo 'Error 24'; } else { - echo jirafeau_async_end($_POST['ref'], $_POST['code'], $cfg['enable_crypt'], $cfg['link_name_length']); + echo jirafeau_async_end($_POST['ref'], $_POST['code'], $cfg['enable_crypt'], $cfg['link_name_length'], $cfg['file_hash']); } } else { echo 'Error 25';