summaryrefslogtreecommitdiff
path: root/inc/confutils.php
diff options
context:
space:
mode:
authorTom N Harris <tnharris@whoopdedo.org>2009-09-26 01:17:46 +0200
committerTom N Harris <tnharris@whoopdedo.org>2009-09-26 01:17:46 +0200
commit27bf79241161079d1d15f8fe1927682ec562835f (patch)
treea3bd8fee282dd481a4e4dd78aa445369b602b9d2 /inc/confutils.php
parent66b23ce9f134c838f393fa452c450f8b6fc147c3 (diff)
downloadrpg-27bf79241161079d1d15f8fe1927682ec562835f.tar.gz
rpg-27bf79241161079d1d15f8fe1927682ec562835f.tar.bz2
Use all available icons for file links (FS#1759)
All PNG and GIF images in the lib/images/fileicons directory will be used for media file links. The conf/mime.conf file continues to restrict which file types may be uploaded. File types not in the configuration list are download-only. darcs-hash:20090925231746-6942e-299a52772f67e265a8702bda3686f495e4337a8f.gz
Diffstat (limited to 'inc/confutils.php')
-rw-r--r--inc/confutils.php22
1 files changed, 16 insertions, 6 deletions
diff --git a/inc/confutils.php b/inc/confutils.php
index aab0be4be..5ad8385c4 100644
--- a/inc/confutils.php
+++ b/inc/confutils.php
@@ -10,21 +10,31 @@
/**
* Returns the (known) extension and mimetype of a given filename
*
+ * If $knownonly is true (the default), then only known extensions
+ * are returned.
+ *
* @author Andreas Gohr <andi@splitbrain.org>
*/
-function mimetype($file){
+function mimetype($file, $knownonly=true){
$ret = array(false,false,false); // return array
$mtypes = getMimeTypes(); // known mimetypes
$exts = join('|',array_keys($mtypes)); // known extensions (regexp)
+ if(!$knownonly){
+ $exts = $exts.'|[_\-A-Za-z0-9]+'; // any extension
+ }
if(preg_match('#\.('.$exts.')$#i',$file,$matches)){
$ext = strtolower($matches[1]);
}
- if($ext && $mtypes[$ext]){
- if($mtypes[$ext][0] == '!'){
- $ret = array($ext, substr($mtypes[$ext],1), true);
- }else{
- $ret = array($ext, $mtypes[$ext], false);
+ if($ext){
+ if (isset($mtypes[$ext])){
+ if($mtypes[$ext][0] == '!'){
+ $ret = array($ext, substr($mtypes[$ext],1), true);
+ }else{
+ $ret = array($ext, $mtypes[$ext], false);
+ }
+ elseif(!$knownonly){
+ $ret = array($ext, 'application/octet-stream', true);
}
}