]> git.p6c8.net - jirafeau.git/blobdiff - f.php
f.php fix bad file name when browser cannot preview file
[jirafeau.git] / f.php
diff --git a/f.php b/f.php
index e57c18f25bb0e0fd6265010ef81bd3026c9aa6c7..9bbe4d9abddf57db07a5577b92cb8ff1ba72bad8 100644 (file)
--- a/f.php
+++ b/f.php
@@ -58,7 +58,7 @@ 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 = '';
@@ -66,7 +66,7 @@ if (isset ($_GET['k']) && !empty ($_GET['k']))
     $crypt_key = $_GET['k'];
 
 $do_download = false;
-if (isset ($_GET['d']) && !empty ($_GET['d']))
+if (isset ($_GET['d']) && $_GET['d'] == '1')
     $do_download = true;
 
 $do_preview = false;
@@ -125,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') .
@@ -134,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 . '&amp;d=1';
         if (!empty($crypt_key))
             echo '&amp;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 . '&amp;p=1';
-        if (!empty($crypt_key))
-            echo '&amp;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 . '&amp;p=1';
+            if (!empty($crypt_key))
+                echo '&amp;k=' . urlencode($crypt_key);
+            ?>';
+            document.getElementById('submit_preview').submit ();"/><?php
         }
         echo '</td></tr></table></fieldset></form></div>';
         require (JIRAFEAU_ROOT.'lib/template/footer.php');
@@ -183,16 +183,16 @@ if ($cfg['download_page'] && !$password_challenged && !$do_download && !$do_prev
              '<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 . '&amp;d=1';
         if (!empty($crypt_key))
@@ -200,10 +200,10 @@ if ($cfg['download_page'] && !$password_challenged && !$do_download && !$do_prev
 ?>';
         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 . '&amp;p=1';
         if (!empty($crypt_key))
@@ -220,8 +220,9 @@ if ($cfg['download_page'] && !$password_challenged && !$do_download && !$do_prev
 header ('HTTP/1.0 200 OK');
 header ('Content-Length: ' . $link['file_size']);
 if (!jirafeau_is_viewable ($link['mime_type']) || !$cfg['preview'] || $do_download)
-    header ('Content-Disposition: attachment; filename="' .
-        $link['file_name'] . '"');
+    header ('Content-Disposition: attachment; filename="' . $link['file_name'] . '"');
+else
+    header ('Content-Disposition: filename="' . $link['file_name'] . '"');
 header ('Content-Type: ' . $link['mime_type']);
 
 /* Read encrypted file. */

patrick-canterino.de