diff options
author | Friendika <info@friendika.com> | 2011-05-24 22:40:52 -0700 |
---|---|---|
committer | Friendika <info@friendika.com> | 2011-05-24 22:40:52 -0700 |
commit | 73b4faca5c7af506558eba6b7317d23551f1aefa (patch) | |
tree | 38b706c0cae1581531007e85f40085820fe87a7a /include/attach.php | |
parent | eb152fdc24302ead9baf8e82d551084128162715 (diff) | |
download | volse-hubzilla-73b4faca5c7af506558eba6b7317d23551f1aefa.tar.gz volse-hubzilla-73b4faca5c7af506558eba6b7317d23551f1aefa.tar.bz2 volse-hubzilla-73b4faca5c7af506558eba6b7317d23551f1aefa.zip |
basic file upload/attach
Diffstat (limited to 'include/attach.php')
-rw-r--r-- | include/attach.php | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/include/attach.php b/include/attach.php new file mode 100644 index 000000000..ca53081d9 --- /dev/null +++ b/include/attach.php @@ -0,0 +1,80 @@ +<?php + +if(!function_exists('mime_content_type')) { +function mime_content_type($filename) { + + $mime_types = array( + + 'txt' => 'text/plain', + 'htm' => 'text/html', + 'html' => 'text/html', + 'php' => 'text/html', + 'css' => 'text/css', + 'js' => 'application/javascript', + 'json' => 'application/json', + 'xml' => 'application/xml', + 'swf' => 'application/x-shockwave-flash', + 'flv' => 'video/x-flv', + + // images + 'png' => 'image/png', + 'jpe' => 'image/jpeg', + 'jpeg' => 'image/jpeg', + 'jpg' => 'image/jpeg', + 'gif' => 'image/gif', + 'bmp' => 'image/bmp', + 'ico' => 'image/vnd.microsoft.icon', + 'tiff' => 'image/tiff', + 'tif' => 'image/tiff', + 'svg' => 'image/svg+xml', + 'svgz' => 'image/svg+xml', + + // archives + 'zip' => 'application/zip', + 'rar' => 'application/x-rar-compressed', + 'exe' => 'application/x-msdownload', + 'msi' => 'application/x-msdownload', + 'cab' => 'application/vnd.ms-cab-compressed', + + // audio/video + 'mp3' => 'audio/mpeg', + 'qt' => 'video/quicktime', + 'mov' => 'video/quicktime', + 'ogg' => 'application/ogg', + + // adobe + 'pdf' => 'application/pdf', + 'psd' => 'image/vnd.adobe.photoshop', + 'ai' => 'application/postscript', + 'eps' => 'application/postscript', + 'ps' => 'application/postscript', + + // ms office + 'doc' => 'application/msword', + 'rtf' => 'application/rtf', + 'xls' => 'application/vnd.ms-excel', + 'ppt' => 'application/vnd.ms-powerpoint', + + + // open office + 'odt' => 'application/vnd.oasis.opendocument.text', + 'ods' => 'application/vnd.oasis.opendocument.spreadsheet', + ); + + if(strpos($filename,'.') !== false) { + $ext = strtolower(array_pop(explode('.',$filename))); + if (array_key_exists($ext, $mime_types)) { + return $mime_types[$ext]; + } + } + elseif (function_exists('finfo_open')) { + $finfo = finfo_open(FILEINFO_MIME); + $mimetype = finfo_file($finfo, $filename); + finfo_close($finfo); + return $mimetype; + } + else { + return 'application/octet-stream'; + } +}} + |