X-Git-Url: https://git.p6c8.net/jirafeau.git/blobdiff_plain/53390fef42f7b3430b5ed5a65ace28921cb33a6a..a41981033b2828c7fd38a47f8e6410122137f99a:/f.php diff --git a/f.php b/f.php index e7d2241..e1c858e 100644 --- a/f.php +++ b/f.php @@ -2,7 +2,7 @@ /* * Jirafeau, your web file repository * Copyright (C) 2008 Julien "axolotl" BERNARD <axolotl@magieeternelle.org> - * Copyright (C) 2012 Jerome Jutteau <j.jutteau@gmail.com> + * Copyright (C) 2015 Jerome Jutteau <j.jutteau@gmail.com> * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as @@ -20,7 +20,7 @@ define ('JIRAFEAU_ROOT', dirname (__FILE__) . '/'); require (JIRAFEAU_ROOT . 'lib/lang.php'); -require (JIRAFEAU_ROOT . 'lib/config.php'); +require (JIRAFEAU_ROOT . 'lib/config.original.php'); require (JIRAFEAU_ROOT . 'lib/settings.php'); require (JIRAFEAU_ROOT . 'lib/functions.php'); @@ -33,7 +33,9 @@ if (!isset ($_GET['h']) || empty ($_GET['h'])) /* Operations may take a long time. * Be sure PHP's safe mode is off. */ -set_time_limit(0); +@set_time_limit(0); +/* Remove errors. */ +@error_reporting(0); $link_name = $_GET['h']; @@ -56,20 +58,20 @@ if (count ($link) == 0) } $delete_code = ''; -if (isset ($_GET['d']) && !empty ($_GET['d'])) +if (isset ($_GET['d']) && !empty ($_GET['d']) && $_GET['d'] != '1') $delete_code = $_GET['d']; $crypt_key = ''; if (isset ($_GET['k']) && !empty ($_GET['k'])) $crypt_key = $_GET['k']; -$button_download = false; -if (isset ($_GET['bd']) && !empty ($_GET['bd'])) - $button_download = true; +$do_download = false; +if (isset ($_GET['d']) && $_GET['d'] == '1') + $do_download = true; -$button_preview = false; -if (isset ($_GET['bp']) && !empty ($_GET['bp'])) - $button_preview = true; +$do_preview = false; +if (isset ($_GET['p']) && !empty ($_GET['p'])) + $do_preview = true; $p = s2p ($link['md5']); if (!file_exists (VAR_FILES . $p . $link['md5'])) @@ -123,7 +125,7 @@ if (!empty ($link['key'])) '<form action = "'; echo $cfg['web_root'] . '/f.php'; echo '" ' . - 'method = "post" id = "submit">'; ?> + 'method = "post" id = "submit_post">'; ?> <input type = "hidden" name = "jirafeau" value = "<?php echo JIRAFEAU_VERSION ?>"/><?php echo '<fieldset>' . '<legend>' . t('Password protection') . @@ -132,27 +134,27 @@ if (!empty ($link['key'])) '<input type = "password" name = "key" />' . '</td></tr>' . '<tr><td>' . - t('By using our services, you accept of our'). ' <a href="' . $cfg['web_root'] . '/tos.php' . '">' . t('Term Of Service') . '</a>' . + t('By using our services, you accept our'). ' <a href="' . $cfg['web_root'] . '/tos.php' . '">' . t('Term Of Service') . '</a>' . '</td></tr>' . '<tr><td>'; ?><input type="submit" id = "submit_download" value="<?php echo t('Download'); ?>" - onclick="document.getElementById('submit').action=' + onclick="document.getElementById('submit_post').action=' <?php - echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&bd=1'; + echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&d=1'; if (!empty($crypt_key)) echo '&k=' . urlencode($crypt_key); ?>'; document.getElementById('submit_download').submit ();"/><?php - if ($cfg['download_page'] && $cfg['preview']) + if ($cfg['download_page'] && $cfg['preview'] && jirafeau_is_viewable($link['mime_type'])) { ?><input type="submit" id = "submit_preview" value="<?php echo t('Preview'); ?>" - onclick="document.getElementById('submit').action=' -<?php - echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&bp=1'; - if (!empty($crypt_key)) - echo '&k=' . urlencode($crypt_key); -?>'; - document.getElementById('submit_preview').submit ();"/><?php + onclick="document.getElementById('submit_post').action=' + <?php + echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&p=1'; + if (!empty($crypt_key)) + echo '&k=' . urlencode($crypt_key); + ?>'; + document.getElementById('submit_preview').submit ();"/><?php } echo '</td></tr></table></fieldset></form></div>'; require (JIRAFEAU_ROOT.'lib/template/footer.php'); @@ -174,36 +176,36 @@ if (!empty ($link['key'])) } } -if ($cfg['download_page'] && !$password_challenged && !$button_download && !$button_preview) +if ($cfg['download_page'] && !$password_challenged && !$do_download && !$do_preview) { require (JIRAFEAU_ROOT.'lib/template/header.php'); echo '<div>' . '<form action = "'; echo $cfg['web_root'] . '/f.php'; echo '" ' . - 'method = "post" id = "submit">'; ?> + 'method = "post" id = "submit_post">'; ?> <input type = "hidden" name = "jirafeau" value = "<?php echo JIRAFEAU_VERSION ?>"/><?php echo '<fieldset><legend>' . $link['file_name'] . '</legend><table>' . '<tr><td>' . t('You are about to download') . ' "' . $link['file_name'] . '" (' . jirafeau_human_size($link['file_size']) . ')' . '</td></tr>' . '<tr><td>' . - t('By using our services, you accept of our'). ' <a href="' . $cfg['web_root'] . '/tos.php' . '">' . t('Term Of Service') . '</a>'; + t('By using our services, you accept our'). ' <a href="' . $cfg['web_root'] . '/tos.php' . '">' . t('Term Of Service') . '</a>'; ?></td></tr><tr><td><input type="submit" id = "submit_download" value="<?php echo t('Download'); ?>" - onclick="document.getElementById('submit').action=' + onclick="document.getElementById('submit_post').action=' <?php - echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&bd=1'; + echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&d=1'; if (!empty($crypt_key)) echo '&k=' . urlencode($crypt_key); ?>'; document.getElementById('submit_download').submit ();"/><?php - if ($cfg['download_page'] && $cfg['preview']) + if ($cfg['download_page'] && $cfg['preview'] && jirafeau_is_viewable($link['mime_type'])) { ?><input type="submit" id = "submit_preview" value="<?php echo t('Preview'); ?>" - onclick="document.getElementById('submit').action=' + onclick="document.getElementById('submit_post').action=' <?php - echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&bp=1'; + echo $cfg['web_root'] . '/f.php?h=' . $link_name . '&p=1'; if (!empty($crypt_key)) echo '&k=' . urlencode($crypt_key); ?>'; @@ -217,11 +219,10 @@ if ($cfg['download_page'] && !$password_challenged && !$button_download && !$but header ('HTTP/1.0 200 OK'); header ('Content-Length: ' . $link['file_size']); -if (!jirafeau_is_viewable ($link['mime_type']) || !$cfg['preview'] || $button_download) +if (!jirafeau_is_viewable ($link['mime_type']) || !$cfg['preview'] || $do_download) header ('Content-Disposition: attachment; filename="' . $link['file_name'] . '"'); -else - header ('Content-Type: ' . $link['mime_type']); +header ('Content-Type: ' . $link['mime_type']); /* Read encrypted file. */ if ($link['crypted'])