@@ -263,34 +263,18 @@ class GuestAccessHelper(
263263}
264264
265265@Composable
266+ @Suppress(" LongMethod" )
266267private fun GuestAccessPasswordDialog (
267268 validationState : ConversationInfoViewModel .SecurePasswordViewState ,
268269 onPasswordChanged : (String ) -> Unit ,
269270 onDismiss : () -> Unit ,
270271 onSave : (password: String , copyAfterSave: Boolean ) -> Unit
271272) {
272273 var password by rememberSaveable { mutableStateOf(" " ) }
273-
274- val warningMessage = when (validationState) {
275- is ConversationInfoViewModel .SecurePasswordViewState .Success -> {
276- validationState.result.passed?.let { validPassword ->
277- if (! validPassword) {
278- validationState.result.reason
279- } else {
280- stringResource(R .string.nc_password_secure)
281- }
282- }
283- }
284-
285- is ConversationInfoViewModel .SecurePasswordViewState .Error -> {
286- stringResource(id = R .string.nc_common_error_sorry)
287- }
288-
289- ConversationInfoViewModel .SecurePasswordViewState .None -> " "
290- }
291-
274+ val secureText = stringResource(R .string.nc_password_secure)
275+ val warningMessage = passwordWarningMessage(validationState, secureText)
292276 val isPasswordValid =
293- password.isNotBlank() && warningMessage == stringResource( R .string.nc_password_secure)
277+ password.isNotBlank() && warningMessage == secureText
294278
295279 AlertDialog (
296280 onDismissRequest = onDismiss,
@@ -331,7 +315,6 @@ private fun GuestAccessPasswordDialog(
331315 ) {
332316 Text (text = stringResource(R .string.nc_copy_password))
333317 }
334-
335318 TextButton (
336319 onClick = { onSave(password, false ) },
337320 enabled = isPasswordValid
@@ -347,3 +330,22 @@ private fun GuestAccessPasswordDialog(
347330 }
348331 )
349332}
333+
334+ @Composable
335+ private fun passwordWarningMessage (
336+ validationState : ConversationInfoViewModel .SecurePasswordViewState ,
337+ secureText : String
338+ ): String? =
339+ when (validationState) {
340+ is ConversationInfoViewModel .SecurePasswordViewState .Success -> {
341+ validationState.result.passed?.let { passed ->
342+ if (passed) secureText else validationState.result.reason
343+ }
344+ }
345+
346+ is ConversationInfoViewModel .SecurePasswordViewState .Error -> {
347+ stringResource(R .string.nc_common_error_sorry)
348+ }
349+
350+ ConversationInfoViewModel .SecurePasswordViewState .None -> " "
351+ }
0 commit comments