|
|
|
@ -7,8 +7,10 @@ import androidx.compose.foundation.layout.Column
|
|
|
|
|
import androidx.compose.foundation.layout.fillMaxSize
|
|
|
|
|
import androidx.compose.foundation.layout.fillMaxWidth
|
|
|
|
|
import androidx.compose.foundation.layout.padding
|
|
|
|
|
import androidx.compose.foundation.rememberScrollState
|
|
|
|
|
import androidx.compose.foundation.shape.RoundedCornerShape
|
|
|
|
|
import androidx.compose.foundation.text.KeyboardOptions
|
|
|
|
|
import androidx.compose.foundation.verticalScroll
|
|
|
|
|
import androidx.compose.material.icons.Icons
|
|
|
|
|
import androidx.compose.material.icons.filled.Check
|
|
|
|
|
import androidx.compose.material3.Button
|
|
|
|
@ -51,7 +53,8 @@ fun SignUpPage(navControllerLogin: () -> Unit, services : IServices) {
|
|
|
|
|
Box(
|
|
|
|
|
modifier = Modifier
|
|
|
|
|
.fillMaxSize()
|
|
|
|
|
.background(colorBackground),
|
|
|
|
|
.background(colorBackground)
|
|
|
|
|
.verticalScroll(rememberScrollState()),
|
|
|
|
|
contentAlignment = Alignment.Center
|
|
|
|
|
){
|
|
|
|
|
Column(
|
|
|
|
@ -191,17 +194,19 @@ fun ConnexionButtonSign(
|
|
|
|
|
var emailError by remember { mutableStateOf(false) }
|
|
|
|
|
var passwordError by remember { mutableStateOf(false) }
|
|
|
|
|
var passwordErrorEmpty by remember { mutableStateOf(false) }
|
|
|
|
|
var usernameErrorEmpty by remember { mutableStateOf(false) }
|
|
|
|
|
var usernameError by remember { mutableStateOf(false) }
|
|
|
|
|
var usernameErrorExist by remember { mutableStateOf(false) }
|
|
|
|
|
|
|
|
|
|
val invalidRegex = """^[a-zA-Z0-9]*$""".toRegex()
|
|
|
|
|
|
|
|
|
|
Button(
|
|
|
|
|
onClick = {
|
|
|
|
|
emailError = !isValidEmail(email)
|
|
|
|
|
passwordError = !arePasswordsMatching(password, confirmPassword)
|
|
|
|
|
usernameErrorEmpty = username.isBlank()
|
|
|
|
|
usernameError = username.isBlank() && !username.matches(invalidRegex)
|
|
|
|
|
passwordErrorEmpty = password.isBlank() || confirmPassword.isBlank()
|
|
|
|
|
|
|
|
|
|
if (!emailError && !passwordError && !usernameErrorEmpty && !passwordErrorEmpty) {
|
|
|
|
|
if (!emailError && !passwordError && !usernameError && !passwordErrorEmpty) {
|
|
|
|
|
usernameErrorExist = !service.CreateUser(username, email, password, service)
|
|
|
|
|
if(!usernameErrorExist){
|
|
|
|
|
navController() // retour à la page login
|
|
|
|
@ -215,8 +220,8 @@ fun ConnexionButtonSign(
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Afficher erreurs
|
|
|
|
|
if (usernameErrorEmpty) {
|
|
|
|
|
ErrorMessageProfileComponent(R.string.ErrorUserEmptySignUp)
|
|
|
|
|
if (usernameError) {
|
|
|
|
|
ErrorMessageProfileComponent(R.string.ErrorUserSignUp)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (usernameErrorExist) {
|
|
|
|
|