diff --git a/l10n/en.js b/l10n/en.js
index 8906c9cbb..999920c39 100644
--- a/l10n/en.js
+++ b/l10n/en.js
@@ -17,18 +17,19 @@ OC.L10N.register(
'Caution, users highlighted in red are not yet member of this workspace. They will be automaticaly added.': 'Caution, users highlighted in red are not yet member of this workspace. They will be automaticaly added.',
'Create group': 'Create group',
'Delete space': 'Delete Workspace',
- 'Manually': 'Manually',
+ 'Search users': 'Search users',
'Delete user': 'Remove user',
+ 'Some users cannot be found': 'Some users cannot be found',
'Error 403': 'Error 403',
- 'Csv file import': 'Csv file import',
+ 'Import a .csv file': 'Import a .csv file',
'Error in the table header': 'Error in the table header',
- 'Invalid file format. Table header doesn\'t contain any good values.
You have to get 2 columns to specify:
- user : The user\'s uid or email
- role : The user role': 'Invalid file format. Table header doesn\'t contain any good values.
You have to get 2 columns to specify:
- user : The user\'s uid or email
- role : The user role',
+ 'The content of your file is invalid. Header does not contain the desired values.Two columns are required, with the following header names and values :
- "user" : The user\'s UID or email address
- "role" : The user\'s role ("u" for a user and "wm" for a workspace manager)': 'The content of your file is invalid. Header does not contain the desired values.Two columns are required, with the following header names and values :
- "user" : The user\'s UID or email address
- "role" : The user\'s role ("u" for a user and "wm" for a workspace manager)',
'This group already exists. Please, change the name': 'This group already exists. Please, change the name',
'You aren\'t allowed to access into this application !': 'You aren\'t allowed to access into this application !',
- 'Error in the csv format': 'Error in the csv format',
+ 'Error in .csv file format': 'Error in .csv file format',
'return to home': 'return to home',
- 'Invalid separator for the csv file': 'Invalid separator for the csv file',
- 'Your csv file should be a comma (",") as separator': 'Your csv file should be a comma (",") as separator',
+ 'Invalid separator for .csv files': 'Invalid separator for .csv files',
+ 'Your .csv file must use a comma (",") as separator': 'Your .csv file must use a comma (",") as separator',
'Email': 'Emails',
'Groups': 'Groups',
'Duplication of groups': 'Duplication of groups',
@@ -38,7 +39,7 @@ OC.L10N.register(
'Error to rename space': 'Error to rename space',
'The space name already exist. We cannot rename with this name.': 'The space name already exist. We cannot rename with this name.',
'User doesn\'t exist': 'User doesn\'t exist',
- 'Users don\'t exist in your csv file.
Please, check these users in your csv file :
': 'Users don\'t exist in your csv file.
Please, check these users in your csv file :
',
+ 'Users don\'t exist in your csv file.
Please, check these users in your csv file :': 'Users don\'t exist in your csv file.
Please, check these users in your csv file :',
'New space': 'Create a Workspace',
'No users selected': 'No users selected',
'Quota': 'Quota',
@@ -71,6 +72,7 @@ OC.L10N.register(
'Start typing to lookup users': 'Start typing to lookup users',
'remove users from selection': 'remove users from selection',
'Error - Duplicate space name': 'Error - Duplicate space name',
+ 'Search users': 'Search users',
'Error - This workspace name already exists': 'Error - This workspace name already exists',
'No spaces': 'No spaces',
'You have not yet created any workspace': 'You have not yet created any workspace',
@@ -94,7 +96,7 @@ OC.L10N.register(
'Wrong file extension. Must be .csv.': 'Wrong file extension. Must be .csv.',
'Invalid file format. Table header doesn\'t contain any of the following values:
{values}': 'Invalid file format. Table header doesn\'t contain any of the following values:
{values}',
'Something went wrong. Couldn\'t open a file.': 'Quelque chose s\'est mal passé. Impossible d\'ouvrir un fichier.',
- 'Upload new files': 'Téléverser de nouveaux fichiers',
- 'Choose from Files': 'Choisir depuis Fichiers'
+ 'Upload new files': 'Upload new files',
+ 'Choose from Files': 'Choose from Files'
},
"nplurals=2; plural=(n > 1)");
diff --git a/l10n/fr.js b/l10n/fr.js
index 05853e305..74ee8d0d2 100644
--- a/l10n/fr.js
+++ b/l10n/fr.js
@@ -7,13 +7,13 @@ OC.L10N.register(
'All spaces': 'Tous les espaces de travail',
'Administrators': 'Gestionnaires généraux',
'admin': "Gestionnaire d'espace",
- 'Invalid file format. Table header doesn\'t contain any good values.
You have to get 2 columns to specify:
- user : The user\'s uid or email
- role : The user role': 'Le contenu de votre fichier est invalide. L\'en-tête ne contient pas les valeurs souhaitées.
Deux colonnes sont requises, avec les noms d\'en-tête et les valeurs suivantes :
- "user" : L\'UID ou l\'adresse email de l\'utilisateur
- "role" : Le rôle de l\'utilisateur',
+ 'The content of your file is invalid. Header does not contain the desired values.Two columns are required, with the following header names and values :
- "user" : The user\'s UID or email address
- "role" : The user\'s role ("u" for a user and "wm" for a workspace manager)': 'Le contenu de votre fichier est invalide. L\'en-tête ne contient pas les valeurs souhaitées.
Deux colonnes sont requises, avec les noms d\'en-têtes et valeurs suivantes :
- "user": l\'UID ou l\'adresse email de l\'utilisateur
- "role": le rôle de l\'utilisateur ("u" pour un utilisateur et "wm" pour un gestionnaire d\'espace)',
'Group name': 'Nom du groupe',
'Space name': 'Nom de l\'espace de travail',
'Cancel': 'Annuler',
'Error unknown': 'Erreur inconnue',
- 'Csv file import': 'Import de fichiers csv',
- 'Manually': 'Manuellement',
+ 'Import a .csv file': 'Importer un fichier .csv',
+ 'Search users': 'Rechercher des utilisateurs',
'Error in the mimetype': 'Erreur dans le type de fichier',
'Error in the table header': 'Erreur dans l\'en-tête',
'Caution, users highlighted in red are not yet member of this workspace. They will be automaticaly added.': "Attention, les utilisateurs surlignés en rouge ne sont pas encore membres de l'espace. Ils seront ajoutés automatiquement à ce dernier.",
@@ -21,16 +21,16 @@ OC.L10N.register(
'The %s email address is duplicated in your instance. Impossible to know which users choice or maybe is an error.': 'L\'adresse email %s est dupliquée dans votre instance. Impossible de savoir quels utilisateurs choisir ou peut-être qu\'il y a une erreur.',
'or': 'ou',
'Create group': 'Créer un groupe',
- 'Error in the csv format': 'Erreur dans le format du fichier csv',
+ 'Error in .csv file format': 'Erreur dans le format du fichier .csv',
'Duplication of groups': 'Duplication des groupes',
- 'Invalid separator for the csv file': 'Séparateur invalide pour le fichier csv',
- 'Your csv file should be a comma (",") as separator': 'Votre fichier csv doit avoir une virgule (",") comme séparateur',
+ 'Invalid separator for .csv files': 'Séparateur invalide pour le fichier .csv',
+ 'Your .csv file must use a comma (",") as separator': 'Votre fichier au format .csv doit utiliser une virgule (",") comme séparateur',
'The group already exists.': 'Le groupe existe déjà.',
'Delete space': "Supprimer l'espace de travail",
'Delete user': "Retirer de l'espace de travail",
'Email': 'Email',
'User doesn\'t exist': 'Des utilisateurs n\'existent pas',
- 'Users don\'t exist in your csv file.
Please, check these users in your csv file :
': 'Des utilisateurs n\'existent pas dans votre fichier csv.
S\'il vous plait, vérifier ces utilisateurs dans votre fichier csv :
',
+ 'Users don\'t exist in your csv file.
Please, check these users in your csv file :': 'Des utilisateurs n\'existent pas dans votre fichier csv.
S\'il vous plait, vérifier ces utilisateurs dans votre fichier csv :
',
'Settings': 'Paramètres',
'This group already exists. Please, change the name': 'Ce groupe existe déjà. Changez le nom, s\'il vous plaît.',
'Groups': 'Groupes',
@@ -42,12 +42,14 @@ OC.L10N.register(
'Select groupfolders to convert in workspace': 'Selectionner les dossiers du groupe à convertir en espace projet',
'Convert in spaces': 'Convertir en espace projet',
'Add users': 'Ajouter des utilisateurs',
+ 'Search users': 'Rechercher des utilisateurs',
'No username matches your current entry.': 'Aucun nom d\'utilisateur ne correspond à votre saisie actuelle',
'Please specify a name.': 'S\'il vous plaît, spécifier un nom',
'Network error': 'Erreur réseau',
'A network error occured while trying to create group {group}
The error is: {error}': 'Une erreur réseau s\'est produite lors de la création d\'un groupe {group}
L\'erreur est: {error}',
'A network error occured while trying to add user {user_name} to workspaces.
The error is: {error}': 'Une erreur réseau s\'est produite lors de l\'ajout d\'un utilisateur {user_name} aux espaces de travail.
L\'erreur est: {error}',
'An error occured while trying to retrieve workspaces.
The error is: {error}': 'Une erreur s\'est produite lors de la récupération des espaces de travail.
L\'erreur est : {error}',
+ 'Some users cannot be found': 'Certains utilisateurs n\'existent pas',
'A network error occured while trying to retrieve workspaces.
The error is: {error}': 'Une erreur réseau s\'est produite lors de la récupération des espaces de travail.
L\'erreur est: {error}',
'An error occured while trying to lookup users.
The error is: {error}': 'Une erreur s\'est produite lors de la recherche d\'utilisateurs.',
'A network error occured while trying to lookup users.
The error is: {error}': 'Une erreur réseau s\'est produite lors de la recherche d\'utilisateurs.',
diff --git a/l10n/fr.json b/l10n/fr.json
index 60d9ee7c7..02030fdc7 100644
--- a/l10n/fr.json
+++ b/l10n/fr.json
@@ -15,12 +15,13 @@
"Delete user" : "Supprimer de l'espace de travail",
"Group name": "Nom du groupe",
"Space name": "Nom de l'espace de travail",
- "Csv file import": "Import de fichiers csv",
+ "Import a .csv file": "Importer un fichier .csv",
"Error in the mimetype": "Erreur dans le type de fichier",
- "Manually": "Manuellement",
+ "Search users": "Rechercher des utilisateurs",
"Groups": "Groupes",
"Error in the table header": "Erreur dans l'en-tête",
- "Invalid file format. Table header doesn't contain any good values.
You have to get 2 columns to specify:
- user : The user's uid or email
- role : The user role": "Le contenu de votre fichier est invalide. L'en-tête ne contient pas les valeurs souhaitées.
Deux colonnes sont requises, avec les noms d'en-tête et les valeurs suivantes :
- \"user\" : L'UID ou l'adresse email de l'utilisateur
- \"role\" : Le rôle de l'utilisateur",
+ "Search users": "Rechercher des utilisateurs",
+ "The content of your file is invalid. Header does not contain the desired values.Two columns are required, with the following header names and values :
- \"user\" : The user's UID or email address
- \"role\" : The user's role (\"u\" for a user and \"wm\" for a workspace manager)": "Le contenu de votre fichier est invalide. L'en-tête ne contient pas les valeurs souhaitées.
Deux colonnes sont requises, avec les noms d'en-têtes et valeurs suivantes :
- \"user\": l'UID ou l'adresse email de l'utilisateur
- \"role\": le rôle de l'utilisateur (\"u\" pour un utilisateur et \"wm\" pour un gestionnaire d'espace)",
"Make administrator" : "Assigner en tant que G.E.",
"New space" : "Créer un espace de travail",
"Settings": "Paramètres",
@@ -30,10 +31,10 @@
"Role" : "Role",
"Convert group folders": "Convertir",
"Select groupfolders to convert in workspace": "Selectionner les dossiers du groupe à convertir en espace projet",
- "Error in the csv format": "Erreur dans le format du fichier csv",
+ "Error in .csv file format": "Erreur dans le format du fichier .csv",
"Convert in spaces": "Convertir en espace projet",
"No username matches your current entry.": "Aucun nom d'utilisateur ne correspond à votre saisie actuelle",
- "Invalid separator for the csv file": "Séparateur invalide pour le fichier csv",
+ "Invalid separator for .csv files": "Séparateur invalide pour le fichier .csv",
"Your csv file should be a comma (\",\") as separator": "Votre fichier csv doit avoir une virgule (\",\") comme séparateur",
"Remove admin rights": "Retirer les droits de G.E.",
"There is a problem to add group to groupfolder. The group is deleted.": "Il y a un problème pour ajouter le groupe au dossier du groupe. Le groupe est supprimé.",
@@ -42,12 +43,13 @@
"or": "ou",
"Please specify a name.": "S'il vous plaît, spécifier un nom",
"Rename space": "Renommer l'Espace Projet",
- "User doesn't exist": "Des utilisateurs n'existent pas",
- "Users don't exist in your csv file.
Please, check these users in your csv file :
": "Des utilisateurs n'existent pas dans votre fichier csv.
S'il vous plait, vérifier ces utilisateurs dans votre fichier csv :
",
+ "Some users cannot be found": "Certains utilisateurs n'existent pas",
+ "Users don't exist in your csv file.
Please, check these users in your csv file :": "Des utilisateurs n'existent pas dans votre fichier csv.
S'il vous plait, vérifier ces utilisateurs dans votre fichier csv :
",
"Email address doesn't unique": "L'adresse email n'est pas unique",
"The %s email address is duplicated in your instance. Impossible to know which users choice or maybe is an error.": "L'adresse email %s est dupliquée dans votre instance. Impossible de savoir quels utilisateurs choisir ou peut-être qu'il y a une erreur.",
"Error to rename space": "Erreur pour renommer l'espace de travail",
"The space name already exist. We cannot rename with this name.": "Le nom de l'espace de travail existe déjà. Vous ne pouvez pas le renommer avec ce nom.",
+ "Your .csv file must use a comma (\",\") as separator": "Votre fichier au format .csv doit utiliser une virgule (\",\") comme séparateur",
"Error 403": "Erreur 403",
"Error - Duplicate space name": "Erreur - Duplication de nom de l'espace de travail",
"Error - This workspace name already exists": "Erreur - Ce nom d'espace de travail existe déjà",
diff --git a/lib/Controller/FileCSVController.php b/lib/Controller/FileCSVController.php
index 183ad2ea7..dc61cbe7c 100644
--- a/lib/Controller/FileCSVController.php
+++ b/lib/Controller/FileCSVController.php
@@ -99,8 +99,8 @@ public function import(): JSONResponse {
if (!SeparatorDetector::isComma($fileUploader)) {
throw new InvalidSeparatorCsvException(
- $this->translate->t('Invalid separator for the csv file'),
- $this->translate->t('Your csv file should be a comma (",") as separator'),
+ $this->translate->t('Invalid separator for .csv files'),
+ $this->translate->t('Your .csv file must use a comma (",") as separator'),
);
}
@@ -113,11 +113,11 @@ public function import(): JSONResponse {
$displaynamesBoldStringify = implode(" $separatorOr ", $displaynamesBold);
$rolesBoldStringify = implode(" $separatorOr ", $rolesBold);
- $message = "Invalid file format. "
- . "Table header doesn't contain any good values.
"
- . "You have to get 2 columns to specify:
"
- ."- user : The user's uid or email
"
- . "- role : The user role";
+ $message = "The content of your file is invalid. "
+ . "Header does not contain the desired values."
+ . "Two columns are required, with the following header names and values :
"
+ ."- \"user\" : The user's UID or email address
"
+ . "- \"role\" : The user's role (\"u\" for a user and \"wm\" for a workspace manager)";
$errorMessage = $this->translate->t(
$message,
@@ -128,7 +128,7 @@ public function import(): JSONResponse {
);
throw new InvalidCsvFormatException(
- $this->translate->t('Error in the csv format'),
+ $this->translate->t('Error in .csv file format'),
$this->translate->t($errorMessage),
);
}
@@ -164,18 +164,20 @@ function ($name) {
$usersUnknown = array_merge($usernamesUnknown, $emailsUnknown);
- $usersUnknown = array_slice($usersUnknown, 0, 10);
- $usersUnknown[] = '...';
+ if (count($usersUnknown) >= 9) {
+ $usersUnknown = array_slice($usersUnknown, 0, 10);
+ $usersUnknown[] = '...';
+ }
$usersUnknown = array_map(
fn ($name) => "- $name",
$usersUnknown
);
$usersUnknown = implode("
", $usersUnknown);
- $errorMessage = $this->translate->t('Users don\'t exist in your csv file.
Please, check these users in your csv file :
');
+ $errorMessage = $this->translate->t('Users don\'t exist in your csv file.
Please, check these users in your csv file :');
$errorMessage .= $usersUnknown;
throw new UserDoesntExistException(
- $this->translate->t('User doesn\'t exist'),
+ $this->translate->t('Some users cannot be found'),
$errorMessage,
Http::STATUS_FORBIDDEN
);
@@ -251,8 +253,8 @@ public function getFromFiles():JSONResponse {
if (!SeparatorDetector::isComma($nextcloudFile)) {
throw new InvalidSeparatorCsvException(
- $this->translate->t('Invalid separator for the csv file'),
- $this->translate->t('Your csv file should be a comma (",") as separator'),
+ $this->translate->t('Invalid separator for .csv files'),
+ $this->translate->t('Your .csv file must use a comma (",") as separator'),
);
}
@@ -264,11 +266,11 @@ public function getFromFiles():JSONResponse {
$displaynamesBoldStringify = implode(" $separatorOr ", $displaynamesBold);
$rolesBoldStringify = implode(" $separatorOr ", $rolesBold);
- $message = "Invalid file format. "
- . "Table header doesn't contain any good values.
"
- . "You have to get 2 columns to specify:
"
- ."- user : The user's uid or email
"
- . "- role : The user role";
+ $message = "The content of your file is invalid. "
+ . "Header does not contain the desired values."
+ . "Two columns are required, with the following header names and values :
"
+ ."- \"user\" : The user's UID or email address
"
+ . "- \"role\" : The user's role (\"u\" for a user and \"wm\" for a workspace manager)";
$errorMessage = $this->translate->t(
$message,
@@ -279,7 +281,7 @@ public function getFromFiles():JSONResponse {
);
throw new InvalidCsvFormatException(
- $this->translate->t('Error in the csv format'),
+ $this->translate->t('Error in .csv file format'),
$this->translate->t($errorMessage),
);
}
@@ -318,18 +320,20 @@ function ($name) {
$usersUnknown = array_merge($usernamesUnknown, $emailsUnknown);
- $usersUnknown = array_slice($usersUnknown, 0, 10);
- $usersUnknown[] = '...';
+ if (count($usersUnknown) >= 9) {
+ $usersUnknown = array_slice($usersUnknown, 0, 10);
+ $usersUnknown[] = '...';
+ }
$usersUnknown = array_map(
fn ($name) => "- $name",
$usersUnknown
);
$usersUnknown = implode("
", $usersUnknown);
- $errorMessage = $this->translate->t('Users don\'t exist in your csv file.
Please, check these users in your csv file :
');
+ $errorMessage = $this->translate->t('Users don\'t exist in your csv file.
Please, check these users in your csv file :');
$errorMessage .= $usersUnknown;
throw new UserDoesntExistException(
- $this->translate->t('User doesn\'t exist'),
+ $this->translate->t('Some users cannot be found'),
$errorMessage,
Http::STATUS_FORBIDDEN
);
diff --git a/src/AddUsersTabs.vue b/src/AddUsersTabs.vue
index ed72ec300..56af5963f 100644
--- a/src/AddUsersTabs.vue
+++ b/src/AddUsersTabs.vue
@@ -26,8 +26,8 @@
:title="title"
@update:active="toggleImportTab"
@close="closeSidebar">
-
user, role