Validate user input of add or change S3 cloud

This commit is contained in:
Julian Raufelder 2021-04-29 12:00:29 +02:00 committed by Manuel Jenny
parent 4e6983862f
commit bde8f36a58
No known key found for this signature in database
GPG Key ID: 1C80FE62B2BEAA18
2 changed files with 18 additions and 6 deletions

View File

@ -6,6 +6,7 @@ import org.cryptomator.domain.S3Cloud
import org.cryptomator.domain.di.PerView
import org.cryptomator.domain.usecases.cloud.AddOrChangeCloudConnectionUseCase
import org.cryptomator.domain.usecases.cloud.ConnectToS3UseCase
import org.cryptomator.presentation.R
import org.cryptomator.presentation.exception.ExceptionHandlers
import org.cryptomator.presentation.model.ProgressModel
import org.cryptomator.presentation.model.ProgressStateModel
@ -22,18 +23,23 @@ class S3AddOrChangePresenter @Inject internal constructor( //
fun checkUserInput(accessKey: String, secretKey: String, bucket: String, endpoint: String?, region: String?, cloudId: Long?, displayName: String) {
var statusMessage: String? = null
/*if (accessKey.isEmpty()) {
statusMessage = getString(R.string.screen_webdav_settings_msg_password_must_not_be_empty)
if (accessKey.isEmpty()) {
statusMessage = getString(R.string.screen_s3_settings_msg_access_key_not_empty)
}
if (secretKey.isEmpty()) {
statusMessage = getString(R.string.screen_webdav_settings_msg_username_must_not_be_empty)
statusMessage = getString(R.string.screen_s3_settings_msg_secret_key_not_empty)
}
if (bucket.isEmpty()) {
statusMessage = getString(R.string.screen_webdav_settings_msg_url_must_not_be_empty)
}*/ // FIXME define what is required
statusMessage = getString(R.string.screen_s3_settings_msg_bucket_not_empty)
}
if (displayName.isEmpty()) {
statusMessage = getString(R.string.screen_s3_settings_msg_display_name_not_empty)
}
if (endpoint.isNullOrEmpty() && region.isNullOrEmpty()) {
statusMessage = getString(R.string.screen_s3_settings_msg_endpoint_and_region_not_empty)
}
if (statusMessage != null) {
// FIXME showError instead of displaying a toast
Toast.makeText(context(), statusMessage, Toast.LENGTH_SHORT).show()
} else {
view?.onCheckUserInputSucceeded(encrypt(accessKey), encrypt(secretKey), bucket, endpoint, region, cloudId, displayName)

View File

@ -183,6 +183,12 @@
<string name="screen_s3_settings_region_label">Region</string>
<string name="screen_s3_settings_amazon_s3_text" translatable="false">Amazon S3</string>
<string name="screen_s3_settings_msg_display_name_not_empty">Display Name can\'t be empty</string>
<string name="screen_s3_settings_msg_access_key_not_empty">Access Key can\'t be empty</string>
<string name="screen_s3_settings_msg_secret_key_not_empty">Secret Key can\'t be empty</string>
<string name="screen_s3_settings_msg_bucket_not_empty">Bucket can\'t be empty</string>
<string name="screen_s3_settings_msg_endpoint_and_region_not_empty">Endpoint and Region can\'t be empty</string>
<!-- ## screen: enter vault name -->
<string name="screen_enter_vault_name_title" translatable="false">@string/screen_vault_list_action_create_new_vault</string>
<string name="screen_enter_vault_name_msg_name_empty">Vault name can\'t be empty.</string>