]> source.dussan.org Git - nextcloud-server.git/commitdiff
mimetype icon improvements
authorRobin Appelman <icewind1991@gmail.com>
Sat, 8 Oct 2011 19:18:47 +0000 (21:18 +0200)
committerRobin Appelman <icewind1991@gmail.com>
Sat, 8 Oct 2011 19:18:47 +0000 (21:18 +0200)
core/img/filetypes/code-script.png [new file with mode: 0644]
core/img/filetypes/php.png [deleted file]
core/img/filetypes/script.png [deleted file]
core/img/filetypes/text-x-php.png [new file with mode: 0644]
files/ajax/mimeicon.php [new file with mode: 0644]
files/js/filelist.js
files/js/files.js
lib/helper.php

diff --git a/core/img/filetypes/code-script.png b/core/img/filetypes/code-script.png
new file mode 100644 (file)
index 0000000..63fe6ce
Binary files /dev/null and b/core/img/filetypes/code-script.png differ
diff --git a/core/img/filetypes/php.png b/core/img/filetypes/php.png
deleted file mode 100644 (file)
index 7868a25..0000000
Binary files a/core/img/filetypes/php.png and /dev/null differ
diff --git a/core/img/filetypes/script.png b/core/img/filetypes/script.png
deleted file mode 100644 (file)
index 63fe6ce..0000000
Binary files a/core/img/filetypes/script.png and /dev/null differ
diff --git a/core/img/filetypes/text-x-php.png b/core/img/filetypes/text-x-php.png
new file mode 100644 (file)
index 0000000..7868a25
Binary files /dev/null and b/core/img/filetypes/text-x-php.png differ
diff --git a/files/ajax/mimeicon.php b/files/ajax/mimeicon.php
new file mode 100644 (file)
index 0000000..8724016
--- /dev/null
@@ -0,0 +1,8 @@
+<?php
+
+// Init owncloud
+require_once('../../lib/base.php');
+
+print OC_Helper::mimetypeIcon($_GET['mime']);
+
+?>
index 84762bb561d4f2ba4c45a9ac5b54b0e6c1fae7bf..e6da922700d720d209ec8efe051e1eb5f18956b0 100644 (file)
@@ -101,10 +101,14 @@ FileList={
                $('.file_upload_filename').removeClass('highlight');
        },
        loadingDone:function(name){
-               $('tr[data-file="'+name+'"]').data('loading',false);
-               var mime=$('tr[data-file="'+name+'"]').data('mime');
-               $('tr[data-file="'+name+'"] td.filename').attr('style','background-image:url('+getMimeIcon(mime)+')');
-               $('tr[data-file="'+name+'"] td.filename').draggable(dragOptions);
+               var tr=$('tr[data-file="'+name+'"]');
+               tr.data('loading',false);
+               var mime=tr.data('mime');
+               tr.attr('data-mime',mime);
+               getMimeIcon(mime,function(path){
+                       tr.find('td.filename').attr('style','background-image:url('+path+')');
+               });
+               tr.find('td.filename').draggable(dragOptions);
        },
        isLoading:function(name){
                return $('tr[data-file="'+name+'"]').data('loading');
index 9342642b4ff536d14632baed76b6219cb96abe4d..079646070d4b0db195ed2e9284b34db1f6a353bf 100644 (file)
@@ -473,11 +473,14 @@ function relative_modified_date(timestamp) {
        else { return diffyears+' '+t('files','years ago'); }
 }
 
-function getMimeIcon(mime){
-       mime=mime.substr(0,mime.indexOf('/'));
-       var knownMimes=['image','audio'];
-       if(knownMimes.indexOf(mime)==-1){
-               mime='file';
+function getMimeIcon(mime, ready){
+       if(getMimeIcon.cache[mime]){
+               ready(getMimeIcon.cache[mime]);
+       }else{
+               $.get( OC.filePath('files','ajax','mimeicon.php')+'?mime='+mime, function(path){
+                       getMimeIcon.cache[mime]=path;
+                       ready(getMimeIcon.cache[mime]);
+               });
        }
-       return OC.imagePath('core','filetypes/'+mime);
 }
+getMimeIcon.cache={};
index c2a81ba3306f2df604b368506d7e3d54561ce3b0..5b3e394cafd3821195c5cd3ead775c045978827e 100644 (file)
@@ -96,6 +96,12 @@ class OC_Helper {
         * Returns the path to the image of this file type.
         */
        public static function mimetypeIcon( $mimetype ){
+               $alias=array('application/xml'=>'code/xml');
+//             echo $mimetype;
+               if(isset($alias[$mimetype])){
+                       $mimetype=$alias[$mimetype];
+//                     echo $mimetype;
+               }
                // Replace slash with a minus
                $mimetype = str_replace( "/", "-", $mimetype );