<string name="network_error_connect_timeout_exception">An error occurred while waiting for the server, the operation couldn\'t have been done</string>
<string name="network_host_not_available">The operation couldn\'t be completed, server is unavailable</string>
+ <string name="forbidden_permissions">You do not have permissions %s</string>
+ <string name="forbidden_permissions_rename">to rename this file</string>
+ <string name="forbidden_permissions_delete">to delete this file</string>
+ <string name="share_link_forbidden_permissions">to share this file</string>
+ <string name="unshare_link_forbidden_permissions">to unshare this file</string>
+ <string name="forbidden_permissions_create">to create the file</string>
+
</resources>
import java.io.File;
import java.net.SocketTimeoutException;
+
import org.apache.commons.httpclient.ConnectTimeoutException;
+
import android.content.res.Resources;
import com.owncloud.android.R;
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 {
} 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);
} 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);
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);
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);