diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js index 19978b61a7..0c672cd670 100644 --- a/apps/files/js/fileactions.js +++ b/apps/files/js/fileactions.js @@ -51,7 +51,7 @@ FileActions={ var actions=this.get(mime,type); return actions[name]; }, - display:function(parent){ + display:function(parent, filename, type){ FileActions.currentFile=parent; $('#fileList span.fileactions, #fileList td.date a.action').remove(); var actions=FileActions.get(FileActions.getCurrentMimeType(),FileActions.getCurrentType()); @@ -62,6 +62,8 @@ FileActions={ parent.children('a.name').append(''); var defaultAction=FileActions.getDefault(FileActions.getCurrentMimeType(),FileActions.getCurrentType()); for(name in actions){ + // no rename and share action for the 'Shared' dir + if((name=='Rename' || name =='Share') && type=='dir' && filename=='Shared') { continue; } if((name=='Download' || actions[name]!=defaultAction) && name!='Delete'){ var img=FileActions.icons[name]; if(img.call){ @@ -84,7 +86,7 @@ FileActions={ parent.find('a.name>span.fileactions').append(element); } } - if(actions['Delete']){ + if(actions['Delete'] && (type!='dir' || filename != 'Shared')){ // no delete action for the 'Shared' dir var img=FileActions.icons['Delete']; if(img.call){ img=img(file); diff --git a/apps/files/js/files.js b/apps/files/js/files.js index 7d9c53eaa8..7cd0f388a3 100644 --- a/apps/files/js/files.js +++ b/apps/files/js/files.js @@ -56,7 +56,7 @@ $(document).ready(function() { // Sets the file-action buttons behaviour : $('tr').live('mouseenter',function(event) { - FileActions.display($(this).children('td.filename')); + FileActions.display($(this).children('td.filename'), $(this).attr('data-file'), $(this).attr('data-type')); }); $('tr').live('mouseleave',function(event) { FileActions.hide(); diff --git a/lib/files.php b/lib/files.php index 79d214665d..885f6977fb 100644 --- a/lib/files.php +++ b/lib/files.php @@ -170,7 +170,7 @@ class OC_Files { * @param file $target */ public static function move($sourceDir,$source,$targetDir,$target){ - if(OC_User::isLoggedIn()){ + if(OC_User::isLoggedIn() && ($sourceDir != '' || $source != 'Shared')){ $targetFile=self::normalizePath($targetDir.'/'.$target); $sourceFile=self::normalizePath($sourceDir.'/'.$source); return OC_Filesystem::rename($sourceFile,$targetFile); @@ -224,7 +224,7 @@ class OC_Files { * @param file $name */ public static function delete($dir,$file){ - if(OC_User::isLoggedIn()){ + if(OC_User::isLoggedIn() && ($dir!= '' || $file != 'Shared')) { $file=$dir.'/'.$file; return OC_Filesystem::unlink($file); }