From: David A. Velasco Date: Fri, 25 Jul 2014 07:19:54 +0000 (+0200) Subject: Merge pull request #566 from owncloud/update_error_messages_for_non_permitted_actions X-Git-Tag: oc-android-1.7.0_signed~245 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/a449a1cbb1596586316c09fbb73e0326e6120879?hp=fa326f51c88951a582c7cc9a7dc021064a96116f Merge pull request #566 from owncloud/update_error_messages_for_non_permitted_actions Updated error messages for non permitted actions --- diff --git a/owncloud-android-library b/owncloud-android-library index 5ebf81e2..6b155fb8 160000 --- a/owncloud-android-library +++ b/owncloud-android-library @@ -1 +1 @@ -Subproject commit 5ebf81e26ed0827359aa468fb813353656b7cf27 +Subproject commit 6b155fb8029973af08751cf42a77b4a4afd0536d diff --git a/res/values/strings.xml b/res/values/strings.xml index c1a1e2cb..a8da038c 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -270,4 +270,13 @@ An error occurred while waiting for the server, the operation couldn\'t have been done The operation couldn\'t be completed, server is unavailable + You do not have permission %s + to rename this file + to delete this file + to share this file + to unshare this file + to create the file + to upload in this folder + The file is no longer available on the server + diff --git a/src/com/owncloud/android/utils/ErrorMessageAdapter.java b/src/com/owncloud/android/utils/ErrorMessageAdapter.java index 25791bc7..5307d468 100644 --- a/src/com/owncloud/android/utils/ErrorMessageAdapter.java +++ b/src/com/owncloud/android/utils/ErrorMessageAdapter.java @@ -20,7 +20,9 @@ package com.owncloud.android.utils; import java.io.File; import java.net.SocketTimeoutException; + import org.apache.commons.httpclient.ConnectTimeoutException; + import android.content.res.Resources; import com.owncloud.android.R; @@ -67,8 +69,12 @@ public class ErrorMessageAdapter { /* } else if (result.getCode() == ResultCode.QUOTA_EXCEEDED) { message = res.getString(R.string.failed_upload_quota_exceeded_text); - */ + + } else if (result.getCode() == ResultCode.FORBIDDEN) { + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.uploader_upload_forbidden_permissions)); + } else { message = String.format(res.getString(R.string.uploader_upload_failed_content_single), ((UploadFileOperation) operation).getFileName()); @@ -82,8 +88,13 @@ public class ErrorMessageAdapter { new File(((DownloadFileOperation) operation).getSavePath()).getName()); } else { - message = String.format(res.getString(R.string.downloader_download_failed_content), - new File(((DownloadFileOperation) operation).getSavePath()).getName()); + if (result.getCode() == ResultCode.FILE_NOT_FOUND) { + message = res.getString(R.string.downloader_download_file_not_found); + + } else { + message = String.format(res.getString(R.string.downloader_download_failed_content), new File( + ((DownloadFileOperation) operation).getSavePath()).getName()); + } } } else if (operation instanceof RemoveFileOperation) { @@ -91,7 +102,11 @@ public class ErrorMessageAdapter { message = res.getString(R.string.remove_success_msg); } else { - if (isNetworkError(result.getCode())) { + if (result.getCode().equals(ResultCode.FORBIDDEN)) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.forbidden_permissions_delete)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); } else { @@ -102,10 +117,15 @@ public class ErrorMessageAdapter { } else if (operation instanceof RenameFileOperation) { if (result.getCode().equals(ResultCode.INVALID_LOCAL_FILE_NAME)) { message = res.getString(R.string.rename_local_fail_msg); - - } if (result.getCode().equals(ResultCode.INVALID_CHARACTER_IN_NAME)) { + + } else if (result.getCode().equals(ResultCode.FORBIDDEN)) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.forbidden_permissions_rename)); + + } else if (result.getCode().equals(ResultCode.INVALID_CHARACTER_IN_NAME)) { message = res.getString(R.string.filename_forbidden_characters); - + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); @@ -121,7 +141,11 @@ public class ErrorMessageAdapter { } else if (operation instanceof CreateFolderOperation) { if (result.getCode() == ResultCode.INVALID_CHARACTER_IN_NAME) { message = res.getString(R.string.filename_forbidden_characters); - + + } else if (result.getCode().equals(ResultCode.FORBIDDEN)) { + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.forbidden_permissions_create)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); @@ -132,6 +156,11 @@ public class ErrorMessageAdapter { if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { // Error --> SHARE_NOT_FOUND message = res.getString(R.string.share_link_file_no_exist); + } else if (result.getCode() == ResultCode.SHARE_FORBIDDEN) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.share_link_forbidden_permissions)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); @@ -145,6 +174,11 @@ public class ErrorMessageAdapter { if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { // Error --> SHARE_NOT_FOUND message = res.getString(R.string.unshare_link_file_no_exist); + } else if (result.getCode() == ResultCode.SHARE_FORBIDDEN) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.unshare_link_forbidden_permissions)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res);