setCredentialsView method

Future<(bool, String)> setCredentialsView()

Vue permettant de demander à l'utilisateur d'entrer ses informations de connexion

Implementation

Future<(bool,String)> setCredentialsView() async {
  final Console console = Console();
  String userName = "";
  String password = "";
  console.writeLine('=== Entrez vos identifiants CAS ===\n');
  console.write("Nom d'utilisateur : ");
  userName = stdin.readLineSync() ?? "";
  console.write('\n');
  console.write('Mot de passe : ');
  password = await getSecureEntry();
  console.write('\n');
  console.write("Mot de passe iiiiiis $password\n");
  console.write('Sauvergarder pour la prochaine fois ? (Y(es)/n) : ');
  String stringSaveCredentials = stdin.readLineSync() ?? "n";
  console.write('\n');
  bool saveCredentials = (stringSaveCredentials.toUpperCase() == "Y" || stringSaveCredentials.toUpperCase() == "YES" || stringSaveCredentials.toUpperCase() == "OUI");
  console.write('Activer les sessions persistantes (Session CAS gardée d\'un lancement de programme à l\'autre) ?');
  String stringActivateSecureStorage = stdin.readLineSync() ?? "n";
  bool activateSecureStorage = (stringActivateSecureStorage.toUpperCase() == "Y" || stringSaveCredentials.toUpperCase() == "YES" || stringSaveCredentials.toUpperCase() == "OUI");
  logger("Saving credentials ? :$saveCredentials");
  bool credResult = setCredentials(userName, password, saveToKeyring: saveCredentials);
  bool secureStorageResult = false;
  if (activateSecureStorage){
    secureStorageResult = setSecureStorage();
  }
  logger("Credential save result :$credResult");
  logger("Secure storage save result $secureStorageResult");
  return (credResult && saveCredentials, userName);
}