]> source.dussan.org Git - nextcloud-server.git/commitdiff
Make directories clickable.
authorkondou <kondou@ts.unde.re>
Sat, 6 Apr 2013 12:17:47 +0000 (14:17 +0200)
committerkondou <kondou@ts.unde.re>
Sat, 6 Apr 2013 12:17:47 +0000 (14:17 +0200)
A bit bugged though ...

core/js/oc-dialogs.js

index 0aebc4d0479bfcd0ae5572e24a6ec1e2fd6bf8c2..2a6f1ff1638ef30e9fa832a8215e93e9ef308713 100644 (file)
@@ -303,6 +303,9 @@ var OCdialogs = {
                $(dialog_content_id + ' #filelist').html(files).on('click', '[data="file"]', function() {
                        OCdialogs.handlePickerClick(this, $(this).data('entryname'), $(this).data('dcid'));
                });
+               $(dialog_content_id + ' #filelist').html(files).on('click', '[data="dir"]', function() {
+                       OCdialogs.handlePickerClick(this, $(this).data('entryname'), $(this).data('dcid'));
+               });
                $(dialog_content_id + ' .filepicker_loader').css('visibility', 'hidden');
        },
        /**
@@ -386,19 +389,26 @@ var OCdialogs = {
                        }
                        $(element).toggleClass('filepicker_element_selected');
                        return;
+               } else if ( $(element).attr('data') === 'dir' ) {
+                       datapath += '/';
+                       $(dialog_content_id).data('path', datapath);
+                       $(dialog_content_id + ' .filepicker_loader').css('visibility', 'visible');
+                       $.getJSON(
+                               OC.filePath('files', 'ajax', 'rawlist.php'),
+                               {
+                                       dir: datapath,
+                                       mimetype: $(dialog_content_id).data('mimetype')
+                               },
+                               function(request){ OCdialogs.fillFilePicker(request, dialog_content_id) }
+                       );
+                       $.getJSON(
+                               OC.filePath('files', 'ajax', 'rawlist.php'),
+                               {
+                                       dir: datapath,
+                                       mimetype: "httpd/unix-directory"
+                               },
+                               function(request) { OCdialogs.fillTreeList(request, dialog_content_id) }
+                       );
                }
-               $(dialog_content_id).data('path', datapath);
-               $(dialog_content_id + ' #dirtree option:last').removeAttr('selected');
-               var newval = parseInt($(dialog_content_id + ' #dirtree option:last').val())+1;
-               $(dialog_content_id + ' #dirtree').append('<option selected="selected" value="'+ newval + '">' + escapeHTML(name) + '</option>');
-               $(dialog_content_id + ' .filepicker_loader').css('visibility', 'visible');
-               $.getJSON(
-                       OC.filePath('files', 'ajax', 'rawlist.php'),
-                       {
-                               dir: datapath,
-                               mimetype: $(dialog_content_id).data('mimetype')
-                       },
-                       function(request){ OCdialogs.fillFilePicker(request, dialog_content_id) }
-               );
        }
 };