]> source.dussan.org Git - nextcloud-server.git/commitdiff
fix #2711 using a custom event, also use css selectors over filterAttr
authorJörn Friedrich Dreyer <jfd@butonic.de>
Thu, 8 Aug 2013 11:50:04 +0000 (13:50 +0200)
committerJörn Friedrich Dreyer <jfd@butonic.de>
Thu, 8 Aug 2013 11:50:04 +0000 (13:50 +0200)
apps/files/js/fileactions.js
apps/files_sharing/js/share.js
core/js/share.js

index aa66a57a7b5e994eb0d04041761eb1a62c770306..de67d13559e2807e11f33639285618a24e71d97a 100644 (file)
@@ -65,7 +65,7 @@ var FileActions = {
                FileActions.currentFile = parent;
                var actions = FileActions.get(FileActions.getCurrentMimeType(), FileActions.getCurrentType(), FileActions.getCurrentPermissions());
                var file = FileActions.getCurrentFile();
-               if ($('tr').filterAttr('data-file', file).data('renaming')) {
+               if ($('tr[data-file="'+file+'"]').data('renaming')) {
                        return;
                }
                parent.children('a.name').append('<span class="fileactions" />');
@@ -164,10 +164,11 @@ $(document).ready(function () {
                        window.location = OC.filePath('files', 'ajax', 'download.php') + '?files=' + encodeURIComponent(filename) + '&dir=' + encodeURIComponent($('#dir').val());
                });
        }
-
        $('#fileList tr').each(function () {
                FileActions.display($(this).children('td.filename'));
        });
+       
+       $('#fileList').trigger(jQuery.Event("fileActionsReady"));
 
 });
 
index eb5a6e8cb7fe27e001353a3e348757e60b4638a9..b2efafde4e78868fcd062582bdad7e6c2c15d685 100644 (file)
@@ -4,6 +4,10 @@ $(document).ready(function() {
 
        if (typeof OC.Share !== 'undefined' && typeof FileActions !== 'undefined'  && !disableSharing) {
 
+               $('#fileList').one('fileActionsReady',function(){
+                       OC.Share.loadIcons('file');
+               });
+
                FileActions.register('all', 'Share', OC.PERMISSION_READ, OC.imagePath('core', 'actions/share'), function(filename) {
                        if ($('#dir').val() == '/') {
                                var item = $('#dir').val() + filename;
@@ -33,6 +37,5 @@ $(document).ready(function() {
                                OC.Share.showDropDown(itemType, $(tr).data('id'), appendTo, true, possiblePermissions);
                        }
                });
-               OC.Share.loadIcons('file');
        }
-});
+});
\ No newline at end of file
index b4b5159b0b510a9f38d617cc4ae5d65c2b4bc965..b0d38c45cb8651ebe7beeaa32ab985a049284945 100644 (file)
@@ -22,9 +22,9 @@ OC.Share={
                                        if (itemType != 'file' && itemType != 'folder') {
                                                $('a.share[data-item="'+item+'"]').css('background', 'url('+image+') no-repeat center');
                                        } else {
-                                               var file = $('tr').filterAttr('data-id', item);
+                                               var file = $('tr[data-id="'+item+'"]');
                                                if (file.length > 0) {
-                                                       var action = $(file).find('.fileactions .action').filterAttr('data-action', 'Share');
+                                                       var action = $(file).find('.fileactions .action[data-action="Share"]');
                                                        var img = action.find('img').attr('src', image);
                                                        action.addClass('permanent');
                                                        action.html(' '+t('core', 'Shared')).prepend(img);
@@ -36,7 +36,7 @@ OC.Share={
                                                                // Search for possible parent folders that are shared
                                                                while (path != last) {
                                                                        if (path == data['path']) {
-                                                                               var actions = $('.fileactions .action').filterAttr('data-action', 'Share');
+                                                                               var actions = $('.fileactions .action[data-action="Share"]');
                                                                                $.each(actions, function(index, action) {
                                                                                        var img = $(action).find('img');
                                                                                        if (img.attr('src') != OC.imagePath('core', 'actions/public')) {