X-Git-Url: https://git.p6c8.net/jirafeau_mojo42.git/blobdiff_plain/29fffe4a12cc764c9087796ecded32a6e5814a65..c7f776c8b948b033c200c8fd84ab5e8a8422d601:/lib/functions.php
diff --git a/lib/functions.php b/lib/functions.php
index ae3516a..6e5c886 100644
--- a/lib/functions.php
+++ b/lib/functions.php
@@ -28,7 +28,7 @@ function s2p($s)
$block_size = 8;
$p = '';
for ($i = 0; $i < strlen($s); $i++) {
- $p .= $s{$i};
+ $p .= $s[$i];
if (($i + 1) % $block_size == 0) {
$p .= '/';
}
@@ -68,16 +68,16 @@ function base_16_to_64($num)
# Convert long hex string to bin.
$size = strlen($num);
for ($i = 0; $i < $size; $i++) {
- $b .= $hex2bin{hexdec($num{$i})};
+ $b .= $hex2bin[hexdec($num[$i])];
}
# Convert long bin to base 64.
$size *= 4;
for ($i = $size - 6; $i >= 0; $i -= 6) {
- $o = $m{bindec(substr($b, $i, 6))} . $o;
+ $o = $m[bindec(substr($b, $i, 6))] . $o;
}
# Some few bits remaining ?
if ($i < 0 && $i > -6) {
- $o = $m{bindec(substr($b, 0, $i + 6))} . $o;
+ $o = $m[bindec(substr($b, 0, $i + 6))] . $o;
}
return $o;
}
@@ -192,12 +192,16 @@ function jirafeau_ini_to_bytes($value)
switch (strtoupper($modifier)) {
case 'P':
$bytes *= 1024;
+ // no break
case 'T':
$bytes *= 1024;
+ // no break
case 'G':
$bytes *= 1024;
+ // no break
case 'M':
$bytes *= 1024;
+ // no break
case 'K':
$bytes *= 1024;
}
@@ -210,8 +214,10 @@ function jirafeau_ini_to_bytes($value)
*/
function jirafeau_get_max_upload_size_bytes()
{
- return min(jirafeau_ini_to_bytes(ini_get('post_max_size')),
- jirafeau_ini_to_bytes(ini_get('upload_max_filesize')));
+ return min(
+ jirafeau_ini_to_bytes(ini_get('post_max_size')),
+ jirafeau_ini_to_bytes(ini_get('upload_max_filesize'))
+ );
}
/**
@@ -459,10 +465,12 @@ function jirafeau_upload($file, $one_time_download, $key, $time, $ip, $crypt, $l
/* create link file */
$link_tmp_name = VAR_LINKS . $hash . rand(0, 10000) . '.tmp';
$handle = fopen($link_tmp_name, 'w');
- fwrite($handle,
- $name . NL. $mime_type . NL. $size . NL. $password . NL. $time .
+ fwrite(
+ $handle,
+ $name . NL. $mime_type . NL. $size . NL. $password . NL. $time .
NL . $hash. NL . ($one_time_download ? 'O' : 'R') . NL . time() .
- NL . $ip . NL. $delete_link_code . NL . ($crypted ? 'C' : 'O'));
+ NL . $ip . NL. $delete_link_code . NL . ($crypted ? 'C' : 'O')
+ );
fclose($handle);
$hash_link = substr(base_16_to_64(md5_file($link_tmp_name)), 0, $link_name_length);
$l = s2p("$hash_link");
@@ -501,10 +509,15 @@ function jirafeau_upload($file, $one_time_download, $key, $time, $ip, $crypt, $l
function jirafeau_is_viewable($mime)
{
if (!empty($mime)) {
- /* Actually, verify if mime-type is an image or a text. */
- $viewable = array('image', 'text', 'video', 'audio');
+ $viewable = array('image', 'video', 'audio');
$decomposed = explode('/', $mime);
- return in_array($decomposed[0], $viewable);
+ if (in_array($decomposed[0], $viewable) && strpos($mime, 'image/svg+xml') === false) {
+ return true;
+ }
+ $viewable = array('text/plain');
+ if (in_array($mime, $viewable)) {
+ return true;
+ }
}
return false;
}
@@ -672,7 +685,9 @@ function jirafeau_admin_list($name, $file_hash, $link_hash)
echo t('EXPIRE') . ': ' . ($l['time'] == -1 ? 'â' : jirafeau_get_datetimefield($l['time'])) . '
';
echo t('ONETIME') . ': ' . ($l['onetime'] == 'O' ? 'Yes' : 'No') . '
';
echo t('UPLOAD_DATE') . ': ' . jirafeau_get_datetimefield($l['upload_date']) . '
';
- echo t('ORIGIN') . ': ' . $l['ip'] . '
';
+ if (strlen($l['ip']) > 0) {
+ echo t('ORIGIN') . ': ' . $l['ip'] . '
';
+ }
echo '