till
2008-02-13 734584e2fe9da38246fe6c59671ef1f0c0e41859
program/include/rcube_shared.inc
@@ -674,5 +674,42 @@
  }
}
/**
 * A method to guess the mime_type of an attachment.
 *
 * @param string $path     Path to the file.
 * @param string $failover Mime type supplied for failover.
 *
 * @return string
 * @author Till Klampaeckel <till@php.net>
 * @see    http://de2.php.net/manual/en/ref.fileinfo.php
 * @see    http://de2.php.net/mime_content_type
 */
function rc_mime_content_type($path, $failover = 'unknown/unknown')
{
    global $CONFIG;
?>
    $mime_magic = $CONFIG['mime_magic'];
    if (function_exists('mime_content_type')) {
        return mime_content_type($path);
    }
    if (!extension_loaded('fileinfo')) {
        if (!dl('fileinfo.' . PHP_SHLIB_SUFFIX)) {
            return $failover;
        }
    }
    $finfo = finfo_open(FILEINFO_MIME, $mime_magic);
    if (!$finfo) {
        return $failover;
    }
    $mime_type = finfo_file($finfo,$path);
    if (!$mime_type) {
        return $failover;
    }
    finfo_close($finfo);
    return $mime_type;
}
?>