TimeTracker - en to fr translation catalogue (3052 entries)

en: Your session expired or the page was open too long. Please try again.
fr: Votre session a expiré ou la page est restée ouverte trop longtemps. Veuillez réessayer.

en: Administrator access required
fr: Accès administrateur requis

en: Username is required
fr: Le nom d'utilisateur est requis

en: User already exists
fr: L'utilisateur existe déjà

en: Could not create user due to a database error. Please check server logs.
fr: Impossible de créer un utilisateur en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: User "%(username)s" created successfully
fr: L'utilisateur "%(username)s" a été créé avec succès

en: Username already exists
fr: Le nom d'utilisateur existe déjà

en: Please select a client when enabling client portal access.
fr: Veuillez sélectionner un client lors de l'activation de l'accès au portail client.

en: Could not update user due to a database error. Please check server logs.
fr: Impossible de mettre à jour l'utilisateur en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: User "%(username)s" updated successfully
fr: L'utilisateur "%(username)s" a été mis à jour avec succès

en: Cannot delete the last administrator
fr: Impossible de supprimer le dernier administrateur

en: Cannot delete user with existing time entries
fr: Impossible de supprimer un utilisateur avec des entrées de temps existantes

en: Could not delete user due to a database error. Please check server logs.
fr: Impossible de supprimer l'utilisateur en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: User "%(username)s" deleted successfully
fr: L'utilisateur "%(username)s" a été supprimé avec succès

en: Telemetry has been enabled. Thank you for helping us improve!
fr: La télémétrie a été activée. Merci de nous aider à nous améliorer !

en: Telemetry has been disabled.
fr: La télémétrie a été désactivée.

en: Invalid timezone: %(timezone)s
fr: Fuseau horaire invalide : %(timezone)s

en: Could not update settings due to a database error. Please check server logs.
fr: Impossible de mettre à jour les paramètres en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Settings updated successfully
fr: Paramètres mis à jour avec succès

en: Could not update PDF layout due to a database error.
fr: Impossible de mettre à jour la mise en page du PDF en raison d'une erreur de base de données.

en: PDF layout updated successfully
fr: Mise en page PDF mise à jour avec succès

en: Could not reset PDF layout due to a database error.
fr: Impossible de réinitialiser la mise en page du PDF en raison d'une erreur de base de données.

en: PDF layout reset to defaults
fr: Mise en page PDF réinitialisée aux valeurs par défaut

en: No logo file selected
fr: Aucun fichier de logo sélectionné

en: Invalid image file.
fr: Fichier image invalide.

en: Could not save logo due to a database error. Please check server logs.
fr: Impossible d'enregistrer le logo en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Company logo uploaded successfully! You can see it in the "Current Company Logo" section above. It will appear on invoices and PDF documents.
fr: Logo de l'entreprise téléchargé avec succès ! Vous pouvez le voir dans la section « Logo actuel de l'entreprise » ci-dessus. Il apparaîtra sur les factures et les documents PDF.

en: Invalid file type. Allowed types: PNG, JPG, JPEG, GIF, SVG, WEBP
fr: Type de fichier invalide. Types autorisés : PNG, JPG, JPEG, GIF, SVG, WEBP

en: Could not remove logo due to a database error. Please check server logs.
fr: Impossible de supprimer le logo en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Company logo removed successfully. Upload a new logo in the section below if needed.
fr: Le logo de l'entreprise a été supprimé avec succès. Téléchargez un nouveau logo dans la section ci-dessous si nécessaire.

en: No logo to remove
fr: Aucun logo à supprimer

en: Backup failed: archive not created
fr: Échec de la sauvegarde : archive non créée

en: Backup failed: %(error)s
fr: Échec de la sauvegarde : %(error)s

en: Invalid file type
fr: Type de fichier invalide

en: Backup file not found
fr: Fichier de sauvegarde introuvable

en: Backup "%(filename)s" deleted successfully
fr: Sauvegarde "%(filename)s" supprimée avec succès

en: Failed to delete backup: %(error)s
fr: Échec de la suppression de la sauvegarde : %(error)s

en: Invalid file type. Please select a .zip backup archive.
fr: Type de fichier invalide. Veuillez sélectionner une archive de sauvegarde .zip.

en: Backup file not found.
fr: Fichier de sauvegarde introuvable.

en: Invalid file type. Please upload a .zip backup archive.
fr: Type de fichier invalide. Veuillez télécharger une archive de sauvegarde .zip.

en: No backup file provided
fr: Aucun fichier de sauvegarde fourni

en: Restore started. You can monitor progress on this page.
fr: La restauration a commencé. Vous pouvez suivre les progrès sur cette page.

en: OIDC is not enabled. Set AUTH_METHOD to "oidc" or "both".
fr: OIDC n’est pas activé. Définissez AUTH_METHOD sur « oidc » ou « les deux ».

en: OIDC_ISSUER is not configured
fr: OIDC_ISSUER n'est pas configuré

en: ✓ Discovery document fetched successfully from %(url)s
fr: ✓ Document de découverte récupéré avec succès à partir de %(url)s

en: ✗ Timeout fetching discovery document from %(url)s
fr: ✗ Délai d'attente pour récupérer le document de découverte à partir de %(url)s

en: ✗ Failed to fetch discovery document: %(error)s
fr: ✗ Échec de la récupération du document de découverte : %(error)s

en: ✗ Unexpected error: %(error)s
fr: ✗ Erreur inattendue : %(error)s

en: ✓ OAuth client is registered in application
fr: ✓ Le client OAuth est enregistré dans l'application

en: ✗ OAuth client is not registered
fr: ✗ Le client OAuth n'est pas enregistré

en: ✗ Failed to create OAuth client: %(error)s
fr: ✗ Échec de la création du client OAuth : %(error)s

en: ✓ %(endpoint)s: %(url)s
fr: ✓ %(endpoint)s : %(url)s

en: ✗ Missing %(endpoint)s in discovery document
fr: ✗ %(endpoint)s manquants dans le document de découverte

en: ✓ Scope "%(scope)s" is supported by provider
fr: ✓ La portée "%(scope)s" est prise en charge par le fournisseur

en: ⚠ Scope "%(scope)s" may not be supported by provider (supported: %(supported)s)
fr: ⚠ La portée "%(scope)s" peut ne pas être prise en charge par le fournisseur (prise en charge : %(supported)s)

en: ℹ Provider supports claims: %(claims)s
fr: ℹ Le fournisseur prend en charge les réclamations : %(claims)s

en: ✓ Configured %(claim_type)s claim "%(claim_name)s" is supported
fr: ✓ La revendication %(claim_type)s configurée "%(claim_name)s" est prise en charge

en: ⚠ Configured %(claim_type)s claim "%(claim_name)s" not in supported claims list (may still work)
fr: ⚠ La revendication %(claim_type)s configurée "%(claim_name)s" ne figure pas dans la liste des revendications prises en charge (peut toujours fonctionner)

en: OIDC configuration test completed
fr: Test de configuration OIDC terminé

en: Template name is required
fr: Le nom du modèle est obligatoire

en: A template with this name already exists
fr: Un modèle portant ce nom existe déjà

en: Could not create email template due to a database error.
fr: Impossible de créer un modèle d'e-mail en raison d'une erreur de base de données.

en: Email template created successfully
fr: Modèle d'e-mail créé avec succès

en: Could not update email template due to a database error.
fr: Impossible de mettre à jour le modèle d'e-mail en raison d'une erreur de base de données.

en: Email template updated successfully
fr: Modèle d'e-mail mis à jour avec succès

en: Cannot delete template that is in use by invoices or recurring invoices
fr: Impossible de supprimer le modèle utilisé par les factures ou les factures récurrentes

en: Could not delete email template due to a database error.
fr: Impossible de supprimer le modèle d'e-mail en raison d'une erreur de base de données.

en: Email template "%(name)s" deleted successfully
fr: Le modèle d'e-mail « %(name)s » a été supprimé avec succès

en: Audit logs table does not exist. Please run: flask db upgrade
fr: Le tableau des journaux d’audit n’existe pas. Veuillez exécuter : mise à niveau de la base de données flask

en: Could not create your account due to a database error. Please try again later.
fr: Impossible de créer votre compte en raison d'une erreur de base de données. Veuillez réessayer plus tard.

en: Welcome! Your account has been created.
fr: Accueillir! Votre compte a été créé.

en: User not found. Please contact an administrator.
fr: Utilisateur introuvable. Veuillez contacter un administrateur.

en: Could not update your account role due to a database error.
fr: Impossible de mettre à jour votre rôle de compte en raison d'une erreur de base de données.

en: Account is disabled. Please contact an administrator.
fr: Le compte est désactivé. Veuillez contacter un administrateur.

en: Welcome back, %(username)s!
fr: Bon retour, %(username)s !

en: Unexpected error during login. Please try again or check server logs.
fr: Erreur inattendue lors de la connexion. Veuillez réessayer ou vérifier les journaux du serveur.

en: Goodbye, %(username)s!
fr: Au revoir, %(username)s !

en: Invalid avatar file type. Allowed: PNG, JPG, JPEG, GIF, WEBP
fr: Type de fichier d'avatar invalide. Autorisés : PNG, JPG, JPEG, GIF, WEBP

en: Failed to save avatar on server.
fr: Échec de l'enregistrement de l'avatar sur le serveur.

en: Profile updated successfully
fr: Profil mis à jour avec succès

en: Could not update your profile due to a database error.
fr: Impossible de mettre à jour votre profil en raison d'une erreur de base de données.

en: Avatar removed
fr: Avatar supprimé

en: Failed to remove avatar.
fr: Échec de la suppression de l'avatar.

en: Single Sign-On is not configured yet. Please contact an administrator.
fr: L’authentification unique n’est pas encore configurée. Veuillez contacter un administrateur.

en: Single Sign-On is not configured.
fr: L’authentification unique n’est pas configurée.

en: Authentication failed: missing issuer or subject claim. Please check OIDC configuration.
fr: Échec de l'authentification : réclamation d'émetteur ou de sujet manquante. Veuillez vérifier la configuration OIDC.

en: User account does not exist and self-registration is disabled.
fr: Le compte utilisateur n'existe pas et l'auto-inscription est désactivée.

en: Could not create your account due to a database error.
fr: Impossible de créer votre compte en raison d'une erreur de base de données.

en: Unexpected error during SSO login. Please try again or contact support.
fr: Erreur inattendue lors de la connexion SSO. Veuillez réessayer ou contacter l'assistance.

en: You do not have access to this project.
fr: Vous n'avez pas accès à ce projet.

en: This project does not have a budget set.
fr: Ce projet n'a pas de budget fixé.

en: Event created successfully
fr: Événement créé avec succès

en: Event updated successfully
fr: Événement mis à jour avec succès

en: You do not have permission to delete this event.
fr: Vous n'êtes pas autorisé à supprimer cet événement.

en: Failed to delete event
fr: Échec de la suppression de l'événement

en: Event deleted successfully
fr: Événement supprimé avec succès

en: Error deleting event: %(error)s
fr: Erreur lors de la suppression de l'événement : %(error)s

en: Event moved successfully
fr: Événement déplacé avec succès

en: Event resized successfully
fr: L'événement a été redimensionné avec succès

en: You do not have permission to view this event.
fr: Vous n'êtes pas autorisé à visualiser cet événement.

en: You do not have permission to edit this event.
fr: Vous n'êtes pas autorisé à modifier cet événement.

en: Note content cannot be empty
fr: Le contenu de la note ne peut pas être vide

en: Note added successfully
fr: Note ajoutée avec succès

en: Error adding note
fr: Erreur lors de l'ajout d'une note

en: Error adding note: %(error)s
fr: Erreur lors de l'ajout de la note : %(error)s

en: Note does not belong to this client
fr: La note n'appartient pas à ce client

en: You do not have permission to edit this note
fr: Vous n'êtes pas autorisé à modifier cette note

en: Error updating note
fr: Erreur lors de la mise à jour de la note

en: Note updated successfully
fr: Remarque mise à jour avec succès

en: Error updating note: %(error)s
fr: Erreur lors de la mise à jour de la note : %(error)s

en: You do not have permission to delete this note
fr: Vous n'êtes pas autorisé à supprimer cette note

en: Error deleting note
fr: Erreur lors de la suppression de la note

en: Note deleted successfully
fr: Note supprimée avec succès

en: Error deleting note: %(error)s
fr: Erreur lors de la suppression de la note : %(error)s

en: Please log in to access the client portal.
fr: Veuillez vous connecter pour accéder au portail client.

en: Client portal access is not enabled for your account.
fr: L'accès au portail client n'est pas activé pour votre compte.

en: Your client account is inactive.
fr: Votre compte client est inactif.

en: Username and password are required.
fr: Le nom d'utilisateur et le mot de passe sont requis.

en: Invalid username or password.
fr: Nom d'utilisateur ou mot de passe invalide.

en: Welcome, %(client_name)s!
fr: Bienvenue, %(client_name)s !

en: You have been logged out.
fr: Vous avez été déconnecté.

en: Invalid or missing password setup token.
fr: Jeton de configuration de mot de passe invalide ou manquant.

en: Invalid or expired password setup token. Please request a new one.
fr: Jeton de configuration de mot de passe invalide ou expiré. Veuillez en demander un nouveau.

en: Password is required.
fr: Un mot de passe est requis.

en: Password must be at least 8 characters long.
fr: Le mot de passe doit comporter au moins 8 caractères.

en: Passwords do not match.
fr: Les mots de passe ne correspondent pas.

en: Could not set password due to a database error.
fr: Impossible de définir le mot de passe en raison d'une erreur de base de données.

en: Password set successfully! You can now log in to the portal.
fr: Mot de passe défini avec succès ! Vous pouvez maintenant vous connecter au portail.

en: Unable to load client portal data.
fr: Impossible de charger les données du portail client.

en: Invoice not found.
fr: Facture introuvable.

en: Quote not found.
fr: Citation introuvable.

en: You do not have permission to create clients
fr: Vous n'êtes pas autorisé à créer des clients

en: Client name is required
fr: Le nom du client est requis

en: A client with this name already exists
fr: Un client portant ce nom existe déjà

en: Invalid hourly rate format
fr: Format de taux horaire invalide

en: Prepaid hours must be a positive number.
fr: Les heures prépayées doivent être un nombre positif.

en: Prepaid reset day must be between 1 and 28.
fr: Le jour de réinitialisation prépayé doit être compris entre 1 et 28.

en: Could not create client due to a database error. Please check server logs.
fr: Impossible de créer le client en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to edit clients
fr: Vous n'êtes pas autorisé à modifier les clients

en: Portal username is required when enabling portal access.
fr: Le nom d’utilisateur du portail est requis lors de l’activation de l’accès au portail.

en: This portal username is already in use by another client.
fr: Ce nom d'utilisateur du portail est déjà utilisé par un autre client.

en: Could not update client due to a database error. Please check server logs.
fr: Impossible de mettre à jour le client en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to send portal emails
fr: Vous n'êtes pas autorisé à envoyer des e-mails sur le portail

en: Client portal is not enabled for this client.
fr: Le portail client n'est pas activé pour ce client.

en: Portal username is not set for this client.
fr: Le nom d'utilisateur du portail n'est pas défini pour ce client.

en: Client email address is not set. Cannot send password setup email.
fr: L'adresse e-mail du client n'est pas définie. Impossible d'envoyer un e-mail de configuration du mot de passe.

en: Could not generate password setup token due to a database error.
fr: Impossible de générer le jeton de configuration du mot de passe en raison d'une erreur de base de données.

en: Password setup email sent successfully to %(email)s
fr: E-mail de configuration du mot de passe envoyé avec succès à %(email)s

en: Email server is not configured. Please configure email settings in Admin → Email Configuration or set MAIL_SERVER environment variable.
fr: Le serveur de messagerie n'est pas configuré. Veuillez configurer les paramètres de messagerie dans Admin → Configuration de la messagerie ou définir la variable d'environnement MAIL_SERVER.

en: Failed to send password setup email. Please check email configuration and server logs for details.
fr: Échec de l'envoi de l'e-mail de configuration du mot de passe. Veuillez vérifier la configuration de la messagerie et les journaux du serveur pour plus de détails.

en: An error occurred while sending the email: %(error)s
fr: Une erreur s'est produite lors de l'envoi de l'e-mail : %(error)s

en: You do not have permission to archive clients
fr: Vous n'êtes pas autorisé à archiver les clients

en: Client is already inactive
fr: Le client est déjà inactif

en: You do not have permission to activate clients
fr: Vous n'êtes pas autorisé à activer les clients

en: Client is already active
fr: Le client est déjà actif

en: You do not have permission to delete clients
fr: Vous n'êtes pas autorisé à supprimer des clients

en: Cannot delete client with existing projects
fr: Impossible de supprimer le client avec des projets existants

en: Could not delete client due to a database error. Please check server logs.
fr: Impossible de supprimer le client en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No clients selected for deletion
fr: Aucun client sélectionné pour la suppression

en: Could not delete clients due to a database error. Please check server logs.
fr: Impossible de supprimer les clients en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No clients were deleted
fr: Aucun client n'a été supprimé

en: You do not have permission to change client status
fr: Vous n'êtes pas autorisé à modifier le statut du client

en: No clients selected
fr: Aucun client sélectionné

en: Invalid status
fr: Statut invalide

en: Could not update client status due to a database error. Please check server logs.
fr: Impossible de mettre à jour le statut du client en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No clients were updated
fr: Aucun client n'a été mis à jour

en: Comment content cannot be empty
fr: Le contenu du commentaire ne peut pas être vide

en: Comment must be associated with a project, task, or quote
fr: Le commentaire doit être associé à un projet, une tâche ou un devis

en: Comment cannot be associated with multiple targets
fr: Le commentaire ne peut pas être associé à plusieurs cibles

en: Invalid parent comment
fr: Commentaire parent invalide

en: Comment added successfully
fr: Commentaire ajouté avec succès

en: Error adding comment
fr: Erreur lors de l'ajout du commentaire

en: Error adding comment: %(error)s
fr: Erreur lors de l'ajout du commentaire : %(error)s

en: You do not have permission to edit this comment
fr: Vous n'êtes pas autorisé à modifier ce commentaire

en: Comment updated successfully
fr: Commentaire mis à jour avec succès

en: Error updating comment: %(error)s
fr: Erreur lors de la mise à jour du commentaire : %(error)s

en: You do not have permission to delete this comment
fr: Vous n'êtes pas autorisé à supprimer ce commentaire

en: Comment deleted successfully
fr: Commentaire supprimé avec succès

en: Error deleting comment: %(error)s
fr: Erreur lors de la suppression du commentaire : %(error)s

en: Contact created successfully
fr: Contact créé avec succès

en: Error creating contact: %(error)s
fr: Erreur lors de la création du contact : %(error)s

en: Contact updated successfully
fr: Contact mis à jour avec succès

en: Error updating contact: %(error)s
fr: Erreur lors de la mise à jour du contact : %(error)s

en: Contact deleted successfully
fr: Contact supprimé avec succès

en: Error deleting contact: %(error)s
fr: Erreur lors de la suppression du contact : %(error)s

en: Contact set as primary
fr: Contact défini comme principal

en: Error setting primary contact: %(error)s
fr: Erreur lors de la définition du contact principal : %(error)s

en: Communication recorded successfully
fr: Communication enregistrée avec succès

en: Error recording communication: %(error)s
fr: Erreur d'enregistrement de la communication : %(error)s

en: Invalid deal value
fr: Valeur de l'offre invalide

en: Deal created successfully
fr: Offre créée avec succès

en: Error creating deal: %(error)s
fr: Erreur lors de la création de l'offre : %(error)s

en: Deal updated successfully
fr: Offre mise à jour avec succès

en: Error updating deal: %(error)s
fr: Erreur lors de la mise à jour de l'offre : %(error)s

en: Deal closed as won
fr: Transaction conclue comme gagnée

en: Error closing deal: %(error)s
fr: Erreur lors de la clôture de la transaction : %(error)s

en: Deal closed as lost
fr: Transaction conclue comme perdue

en: Activity recorded successfully
fr: Activité enregistrée avec succès

en: Error recording activity: %(error)s
fr: Erreur d'activité d'enregistrement : %(error)s

en: Category name is required
fr: Le nom de la catégorie est obligatoire

en: Expense category created successfully
fr: Catégorie de dépenses créée avec succès

en: Error creating expense category
fr: Erreur lors de la création de la catégorie de dépenses

en: Expense category updated successfully
fr: Catégorie de dépenses mise à jour avec succès

en: Error updating expense category
fr: Erreur lors de la mise à jour de la catégorie de dépenses

en: Expense category deactivated successfully
fr: Catégorie de dépenses désactivée avec succès

en: Error deactivating expense category
fr: Erreur lors de la désactivation de la catégorie de dépenses

en: Title is required
fr: Le titre est requis

en: Category is required
fr: La catégorie est obligatoire

en: Amount is required
fr: Le montant est requis

en: Expense date is required
fr: La date de dépense est requise

en: Invalid date format
fr: Format de date invalide

en: Invalid amount format
fr: Format de montant invalide

en: Expense created successfully
fr: Dépense créée avec succès

en: Error creating expense
fr: Erreur lors de la création de la dépense

en: You do not have permission to view this expense
fr: Vous n'êtes pas autorisé à consulter cette dépense

en: You do not have permission to edit this expense
fr: Vous n'êtes pas autorisé à modifier cette dépense

en: Cannot edit approved or reimbursed expenses
fr: Impossible de modifier les dépenses approuvées ou remboursées

en: Please fill in all required fields
fr: Veuillez remplir tous les champs obligatoires

en: Expense updated successfully
fr: Dépense mise à jour avec succès

en: Error updating expense
fr: Erreur lors de la mise à jour des dépenses

en: You do not have permission to delete this expense
fr: Vous n'êtes pas autorisé à supprimer cette dépense

en: Cannot delete approved or invoiced expenses
fr: Impossible de supprimer les dépenses approuvées ou facturées

en: Expense deleted successfully
fr: Dépense supprimée avec succès

en: Error deleting expense
fr: Erreur lors de la suppression de la dépense

en: No expenses selected for deletion
fr: Aucune dépense sélectionnée pour suppression

en: Could not delete expenses due to a database error. Please check server logs.
fr: Impossible de supprimer les dépenses en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Successfully deleted %(count)d expense(s)
fr: %(count)d dépense(s) supprimée(s) avec succès

en: Skipped %(count)d expense(s): %(errors)s
fr: %(count)d dépense(s) ignorée(s) : %(errors)s

en: No expenses selected
fr: Aucune dépense sélectionnée

en: Invalid status value
fr: Valeur de statut invalide

en: Could not update expenses due to a database error
fr: Impossible de mettre à jour les dépenses en raison d'une erreur de base de données

en: Successfully updated %(count)d expense(s) to %(status)s
fr: %(count)d dépense(s) a été mise à jour avec succès vers %(status)s

en: Skipped %(count)d expense(s) (no permission)
fr: %(count)d dépense(s) ignorée(s) (aucune autorisation)

en: Only administrators can approve expenses
fr: Seuls les administrateurs peuvent approuver les dépenses

en: Only pending expenses can be approved
fr: Seules les dépenses en attente peuvent être approuvées

en: Expense approved successfully
fr: Dépense approuvée avec succès

en: Error approving expense
fr: Erreur lors de l'approbation de la dépense

en: Only administrators can reject expenses
fr: Seuls les administrateurs peuvent refuser des dépenses

en: Only pending expenses can be rejected
fr: Seules les dépenses en attente peuvent être rejetées

en: Rejection reason is required
fr: Le motif du refus est requis

en: Expense rejected
fr: Dépense rejetée

en: Error rejecting expense
fr: Erreur lors du rejet d'une dépense

en: Only administrators can mark expenses as reimbursed
fr: Seuls les administrateurs peuvent marquer les dépenses comme remboursées

en: Only approved expenses can be marked as reimbursed
fr: Seules les dépenses approuvées peuvent être marquées comme remboursées

en: This expense is not marked as reimbursable
fr: Cette dépense n'est pas marquée comme remboursable

en: Expense marked as reimbursed
fr: Dépense marquée comme remboursée

en: Error marking expense as reimbursed
fr: Erreur marquant la dépense comme remboursée

en: OCR is not available. Please contact your administrator.
fr: L'OCR n'est pas disponible. Veuillez contacter votre administrateur.

en: No file provided
fr: Aucun fichier fourni

en: No file selected
fr: Aucun fichier sélectionné

en: Invalid file type. Allowed types: png, jpg, jpeg, gif, pdf
fr: Type de fichier invalide. Types autorisés : png, jpg, jpeg, gif, pdf

en: Receipt scanned successfully! You can now create an expense with the extracted data.
fr: Reçu scanné avec succès ! Vous pouvez désormais créer une dépense avec les données extraites.

en: Error scanning receipt. Please try again or enter the expense manually.
fr: Erreur lors de la numérisation du reçu. Veuillez réessayer ou saisir la dépense manuellement.

en: No scanned receipt data found. Please scan a receipt first.
fr: Aucune donnée de reçu numérisée trouvée. Veuillez d'abord scanner un reçu.

en: Expense created successfully from scanned receipt
fr: Dépense créée avec succès à partir du reçu numérisé

en: SKU already exists. Please use a different SKU.
fr: Le SKU existe déjà. Veuillez utiliser un autre SKU.

en: Stock item created successfully.
fr: Article en stock créé avec succès.

en: Error creating stock item: %(error)s
fr: Erreur lors de la création de l'article en stock : %(error)s

en: Stock item updated successfully.
fr: Article en stock mis à jour avec succès.

en: Error updating stock item: %(error)s
fr: Erreur lors de la mise à jour de l'article en stock : %(error)s

en: Cannot delete stock item with existing stock or movement history.
fr: Impossible de supprimer un article en stock avec un historique de stock ou de mouvement existant.

en: Stock item deleted successfully.
fr: Article en stock supprimé avec succès.

en: Error deleting stock item: %(error)s
fr: Erreur lors de la suppression de l'article en stock : %(error)s

en: Warehouse code already exists. Please use a different code.
fr: Le code d'entrepôt existe déjà. Veuillez utiliser un code différent.

en: Warehouse created successfully.
fr: Entrepôt créé avec succès.

en: Error creating warehouse: %(error)s
fr: Erreur lors de la création de l'entrepôt : %(error)s

en: Warehouse updated successfully.
fr: Entrepôt mis à jour avec succès.

en: Error updating warehouse: %(error)s
fr: Erreur lors de la mise à jour de l'entrepôt : %(error)s

en: Cannot delete warehouse with existing stock. Please transfer or remove all stock first.
fr: Impossible de supprimer l'entrepôt avec le stock existant. Veuillez d'abord transférer ou supprimer tout le stock.

en: Warehouse deleted successfully.
fr: Entrepôt supprimé avec succès.

en: Error deleting warehouse: %(error)s
fr: Erreur lors de la suppression de l'entrepôt : %(error)s

en: Stock movement recorded successfully.
fr: Mouvement de stock enregistré avec succès.

en: Error recording stock movement: %(error)s
fr: Erreur lors de l'enregistrement du mouvement de stock : %(error)s

en: Source and destination warehouses must be different.
fr: Les entrepôts source et destination doivent être différents.

en: Insufficient stock available in source warehouse.
fr: Stock disponible insuffisant dans l'entrepôt source.

en: Stock transfer completed successfully.
fr: Transfert de stock terminé avec succès.

en: Error creating transfer: %(error)s
fr: Erreur lors de la création du transfert : %(error)s

en: Stock adjustment recorded successfully.
fr: Ajustement des stocks enregistré avec succès.

en: Error recording adjustment: %(error)s
fr: Erreur d'ajustement de l'enregistrement : %(error)s

en: Reservation fulfilled successfully.
fr: Réservation remplie avec succès.

en: Error fulfilling reservation: %(error)s
fr: Erreur lors de l'exécution de la réservation : %(error)s

en: Reservation cancelled successfully.
fr: Réservation annulée avec succès.

en: Error cancelling reservation: %(error)s
fr: Erreur lors de l'annulation de la réservation : %(error)s

en: Supplier created successfully.
fr: Fournisseur créé avec succès.

en: Error creating supplier: %(error)s
fr: Erreur lors de la création du fournisseur : %(error)s

en: Supplier code already exists. Please use a different code.
fr: Le code fournisseur existe déjà. Veuillez utiliser un code différent.

en: Supplier updated successfully.
fr: Fournisseur mis à jour avec succès.

en: Error updating supplier: %(error)s
fr: Erreur lors de la mise à jour du fournisseur : %(error)s

en: Cannot delete supplier with associated stock items. Remove items first.
fr: Impossible de supprimer le fournisseur avec les articles en stock associés. Supprimez d'abord les éléments.

en: Supplier deleted successfully.
fr: Fournisseur supprimé avec succès.

en: Error deleting supplier: %(error)s
fr: Erreur lors de la suppression du fournisseur : %(error)s

en: Purchase order created successfully.
fr: Bon de commande créé avec succès.

en: Error creating purchase order: %(error)s
fr: Erreur lors de la création du bon de commande : %(error)s

en: Cannot edit a purchase order that has been received.
fr: Impossible de modifier un bon de commande qui a été reçu.

en: Purchase order updated successfully.
fr: Bon de commande mis à jour avec succès.

en: Error updating purchase order: %(error)s
fr: Erreur lors de la mise à jour du bon de commande : %(error)s

en: Purchase order marked as sent.
fr: Bon de commande marqué comme envoyé.

en: Error sending purchase order: %(error)s
fr: Erreur lors de l'envoi du bon de commande : %(error)s

en: Purchase order cancelled successfully.
fr: Bon de commande annulé avec succès.

en: Error cancelling purchase order: %(error)s
fr: Erreur lors de l'annulation du bon de commande : %(error)s

en: Cannot delete a purchase order that has been received. Cancel it instead.
fr: Impossible de supprimer un bon de commande reçu. Annulez-le plutôt.

en: Purchase order deleted successfully.
fr: Bon de commande supprimé avec succès.

en: Error deleting purchase order: %(error)s
fr: Erreur lors de la suppression du bon de commande : %(error)s

en: Purchase order marked as received and stock updated.
fr: Bon de commande marqué comme reçu et stock mis à jour.

en: Error receiving purchase order: %(error)s
fr: Erreur lors de la réception du bon de commande : %(error)s

en: Project, client name, and due date are required
fr: Le projet, le nom du client et la date d'échéance sont requis

en: Invalid due date format
fr: Format de date d'échéance invalide

en: Invalid tax rate format
fr: Format de taux de taxe invalide

en: Selected project not found
fr: Projet sélectionné introuvable

en: Could not create invoice due to a database error. Please check server logs.
fr: Impossible de créer la facture en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to view this invoice
fr: Vous n'êtes pas autorisé à consulter cette facture

en: You do not have permission to edit this invoice
fr: Vous n'êtes pas autorisé à modifier cette facture

en: Warning: Could not reserve stock for item %(item)s: %(error)s
fr: Avertissement : Impossible de réserver le stock pour l'article %(item)s : %(error)s

en: Could not update invoice due to a database error. Please check server logs.
fr: Impossible de mettre à jour la facture en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Invoice updated successfully
fr: Facture mise à jour avec succès

en: Warning: Could not reduce stock for item %(item)s: %(error)s
fr: Avertissement : Impossible de réduire le stock pour l'article %(item)s : %(error)s

en: You do not have permission to delete this invoice
fr: Vous n'êtes pas autorisé à supprimer cette facture

en: Could not delete invoice due to a database error. Please check server logs.
fr: Impossible de supprimer la facture en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No invoices selected for deletion
fr: Aucune facture sélectionnée pour suppression

en: Could not delete invoices due to a database error. Please check server logs.
fr: Impossible de supprimer les factures en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No invoices selected
fr: Aucune facture sélectionnée

en: Could not update invoices due to a database error
fr: Impossible de mettre à jour les factures en raison d'une erreur de base de données

en: No time entries, costs, expenses, or extra goods selected
fr: Aucune entrée de temps, aucun coût, aucune dépense ou marchandise supplémentaire sélectionnée

en: Could not generate items due to a database error. Please check server logs.
fr: Impossible de générer des éléments en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Invoice items generated successfully from time entries and costs
fr: Éléments de facture générés avec succès à partir des entrées de temps et des coûts

en: Applied %(hours)s prepaid hours for %(client)s before billing overages.
fr: %(hours)s d'heures prépayées appliquées pour %(client)s avant de facturer les dépassements.

en: You do not have permission to export this invoice
fr: Vous n'êtes pas autorisé à exporter cette facture

en: PDF generation failed: %(err)s. Fallback also failed: %(fb)s
fr: Échec de la génération du PDF : %(err)s. La restauration a également échoué : %(fb)s

en: You do not have permission to duplicate this invoice
fr: Vous n'êtes pas autorisé à dupliquer cette facture

en: Could not duplicate invoice due to a database error. Please check server logs.
fr: Impossible de dupliquer la facture en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Could not finalize duplicated invoice due to a database error. Please check server logs.
fr: Impossible de finaliser la facture dupliquée en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Invoice marked as sent
fr: Facture marquée comme envoyée

en: Invoice marked as paid
fr: Facture marquée comme payée

en: Key and label are required
fr: La clé et l'étiquette sont requises

en: Could not create column due to a database error. Please check server logs.
fr: Impossible de créer la colonne en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Label is required
fr: L'étiquette est obligatoire

en: Could not update column due to a database error. Please check server logs.
fr: Impossible de mettre à jour la colonne en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: System columns cannot be deleted
fr: Les colonnes système ne peuvent pas être supprimées

en: Could not delete column due to a database error. Please check server logs.
fr: Impossible de supprimer la colonne en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Could not toggle column due to a database error. Please check server logs.
fr: Impossible de basculer la colonne en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Lead created successfully
fr: Lead créé avec succès

en: Error creating lead: %(error)s
fr: Erreur lors de la création du prospect : %(error)s

en: Lead updated successfully
fr: Prospect mis à jour avec succès

en: Error updating lead: %(error)s
fr: Erreur lors de la mise à jour du prospect : %(error)s

en: Lead has already been converted
fr: Le prospect a déjà été converti

en: Lead converted to client successfully
fr: Lead converti en client avec succès

en: Error converting lead: %(error)s
fr: Erreur lors de la conversion du prospect : %(error)s

en: Lead converted to deal successfully
fr: Lead converti pour négocier avec succès

en: Lead marked as lost
fr: Plomb marqué comme perdu

en: Error marking lead as lost: %(error)s
fr: Erreur marquant le prospect comme perdu : %(error)s

en: Mileage entry created successfully
fr: Entrée de kilométrage créée avec succès

en: Error creating mileage entry
fr: Erreur lors de la création de l'entrée de kilométrage

en: You do not have permission to view this mileage entry
fr: Vous n'êtes pas autorisé à afficher cette entrée de kilométrage

en: You do not have permission to edit this mileage entry
fr: Vous n'êtes pas autorisé à modifier cette entrée de kilométrage

en: Cannot edit approved or reimbursed mileage entries
fr: Impossible de modifier les entrées de kilométrage approuvées ou remboursées

en: Mileage entry updated successfully
fr: Entrée de kilométrage mise à jour avec succès

en: Error updating mileage entry
fr: Erreur lors de la mise à jour de l'entrée de kilométrage

en: You do not have permission to delete this mileage entry
fr: Vous n'êtes pas autorisé à supprimer cette entrée de kilométrage

en: Mileage entry deleted successfully
fr: Entrée de kilométrage supprimée avec succès

en: Error deleting mileage entry
fr: Erreur lors de la suppression de l'entrée de kilométrage

en: No mileage entries selected for deletion
fr: Aucune entrée de kilométrage sélectionnée pour la suppression

en: Could not delete mileage entries due to a database error. Please check server logs.
fr: Impossible de supprimer les entrées de kilométrage en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Successfully deleted %(count)d mileage entr%(plural)s
fr: %(count)d entrée de kilométrage %(plural)s a été supprimée avec succès

en: Skipped %(count)d mileage entr%(plural)s: %(errors)s
fr: %(count)d entrée de kilométrage ignorée%(plural)s : %(errors)s

en: No mileage entries selected
fr: Aucune entrée de kilométrage sélectionnée

en: Could not update mileage entries due to a database error
fr: Impossible de mettre à jour les entrées de kilométrage en raison d'une erreur de base de données

en: Successfully updated %(count)d mileage entr%(plural)s to %(status)s
fr: %(count)d entrée de kilométrage %(plural)s a été mise à jour avec succès en %(status)s

en: Skipped %(count)d mileage entr%(plural)s (no permission)
fr: %(count)d entrée de kilométrage%(plural)s ignorée (aucune autorisation)

en: Only administrators can approve mileage entries
fr: Seuls les administrateurs peuvent approuver les entrées de miles

en: Only pending mileage entries can be approved
fr: Seules les entrées de kilométrage en attente peuvent être approuvées

en: Mileage entry approved successfully
fr: Entrée de kilométrage approuvée avec succès

en: Error approving mileage entry
fr: Erreur lors de l'approbation de la saisie du kilométrage

en: Only administrators can reject mileage entries
fr: Seuls les administrateurs peuvent refuser les entrées de miles

en: Only pending mileage entries can be rejected
fr: Seules les entrées de miles en attente peuvent être rejetées

en: Mileage entry rejected
fr: Entrée de kilométrage refusée

en: Error rejecting mileage entry
fr: Erreur lors du rejet de la saisie du kilométrage

en: Only administrators can mark mileage entries as reimbursed
fr: Seuls les administrateurs peuvent marquer les entrées de miles comme remboursées

en: Only approved mileage entries can be marked as reimbursed
fr: Seules les entrées de kilométrage approuvées peuvent être marquées comme remboursées

en: Mileage entry marked as reimbursed
fr: Entrée de kilométrage marquée comme remboursée

en: Error marking mileage entry as reimbursed
fr: Erreur lors du marquage du kilométrage comme remboursé

en: Quote title and client are required
fr: Le titre du devis et le client sont requis

en: Selected client not found
fr: Client sélectionné introuvable

en: Invalid total amount format
fr: Format du montant total invalide

en: Invalid estimated hours format
fr: Format des heures estimées invalide

en: Invalid date format for valid until
fr: Format de date invalide pour valide jusqu'à

en: Could not create quote due to a database error. Please check server logs.
fr: Impossible de créer un devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote created successfully
fr: Devis créé avec succès

en: Only draft quotes can be edited
fr: Seuls les brouillons de devis peuvent être modifiés

en: Could not update quote due to a database error. Please check server logs.
fr: Impossible de mettre à jour le devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote updated successfully
fr: Devis mis à jour avec succès

en: Only draft quotes can be sent
fr: Seuls des projets de devis peuvent être envoyés

en: Could not send quote due to a database error. Please check server logs.
fr: Impossible d'envoyer le devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote sent successfully
fr: Devis envoyé avec succès

en: This quote cannot be accepted
fr: Ce devis ne peut être accepté

en: Could not accept quote: %(error)s
fr: Impossible d'accepter le devis : %(error)s

en: Could not accept quote due to a database error. Please check server logs.
fr: Impossible d'accepter le devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote accepted and project created successfully
fr: Devis accepté et projet créé avec succès

en: This quote cannot be rejected
fr: Ce devis ne peut pas être rejeté

en: Could not reject quote: %(error)s
fr: Impossible de rejeter le devis : %(error)s

en: Could not reject quote due to a database error. Please check server logs.
fr: Impossible de rejeter le devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote rejected
fr: Devis rejeté

en: Only draft or rejected quotes can be deleted
fr: Seuls les devis brouillons ou rejetés peuvent être supprimés

en: Could not delete quote due to a database error. Please check server logs.
fr: Impossible de supprimer le devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote deleted successfully
fr: Devis supprimé avec succès

en: Invalid from date format
fr: Format de date à partir de non valide

en: Invalid to date format
fr: Format de date invalide

en: You do not have permission to view this payment
fr: Vous n'êtes pas autorisé à consulter ce paiement

en: Invoice, amount, and payment date are required
fr: La facture, le montant et la date de paiement sont requis

en: Selected invoice not found
fr: Facture sélectionnée introuvable

en: You do not have permission to add payments to this invoice
fr: Vous n'êtes pas autorisé à ajouter des paiements à cette facture

en: Payment amount must be greater than zero
fr: Le montant du paiement doit être supérieur à zéro

en: Invalid payment amount
fr: Montant du paiement invalide

en: Invalid payment date format
fr: Format de date de paiement invalide

en: Gateway fee cannot be negative
fr: Les frais de passerelle ne peuvent pas être négatifs

en: Invalid gateway fee amount
fr: Montant des frais de passerelle invalide

en: Could not create payment due to a database error. Please check server logs.
fr: Impossible de créer le paiement en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to edit this payment
fr: Vous n'êtes pas autorisé à modifier ce paiement

en: Could not update payment due to a database error. Please check server logs.
fr: Impossible de mettre à jour le paiement en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Payment updated successfully
fr: Paiement mis à jour avec succès

en: You do not have permission to delete this payment
fr: Vous n'êtes pas autorisé à supprimer ce paiement

en: Could not delete payment due to a database error. Please check server logs.
fr: Impossible de supprimer le paiement en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Payment deleted successfully
fr: Paiement supprimé avec succès

en: No payments selected for deletion
fr: Aucun paiement sélectionné pour suppression

en: Could not delete payments due to a database error. Please check server logs.
fr: Impossible de supprimer les paiements en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No payments selected
fr: Aucun paiement sélectionné

en: Could not update payments due to a database error
fr: Impossible de mettre à jour les paiements en raison d'une erreur de base de données

en: Start date must be before end date
fr: La date de début doit être antérieure à la date de fin

en: No per diem rate found for this location. Please configure rates first.
fr: Aucun tarif journalier trouvé pour cet emplacement. Veuillez d'abord configurer les tarifs.

en: Per diem claim created successfully
fr: Réclamation d'indemnité journalière créée avec succès

en: Error creating per diem claim
fr: Erreur lors de la création d'une demande d'indemnité journalière

en: You do not have permission to view this per diem claim
fr: Vous n'êtes pas autorisé à consulter cette demande d'indemnité journalière

en: You do not have permission to edit this per diem claim
fr: Vous n'êtes pas autorisé à modifier cette demande d'indemnité journalière

en: Cannot edit approved or reimbursed per diem claims
fr: Impossible de modifier les demandes d'indemnité journalière approuvées ou remboursées

en: Per diem claim updated successfully
fr: La demande d'indemnité journalière a été mise à jour avec succès

en: Error updating per diem claim
fr: Erreur lors de la mise à jour de la demande d'indemnité journalière

en: You do not have permission to delete this per diem claim
fr: Vous n'êtes pas autorisé à supprimer cette demande d'indemnité journalière

en: Per diem claim deleted successfully
fr: Demande d'indemnité journalière supprimée avec succès

en: Error deleting per diem claim
fr: Erreur lors de la suppression de la demande d'indemnité journalière

en: No per diem claims selected for deletion
fr: Aucune demande d'indemnité journalière sélectionnée pour suppression

en: Could not delete per diem claims due to a database error. Please check server logs.
fr: Impossible de supprimer les demandes d'indemnités journalières en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Successfully deleted %(count)d per diem claim(s)
fr: %(count)d réclamation(s) d'indemnité journalière a été supprimée avec succès

en: Skipped %(count)d per diem claim(s): %(errors)s
fr: %(count)d demandes d'indemnités journalières ignorées : %(errors)s

en: No per diem claims selected
fr: Aucune demande d'indemnité journalière sélectionnée

en: Could not update per diem claims due to a database error
fr: Impossible de mettre à jour les demandes d'indemnités journalières en raison d'une erreur de base de données

en: Successfully updated %(count)d per diem claim(s) to %(status)s
fr: %(count)d réclamation(s) d'indemnité journalière a été mise à jour avec succès vers %(status)s

en: Skipped %(count)d per diem claim(s) (no permission)
fr: %(count)d réclamation(s) d'indemnité journalière ignorée (aucune autorisation)

en: Only administrators can approve per diem claims
fr: Seuls les administrateurs peuvent approuver les demandes d'indemnités journalières

en: Only pending per diem claims can be approved
fr: Seules les demandes d'indemnités journalières en attente peuvent être approuvées.

en: Per diem claim approved successfully
fr: Demande d'indemnité journalière approuvée avec succès

en: Error approving per diem claim
fr: Erreur lors de l'approbation de la demande d'indemnité journalière

en: Only administrators can reject per diem claims
fr: Seuls les administrateurs peuvent rejeter les demandes d'indemnités journalières

en: Only pending per diem claims can be rejected
fr: Seules les demandes d'indemnités journalières en attente peuvent être rejetées

en: Per diem claim rejected
fr: Demande d'indemnité journalière rejetée

en: Error rejecting per diem claim
fr: Erreur lors du rejet de la demande d'indemnité journalière

en: Per diem rate created successfully
fr: Taux journalier créé avec succès

en: Error creating per diem rate
fr: Erreur lors de la création du tarif journalier

en: Per diem rate updated successfully
fr: Le taux journalier a été mis à jour avec succès

en: Error updating per diem rate
fr: Erreur lors de la mise à jour du taux journalier

en: Cannot delete rate: It is being used by %(count)d per diem claim(s). Deactivate it instead.
fr: Impossible de supprimer le taux : il est utilisé par %(count)d réclamation(s) d'indemnités journalières. Désactivez-le plutôt.

en: Per diem rate deleted successfully
fr: Taux journalier supprimé avec succès

en: Error deleting per diem rate
fr: Erreur lors de la suppression du taux journalier

en: You do not have permission to access this page
fr: Vous n'êtes pas autorisé à accéder à cette page

en: Role name is required
fr: Le nom du rôle est requis

en: A role with this name already exists
fr: Un rôle portant ce nom existe déjà

en: Could not create role due to a database error
fr: Impossible de créer le rôle en raison d'une erreur de base de données

en: Role created successfully
fr: Rôle créé avec succès

en: System roles cannot be edited
fr: Les rôles système ne peuvent pas être modifiés

en: Could not update role due to a database error
fr: Impossible de mettre à jour le rôle en raison d'une erreur de base de données

en: Role updated successfully
fr: Rôle mis à jour avec succès

en: You do not have permission to perform this action
fr: Vous n'êtes pas autorisé à effectuer cette action

en: System roles cannot be deleted
fr: Les rôles système ne peuvent pas être supprimés

en: Cannot delete role that is assigned to users. Please reassign users first.
fr: Impossible de supprimer le rôle attribué aux utilisateurs. Veuillez d'abord réaffecter les utilisateurs.

en: Could not delete role due to a database error
fr: Impossible de supprimer le rôle en raison d'une erreur de base de données

en: Role "%(name)s" deleted successfully
fr: Le rôle « %(name)s » a été supprimé avec succès

en: Could not update user roles due to a database error
fr: Impossible de mettre à jour les rôles utilisateur en raison d'une erreur de base de données

en: User roles updated successfully
fr: Les rôles d'utilisateur ont été mis à jour avec succès

en: Project name and client are required
fr: Le nom du projet et le client sont requis

en: Invalid budget amount
fr: Montant du budget non valide

en: Invalid budget threshold percent (0-100)
fr: Pourcentage de seuil budgétaire non valide (0-100)

en: A project with this name already exists
fr: Un projet portant ce nom existe déjà

en: Project code already in use
fr: Code du projet déjà utilisé

en: Could not create project due to a database error. Please check server logs.
fr: Impossible de créer le projet en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Could not update project due to a database error. Please check server logs.
fr: Impossible de mettre à jour le projet en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to archive projects
fr: Vous n'êtes pas autorisé à archiver des projets

en: Project is already archived
fr: Le projet est déjà archivé

en: You do not have permission to unarchive projects
fr: Vous n'êtes pas autorisé à désarchiver des projets

en: Project is already active
fr: Le projet est déjà actif

en: You do not have permission to deactivate projects
fr: Vous n'êtes pas autorisé à désactiver des projets

en: Project is already inactive
fr: Le projet est déjà inactif

en: You do not have permission to activate projects
fr: Vous n'êtes pas autorisé à activer des projets

en: Cannot delete project with existing time entries
fr: Impossible de supprimer un projet avec des entrées de temps existantes

en: Could not delete project due to a database error. Please check server logs.
fr: Impossible de supprimer le projet en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to delete projects
fr: Vous n'êtes pas autorisé à supprimer des projets

en: No projects selected for deletion
fr: Aucun projet sélectionné pour suppression

en: Could not delete projects due to a database error. Please check server logs.
fr: Impossible de supprimer les projets en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No projects were deleted
fr: Aucun projet n'a été supprimé

en: You do not have permission to change project status
fr: Vous n'êtes pas autorisé à modifier le statut du projet

en: No projects selected
fr: Aucun projet sélectionné

en: Could not update project status due to a database error. Please check server logs.
fr: Impossible de mettre à jour le statut du projet en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No projects were updated
fr: Aucun projet n'a été mis à jour

en: Project is already in favorites
fr: Le projet est déjà dans les favoris

en: Project added to favorites
fr: Projet ajouté aux favoris

en: Failed to add project to favorites
fr: Échec de l'ajout du projet aux favoris

en: Project is not in favorites
fr: Le projet n'est pas dans les favoris

en: Project removed from favorites
fr: Projet supprimé des favoris

en: Failed to remove project from favorites
fr: Échec de la suppression du projet des favoris

en: Description, category, amount, and date are required
fr: La description, la catégorie, le montant et la date sont requis

en: Could not add cost due to a database error. Please check server logs.
fr: Impossible d'ajouter des coûts en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Cost added successfully
fr: Coût ajouté avec succès

en: Cost not found
fr: Coût introuvable

en: You do not have permission to edit this cost
fr: Vous n'êtes pas autorisé à modifier ce coût

en: Could not update cost due to a database error. Please check server logs.
fr: Impossible de mettre à jour le coût en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Cost updated successfully
fr: Coût mis à jour avec succès

en: You do not have permission to delete this cost
fr: Vous n'êtes pas autorisé à supprimer ce coût

en: Cannot delete cost that has been invoiced
fr: Impossible de supprimer le coût facturé

en: Could not delete cost due to a database error. Please check server logs.
fr: Impossible de supprimer le coût en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Name and unit price are required
fr: Le nom et le prix unitaire sont requis

en: Invalid quantity format
fr: Format de quantité invalide

en: Invalid unit price format
fr: Format de prix unitaire non valide

en: Could not add extra good due to a database error. Please check server logs.
fr: Impossible d'ajouter du bien supplémentaire en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Extra good added successfully
fr: Extra bon ajouté avec succès

en: Extra good not found
fr: Extra bon introuvable

en: You do not have permission to edit this extra good
fr: Vous n'êtes pas autorisé à modifier ce bien supplémentaire

en: Could not update extra good due to a database error. Please check server logs.
fr: Impossible de mettre à jour Extra Good en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Extra good updated successfully
fr: Extra bon mis à jour avec succès

en: You do not have permission to delete this extra good
fr: Vous n'êtes pas autorisé à supprimer ce bien supplémentaire

en: Cannot delete extra good that has been added to an invoice
fr: Impossible de supprimer un bien supplémentaire ajouté à une facture

en: Could not delete extra good due to a database error. Please check server logs.
fr: Impossible de supprimer le bien supplémentaire en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Project not found
fr: Projet introuvable

en: Project created successfully
fr: Projet créé avec succès

en: Invalid discount amount format
fr: Format du montant de la remise non valide

en: Quote must be approved before it can be sent
fr: Le devis doit être approuvé avant de pouvoir être envoyé

en: Cannot send quote: %(error)s
fr: Impossible d'envoyer le devis : %(error)s

en: You do not have permission to upload attachments to this quote
fr: Vous n'êtes pas autorisé à télécharger des pièces jointes à ce devis

en: File type not allowed
fr: Type de fichier non autorisé

en: File size exceeds maximum allowed size (10 MB)
fr: La taille du fichier dépasse la taille maximale autorisée (10 Mo)

en: Could not upload attachment due to a database error. Please check server logs.
fr: Impossible de télécharger la pièce jointe en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Attachment uploaded successfully
fr: Pièce jointe téléchargée avec succès

en: You do not have permission to download this attachment
fr: Vous n'êtes pas autorisé à télécharger cette pièce jointe

en: File not found
fr: Fichier introuvable

en: You do not have permission to delete this attachment
fr: Vous n'êtes pas autorisé à supprimer cette pièce jointe

en: Could not delete attachment due to a database error. Please check server logs.
fr: Impossible de supprimer la pièce jointe en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Attachment deleted successfully
fr: Pièce jointe supprimée avec succès

en: You do not have permission to request approval for this quote
fr: Vous n'êtes pas autorisé à demander l'approbation de ce devis

en: This quote does not require approval
fr: Ce devis ne nécessite pas d'approbation

en: Cannot request approval: %(error)s
fr: Impossible de demander l'approbation : %(error)s

en: Could not request approval due to a database error. Please check server logs.
fr: Impossible de demander l'approbation en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Approval requested successfully
fr: Approbation demandée avec succès

en: This quote is not pending approval
fr: Ce devis n'est pas en attente d'approbation

en: Cannot approve quote: %(error)s
fr: Impossible d'approuver le devis : %(error)s

en: Could not approve quote due to a database error. Please check server logs.
fr: Impossible d'approuver le devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote approved successfully
fr: Devis approuvé avec succès

en: Cannot reject quote: %(error)s
fr: Impossible de rejeter le devis : %(error)s

en: Quote approval rejected
fr: Approbation du devis rejetée

en: Could not create template due to a database error. Please check server logs.
fr: Impossible de créer le modèle en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Template created successfully
fr: Modèle créé avec succès

en: You do not have permission to create a template from this quote
fr: Vous n'êtes pas autorisé à créer un modèle à partir de ce devis

en: Could not save template due to a database error. Please check server logs.
fr: Impossible d'enregistrer le modèle en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Template saved successfully
fr: Modèle enregistré avec succès

en: You do not have permission to export this quote
fr: Vous n'êtes pas autorisé à exporter ce devis

en: Error generating PDF: %(error)s
fr: Erreur lors de la génération du PDF : %(error)s

en: Recipient email address is required
fr: L'adresse e-mail du destinataire est requise

en: Quote sent successfully to %(email)s
fr: Devis envoyé avec succès à %(email)s

en: Failed to send quote: %(error)s
fr: Échec de l'envoi du devis : %(error)s

en: Error sending email: %(error)s
fr: Erreur lors de l'envoi de l'e-mail : %(error)s

en: You do not have permission to duplicate this quote
fr: Vous n'êtes pas autorisé à dupliquer ce devis

en: Could not duplicate quote due to a database error. Please check server logs.
fr: Impossible de dupliquer le devis en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Could not finalize duplicated quote due to a database error. Please check server logs.
fr: Impossible de finaliser le devis en double en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Quote %(quote_number)s created as duplicate
fr: Citation %(quote_number)s créée en double

en: Please select an action and at least one quote
fr: Veuillez sélectionner une action et au moins un devis

en: Invalid quote IDs
fr: ID de devis invalides

en: No quotes found or you do not have permission
fr: Aucun devis trouvé ou vous n'avez pas l'autorisation

en: Duplicated %(count)d quote(s)
fr: %(count)d citation(s) en double

en: Failed to duplicate %(count)d quote(s)
fr: Échec de la duplication de %(count)d devis

en: Error duplicating quotes
fr: Erreur lors de la duplication des devis

en: Marked %(count)d quote(s) as sent
fr: %(count)d devis marqué(s) comme envoyé(s)

en: Could not mark %(count)d quote(s) as sent
fr: Impossible de marquer %(count)d devis comme envoyés

en: Error updating quotes
fr: Erreur lors de la mise à jour des devis

en: Deleted %(count)d quote(s)
fr: %(count)d citation(s) supprimée(s)

en: Could not delete %(count)d quote(s) (may be in use)
fr: Impossible de supprimer %(count)d citation(s) (peut-être en cours d'utilisation)

en: Error deleting quotes
fr: Erreur lors de la suppression des guillemets

en: Invalid action
fr: Action invalide

en: Name, project, client, frequency, and next run date are required
fr: Le nom, le projet, le client, la fréquence et la date de la prochaine exécution sont requis

en: Invalid next run date format
fr: Format de date de prochaine exécution non valide

en: Invalid end date format
fr: Format de date de fin non valide

en: Selected project or client not found
fr: Projet ou client sélectionné introuvable

en: Could not create recurring invoice due to a database error. Please check server logs.
fr: Impossible de créer une facture récurrente en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to view this recurring invoice
fr: Vous n'êtes pas autorisé à consulter cette facture récurrente

en: You do not have permission to edit this recurring invoice
fr: Vous n'êtes pas autorisé à modifier cette facture récurrente

en: Could not update recurring invoice due to a database error. Please check server logs.
fr: Impossible de mettre à jour la facture récurrente en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Recurring invoice updated successfully
fr: Facture récurrente mise à jour avec succès

en: You do not have permission to delete this recurring invoice
fr: Vous n'êtes pas autorisé à supprimer cette facture récurrente

en: Could not delete recurring invoice due to a database error. Please check server logs.
fr: Impossible de supprimer la facture récurrente en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Could not delete filter due to a database error
fr: Impossible de supprimer le filtre en raison d'une erreur de base de données

en: Setup complete! Thank you for helping us improve TimeTracker.
fr: Configuration terminée ! Merci de nous aider à améliorer TimeTracker.

en: Setup complete! Telemetry is disabled.
fr: Configuration terminée ! La télémétrie est désactivée.

en: Project and task name are required
fr: Le nom du projet et de la tâche est requis

en: Selected project does not exist
fr: Le projet sélectionné n'existe pas

en: Could not create task due to a database error. Please check server logs.
fr: Impossible de créer la tâche en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have access to this task
fr: Vous n'avez pas accès à cette tâche

en: You can only edit tasks you created
fr: Vous ne pouvez modifier que les tâches que vous avez créées

en: Task name is required
fr: Le nom de la tâche est obligatoire

en: Project is required
fr: Le projet est requis

en: Selected project does not exist or is inactive
fr: Le projet sélectionné n'existe pas ou est inactif

en: Could not update status due to a database error. Please check server logs.
fr: Impossible de mettre à jour le statut en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Could not update task due to a database error. Please check server logs.
fr: Impossible de mettre à jour la tâche en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: You do not have permission to update this task
fr: Vous n'êtes pas autorisé à mettre à jour cette tâche

en: You can only update tasks you created
fr: Vous pouvez uniquement mettre à jour les tâches que vous avez créées

en: You can only assign tasks you created
fr: Vous ne pouvez attribuer que les tâches que vous avez créées

en: Selected user does not exist
fr: L'utilisateur sélectionné n'existe pas

en: Task unassigned
fr: Tâche non attribuée

en: You can only delete tasks you created
fr: Vous ne pouvez supprimer que les tâches que vous avez créées

en: Cannot delete task with existing time entries
fr: Impossible de supprimer une tâche avec des entrées de temps existantes

en: Could not delete task due to a database error. Please check server logs.
fr: Impossible de supprimer la tâche en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No tasks selected for deletion
fr: Aucune tâche sélectionnée pour suppression

en: Could not delete tasks due to a database error. Please check server logs.
fr: Impossible de supprimer les tâches en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: No tasks selected
fr: Aucune tâche sélectionnée

en: Could not update tasks due to a database error
fr: Impossible de mettre à jour les tâches en raison d'une erreur de base de données

en: Invalid priority value
fr: Valeur de priorité invalide

en: No user selected for assignment
fr: Aucun utilisateur sélectionné pour l'affectation

en: Invalid user selected
fr: Utilisateur invalide sélectionné

en: Could not assign tasks due to a database error
fr: Impossible d'attribuer des tâches en raison d'une erreur de base de données

en: No project selected
fr: Aucun projet sélectionné

en: Invalid project selected
fr: Projet sélectionné non valide

en: Could not move tasks due to a database error
fr: Impossible de déplacer les tâches en raison d'une erreur de base de données

en: Only administrators can view all overdue tasks
fr: Seuls les administrateurs peuvent voir toutes les tâches en retard

en: Could not create template due to a database error
fr: Impossible de créer le modèle en raison d'une erreur de base de données

en: Could not update template due to a database error
fr: Impossible de mettre à jour le modèle en raison d'une erreur de base de données

en: Could not delete template due to a database error
fr: Impossible de supprimer le modèle en raison d'une erreur de base de données

en: Cannot start timer for an archived project. Please unarchive the project first.
fr: Impossible de démarrer le minuteur pour un projet archivé. Veuillez d'abord désarchiver le projet.

en: Cannot start timer for an inactive project
fr: Impossible de démarrer le minuteur pour un projet inactif

en: Selected task is invalid for the chosen project
fr: La tâche sélectionnée n'est pas valide pour le projet choisi

en: You already have an active timer. Stop it before starting a new one.
fr: Vous disposez déjà d'un minuteur actif. Arrêtez-le avant d'en démarrer un nouveau.

en: Could not start timer due to a database error. Please check server logs.
fr: Impossible de démarrer le minuteur en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Template must have a project to start a timer
fr: Le modèle doit avoir un projet pour démarrer un minuteur

en: Cannot start timer for this project
fr: Impossible de démarrer le minuteur pour ce projet

en: No active timer to stop
fr: Aucune minuterie active pour arrêter

en: You can only edit your own timers
fr: Vous ne pouvez modifier que vos propres minuteries

en: Invalid task selected for the chosen project
fr: Tâche non valide sélectionnée pour le projet choisi

en: Start time cannot be in the future
fr: L'heure de début ne peut pas être postérieure

en: Invalid start date/time format
fr: Format de date/heure de début non valide

en: End time must be after start time
fr: L'heure de fin doit être postérieure à l'heure de début

en: Invalid end date/time format
fr: Format de date/heure de fin non valide

en: Could not update timer due to a database error. Please check server logs.
fr: Impossible de mettre à jour le minuteur en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Timer updated successfully
fr: Minuterie mise à jour avec succès

en: You can only delete your own timers
fr: Vous ne pouvez supprimer que vos propres minuteries

en: Cannot delete an active timer
fr: Impossible de supprimer une minuterie active

en: Could not delete timer due to a database error. Please check server logs.
fr: Impossible de supprimer le minuteur en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: All fields are required
fr: Tous les champs sont obligatoires

en: Cannot create time entries for an archived project. Please unarchive the project first.
fr: Impossible de créer des entrées de temps pour un projet archivé. Veuillez d'abord désarchiver le projet.

en: Cannot create time entries for an inactive project
fr: Impossible de créer des entrées de temps pour un projet inactif

en: Invalid task selected
fr: Tâche non valide sélectionnée

en: Invalid date/time format
fr: Format date/heure invalide

en: Could not create manual entry due to a database error. Please check server logs.
fr: Impossible de créer une entrée manuelle en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: End date must be after or equal to start date
fr: La date de fin doit être postérieure ou égale à la date de début

en: Date range cannot exceed 31 days
fr: La plage de dates ne peut pas dépasser 31 jours

en: Invalid time format
fr: Format d'heure invalide

en: No valid dates found in the selected range
fr: Aucune date valide trouvée dans la plage sélectionnée

en: Could not create bulk entries due to a database error. Please check server logs.
fr: Impossible de créer des entrées groupées en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: An error occurred while creating bulk entries. Please try again.
fr: Une erreur s'est produite lors de la création d'entrées groupées. Veuillez réessayer.

en: You can only duplicate your own timers
fr: Vous ne pouvez dupliquer que vos propres minuteries

en: You can only resume your own timers
fr: Vous ne pouvez réactiver que vos propres minuteries

en: Project no longer exists
fr: Le projet n'existe plus

en: Could not resume timer due to a database error. Please check server logs.
fr: Impossible de reprendre le minuteur en raison d'une erreur de base de données. Veuillez vérifier les journaux du serveur.

en: Timer stopped successfully
fr: La minuterie s'est arrêtée avec succès

en: Invalid timezone selected
fr: Fuseau horaire sélectionné non valide

en: Standard hours per day must be between 0.5 and 24
fr: Les heures standard par jour doivent être comprises entre 0,5 et 24

en: Settings saved successfully
fr: Paramètres enregistrés avec succès

en: Error saving settings
fr: Erreur lors de l'enregistrement des paramètres

en: Error saving settings: %(error)s
fr: Erreur lors de l'enregistrement des paramètres : %(error)s

en: Preferences updated
fr: Préférences mises à jour

en: Language updated successfully
fr: Langue mise à jour avec succès

en: Invalid language
fr: Langue invalide

en: Language updated to %(language)s
fr: Langue mise à jour en %(language)s

en: Webhook name is required
fr: Le nom du webhook est requis

en: Webhook URL is required
fr: L'URL du webhook est obligatoire

en: At least one event must be selected
fr: Au moins un événement doit être sélectionné

en: Webhook created successfully
fr: Webhook créé avec succès

en: Error creating webhook
fr: Erreur lors de la création du webhook

en: Error creating webhook: %(error)s
fr: Erreur lors de la création du webhook : %(error)s

en: Access denied
fr: Accès refusé

en: Webhook updated successfully
fr: Webhook mis à jour avec succès

en: Error updating webhook: %(error)s
fr: Erreur lors de la mise à jour du webhook : %(error)s

en: Webhook deleted successfully
fr: Webhook supprimé avec succès

en: Error deleting webhook: %(error)s
fr: Erreur lors de la suppression du webhook : %(error)s

en: Please enter a valid target hours (greater than 0)
fr: Veuillez saisir un nombre d'heures cible valide (supérieur à 0)

en: A goal already exists for this week. Please edit the existing goal instead.
fr: Un objectif existe déjà pour cette semaine. Veuillez plutôt modifier l'objectif existant.

en: Weekly time goal created successfully!
fr: Objectif de temps hebdomadaire créé avec succès !

en: Failed to create goal. Please try again.
fr: Échec de la création de l'objectif. Veuillez réessayer.

en: You do not have permission to view this goal
fr: Vous n'êtes pas autorisé à afficher cet objectif

en: You do not have permission to edit this goal
fr: Vous n'êtes pas autorisé à modifier cet objectif

en: Weekly time goal updated successfully!
fr: Objectif de temps hebdomadaire mis à jour avec succès !

en: Failed to update goal. Please try again.
fr: Échec de la mise à jour de l'objectif. Veuillez réessayer.

en: You do not have permission to delete this goal
fr: Vous n'êtes pas autorisé à supprimer cet objectif

en: Weekly time goal deleted successfully
fr: Objectif de temps hebdomadaire supprimé avec succès

en: Failed to delete goal. Please try again.
fr: Échec de la suppression de l'objectif. Veuillez réessayer.

en: remaining
fr: restant

en: Success
fr: Succès

en: Error
fr: Erreur

en: Warning
fr: Avertissement

en: Loading...
fr: Chargement...

en: Saving...
fr: Économie...

en: Deleting...
fr: Suppression...

en: Cancel
fr: Annuler

en: Confirm
fr: Confirmer

en: Close
fr: Fermer

en: Save
fr: Sauvegarder

en: Delete
fr: Supprimer

en: Edit
fr: Modifier

en: Add
fr: Ajouter

en: Remove
fr: Retirer

en: Yes
fr: Oui

en: No
fr: Non

en: OK
fr: D'ACCORD

en: Are you sure you want to delete this?
fr: Etes-vous sûr de vouloir supprimer ceci ?

en: You have unsaved changes. Are you sure you want to leave?
fr: Vous avez des modifications non enregistrées. Êtes-vous sûr de vouloir partir ?

en: Operation failed
fr: L'opération a échoué

en: Operation completed successfully
fr: Opération terminée avec succès

en: No items selected
fr: Aucun élément sélectionné

en: Invalid input
fr: Entrée invalide

en: This field is required
fr: Ce champ est obligatoire

en: No active timer
fr: Aucune minuterie active

en: Timer stopped
fr: Minuterie arrêtée

en: Failed to stop timer
fr: Échec de l'arrêt du chronomètre

en: Error stopping timer
fr: Erreur lors de l'arrêt du minuteur

en: No form to save
fr: Aucun formulaire à sauvegarder

en: No timer found
fr: Aucune minuterie trouvée

en: Timer stopped due to inactivity
fr: Minuterie arrêtée pour cause d'inactivité

en: Skip to content
fr: Passer au contenu

en: Toggle sidebar
fr: Basculer la barre latérale

en: Dashboard
fr: Tableau de bord

en: Calendar
fr: Calendrier

en: Time Tracking
fr: Suivi du temps

en: Log Time
fr: Heure de journalisation

en: Projects
fr: Projets

en: Tasks
fr: Tâches

en: Kanban Board
fr: Tableau Kanban

en: Weekly Goals
fr: Objectifs hebdomadaires

en: CRM
fr: GRC

en: Clients
fr: Clientèle

en: Quotes
fr: Citations

en: Finance & Expenses
fr: Finances et dépenses

en: Reports
fr: Rapports

en: Invoices
fr: Factures

en: Recurring Invoices
fr: Factures récurrentes

en: Payments
fr: Paiements

en: Expenses
fr: Dépenses

en: Mileage
fr: Kilométrage

en: Per Diem
fr: Par jour

en: Budget Alerts
fr: Alertes budgétaires

en: Inventory
fr: Inventaire

en: Stock Items
fr: Articles en stock

en: Warehouses
fr: Entrepôts

en: Suppliers
fr: Fournisseurs

en: Purchase Orders
fr: Bons de commande

en: Stock Levels
fr: Niveaux de stocks

en: Stock Movements
fr: Mouvements de stocks

en: Transfers
fr: Transferts

en: Adjustments
fr: Ajustements

en: Reservations
fr: Réservations

en: Low Stock Alerts
fr: Alertes de stock faible

en: Analytics
fr: Analytique

en: Tools & Data
fr: Outils et données

en: Import / Export
fr: Importer/Exporter

en: Saved Filters
fr: Filtres enregistrés

en: Admin
fr: Administrateur

en: Admin Dashboard
fr: Tableau de bord d'administration

en: Users
fr: Utilisateurs

en: Roles & Permissions
fr: Rôles et autorisations

en: Audit Logs
fr: Journaux d'audit

en: API Tokens
fr: Jetons API

en: System Settings
fr: Paramètres système

en: Email Configuration
fr: Configuration de la messagerie

en: Email Templates
fr: Modèles d'e-mails

en: PDF Templates
fr: Modèles PDF

en: Invoice PDF
fr: Facture PDF

en: Quote PDF
fr: Devis PDF

en: Expense Categories
fr: Catégories de dépenses

en: Per Diem Rates
fr: Tarifs journaliers

en: Time Entry Templates
fr: Modèles de saisie du temps

en: System Info
fr: Informations système

en: Backups
fr: Sauvegardes

en: OIDC Settings
fr: Paramètres OIDC

en: About
fr: À propos

en: Help
fr: Aide

en: Buy me a coffee
fr: Achetez-moi un café

en: Search
fr: Recherche

en: Support TimeTracker development
fr: Prise en charge du développement de TimeTracker

en: Support
fr: Soutien

en: Toggle dark mode
fr: Activer le mode sombre

en: Change language
fr: Changer de langue

en: Language
fr: Langue

en: User menu
fr: Menu utilisateur

en: Guest
fr: Invité

en: My Profile
fr: Mon profil

en: My Settings
fr: Mes paramètres

en: Logout
fr: Déconnexion

en: Enjoying TimeTracker?
fr: Vous appréciez TimeTracker ?

en: Support continued development with a coffee
fr: Soutenir le développement continu avec un café

en: Dismiss
fr: Rejeter

en: Profile
fr: Profil

en: Type a command or search...
fr: Tapez une commande ou recherchez...

en: Create API Token
fr: Créer un jeton API

en: Your API Token
fr: Votre jeton API

en: Usage Examples
fr: Exemples d'utilisation

en: Are you sure you want to
fr: Etes-vous sûr de vouloir

en: deactivate
fr: désactiver

en: activate
fr: activer

en: this token?
fr: ce jeton ?

en: Deactivate Token
fr: Désactiver le jeton

en: Activate Token
fr: Activer le jeton

en: Deactivate
fr: Désactiver

en: Activate
fr: Activer

en: Are you sure you want to delete this token? This action cannot be undone.
fr: Êtes-vous sûr de vouloir supprimer ce jeton ? Cette action ne peut pas être annulée.

en: Delete Token
fr: Supprimer le jeton

en: Create Backup
fr: Créer une sauvegarde

en: Restore Backup
fr: Restaurer la sauvegarde

en: Existing Backups
fr: Sauvegardes existantes

en: Important Information
fr: Informations importantes

en: Confirm Deletion
fr: Confirmer la suppression

en: Clear Cache
fr: Vider le cache

en: ServiceWorker Status
fr: Statut du ServiceWorker

en: Clear All Caches
fr: Effacer tous les caches

en: ServiceWorker Actions
fr: Actions du ServiceWorker

en: Manual Hard Refresh
fr: Actualisation matérielle manuelle

en: Admin Sections
fr: Sections d'administration

en: Recent Activity
fr: Activité récente

en: Email Configuration & Testing
fr: Configuration et tests de messagerie

en: Configure and test email delivery
fr: Configurer et tester la livraison des e-mails

en: Back to Admin
fr: Retour à l'administrateur

en: Configure email settings here to save them in the database.
fr: Configurez ici les paramètres de messagerie pour les enregistrer dans la base de données.

en: Enable Database Email Configuration
fr: Activer la configuration de la messagerie de la base de données

en: Mail Server
fr: Serveur de messagerie

en: Mail Port
fr: Port de messagerie

en: Use TLS
fr: Utiliser TLS

en: Use SSL
fr: Utiliser SSL

en: Username
fr: Nom d'utilisateur

en: Password
fr: Mot de passe

en: Leave empty to keep current
fr: Laisser vide pour rester à jour

en: Default Sender
fr: Expéditeur par défaut

en: Save Configuration
fr: Enregistrer la configuration

en: Reset
fr: Réinitialiser

en: Email Configuration Status
fr: État de la configuration de la messagerie

en: Refresh
fr: Rafraîchir

en: Email is configured!
fr: L'e-mail est configuré !

en: Your email settings are properly set up.
fr: Vos paramètres de messagerie sont correctement configurés.

en: Email is not configured
fr: L'e-mail n'est pas configuré

en: Please configure email settings using the form above.
fr: Veuillez configurer les paramètres de messagerie en utilisant le formulaire ci-dessus.

en: Configuration Errors
fr: Erreurs de configuration

en: Configuration Warnings
fr: Avertissements de configuration

en: Current Email Settings
fr: Paramètres de messagerie actuels

en: Password Set
fr: Mot de passe défini

en: Send Test Email
fr: Envoyer un e-mail de test

en: Recipient Email Address
fr: Adresse e-mail du destinataire

en: Configuration Guide
fr: Guide de configuration

en: Common SMTP Providers
fr: Fournisseurs SMTP courants

en: Requires app password
fr: Nécessite le mot de passe de l'application

en: Important Notes
fr: Remarques importantes

en: Gmail requires an App Password if 2FA is enabled
fr: Gmail nécessite un mot de passe d'application si 2FA est activé

en: Restart the application after changing email settings
fr: Redémarrez l'application après avoir modifié les paramètres de messagerie

en: Check firewall rules if emails are not sending
fr: Vérifiez les règles de pare-feu si les e-mails ne sont pas envoyés

en: For production, use a dedicated email service like SendGrid or Amazon SES
fr: Pour la production, utilisez un service de messagerie dédié comme SendGrid ou Amazon SES

en: password is set
fr: le mot de passe est défini

en: no password set
fr: aucun mot de passe défini

en: Failed to save configuration. Please try again.
fr: Échec de l'enregistrement de la configuration. Veuillez réessayer.

en: Success!
fr: Succès!

en: Failed to refresh status. Please try again.
fr: Échec de l'actualisation de l'état. Veuillez réessayer.

en: Please enter a valid email address
fr: S'il vous plaît, mettez une adresse email valide

en: Sending...
fr: Envoi...

en: Failed to send test email. Please check your configuration.
fr: Échec de l'envoi de l'e-mail de test. Veuillez vérifier votre configuration.

en: OIDC Debug Dashboard
fr: Tableau de bord de débogage OIDC

en: Inspect configuration, provider metadata and OIDC users
fr: Inspecter la configuration, les métadonnées du fournisseur et les utilisateurs OIDC

en: Test Configuration
fr: Configuration des tests

en: OIDC Configuration
fr: Configuration OIDC

en: Status
fr: Statut

en: Enabled
fr: Activé

en: Disabled
fr: Désactivé

en: Auth Method
fr: Méthode d'authentification

en: Issuer
fr: Émetteur

en: Not configured
fr: Non configuré

en: Client ID
fr: Identifiant client

en: Client Secret
fr: Secret client

en: Set
fr: Ensemble

en: Not set
fr: Non défini

en: Redirect URI
fr: URI de redirection

en: Auto-generated
fr: Généré automatiquement

en: Scopes
fr: Portées

en: Claim Mapping
fr: Cartographie des revendications

en: Username Claim
fr: Réclamation de nom d'utilisateur

en: Email Claim
fr: Réclamation par courrier électronique

en: Full Name Claim
fr: Réclamation du nom complet

en: Groups Claim
fr: Réclamation de groupes

en: Admin Group
fr: Groupe d'administrateurs

en: Admin Emails
fr: E-mails de l'administrateur

en: Post-Logout URI
fr: URI après déconnexion

en: Provider Metadata
fr: Métadonnées du fournisseur

en: Error loading metadata:
fr: Erreur lors du chargement des métadonnées :

en: Discovery endpoint:
fr: Point de terminaison de découverte :

en: Successfully loaded provider metadata
fr: Métadonnées du fournisseur chargées avec succès

en: Endpoints
fr: Points de terminaison

en: Authorization
fr: Autorisation

en: Token
fr: Jeton

en: UserInfo
fr: Informations utilisateur

en: End Session
fr: Fin de session

en: JWKS URI
fr: URI JWKS

en: Supported Features
fr: Fonctionnalités prises en charge

en: Response Types
fr: Types de réponses

en: Grant Types
fr: Types de subventions

en: Auth Methods
fr: Méthodes d'authentification

en: Claims
fr: Réclamations

en: Provider metadata not loaded. Click "Test Configuration" to fetch.
fr: Les métadonnées du fournisseur ne sont pas chargées. Cliquez sur "Test de configuration" pour récupérer.

en: OIDC Users
fr: Utilisateurs OIDC

en: Email
fr: E-mail

en: Full Name
fr: Nom et prénom

en: Role
fr: Rôle

en: Last Login
fr: Dernière connexion

en: OIDC Subject
fr: Sujet OIDC

en: Actions
fr: Actes

en: Inactive
fr: Inactif

en: User
fr: Utilisateur

en: Never
fr: Jamais

en: Details
fr: Détails

en: No users have logged in via OIDC yet.
fr: Aucun utilisateur ne s'est encore connecté via OIDC.

en: Environment Variables Reference
fr: Référence des variables d'environnement

en: Configure OIDC using these environment variables:
fr: Configurez OIDC à l'aide de ces variables d'environnement :

en: Example
fr: Exemple

en: Authentication method
fr: Méthode d'authentification

en: OIDC provider issuer URL
fr: URL de l'émetteur du fournisseur OIDC

en: Client ID from OIDC provider
fr: ID client du fournisseur OIDC

en: Client secret from OIDC provider
fr: Secret client du fournisseur OIDC

en: Callback URL (optional, auto-generated)
fr: URL de rappel (facultatif, généré automatiquement)

en: Requested scopes
fr: Périmètres demandés

en: Claim containing username
fr: Revendication contenant le nom d'utilisateur

en: Claim containing email
fr: Réclamation contenant un e-mail

en: Claim containing full name
fr: Revendication contenant le nom complet

en: Claim containing groups
fr: Revendication contenant des groupes

en: Group name for admin role (optional)
fr: Nom du groupe pour le rôle d'administrateur (facultatif)

en: Comma-separated admin emails (optional)
fr: E-mails d'administration séparés par des virgules (facultatif)

en: OIDC User Details
fr: Détails de l'utilisateur OIDC

en: Profile and OIDC identity for this user
fr: Profil et identité OIDC pour cet utilisateur

en: Back to OIDC Debug
fr: Retour au débogage OIDC

en: User Profile
fr: Profil utilisateur

en: Active
fr: Actif

en: Preferred Language
fr: Langue préférée

en: Theme
fr: Thème

en: Created At
fr: Créé à

en: Unknown
fr: Inconnu

en: OIDC Information
fr: Informations OIDC

en: OIDC Issuer
fr: Émetteur OIDC

en: OIDC Subject (sub)
fr: Sujet OIDC (sous)

en: Authentication Method
fr: Méthode d'authentification

en: Local
fr: Locale

en: This user was created or linked via OIDC. The issuer and subject are used to uniquely identify the user across login sessions.
fr: Cet utilisateur a été créé ou lié via OIDC. L'émetteur et le sujet sont utilisés pour identifier de manière unique l'utilisateur lors des sessions de connexion.

en: This user has no OIDC information. They may have been created manually or via self-registration without OIDC.
fr: Cet utilisateur ne dispose d'aucune information OIDC. Ils peuvent avoir été créés manuellement ou via une auto-inscription sans OIDC.

en: Activity Statistics
fr: Statistiques d'activité

en: Time Entries
fr: Entrées de temps

en: None
fr: Aucun

en: Active Timer
fr: Minuterie active

en: Tasks Created
fr: Tâches créées

en: Edit User
fr: Modifier l'utilisateur

en: View All Users
fr: Afficher tous les utilisateurs

en: PDF Quote Designer
fr: Concepteur de devis PDF

en: Visual Quote Designer
fr: Concepteur de devis visuel

en: Drag and drop elements to design your quote layout
fr: Glissez et déposez des éléments pour concevoir la mise en page de votre devis

en: How to use:
fr: Comment utiliser :

en: Click elements from the left sidebar to add them to the canvas. Click elements to select and customize them in the properties panel. Use the alignment tools and keyboard shortcuts for faster editing.
fr: Cliquez sur les éléments dans la barre latérale gauche pour les ajouter au canevas. Cliquez sur les éléments pour les sélectionner et les personnaliser dans le panneau des propriétés. Utilisez les outils d'alignement et les raccourcis clavier pour une édition plus rapide.

en: Keyboard Shortcuts:
fr: Raccourcis clavier :

en: Clear Canvas
fr: Toile transparente

en: Generate Preview
fr: Générer un aperçu

en: Save Design
fr: Enregistrer la conception

en: View Code
fr: Voir le code

en: Snap to Grid (10px)
fr: Aligner sur la grille (10 px)

en: Toolbox
fr: Boîte à outils

en: Search elements & variables...
fr: Rechercher des éléments et des variables...

en: Elements
fr: Éléments

en: Basic Elements
fr: Éléments de base

en: Custom Text
fr: Texte personnalisé

en: Text
fr: Texte

en: Heading
fr: Titre

en: Line
fr: Doubler

en: Circle
fr: Cercle

en: Company Info
fr: Informations sur l'entreprise

en: Company Logo
fr: Logo de l'entreprise

en: Company Name
fr: Nom de l'entreprise

en: Company Details
fr: Détails de l'entreprise

en: Address
fr: Adresse

en: Phone
fr: Téléphone

en: Website
fr: Site web

en: Tax ID
fr: Numéro d'identification fiscale

en: Quote Data
fr: Données de devis

en: Quote Number
fr: Numéro de devis

en: Quote Date
fr: Date du devis

en: Due Date
fr: Date d'échéance

en: Client Info
fr: Informations client

en: Client Name
fr: Nom du client

en: Client Address
fr: Adresse du client

en: Quote Items Table
fr: Tableau des éléments du devis

en: Subtotal
fr: Total

en: Tax
fr: Impôt

en: Total Amount
fr: Montant total

en: Notes
fr: Remarques

en: Terms
fr: Termes

en: Payment & Project
fr: Paiement et projet

en: Payment Date
fr: Date de paiement

en: Payment Method
fr: Mode de paiement

en: Payment Status
fr: Statut du paiement

en: Amount Paid
fr: Montant payé

en: Outstanding
fr: Remarquable

en: Project Name
fr: Nom du projet

en: Client Email
fr: Courriel du client

en: Client Phone
fr: Téléphone du client

en: Advanced
fr: Avancé

en: QR Code
fr: Code QR

en: Barcode
fr: Code à barres

en: Page Number
fr: Numéro de page

en: Current Date
fr: Date actuelle

en: Watermark
fr: Filigrane

en: Bank Info
fr: Informations bancaires

en: Currency
fr: Devise

en: Quote Fields
fr: Champs de devis

en: Quote number
fr: Numéro de devis

en: Quote status (draft/sent/paid/overdue)
fr: Statut du devis (projet/envoyé/payé/en retard)

en: Issue date
fr: Date d'émission

en: Due date
fr: Date d'échéance

en: Subtotal amount
fr: Montant du sous-total

en: Tax rate (%)
fr: Taux d'imposition (%)

en: Tax amount
fr: Montant de la taxe

en: Total amount
fr: Montant total

en: Currency code (EUR, USD, etc)
fr: Code de devise (EUR, USD, etc.)

en: Quote notes
fr: Notes de devis

en: Terms & conditions
fr: Conditions générales

en: Client Fields
fr: Champs clients

en: Client company name
fr: Nom de l'entreprise cliente

en: Client email address
fr: Adresse e-mail du client

en: Client full address
fr: Adresse complète du client

en: Client contact person
fr: Personne de contact client

en: Client phone number
fr: Numéro de téléphone du client

en: Payment Fields
fr: Champs de paiement

en: Quote status
fr: Statut du devis

en: Quote accepted date
fr: Date d'acceptation du devis

en: Payment method
fr: Mode de paiement

en: Payment reference number
fr: Numéro de référence du paiement

en: Amount paid
fr: Montant payé

en: Outstanding amount
fr: Montant impayé

en: Payment notes
fr: Notes de paiement

en: Project Fields
fr: Champs du projet

en: Project name
fr: Nom du projet

en: Project code
fr: Code du projet

en: Project description
fr: Descriptif du projet

en: Project billing reference
fr: Référence de facturation du projet

en: Company/Settings Fields
fr: Champs Entreprise/Paramètres

en: Your company name
fr: Le nom de votre entreprise

en: Your company address
fr: Adresse de votre entreprise

en: Your company email
fr: L'e-mail de votre entreprise

en: Your company phone
fr: Votre téléphone d'entreprise

en: Your company website
fr: Site Internet de votre entreprise

en: Your tax ID number
fr: Votre numéro d'identification fiscale

en: Your bank account info
fr: Informations sur votre compte bancaire

en: Default invoice terms
fr: Conditions de facturation par défaut

en: Default invoice notes
fr: Notes de facture par défaut

en: Date/Time Fields
fr: Champs de date/heure

en: Current date
fr: Date actuelle

en: Quote creation date
fr: Date de création du devis

en: Quote last update date
fr: Date de la dernière mise à jour du devis

en: Quote Items Loop
fr: Boucle d'articles de devis

en: Loop through invoice items
fr: Parcourez les éléments de facture

en: Item description
fr: Description de l'article

en: Item quantity
fr: Quantité d'article

en: Item unit price
fr: Prix ​​unitaire de l'article

en: Item total amount
fr: Montant total de l'article

en: End loop
fr: Fin de la boucle

en: Design Canvas
fr: Toile de conception

en: Page Size:
fr: Taille des pages :

en: Zoom In
fr: Zoomer

en: Zoom Out
fr: Zoom arrière

en: Delete Selected
fr: Supprimer la sélection

en: Properties
fr: Propriétés

en: Select an element to edit its properties
fr: Sélectionnez un élément pour modifier ses propriétés

en: PDF Preview
fr: Aperçu PDF

en: Generating...
fr: Générateur...

en: Generated Code
fr: Code généré

en: Clear all elements?
fr: Effacer tous les éléments ?

en: Clear
fr: Clair

en: Align Left
fr: Aligner à gauche

en: Center Horizontally
fr: Centrer horizontalement

en: Align Right
fr: Aligner à droite

en: Align Top
fr: Aligner en haut

en: Center Vertically
fr: Centrer verticalement

en: Align Bottom
fr: Aligner en bas

en: Reset to defaults?
fr: Réinitialiser aux valeurs par défaut ?

en: Reset PDF Layout
fr: Réinitialiser la mise en page du PDF

en: User Management
fr: Gestion des utilisateurs

en: Company Branding
fr: Image de marque de l’entreprise

en: Invoice Defaults
fr: Valeurs par défaut des factures

en: Backup Settings
fr: Paramètres de sauvegarde

en: Export Settings
fr: Paramètres d'exportation

en: Privacy & Analytics
fr: Confidentialité et analyses

en: Save Settings
fr: Enregistrer les paramètres

en: Upload New Logo
fr: Télécharger un nouveau logo

en: Logo Preview
fr: Aperçu du logo

en: Are you sure you want to remove the company logo?
fr: Êtes-vous sûr de vouloir supprimer le logo de l'entreprise ?

en: Remove Logo
fr: Supprimer le logo

en: Telemetry & Analytics Dashboard
fr: Tableau de bord de télémétrie et d'analyse

en: Admin → Settings
fr: Administrateur → Paramètres

en: Advanced Permissions
fr: Autorisations avancées

en: Admin Access
fr: Accès administrateur

en: Migrate to new role system
fr: Migrer vers un nouveau système de rôles

en: Migrate
fr: Émigrer

en: Roles
fr: Rôles

en: No users found.
fr: Aucun utilisateur trouvé.

en: Cannot delete user "{name}" because they have {count} time entries. Users with existing time entries cannot be deleted.
fr: Impossible de supprimer l'utilisateur "{name}", car il dispose de {count} entrées de temps. Les utilisateurs avec des entrées de temps existantes ne peuvent pas être supprimés.

en: Cannot Delete User
fr: Impossible de supprimer l'utilisateur

en: Are you sure you want to delete user "{name}"? This action cannot be undone.
fr: Êtes-vous sûr de vouloir supprimer l'utilisateur "{name}" ? Cette action ne peut pas être annulée.

en: Delete User
fr: Supprimer un utilisateur

en: Set as default template
fr: Définir comme modèle par défaut

en: HTML Template
fr: Modèle HTML

en: Invoice Number
fr: Numéro de facture

en: Custom Message
fr: Message personnalisé

en: More Variables
fr: Plus de variables

en: Create Template
fr: Créer un modèle

en: Available Variables
fr: Variables disponibles

en: Invoice Variables
fr: Variables de facture

en: Other Variables
fr: Autres variables

en: Update Template
fr: Modèle de mise à jour

en: No email templates found.
fr: Aucun modèle d'e-mail trouvé.

en: Create your first email template to customize invoice emails.
fr: Créez votre premier modèle d'e-mail pour personnaliser les e-mails de facture.

en: Create Email Template
fr: Créer un modèle d'e-mail

en: Delete Email Template
fr: Supprimer le modèle d'e-mail

en: Are you sure you want to delete
fr: Etes-vous sûr de vouloir supprimer

en: This action cannot be undone.
fr: Cette action ne peut pas être annulée.

en: Template Information
fr: Informations sur le modèle

en: System Permissions
fr: Autorisations système

en: All available permissions in the system
fr: Toutes les autorisations disponibles dans le système

en: Back to Roles
fr: Retour aux rôles

en: permissions
fr: autorisations

en: No description available
fr: Aucune description disponible

en: About Permissions
fr: À propos des autorisations

en: Permissions define what actions users can perform in the system. These permissions are assigned to roles, and roles are assigned to users. This provides a flexible and granular access control system.
fr: Les autorisations définissent les actions que les utilisateurs peuvent effectuer dans le système. Ces autorisations sont attribuées aux rôles et les rôles sont attribués aux utilisateurs. Cela fournit un système de contrôle d’accès flexible et granulaire.

en: Edit Role
fr: Modifier le rôle

en: Create New Role
fr: Créer un nouveau rôle

en: Role Name
fr: Nom du rôle

en: A unique name for this role
fr: Un nom unique pour ce rôle

en: Optional description of this role
fr: Description facultative de ce rôle

en: Permissions
fr: Autorisations

en: Select the permissions this role should have:
fr: Sélectionnez les autorisations que ce rôle doit avoir :

en: Toggle All
fr: Tout basculer

en: Update Role
fr: Mettre à jour le rôle

en: Create Role
fr: Créer un rôle

en: Manage roles and their permissions
fr: Gérer les rôles et leurs autorisations

en: View Permissions
fr: Afficher les autorisations

en: Total Roles
fr: Total des rôles

en: System Roles
fr: Rôles système

en: Custom Roles
fr: Rôles personnalisés

en: Assigned Users
fr: Utilisateurs assignés

en: Type
fr: Taper

en: Default role
fr: Rôle par défaut

en: user
fr: utilisateur

en: users
fr: utilisateurs

en: No users
fr: Aucun utilisateur

en: System
fr: Système

en: Custom
fr: Coutume

en: View
fr: Voir

en: Permissions for
fr: Autorisations pour

en: No permissions assigned.
fr: Aucune autorisation attribuée.

en: No roles found.
fr: Aucun rôle trouvé.

en: About Roles & Permissions
fr: À propos des rôles et des autorisations

en: Roles are collections of permissions that can be assigned to users. System roles are predefined and cannot be deleted or renamed, but custom roles can be created for your specific needs.
fr: Les rôles sont des ensembles d'autorisations qui peuvent être attribuées aux utilisateurs. Les rôles système sont prédéfinis et ne peuvent pas être supprimés ou renommés, mais des rôles personnalisés peuvent être créés pour vos besoins spécifiques.

en: Are you sure you want to delete the role
fr: Êtes-vous sûr de vouloir supprimer le rôle

en: Delete Role
fr: Supprimer le rôle

en: No description
fr: Pas de description

en: Role Information
fr: Informations sur le rôle

en: System Role
fr: Rôle système

en: Custom Role
fr: Rôle personnalisé

en: Total Permissions
fr: Autorisations totales

en: Created
fr: Créé

en: Users with this Role
fr: Utilisateurs avec ce rôle

en: No users assigned to this role yet.
fr: Aucun utilisateur affecté à ce rôle pour l'instant.

en: This role has no permissions assigned.
fr: Ce rôle n'a aucune autorisation attribuée.

en: Back to User
fr: Retour à l'utilisateur

en: Manage Roles for
fr: Gérer les rôles pour

en: Assign Roles
fr: Attribuer des rôles

en: Select the roles this user should have. Users inherit all permissions from their assigned roles.
fr: Sélectionnez les rôles que cet utilisateur doit avoir. Les utilisateurs héritent de toutes les autorisations des rôles qui leur sont attribués.

en: Update Roles
fr: Mettre à jour les rôles

en: Current Effective Permissions
fr: Autorisations effectives actuelles

en: These are all the permissions the user currently has through their roles:
fr: Voici toutes les autorisations dont dispose actuellement l'utilisateur via ses rôles :

en: No permissions (assign roles to grant permissions)
fr: Aucune autorisation (attribuer des rôles pour accorder des autorisations)

en: Create Webhook
fr: Créer un webhook

en: Edit Webhook
fr: Modifier le webhook

en: Configure webhook for integrations
fr: Configurer le webhook pour les intégrations

en: Name
fr: Nom

en: Webhook URL
fr: URL du webhook

en: The URL where webhook events will be sent
fr: L'URL où les événements du webhook seront envoyés

en: Events
fr: Événements

en: Select which events should trigger this webhook
fr: Sélectionnez les événements qui doivent déclencher ce webhook

en: HTTP Method
fr: Méthode HTTP

en: Content Type
fr: Type de contenu

en: Max Retries
fr: Nombre maximal de tentatives

en: Retry Delay (seconds)
fr: Délai de nouvelle tentative (secondes)

en: Timeout (seconds)
fr: Délai d'expiration (secondes)

en: Regenerate Secret
fr: Régénérer le secret

en: Warning: Regenerating the secret will invalidate the current secret
fr: Attention : La régénération du secret invalidera le secret actuel

en: Manage webhook integrations
fr: Gérer les intégrations de webhooks

en: Statistics
fr: Statistiques

en: Failed
fr: Échoué

en: No webhooks configured
fr: Aucun webhook configuré

en: Create Your First Webhook
fr: Créez votre premier webhook

en: Webhook details
fr: Détails du webhook

en: Secret
fr: Secrète

en: (truncated)
fr: (tronqué)

en: Total Deliveries
fr: Livraisons totales

en: Successful
fr: Réussi

en: Last Delivery
fr: Dernière livraison

en: Recent Deliveries
fr: Livraisons récentes

en: Event
fr: Événement

en: Attempt
fr: Tentative

en: Response
fr: Réponse

en: Time
fr: Temps

en: Retrying
fr: Réessayer

en: No deliveries yet
fr: Pas de livraisons pour l'instant

en: Send a test webhook event?
fr: Envoyer un événement de webhook de test ?

en: Test webhook sent successfully!
fr: Test du webhook envoyé avec succès !

en: Error:
fr: Erreur:

en: Unknown error
fr: Erreur inconnue

en: Error sending test webhook:
fr: Erreur lors de l'envoi du webhook de test :

en: Analytics Dashboard
fr: Tableau de bord d'analyse

en: Last 7 days
fr: 7 derniers jours

en: Last 30 days
fr: 30 derniers jours

en: Last 90 days
fr: 90 derniers jours

en: Last year
fr: L'année dernière

en: Key metrics and insights about your time tracking
fr: Indicateurs et informations clés sur votre suivi du temps

en: Total Hours
fr: Heures totales

en: Billable Hours
fr: Heures facturables

en: Active Projects
fr: Projets actifs

en: Avg Daily Hours
fr: Heures quotidiennes moyennes

en: Daily Hours Trend
fr: Tendance des heures quotidiennes

en: Billable vs Non-Billable
fr: Facturable ou non facturable

en: Hours by Project
fr: Heures par projet

en: Weekly Trends
fr: Tendances hebdomadaires

en: Hours by Time of Day
fr: Heures par heure de la journée

en: Project Efficiency
fr: Efficacité du projet

en: User Performance
fr: Performances des utilisateurs

en: Failed to load charts. Please try again.
fr: Échec du chargement des graphiques. Veuillez réessayer.

en: Failed to refresh charts. Please try again.
fr: Échec de l'actualisation des graphiques. Veuillez réessayer.

en: Hours
fr: Heures

en: Hour of Day
fr: Heure de la journée

en: Revenue
fr: Revenu

en: Key metrics and actionable insights
fr: Indicateurs clés et informations exploitables

en: Export
fr: Exporter

en: vs previous period
fr: par rapport à la période précédente

en: of total
fr: du total

en: Potential Revenue
fr: Revenu potentiel

en: Avg rate:
fr: Tarif moyen :

en: Trend
fr: S'orienter

en: active projects
fr: projets actifs

en: Insights & Recommendations
fr: Informations et recommandations

en: Cumulative
fr: Cumulatif

en: Billable Distribution
fr: Distribution facturable

en: Task Status Overview
fr: Présentation de l'état de la tâche

en: Tasks Completed
fr: Tâches terminées

en: In Progress
fr: En cours

en: To Do
fr: Faire

en: Revenue by Project
fr: Revenus par projet

en: Payments Over Time
fr: Paiements au fil du temps

en: Payment Methods
fr: Méthodes de paiement

en: Revenue vs Payments
fr: Revenus vs paiements

en: Collection Rate
fr: Taux de recouvrement

en: Project Completion Rate
fr: Taux d'achèvement du projet

en: Billable
fr: Facturable

en: Non-Billable
fr: Non facturable

en: Completed
fr: Complété

en: Review
fr: Revoir

en: Cancelled
fr: Annulé

en: Completion Rate (%)
fr: Taux d'achèvement (%)

en: Mobile insights overview
fr: Présentation des informations mobiles

en: Daily Avg
fr: Moyenne quotidienne

en: Daily Hours
fr: Horaires quotidiens

en: Top Projects
fr: Meilleurs projets

en: Track who changed what and when
fr: Suivez qui a changé quoi et quand

en: Filters
fr: Filtres

en: Entity Type
fr: Type d'entité

en: All Types
fr: Tous types

en: Entity ID
fr: ID d'entité

en: All Users
fr: Tous les utilisateurs

en: All Actions
fr: Toutes les actions

en: Updated
fr: Mis à jour

en: Deleted
fr: Supprimé

en: Time Range
fr: Plage de temps

en: All time
fr: Tout le temps

en: Filter
fr: Filtre

en: Timestamp
fr: Horodatage

en: Entity
fr: Entité

en: Field
fr: Champ

en: Change
fr: Changement

en: Change Information
fr: Modifier les informations

en: Change Details
fr: Modifier les détails

en: Request Information
fr: Demander des informations

en: Edit Profile
fr: Modifier le profil

en: Leave blank to keep current password
fr: Laisser vide pour conserver le mot de passe actuel

en: Save Changes
fr: Enregistrer les modifications

en: Login
fr: Se connecter

en: Track time. Stay organized.
fr: Suivez le temps. Restez organisé.

en: Sign in to your account
fr: Connectez-vous à votre compte

en: Sign in
fr: Se connecter

en: Tip: Enter a new username to create your account.
fr: Astuce : saisissez un nouveau nom d'utilisateur pour créer votre compte.

en: Or continue with
fr: Ou continuez avec

en: Single Sign-On
fr: Authentification unique

en: Member Since
fr: Membre depuis

en: Budget Alerts & Forecasting
fr: Alertes et prévisions budgétaires

en: Monitor project budgets and forecast completion
fr: Surveiller les budgets des projets et prévoir l’achèvement

en: Unacknowledged Alerts
fr: Alertes non acquittées

en: Critical Alerts
fr: Alertes critiques

en: Projects with Budgets
fr: Projets avec budgets

en: Warning Alerts
fr: Alertes d'avertissement

en: Active Alerts
fr: Alertes actives

en: Acknowledge
fr: Reconnaître

en: Project Budget Status
fr: Statut du budget du projet

en: Project
fr: Projet

en: Consumed
fr: Consommé

en: Remaining
fr: Restant

en: Progress
fr: Progrès

en: over
fr: sur

en: Over Budget
fr: Au-dessus du budget

en: Critical
fr: Critique

en: Healthy
fr: En bonne santé

en: No projects with budgets found
fr: Aucun projet avec budget trouvé

en: Alert acknowledged successfully
fr: Alerte reconnue avec succès

en: Failed to acknowledge alert
fr: Échec de l'accusé de réception de l'alerte

en: Budget Analysis & Forecasting
fr: Analyse et prévisions budgétaires

en: Back to Dashboard
fr: Retour au tableau de bord

en: View Project
fr: Voir le projet

en: Total Budget
fr: Budget total

en: Burn Rate Analysis
fr: Analyse du taux de combustion

en: Daily Burn Rate
fr: Taux de combustion quotidien

en: Weekly Burn Rate
fr: Taux de combustion hebdomadaire

en: Monthly Burn Rate
fr: Taux de combustion mensuel

en: Period Total
fr: Total de la période

en: Based on last
fr: Basé sur le dernier

en: days
fr: jours

en: No burn rate data available
fr: Aucune donnée sur le taux de combustion disponible

en: Completion Estimate
fr: Estimation d’achèvement

en: Estimated Completion Date
fr: Date d'achèvement estimée

en: days remaining
fr: jours restants

en: Confidence Level
fr: Niveau de confiance

en: No completion estimate available
fr: Aucune estimation d'achèvement disponible

en: Cost Trend Analysis
fr: Analyse des tendances des coûts

en: Average
fr: Moyenne

en: Resource Allocation
fr: Allocation des ressources

en: Total Cost
fr: Coût total

en: Hourly Rate
fr: Taux horaire

en: Team Member
fr: Membre de l'équipe

en: Cost
fr: Coût

en: Hours %
fr: Heures %

en: Cost %
fr: Coût %

en: Entries
fr: Entrées

en: Date & Time
fr: Date et heure

en: Duration
fr: Durée

en: Location
fr: Emplacement

en: Task
fr: Tâche

en: Reminder
fr: Rappel

en: minutes before
fr: minutes avant

en: hours before
fr: heures avant

en: days before
fr: jours avant

en: Recurring
fr: Récurrent

en: Until
fr: Jusqu'à

en: Last Updated
fr: Dernière mise à jour

en: Back to Calendar
fr: Retour au calendrier

en: Delete Event
fr: Supprimer l'événement

en: Are you sure you want to delete this event? This action cannot be undone.
fr: Êtes-vous sûr de vouloir supprimer cet événement ? Cette action ne peut pas être annulée.

en: Edit Event
fr: Modifier l'événement

en: New Event
fr: Nouvel événement

en: Title
fr: Titre

en: Start Date
fr: Date de début

en: Start Time
fr: Heure de début

en: End Date
fr: Date de fin

en: End Time
fr: Heure de fin

en: All Day Event
fr: Événement toute la journée

en: Event Type
fr: Type d'événement

en: Meeting
fr: Réunion

en: Appointment
fr: Rendez-vous

en: Deadline
fr: Date limite

en: -- None --
fr: -- Aucun --

en: No reminder
fr: Aucun rappel

en: 5 minutes before
fr: 5 minutes avant

en: 15 minutes before
fr: 15 minutes avant

en: 30 minutes before
fr: 30 minutes avant

en: 1 hour before
fr: 1 heure avant

en: 1 day before
fr: 1 jour avant

en: Color
fr: Couleur

en: Choose a color for this event
fr: Choisissez une couleur pour cet événement

en: Private Event
fr: Événement privé

en: Private events are only visible to you
fr: Les événements privés ne sont visibles que par vous

en: Recurring Event
fr: Événement récurrent

en: This is a recurring event
fr: C'est un événement récurrent

en: Recurrence Pattern
fr: Modèle de récurrence

en: Use RRULE format (e.g., FREQ=WEEKLY;BYDAY=MO,WE,FR)
fr: Utilisez le format RRULE (par exemple, FREQ=WEEKLY;BYDAY=MO,WE,FR)

en: Recurrence End Date
fr: Date de fin de récurrence

en: Update Event
fr: Événement de mise à jour

en: Create Event
fr: Créer un événement

en: View and manage your events, tasks, and time entries
fr: Affichez et gérez vos événements, tâches et entrées de temps

en: Day
fr: Jour

en: Week
fr: Semaine

en: Month
fr: Mois

en: Today
fr: Aujourd'hui

en: Loading calendar...
fr: Chargement du calendrier...

en: Event Details
fr: Détails de l'événement

en: Edit Client Note
fr: Modifier la note du client

en: Back to Client
fr: Retour au client

en: Created on
fr: Créé le

en: Last edited on
fr: Dernière modification le

en: Note Content
fr: Contenu de la note

en: Internal note visible only to your team.
fr: Note interne visible uniquement par votre équipe.

en: Mark as important
fr: Marquer comme important

en: Client Portal
fr: Portail client

en: Welcome, %(client_name)s
fr: Bienvenue, %(client_name)s

en: Total Invoices
fr: Total des factures

en: View All
fr: Tout afficher

en: No projects found.
fr: Aucun projet trouvé.

en: Recent Invoices
fr: Factures récentes

en: No invoices found.
fr: Aucune facture trouvée.

en: Recent Time Entries
fr: Entrées de temps récentes

en: N/A
fr: N / A

en: No time entries found.
fr: Aucune entrée de temps trouvée.

en: Invoice Details
fr: Détails de la facture

en: Issue Date
fr: Date d'émission

en: This invoice is %(days)d days overdue.
fr: Cette facture est en retard de %(days)d jours.

en: Invoice Items
fr: Postes de facture

en: Quantity
fr: Quantité

en: Unit Price
fr: Prix ​​unitaire

en: Invoices for %(client_name)s
fr: Factures pour %(client_name)s

en: All
fr: Tous

en: Paid
fr: Payé

en: Unpaid
fr: Non rémunéré

en: Overdue
fr: En retard

en: Amount
fr: Montant

en: days overdue
fr: jours de retard

en: Client Portal Login
fr: Connexion au portail client

en: View your projects and invoices
fr: Consultez vos projets et factures

en: Sign in to Client Portal
fr: Connectez-vous au portail client

en: Enter your portal credentials to access your projects and invoices
fr: Entrez vos identifiants de portail pour accéder à vos projets et factures

en: portal_username
fr: nom_utilisateur_portail

en: Enter your password
fr: Entrez votre mot de passe

en: Projects for %(client_name)s
fr: Projets pour %(client_name)s

en: Quote Details
fr: Détails du devis

en: Valid Until
fr: Valable jusqu'au

en: This quote has expired.
fr: Ce devis est expiré.

en: Quote Items
fr: Articles de devis

en: Terms & Conditions
fr: Conditions générales

en: Quotes for %(client_name)s
fr: Devis pour %(client_name)s

en: Expired
fr: Expiré

en: No quotes found.
fr: Aucune citation trouvée.

en: Set Password
fr: Définir le mot de passe

en: Set your password to get started
fr: Définissez votre mot de passe pour commencer

en: Set Your Password
fr: Définissez votre mot de passe

en: Set a password for your client portal account
fr: Définir un mot de passe pour votre compte portail client

en: Password must be at least 8 characters long
fr: Le mot de passe doit comporter au moins 8 caractères

en: Confirm Password
fr: Confirmez le mot de passe

en: Confirm your password
fr: Confirmez votre mot de passe

en: Time entries for %(client_name)s projects
fr: Entrées de temps pour les projets %(client_name)s

en: All Projects
fr: Tous les projets

en: From Date
fr: À partir de la date

en: To Date
fr: À ce jour

en: Total entries
fr: Total des entrées

en: Total hours
fr: Heures totales

en: Create Client
fr: Créer un client

en: Add a new client to manage related projects and billing.
fr: Ajoutez un nouveau client pour gérer les projets associés et la facturation.

en: Back to Clients
fr: Retour aux Clients

en: Enter client name
fr: Entrez le nom du client

en: Default Hourly Rate
fr: Taux horaire par défaut

en: e.g. 75.00
fr: par ex. 75.00

en: This rate will be automatically filled when creating projects for this client
fr: Ce tarif sera automatiquement renseigné lors de la création de projets pour ce client

en: Supports Markdown
fr: Prend en charge la démarque

en: Brief description of the client or project scope
fr: Brève description de la portée du client ou du projet

en: Contact Person
fr: Personne de contact

en: Primary contact name
fr: Nom du contact principal

en: Monthly Prepaid Hours
fr: Heures mensuelles prépayées

en: e.g. 50
fr: par ex. 50

en: Leave empty if this client has no prepaid allocation.
fr: Laissez vide si ce client n’a pas d’allocation prépayée.

en: Prepaid Reset Day
fr: Jour de réinitialisation prépayé

en: Day of the month when prepaid hours reset (1-28).
fr: Jour du mois de réinitialisation des heures prépayées (1-28).

en: Client address
fr: Adresse du client

en: Choose a clear, descriptive name for the client organization.
fr: Choisissez un nom clair et descriptif pour l'organisation cliente.

en: Set the standard hourly rate for this client. This will automatically populate when creating new projects.
fr: Définissez le taux horaire standard pour ce client. Celui-ci sera automatiquement renseigné lors de la création de nouveaux projets.

en: Contact Information
fr: Coordonnées

en: Add contact details for easy communication and record keeping.
fr: Ajoutez des coordonnées pour faciliter la communication et la tenue de dossiers.

en: Prepaid Hours
fr: Heures prépayées

en: Configure monthly included hours and the reset day if this client has a retainer or prepaid bundle.
fr: Configurez les heures mensuelles incluses et le jour de réinitialisation si ce client dispose d'un forfait forfaitaire ou prépayé.

en: Provide context about the client relationship or typical project types.
fr: Fournissez le contexte de la relation client ou des types de projets typiques.

en: Edit Client
fr: Modifier le client

en: Client Portal Access
fr: Accès au portail client

en: Enable portal access for this client. Clients can log in with their own credentials to view projects, invoices, and time entries.
fr: Activez l'accès au portail pour ce client. Les clients peuvent se connecter avec leurs propres informations d'identification pour afficher les projets, les factures et les entrées de temps.

en: Enable Client Portal
fr: Activer le portail client

en: Portal Username
fr: Nom d'utilisateur du portail

en: Unique username for portal login
fr: Nom d'utilisateur unique pour la connexion au portail

en: Portal Password
fr: Mot de passe du portail

en: Leave empty to keep current password
fr: Laisser vide pour conserver le mot de passe actuel

en: Set a new password or leave empty to keep current
fr: Définissez un nouveau mot de passe ou laissez vide pour rester à jour

en: Current portal username
fr: Nom d'utilisateur actuel du portail

en: Update Client
fr: Mettre à jour le client

en: Send Password Setup Email
fr: Envoyer un e-mail de configuration du mot de passe

en: Send an email to %(email)s with a link to set their portal password.
fr: Envoyez un e-mail à %(email)s avec un lien pour définir son mot de passe de portail.

en: Email address is required to send password setup email. Please set the client email address above.
fr: Une adresse e-mail est requise pour envoyer un e-mail de configuration du mot de passe. Veuillez définir l'adresse e-mail du client ci-dessus.

en: Client Statistics
fr: Statistiques clients

en: Total Projects
fr: Total des projets

en: Est. Total Cost
fr: HNE. Coût total

en: Filter Clients
fr: Filtrer les clients

en: Toggle Filters
fr: Basculer les filtres

en: Export to CSV
fr: Exporter au format CSV

en: Hide Filters
fr: Masquer les filtres

en: Show Filters
fr: Afficher les filtres

en: Mark client as Inactive?
fr: Marquer le client comme inactif ?

en: Change Client Status
fr: Changer le statut du client

en: Mark Inactive
fr: Marquer comme inactif

en: Activate client?
fr: Activer le client ?

en: Activate Client
fr: Activer le client

en: Delete Client
fr: Supprimer le client

en: Manage
fr: Gérer

en: Primary
fr: Primaire

en: more contact(s)
fr: plus de contact(s)

en: No contacts yet
fr: Aucun contact pour l'instant

en: Add Contact
fr: Ajouter un contact

en: Legacy Contact Info
fr: Informations de contact héritées

en: Plan includes %(hours)s hours per cycle. Resets on day %(day)s.
fr: Le forfait comprend %(hours)s heures par cycle. Se réinitialise le jour %(day)s.

en: Current cycle start
fr: Début du cycle en cours

en: Remaining hours
fr: Heures restantes

en: Consumed this cycle
fr: J'ai consommé ce cycle

en: Archived
fr: Archivé

en: Internal Notes
fr: Notes internes

en: Add Note
fr: Ajouter une note

en: Add an internal note about this client...
fr: Ajouter une note interne sur ce client...

en: Save Note
fr: Enregistrer la note

en: edited
fr: édité

en: Unmark
fr: Décocher

en: Mark Important
fr: Marquer comme important

en: No notes yet. Add a note to keep track of important information about this client.
fr: Aucune note pour l'instant. Ajoutez une note pour garder une trace des informations importantes sur ce client.

en: Are you sure you want to delete this note?
fr: Êtes-vous sûr de vouloir supprimer cette note ?

en: Delete Note
fr: Supprimer la note

en: Edited on
fr: Edité le

en: Reply
fr: Répondre

en: Write your reply...
fr: Écrivez votre réponse...

en: Comments
fr: Commentaires

en: Add Comment
fr: Ajouter un commentaire

en: Your Comment
fr: Votre commentaire

en: Share your thoughts, updates, or questions...
fr: Partagez vos réflexions, mises à jour ou questions...

en: You can use line breaks to format your comment.
fr: Vous pouvez utiliser des sauts de ligne pour formater votre commentaire.

en: Add Image
fr: Ajouter une image

en: Post Comment
fr: Publier un commentaire

en: No comments yet
fr: Pas encore de commentaires

en: Start the conversation by adding the first comment.
fr: Démarrez la conversation en ajoutant le premier commentaire.

en: Add First Comment
fr: Ajouter un premier commentaire

en: Edit Comment
fr: Modifier le commentaire

en: Back
fr: Dos

en: Editing comment on:
fr: Modification du commentaire sur :

en: Originally posted on
fr: Initialement publié sur

en: Comment Content
fr: Contenu du commentaire

en: All Activities
fr: Toutes les activités

en: Time Templates
fr: Modèles de temps

en: No recent activity
fr: Aucune activité récente

en: Activity will appear here as you work
fr: L'activité apparaîtra ici pendant que vous travaillez

en: Load More
fr: Charger plus

en: Failed to load activities
fr: Échec du chargement des activités

en: Home
fr: Maison

en: Call
fr: Appel

en: Outbound
fr: Sortant

en: Inbound
fr: Entrant

en: Subject
fr: Sujet

en: Pending
fr: En attente

en: Scheduled
fr: Programmé

en: Follow-up Date
fr: Date de suivi

en: Content/Notes
fr: Contenu/Remarques

en: Save Communication
fr: Enregistrer la communication

en: First Name
fr: Prénom

en: Last Name
fr: Nom de famille

en: Department
fr: Département

en: Billing
fr: Facturation

en: Technical
fr: Technique

en: Set as primary contact
fr: Définir comme contact principal

en: Tags
fr: Balises

en: Save Contact
fr: Enregistrer le contact

en: Set Primary
fr: Définir comme principal

en: No contacts found
fr: Aucun contact trouvé

en: Add First Contact
fr: Ajouter un premier contact

en: Primary Contact
fr: Contact principal

en: Communication History
fr: Historique des communications

en: Add Communication
fr: Ajouter une communication

en: No communications recorded
fr: Aucune communication enregistrée

en: Deal Name
fr: Nom de l'offre

en: Select Client
fr: Sélectionnez un client

en: Select Contact
fr: Sélectionnez Contact

en: Stage
fr: Scène

en: Deal Value
fr: Valeur de la transaction

en: Win Probability
fr: Probabilité de gagner

en: Expected Close Date
fr: Date de clôture prévue

en: Related Quote
fr: Citation connexe

en: Select Quote
fr: Sélectionnez un devis

en: Save Deal
fr: Enregistrer l'offre

en: Open
fr: Ouvrir

en: Won
fr: Gagné

en: Lost
fr: Perdu

en: All Stages
fr: Toutes les étapes

en: Value
fr: Valeur

en: Probability
fr: Probabilité

en: Expected Close
fr: Clôture prévue

en: No deals found
fr: Aucune offre trouvée

en: Create First Deal
fr: Créer la première transaction

en: You Were Mentioned
fr: Vous avez été mentionné

en: View Task & Reply
fr: Afficher la tâche et la réponse

en: Invoice
fr: Facture

en: Invoice Overdue
fr: Facture en retard

en: View Invoice
fr: Afficher la facture

en: Quote
fr: Citation

en: Quote Accepted
fr: Devis accepté

en: View Quote
fr: Voir le devis

en: Quote Approval Rejected
fr: Approbation du devis rejetée

en: Approval Requested
fr: Approbation demandée

en: Review Quote
fr: Examiner le devis

en: Quote Approved
fr: Devis approuvé

en: Quote Expired
fr: Devis expiré

en: Quote Expiring Soon
fr: Devis expirant bientôt

en: Quote Rejected
fr: Devis rejeté

en: Quote Sent
fr: Devis envoyé

en: Task Assignment
fr: Affectation des tâches

en: View Task
fr: Afficher la tâche

en: Test Details
fr: Détails du test

en: Your Weekly Summary
fr: Votre résumé hebdomadaire

en: 400 Bad Request
fr: 400 requêtes incorrectes

en: Invalid Request
fr: Demande invalide

en: The request you made is invalid or contains errors. This could be due to:
fr: La demande que vous avez faite n'est pas valide ou contient des erreurs. Cela pourrait être dû à :

en: Missing or invalid form data
fr: Données de formulaire manquantes ou invalides

en: Malformed request parameters
fr: Paramètres de requête mal formés

en: Go to Dashboard
fr: Aller au tableau de bord

en: Go Back
fr: Retourner

en: 403 Forbidden
fr: 403 Interdit

en: Access Denied
fr: Accès refusé

en: You don't have permission to access this resource. This could be due to:
fr: Vous n'êtes pas autorisé à accéder à cette ressource. Cela pourrait être dû à :

en: Insufficient privileges
fr: Privilèges insuffisants

en: Not logged in
fr: Non connecté

en: Resource access restrictions
fr: Restrictions d'accès aux ressources

en: Page Not Found
fr: Page introuvable

en: The page you're looking for doesn't exist or has been moved.
fr: La page que vous recherchez n'existe pas ou a été déplacée.

en: Server Error
fr: Erreur de serveur

en: Something went wrong on our end. Please try again later.
fr: Quelque chose s'est mal passé de notre côté. Veuillez réessayer plus tard.

en: Try Again
fr: Essayer à nouveau

en: An error occurred while processing your request.
fr: Une erreur s'est produite lors du traitement de votre demande.

en: Refresh Page
fr: Actualiser la page

en: Go to Login
fr: Allez dans Connexion

en: e.g., Travel, Meals, Office Supplies
fr: par exemple, voyages, repas, fournitures de bureau

en: e.g., TRAVEL, MEALS
fr: par exemple, VOYAGES, REPAS

en: Brief description of this category...
fr: Brève description de cette catégorie...

en: e.g., fa-plane, fa-utensils
fr: par exemple, avion fa, ustensiles fa

en: e.g., 19.00
fr: par exemple, 19h00

en: e.g., Flight to Berlin
fr: par exemple, vol pour Berlin

en: Additional details about the expense...
fr: Détails supplémentaires sur les dépenses...

en: e.g., Lufthansa
fr: par exemple, Lufthansa

en: Receipt/Invoice Number
fr: Numéro de reçu/facture

en: e.g., INV-2024-001
fr: par exemple, INV-2024-001

en: e.g., conference, client-meeting, urgent
fr: par exemple, conférence, réunion client, urgence

en: Additional notes...
fr: Notes complémentaires...

en: Filter Expenses
fr: Filtrer les dépenses

en: Delete Selected Expenses
fr: Supprimer les dépenses sélectionnées

en: Change Status for Selected Expenses
fr: Modifier le statut des dépenses sélectionnées

en: Update Status
fr: Statut de la mise à jour

en: Associated With
fr: Associé à

en: Reject Expense
fr: Rejeter la dépense

en: Explain why this expense is being rejected...
fr: Expliquez pourquoi cette dépense est rejetée...

en: Are you sure you want to delete this expense?
fr: Etes-vous sûr de vouloir supprimer cette dépense ?

en: Delete Expense
fr: Supprimer une dépense

en: Import/Export Data
fr: Importer/Exporter des données

en: Import/Export
fr: Importer/Exporter

en: Import data from other time trackers or export your data for GDPR compliance and backups
fr: Importez des données à partir d'autres trackers de temps ou exportez vos données pour la conformité et les sauvegardes du RGPD

en: Import Data
fr: Importer des données

en: CSV Import
fr: Importation CSV

en: Import time entries from a CSV file
fr: Importer des entrées de temps à partir d'un fichier CSV

en: Choose CSV File
fr: Choisissez un fichier CSV

en: Download Template
fr: Télécharger le modèle

en: Import from Toggl Track
fr: Importer depuis Toggl Track

en: Import time entries from Toggl Track
fr: Importer les entrées de temps depuis Toggl Track

en: Import from Toggl
fr: Importer depuis Toggl

en: Import from Harvest
fr: Importer depuis la récolte

en: Import time entries from Harvest
fr: Importer les entrées de temps depuis Harvest

en: Restore from Backup
fr: Restaurer à partir d'une sauvegarde

en: Restore data from a backup file
fr: Restaurer les données à partir d'un fichier de sauvegarde

en: Import History
fr: Historique d'importation

en: Export Data
fr: Exporter des données

en: Full Data Export (GDPR)
fr: Exportation complète des données (RGPD)

en: Export all your personal data
fr: Exportez toutes vos données personnelles

en: Export as JSON
fr: Exporter au format JSON

en: Export as ZIP
fr: Exporter au format ZIP

en: Filtered Export
fr: Exportation filtrée

en: Export specific data with filters
fr: Exporter des données spécifiques avec des filtres

en: Export with Filters
fr: Exporter avec des filtres

en: Create a full database backup
fr: Créer une sauvegarde complète de la base de données

en: Export History
fr: Historique des exportations

en: API Token
fr: Jeton API

en: Workspace ID
fr: ID de l'espace de travail

en: Import
fr: Importer

en: Account ID
fr: Identifiant du compte

en: Stock Item
fr: Article en stock

en: Select Item
fr: Sélectionner un article

en: Warehouse
fr: Entrepôt

en: Select Warehouse
fr: Sélectionnez un entrepôt

en: Adjustment Quantity
fr: Quantité d'ajustement

en: Use positive values to increase stock, negative values to decrease
fr: Utilisez des valeurs positives pour augmenter le stock, des valeurs négatives pour diminuer

en: Reason
fr: Raison

en: e.g., Physical count correction, Damage, Found items
fr: par exemple, correction du décompte physique, dommages, objets trouvés

en: Additional details about this adjustment
fr: Détails supplémentaires sur cet ajustement

en: Record Adjustment
fr: Ajustement d'enregistrement

en: All Warehouses
fr: Tous les entrepôts

en: All Items
fr: Tous les articles

en: Date From
fr: Dater de

en: Date To
fr: Date de

en: Item
fr: Article

en: No adjustments found.
fr: Aucun ajustement trouvé.

en: On Hand
fr: À portée de main

en: Reorder Point
fr: Point de commande

en: Shortfall
fr: Manque à gagner

en: Reorder Qty
fr: Quantité de commande

en: No low stock alerts. All items are above reorder point.
fr: Aucune alerte de stock faible. Tous les articles sont au-dessus du point de commande.

en: Movement Type
fr: Type de mouvement

en: Adjustment
fr: Ajustement

en: Transfer
fr: Transfert

en: Sale
fr: Vente

en: Purchase
fr: Achat

en: Return
fr: Retour

en: Waste
fr: Déchets

en: Use positive values for additions, negative for removals
fr: Utilisez des valeurs positives pour les ajouts, négatives pour les suppressions

en: e.g., Physical count correction
fr: par exemple, correction du comptage physique

en: Record Movement
fr: Mouvement d'enregistrement

en: Reference Type
fr: Type de référence

en: Manual
fr: Manuel

en: Reference
fr: Référence

en: No stock movements found.
fr: Aucun mouvement de stock trouvé.

en: Basic Information
fr: Informations de base

en: Supplier
fr: Fournisseur

en: Select Supplier
fr: Sélectionnez le fournisseur

en: Order Date
fr: Date de commande

en: Expected Delivery Date
fr: Date de livraison prévue

en: Notes visible to supplier
fr: Notes visibles par le fournisseur

en: Internal notes (not visible to supplier)
fr: Notes internes (non visibles pour le fournisseur)

en: Items
fr: Articles

en: Add Item
fr: Ajouter un article

en: Qty
fr: Qté

en: Unit Cost
fr: Coût unitaire

en: Supplier SKU
fr: UGS du fournisseur

en: Create Purchase Order
fr: Créer un bon de commande

en: Draft
fr: Brouillon

en: Sent
fr: Envoyé

en: Confirmed
fr: Confirmé

en: Received
fr: Reçu

en: All Suppliers
fr: Tous les fournisseurs

en: PO Number
fr: Numéro de bon de commande

en: Expected Delivery
fr: Livraison prévue

en: No purchase orders found.
fr: Aucun bon de commande trouvé.

en: Are you sure you want to cancel this purchase order?
fr: Êtes-vous sûr de vouloir annuler ce bon de commande ?

en: Are you sure you want to delete this purchase order?
fr: Êtes-vous sûr de vouloir supprimer ce bon de commande ?

en: Purchase Order Details
fr: Détails du bon de commande

en: Received Date
fr: Date de réception

en: Quantity Ordered
fr: Quantité commandée

en: Quantity Received
fr: Quantité reçue

en: Line Total
fr: Total de ligne

en: Shipping
fr: Expédition

en: Receive Purchase Order
fr: Recevoir le bon de commande

en: Mark as Received
fr: Marquer comme reçu

en: No items in this purchase order.
fr: Aucun article dans ce bon de commande.

en: Summary
fr: Résumé

en: Total Items
fr: Total des articles

en: Total Warehouses
fr: Total des entrepôts

en: Total Inventory Value
fr: Valeur totale de l'inventaire

en: Low Stock Items
fr: Articles en faible stock

en: Available Reports
fr: Rapports disponibles

en: Stock Valuation
fr: Valorisation des stocks

en: View inventory value by warehouse
fr: Afficher la valeur des stocks par entrepôt

en: Movement History
fr: Histoire du mouvement

en: Detailed movement log
fr: Journal de mouvement détaillé

en: Turnover Analysis
fr: Analyse du chiffre d'affaires

en: Inventory turnover rates
fr: Taux de rotation des stocks

en: Low Stock Report
fr: Rapport de stock faible

en: Items below reorder point
fr: Articles en dessous du point de commande

en: Found %(count)s items below their reorder point.
fr: %(count)s articles trouvés en dessous de leur point de réapprovisionnement.

en: SKU
fr: UGS

en: Quantity On Hand
fr: Quantité disponible

en: Reorder Quantity
fr: Quantité de commande

en: Create PO
fr: Créer un bon de commande

en: All Stock Levels are Good
fr: Tous les niveaux de stocks sont bons

en: No items are currently below their reorder point.
fr: Aucun article n'est actuellement en dessous de son point de commande.

en: No movements found.
fr: Aucun mouvement trouvé.

en: Turnover rate indicates how many times inventory is sold and replaced in a year. Higher rates indicate faster-moving items.
fr: Le taux de rotation indique combien de fois les stocks sont vendus et remplacés au cours d'une année. Des tarifs plus élevés indiquent des articles qui évoluent plus rapidement.

en: Total Sold
fr: Total vendu

en: Avg Stock Level
fr: Niveau de stock moyen

en: Turnover Rate
fr: Taux de roulement

en: Fast Moving
fr: Déplacement rapide

en: Normal
fr: Normale

en: Slow Moving
fr: Mouvement lent

en: Very Slow
fr: Très lent

en: No sales data found for the selected period.
fr: Aucune donnée de vente trouvée pour la période sélectionnée.

en: Category
fr: Catégorie

en: All Categories
fr: Toutes les catégories

en: Inventory Valuation
fr: Évaluation des stocks

en: Total Value
fr: Valeur totale

en: No items found with cost information.
fr: Aucun article trouvé avec des informations sur les coûts.

en: Reserved
fr: Réservé

en: Fulfilled
fr: Réalisé

en: Reserved At
fr: Réservé à

en: Expires At
fr: Expire à

en: Fulfill this reservation?
fr: Remplir cette réservation ?

en: Cancel this reservation?
fr: Annuler cette réservation ?

en: No reservations found.
fr: Aucune réservation trouvée.

en: Unit
fr: Unité

en: Default Cost
fr: Coût par défaut

en: Default Price
fr: Prix ​​par défaut

en: Image URL
fr: URL de l'image

en: Track Inventory
fr: Suivre l'inventaire

en: Manage multiple suppliers for this item with different pricing.
fr: Gérez plusieurs fournisseurs pour cet article avec des prix différents.

en: MOQ
fr: Quantité minimale de commande

en: Lead Time (days)
fr: Délai (jours)

en: Preferred
fr: Préféré

en: Add Supplier
fr: Ajouter un fournisseur

en: No movement history found for this item.
fr: Aucun historique de mouvement trouvé pour cet article.

en: SKU, Name, Barcode...
fr: SKU, nom, code-barres...

en: Active Only
fr: Actif uniquement

en: Total Qty
fr: Qté totale

en: Available
fr: Disponible

en: Low Stock
fr: Stock faible

en: No stock items found.
fr: Aucun article en stock trouvé.

en: Item Details
fr: Détails de l'article

en: Trackable
fr: Traçable

en: Stock Levels by Warehouse
fr: Niveaux de stock par entrepôt

en: Recent Stock Movements
fr: Mouvements de stocks récents

en: Total On Hand
fr: Total disponible

en: Total Reserved
fr: Total réservé

en: Total Available
fr: Total disponible

en: Low Stock Alert
fr: Alerte de stock faible

en: This item is not trackable.
fr: Cet article n'est pas traçable.

en: Active Reservations
fr: Réservations actives

en: Quantity Reserved
fr: Quantité réservée

en: Last Counted
fr: Dernier décompte

en: No stock found for this item in any warehouse.
fr: Aucun stock trouvé pour cet article dans aucun entrepôt.

en: No stock levels found.
fr: Aucun niveau de stock trouvé.

en: Low Stock Only
fr: Stock faible uniquement

en: Oversold
fr: Survendu

en: No stock items found in this warehouse.
fr: Aucun article en stock trouvé dans cet entrepôt.

en: Supplier Code
fr: Code fournisseur

en: Unique code for this supplier (e.g., SUP-001)
fr: Code unique pour ce fournisseur (par exemple, SUP-001)

en: Payment Terms
fr: Conditions de paiement

en: e.g., Net 30, Net 60
fr: par exemple, Net 30, Net 60

en: Code, name, email
fr: Code, nom, email

en: No suppliers found.
fr: Aucun fournisseur trouvé.

en: Supplier Details
fr: Détails du fournisseur

en: Stock Items from this Supplier
fr: Articles en stock de ce fournisseur

en: Lead Time
fr: Délai de mise en œuvre

en: No stock items associated with this supplier.
fr: Aucun article en stock associé à ce fournisseur.

en: Preferred Items
fr: Articles préférés

en: From Warehouse
fr: Depuis l'entrepôt

en: Select Source Warehouse
fr: Sélectionner l'entrepôt source

en: To Warehouse
fr: Vers l'entrepôt

en: Select Destination Warehouse
fr: Sélectionnez l'entrepôt de destination

en: Optional notes about this transfer
fr: Notes facultatives sur ce transfert

en: Create Transfer
fr: Créer un transfert

en: No transfers found.
fr: Aucun transfert trouvé.

en: Warehouse Code
fr: Code d'entrepôt

en: Unique code for this warehouse (e.g., WH-001)
fr: Code unique pour cet entrepôt (par exemple, WH-001)

en: Contact Email
fr: E-mail de contact

en: Contact Phone
fr: Téléphone de contact

en: No warehouses found.
fr: Aucun entrepôt trouvé.

en: Warehouse Details
fr: Détails de l'entrepôt

en: No stock items in this warehouse.
fr: Aucun article en stock dans cet entrepôt.

en: Total Quantity
fr: Quantité totale

en: Create Invoice
fr: Créer une facture

en: Generate a new invoice for a project and client
fr: Générer une nouvelle facture pour un projet et un client

en: Back to Invoices
fr: Retour aux factures

en: Select a project
fr: Sélectionnez un projet

en: Selecting a project will auto-fill client details
fr: La sélection d'un projet remplira automatiquement les détails du client

en: Tax Rate (%)
fr: Taux d'imposition (%)

en: Tips
fr: Conseils

en: Choose the correct project to auto-fill client details.
fr: Choisissez le bon projet pour remplir automatiquement les détails du client.

en: You can customize notes and terms before sending the invoice.
fr: Vous pouvez personnaliser les notes et les conditions avant d'envoyer la facture.

en: Edit Invoice
fr: Modifier la facture

en: Update invoice details, items, and terms
fr: Mettre à jour les détails, les articles et les conditions de la facture

en: Send Email
fr: Envoyer un e-mail

en: Time-based services and hourly work
fr: Services basés sur le temps et travail horaire

en: Select Stock Item
fr: Sélectionnez un article en stock

en: e.g., Web Development Services
fr: par exemple, services de développement Web

en: Remove item
fr: Supprimer l'élément

en: Items Subtotal
fr: Sous-total des articles

en: Billable expenses such as travel, meals, and materials
fr: Dépenses facturables telles que les déplacements, les repas et le matériel

en: Add Expense
fr: Ajouter une dépense

en: e.g., Travel to Client Meeting
fr: par exemple, déplacement pour se rendre à une réunion client

en: Linked expense - title cannot be edited
fr: Dépense liée – le titre ne peut pas être modifié

en: Linked expense - description cannot be edited
fr: Dépense liée – la description ne peut pas être modifiée

en: Linked expense - category cannot be edited
fr: Dépense liée - la catégorie ne peut pas être modifiée

en: Travel
fr: Voyage

en: Meals
fr: Repas

en: Accommodation
fr: Hébergement

en: Supplies
fr: Fournitures

en: Software
fr: Logiciel

en: Equipment
fr: Équipement

en: Marketing
fr: Commercialisation

en: Training
fr: Entraînement

en: Other
fr: Autre

en: Linked expense - amount cannot be edited
fr: Dépense liée - le montant ne peut pas être modifié

en: Linked expense - date cannot be edited
fr: Dépense liée - la date ne peut pas être modifiée

en: Unlink expense from invoice
fr: Dissocier les dépenses de la facture

en: Expenses Subtotal
fr: Sous-total des dépenses

en: Extra Goods
fr: Marchandises supplémentaires

en: Products, materials, licenses, and other goods
fr: Produits, matériaux, licences et autres biens

en: Add Good
fr: Ajouter du bien

en: Price
fr: Prix

en: e.g., Software License
fr: par exemple, licence de logiciel

en: Product
fr: Produit

en: Material
fr: Matériel

en: License
fr: Licence

en: Remove good
fr: Supprimer le bien

en: Goods Subtotal
fr: Sous-total des marchandises

en: Live Preview
fr: Aperçu en direct

en: Payment
fr: Paiement

en: Goods
fr: Marchandises

en: Quick Actions
fr: Actions rapides

en: Generate from Time/Costs
fr: Générer à partir du temps/des coûts

en: Record Payment
fr: Enregistrer le paiement

en: Export PDF
fr: Exporter un PDF

en: Export CSV
fr: Exporter au format CSV

en: Duplicate Invoice
fr: Facture en double

en: Are you sure you want to unlink this expense from the invoice?
fr: Êtes-vous sûr de vouloir dissocier cette dépense de la facture ?

en: Unlink Expense
fr: Dissocier les dépenses

en: Unlink
fr: Dissocier

en: Please add at least one item, expense, or extra good to the invoice
fr: Veuillez ajouter au moins un article, une dépense ou un bien supplémentaire à la facture.

en: Optional
fr: Facultatif

en: Generate from Time, Costs & Goods
fr: Générer à partir du temps, des coûts et des marchandises

en: Select unbilled time entries, project costs, and extra goods to add to this invoice
fr: Sélectionnez les entrées de temps non facturées, les coûts du projet et les marchandises supplémentaires à ajouter à cette facture.

en: Back to Edit
fr: Retour à Modifier

en: Unbilled Time Entries
fr: Saisies de temps non facturées

en: Time Entry
fr: Saisie du temps

en: No unbilled time entries found for this project.
fr: Aucune entrée de temps non facturé trouvée pour ce projet.

en: Uninvoiced Project Costs
fr: Coûts du projet non facturés

en: No uninvoiced costs found for this project.
fr: Aucun coût non facturé trouvé pour ce projet.

en: Uninvoiced Billable Expenses
fr: Dépenses facturables non facturées

en: Vendor
fr: Fournisseur

en: No uninvoiced billable expenses found for this project.
fr: Aucune dépense facturable non facturée trouvée pour ce projet.

en: Project Extra Goods
fr: Projet de biens supplémentaires

en: No extra goods found for this project.
fr: Aucune marchandise supplémentaire trouvée pour ce projet.

en: Add Selected to Invoice
fr: Ajouter la sélection à la facture

en: Selection Summary
fr: Résumé de la sélection

en: Total available hours
fr: Nombre total d'heures disponibles

en: Total available costs
fr: Coûts totaux disponibles

en: Total available expenses
fr: Total des dépenses disponibles

en: Total available goods
fr: Total des biens disponibles

en: Prepaid Hours Overview
fr: Aperçu des heures prépayées

en: Plan includes %(hours)s hours per cycle (resets on day %(day)s).
fr: Le plan comprend %(hours)s heures par cycle (réinitialisations le jour %(day)s).

en: Consumed: %(consumed)s h • Remaining: %(remaining)s h
fr: Consommé : %(consumed)s h • Restant : %(remaining)s h

en: No prepaid usage recorded for selected period yet.
fr: Aucune utilisation prépayée enregistrée pour la période sélectionnée pour le moment.

en: You can select multiple time entries, costs, expenses, and extra goods.
fr: Vous pouvez sélectionner plusieurs entrées de temps, coûts, dépenses et biens supplémentaires.

en: Time entries are grouped by task or project at item creation.
fr: Les entrées de temps sont regroupées par tâche ou projet lors de la création de l'élément.

en: Costs and extra goods are added as individual invoice items.
fr: Les coûts et les marchandises supplémentaires sont ajoutés sous forme de postes de facture individuels.

en: Expenses are linked to the invoice and appear in a separate section.
fr: Les dépenses sont liées à la facture et apparaissent dans une section distincte.

en: Please select at least one time entry, cost, expense, or extra good
fr: Veuillez sélectionner au moins une entrée horaire, un coût, une dépense ou un bien supplémentaire.

en: Filter Invoices
fr: Filtrer les factures

en: Invoice number or client
fr: Numéro de facture ou client

en: Export to Excel
fr: Exporter vers Excel

en: Partially Paid
fr: Partiellement payé

en: Fully Paid
fr: Entièrement payé

en: Delete Selected Invoices
fr: Supprimer les factures sélectionnées

en: Change Status for Selected Invoices
fr: Modifier le statut des factures sélectionnées

en: Delete Invoice
fr: Supprimer la facture

en: Warning:
fr: Avertissement:

en: Are you sure you want to delete invoice
fr: Êtes-vous sûr de vouloir supprimer la facture

en: All invoice items, extra goods, and payment records associated with this invoice will be permanently deleted.
fr: Tous les éléments de facture, marchandises supplémentaires et enregistrements de paiement associés à cette facture seront définitivement supprimés.

en: INVOICE
fr: FACTURE

en: Invoice #
fr: Facture #

en: Bill To
fr: Facturer à

en: Quantity (Hours)
fr: Quantité (heures)

en: Generated from %(num)d time entries
fr: Généré à partir de %(num)d entrées de temps

en: Expense
fr: Frais

en: Subtotal:
fr: Total:

en: Tax (%(rate).2f%%):
fr: Taxe (%(rate).2f%%) :

en: Total Amount:
fr: Montant total:

en: Notes:
fr: Remarques :

en: Terms:
fr: Termes:

en: Payment Information:
fr: Informations de paiement :

en: Terms & Conditions:
fr: Conditions générales :

en: Payment History
fr: Historique des paiements

en: Send Invoice via Email
fr: Envoyer la facture par e-mail

en: Manage Columns
fr: Gérer les colonnes

en: Drag tasks between columns to update their status
fr: Faites glisser les tâches entre les colonnes pour mettre à jour leur statut

en: Kanban board
fr: Tableau Kanban

en: moved to
fr: déménagé à

en: No tasks in this column.
fr: Aucune tâche dans cette colonne.

en: Manage Kanban Columns
fr: Gérer les colonnes Kanban

en: Customize your kanban board columns and task states
fr: Personnalisez les colonnes de votre tableau Kanban et les états des tâches

en: Project:
fr: Projet:

en: Global Columns
fr: Colonnes globales

en: Add Column
fr: Ajouter une colonne

en: Kanban columns list
fr: Liste des colonnes Kanban

en: Key
fr: Clé

en: Label
fr: Étiquette

en: Icon
fr: Icône

en: Complete?
fr: Complet?

en: Drag to reorder
fr: Faites glisser pour réorganiser

en: Edit column
fr: Modifier la colonne

en: Toggle active state
fr: Basculer l'état actif

en: No kanban columns found. Create your first column to get started.
fr: Aucune colonne Kanban trouvée. Créez votre première colonne pour commencer.

en: Tips:
fr: Conseils:

en: Drag and drop rows to reorder columns
fr: Faites glisser et déposez les lignes pour réorganiser les colonnes

en: System columns (todo, in_progress, done) cannot be deleted but can be customized
fr: Les colonnes système (todo, in_progress, done) ne peuvent pas être supprimées mais peuvent être personnalisées

en: Columns marked as "Complete" will mark tasks as completed when dragged to that column
fr: Les colonnes marquées comme « Complète » marqueront les tâches comme terminées lorsqu'elles seront glissées vers cette colonne.

en: Inactive columns are hidden from the kanban board but tasks with that status remain accessible
fr: Les colonnes inactives sont masquées du tableau Kanban mais les tâches avec ce statut restent accessibles

en: Delete Kanban Column
fr: Supprimer la colonne Kanban

en: Are you sure you want to delete the column?
fr: Êtes-vous sûr de vouloir supprimer la colonne ?

en: Key:
fr: Clé:

en: Note: Tasks with this status will remain accessible but the column will no longer appear on the kanban board.
fr: Remarque : Les tâches avec ce statut resteront accessibles mais la colonne n'apparaîtra plus sur le tableau Kanban.

en: Delete Column
fr: Supprimer la colonne

en: Columns reordered successfully
fr: Colonnes réorganisées avec succès

en: Failed to reorder columns. Please try again.
fr: Échec de la réorganisation des colonnes. Veuillez réessayer.

en: Create Kanban Column
fr: Créer une colonne Kanban

en: Add a new column to your kanban board
fr: Ajoutez une nouvelle colonne à votre tableau Kanban

en: Create Kanban Column form
fr: Créer un formulaire de colonne Kanban

en: Column Label
fr: Étiquette de colonne

en: e.g., In Review, Blocked, Testing
fr: par exemple, En révision, Bloqué, Test

en: The display name shown on the kanban board
fr: Le nom d'affichage affiché sur le tableau Kanban

en: Column Key
fr: Clé de colonne

en: e.g., in_review, blocked, testing
fr: par exemple, in_review, bloqué, test

en: Unique identifier (lowercase, no spaces, use underscores). Auto-generated from label if empty.
fr: Identifiant unique (minuscules, sans espaces, utilisez des traits de soulignement). Généré automatiquement à partir de l’étiquette si vide.

en: Global (for all projects)
fr: Global (pour tous les projets)

en: Select a project to create project-specific columns, or leave as Global for all projects
fr: Sélectionnez un projet pour créer des colonnes spécifiques au projet, ou laissez Global pour tous les projets

en: Icon Class
fr: Classe d'icônes

en: Font Awesome icon class
fr: Classe d'icônes Font Awesome

en: Browse icons
fr: Parcourir les icônes

en: Primary (Blue)
fr: Primaire (bleu)

en: Secondary (Gray)
fr: Secondaire (gris)

en: Success (Green)
fr: Succès (Vert)

en: Danger (Red)
fr: Danger (rouge)

en: Warning (Yellow)
fr: Avertissement (jaune)

en: Info (Cyan)
fr: Informations (cyan)

en: Dark
fr: Sombre

en: Bootstrap color class for styling
fr: Classe de couleur Bootstrap pour le style

en: Mark as Complete State
fr: Marquer comme état complet

en: Tasks moved to this column will be marked as completed
fr: Les tâches déplacées vers cette colonne seront marquées comme terminées

en: Create Column
fr: Créer une colonne

en: The column will be added at the end of the board. You can reorder columns later from the management page.
fr: La colonne sera ajoutée à la fin du tableau. Vous pouvez réorganiser les colonnes ultérieurement à partir de la page de gestion.

en: Edit Kanban Column
fr: Modifier la colonne Kanban

en: Modify column settings
fr: Modifier les paramètres de la colonne

en: Edit Kanban Column form
fr: Modifier le formulaire de colonne Kanban

en: The key cannot be changed after creation
fr: La clé ne peut pas être modifiée après la création

en: This is a project-specific column
fr: Ceci est une colonne spécifique au projet

en: This is a global column (for all projects)
fr: Ceci est une colonne globale (pour tous les projets)

en: Preview
fr: Aperçu

en: Inactive columns are hidden from the kanban board
fr: Les colonnes inactives sont masquées du tableau Kanban

en: System Column:
fr: Colonne système :

en: This is a system column. You can customize its appearance but cannot delete it.
fr: Il s'agit d'une colonne système. Vous pouvez personnaliser son apparence mais ne pouvez pas le supprimer.

en: Website, referral, ad...
fr: Site Internet, référencement, annonce...

en: Lead Score
fr: Score des prospects

en: Estimated Value
fr: Valeur estimée

en: Save Lead
fr: Enregistrer le prospect

en: Name, company, email...
fr: Nom, entreprise, email...

en: All Statuses
fr: Tous les statuts

en: Website, referral...
fr: Site Internet, référencement...

en: Company
fr: Entreprise

en: No leads found
fr: Aucune piste trouvée

en: Create First Lead
fr: Créer un premier prospect

en: Professional time tracking and project management
fr: Suivi professionnel du temps et gestion de projet

en: A comprehensive web-based time tracking application built with Flask, featuring project management, client organization, task management, invoicing, and advanced analytics.
fr: Une application Web complète de suivi du temps construite avec Flask, comprenant la gestion de projet, l'organisation des clients, la gestion des tâches, la facturation et des analyses avancées.

en: Project Management
fr: Gestion de projet

en: Invoicing
fr: Facturation

en: Smart Timers
fr: Minuteries intelligentes

en: Real-time tracking with idle detection and live updates
fr: Suivi en temps réel avec détection d'inactivité et mises à jour en direct

en: Client Management
fr: Gestion des clients

en: Organize clients with contacts, rates, and project relations
fr: Organisez les clients avec des contacts, des tarifs et des relations de projet

en: Task System
fr: Système de tâches

en: Break down projects into tasks with progress tracking
fr: Décomposer les projets en tâches avec suivi des progrès

en: PDF Invoices
fr: Factures PDF

en: Generate professional invoices from tracked time
fr: Générez des factures professionnelles à partir du temps suivi

en: Core Features
fr: Fonctionnalités principales

en: Start/stop timers with project and task association
fr: Minuteries de démarrage/arrêt avec association de projets et de tâches

en: Manual time entry with notes and tags
fr: Saisie manuelle du temps avec notes et balises

en: Client and project organization
fr: Organisation client et projet

en: Role-based access and user profiles
fr: Accès basé sur les rôles et profils d'utilisateurs

en: Advanced Features
fr: Fonctionnalités avancées

en: Branded PDF invoicing with tax and payment tracking
fr: Facturation PDF de marque avec suivi des taxes et des paiements

en: Visual analytics and detailed reporting
fr: Analyses visuelles et rapports détaillés

en: REST API for integrations
fr: API REST pour les intégrations

en: PWA capabilities and mobile-friendly UI
fr: Capacités PWA et interface utilisateur adaptée aux mobiles

en: Platform Support
fr: Prise en charge de la plateforme

en: Web Application
fr: Application Web

en: Desktop browsers (Chrome, Firefox, Safari, Edge)
fr: Navigateurs de bureau (Chrome, Firefox, Safari, Edge)

en: Mobile responsive design
fr: Conception réactive mobile

en: Progressive Web App (PWA)
fr: Application Web progressive (PWA)

en: Touch-friendly tablet interface
fr: Interface tablette tactile

en: Operating Systems
fr: Systèmes d'exploitation

en: Android and iOS (browser)
fr: Android et iOS (navigateur)

en: Raspberry Pi support
fr: Prise en charge du Raspberry Pi

en: Dockerized deployment
fr: Déploiement Dockerisé

en: Database Support
fr: Prise en charge de la base de données

en: PostgreSQL (recommended)
fr: PostgreSQL (recommandé)

en: SQLite (dev/test)
fr: SQLite (développement/test)

en: Automatic migrations with Flask-Migrate
fr: Migrations automatiques avec Flask-Migrate

en: Backup and restoration tools
fr: Outils de sauvegarde et de restauration

en: Technical Specifications
fr: Spécifications techniques

en: Technology Stack
fr: Pile technologique

en: Backend
fr: Back-end

en: Frontend
fr: L'extrémité avant

en: Database
fr: Base de données

en: Deployment
fr: Déploiement

en: Key Capabilities
fr: Capacités clés

en: Real-time
fr: En temps réel

en: Security
fr: Sécurité

en: Open Source & Community
fr: Open Source et Communauté

en: Open Source Benefits
fr: Avantages de l'Open Source

en: Full source code available on GitHub
fr: Code source complet disponible sur GitHub

en: Licensed under GPL v3.0
fr: Sous licence GPL v3.0

en: Community-driven development
fr: Développement axé sur la communauté

en: Transparent issue tracking and bug reports
fr: Suivi transparent des problèmes et rapports de bogues

en: Deployment Options
fr: Options de déploiement

en: Docker images (GHCR)
fr: Images Docker (GHCR)

en: Self-hosted deployment with full control
fr: Déploiement auto-hébergé avec contrôle total

en: Cloud-ready with Compose configs
fr: Prêt pour le cloud avec les configurations Compose

en: View on GitHub
fr: Voir sur GitHub

en: Support Development
fr: Soutenir le développement

en: Getting Help & Resources
fr: Obtenir de l'aide et des ressources

en: Step-by-step guides for all features.
fr: Guides étape par étape pour toutes les fonctionnalités.

en: View Help
fr: Afficher l'aide

en: System Information
fr: Informations système

en: Status, versions, and configuration details.
fr: Statut, versions et détails de configuration.

en: Admin access required
fr: Accès administrateur requis

en: Community Support
fr: Soutien communautaire

en: Report issues, request features, contribute.
fr: Signaler des problèmes, demander des fonctionnalités, contribuer.

en: GitHub Issues
fr: Problèmes GitHub

en: Here's a quick overview of your work.
fr: Voici un bref aperçu de votre travail.

en: Timer
fr: Minuteur

en: Start Timer
fr: Démarrer la minuterie

en: Started at
fr: Commencé à

en: Stop Timer
fr: Arrêter la minuterie

en: No active timer.
fr: Aucune minuterie active.

en: Resume - Start a new timer with same properties
fr: Reprendre - Démarrez une nouvelle minuterie avec les mêmes propriétés

en: Edit entry
fr: Modifier l'entrée

en: Duplicate entry
fr: Entrée en double

en: Delete entry
fr: Supprimer l'entrée

en: No recent entries found.
fr: Aucune entrée récente trouvée.

en: Weekly Goal
fr: Objectif hebdomadaire

en: Days Left
fr: Jours restants

en: Need
fr: Besoin

en: to reach goal
fr: atteindre l'objectif

en: No Weekly Goal
fr: Aucun objectif hebdomadaire

en: Set a weekly time goal to track your progress
fr: Fixez-vous un objectif de temps hebdomadaire pour suivre vos progrès

en: Create Goal
fr: Créer un objectif

en: Top Projects (30 days)
fr: Meilleurs projets (30 jours)

en: No activity in the last 30 days.
fr: Aucune activité au cours des 30 derniers jours.

en: Support TimeTracker
fr: Prise en charge de TimeTracker

en: Enjoying TimeTracker? Consider buying me a coffee to support continued development!
fr: Vous appréciez TimeTracker ? Pensez à m'offrir un café pour soutenir le développement continu !

en: Task (optional)
fr: Tâche (facultatif)

en: Notes (optional)
fr: Remarques (facultatif)

en: What are you working on?
fr: Sur quoi travaillez-vous ?

en: Or use a template
fr: Ou utilisez un modèle

en: View all templates
fr: Afficher tous les modèles

en: Start
fr: Commencer

en: Complete documentation and user guide
fr: Documentation complète et guide d'utilisation

en: Quick Navigation
fr: Navigation rapide

en: Filter sections...
fr: Filtrer les rubriques...

en: Quick Start
fr: Démarrage rapide

en: Task Management
fr: Gestion des tâches

en: Reports & Analytics
fr: Rapports et analyses

en: Productivity Features
fr: Fonctionnalités de productivité

en: Admin Features
fr: Fonctionnalités d'administration

en: Mobile Usage
fr: Utilisation mobile

en: Troubleshooting
fr: Dépannage

en: TimeTracker Help Center
fr: Centre d'aide TimeTracker

en: Everything you need to know to get the most out of TimeTracker
fr: Tout ce que vous devez savoir pour tirer le meilleur parti de TimeTracker

en: Start Tracking Time
fr: Commencer le suivi du temps

en: View Projects
fr: Voir les projets

en: Generate Reports
fr: Générer des rapports

en: Quick Start Guide
fr: Guide de démarrage rapide

en: For New Users
fr: Pour les nouveaux utilisateurs

en: Log in with your username (no password required)
fr: Connectez-vous avec votre nom d'utilisateur (aucun mot de passe requis)

en: Explore the dashboard to see your overview
fr: Explorez le tableau de bord pour voir votre aperçu

en: Start your first timer on an existing project
fr: Démarrez votre premier timer sur un projet existant

en: View your time entries in reports
fr: Afficher vos entrées de temps dans les rapports

en: For Administrators
fr: Pour les administrateurs

en: Set up clients in the Client Management section
fr: Configurer les clients dans la section Gestion des clients

en: Create projects and assign them to clients
fr: Créer des projets et les attribuer aux clients

en: Configure system settings (timezone, currency, etc.)
fr: Configurer les paramètres du système (fuseau horaire, devise, etc.)

en: Manage users and permissions
fr: Gérer les utilisateurs et les autorisations

en: Pro Tip:
fr: Conseil de pro :

en: Use the mobile-friendly interface to track time on the go. The timer continues running even if you close your browser!
fr: Utilisez l'interface adaptée aux mobiles pour suivre le temps en déplacement. Le minuteur continue de fonctionner même si vous fermez votre navigateur !

en: Real-time tracking with automatic idle detection and WebSocket updates
fr: Suivi en temps réel avec détection automatique d'inactivité et mises à jour WebSocket

en: Manual Entry
fr: Saisie manuelle

en: Log time manually with custom start and end times
fr: Enregistrez l'heure manuellement avec des heures de début et de fin personnalisées

en: Starting a Timer
fr: Démarrer une minuterie

en: Navigate to the Timer page or dashboard
fr: Accédez à la page ou au tableau de bord du minuteur

en: Select a project from the dropdown
fr: Sélectionnez un projet dans la liste déroulante

en: Optionally select a task for more detailed tracking
fr: Sélectionnez éventuellement une tâche pour un suivi plus détaillé

en: Add notes about what you're working on (optional)
fr: Ajouter des notes sur ce sur quoi vous travaillez (facultatif)

en: Add tags separated by commas (optional)
fr: Ajouter des balises séparées par des virgules (facultatif)

en: Click "Start Timer"
fr: Cliquez sur "Démarrer le minuteur"

en: Timer Features
fr: Fonctionnalités de la minuterie

en: Real-time duration display
fr: Affichage de la durée en temps réel

en: Continues running if browser closes
fr: Continue à fonctionner si le navigateur se ferme

en: Automatic idle detection (configurable)
fr: Détection automatique du ralenti (configurable)

en: One active timer per user (configurable)
fr: Une minuterie active par utilisateur (configurable)

en: WebSocket live updates
fr: Mises à jour en direct de WebSocket

en: Manual Time Entry
fr: Saisie manuelle du temps

en: Create time entries manually when you need to record time spent away from the computer or adjust existing entries.
fr: Créez des entrées de temps manuellement lorsque vous devez enregistrer le temps passé loin de l'ordinateur ou ajuster les entrées existantes.

en: Required Information
fr: Informations requises

en: Project selection
fr: Sélection de projets

en: Start date and time
fr: Date et heure de début

en: End date and time
fr: Date et heure de fin

en: Optional Information
fr: Informations facultatives

en: Task assignment
fr: Affectation des tâches

en: Description/notes
fr: Description/remarques

en: Tags for categorization
fr: Balises pour la catégorisation

en: Billable status override
fr: Remplacement du statut facturable

en: Advanced Time Entry Features
fr: Fonctionnalités avancées de saisie du temps

en: Bulk Entry
fr: Entrée groupée

en: Create multiple time entries for consecutive days with the same project and duration. Perfect for regular work patterns.
fr: Créez plusieurs entrées de temps pour des jours consécutifs avec le même projet et la même durée. Parfait pour les modes de travail réguliers.

en: Templates
fr: Modèles

en: Save frequently used time entries as templates for quick reuse. Saves project, task, and notes.
fr: Enregistrez les entrées de temps fréquemment utilisées sous forme de modèles pour une réutilisation rapide. Enregistre le projet, la tâche et les notes.

en: Calendar View
fr: Vue du calendrier

en: Visualize your time entries on a calendar. Drag-and-drop to reschedule or click dates to add entries.
fr: Visualisez vos entrées de temps sur un calendrier. Glissez-déposez pour reprogrammer ou cliquez sur les dates pour ajouter des entrées.

en: Project Information
fr: Informations sur le projet

en: Descriptive project name
fr: Nom descriptif du projet

en: Associated client organization
fr: Organisation cliente associée

en: Project details and scope
fr: Détails et portée du projet

en: Active, completed, or archived
fr: Actif, complété ou archivé

en: Billing Information
fr: Informations de facturation

en: Whether time should be tracked for billing
fr: Si le temps doit être suivi pour la facturation

en: Rate for billable time calculations
fr: Tarif pour les calculs de temps facturable

en: Billing Reference
fr: Référence de facturation

en: PO number or billing code
fr: Numéro de bon de commande ou code de facturation

en: Project Operations
fr: Opérations du projet

en: Create new projects with client relationships
fr: Créer de nouveaux projets avec des relations clients

en: Edit existing projects to update details
fr: Modifier les projets existants pour mettre à jour les détails

en: Archive projects to hide from timers (preserves data)
fr: Archiver les projets pour les masquer des minuteries (préserve les données)

en: Delete projects (removes all associated time entries)
fr: Supprimer des projets (supprime toutes les entrées de temps associées)

en: Best Practices
fr: Meilleures pratiques

en: Use descriptive project names
fr: Utilisez des noms de projet descriptifs

en: Set accurate hourly rates for billing
fr: Définir des taux horaires précis pour la facturation

en: Archive instead of delete when possible
fr: Archiver au lieu de supprimer lorsque cela est possible

en: Use billing references for external tracking
fr: Utiliser les références de facturation pour le suivi externe

en: The client management system helps organize your work by client organizations, preventing errors and streamlining project creation.
fr: Le système de gestion des clients vous aide à organiser votre travail par organisations clientes, en évitant les erreurs et en rationalisant la création de projets.

en: Client Information
fr: Informations client

en: Organization Name
fr: Nom de l'organisation

en: Company or client name
fr: Nom de l'entreprise ou du client

en: Primary contact details
fr: Coordonnées principales

en: Email & Phone
fr: E-mail et téléphone

en: Contact information
fr: Coordonnées

en: Business address
fr: Adresse professionnelle

en: Benefits
fr: Avantages

en: Dropdown selection prevents typos
fr: La sélection déroulante évite les fautes de frappe

en: Default rates auto-populate projects
fr: Les taux par défaut remplissent automatiquement les projets

en: Consistent client naming
fr: Dénomination cohérente des clients

en: Easier project organization
fr: Organisation de projet plus facile

en: Project Count
fr: Nombre de projets

en: Total and active projects
fr: Projets totaux et actifs

en: Total hours worked
fr: Heures totales travaillées

en: Cost Estimation
fr: Estimation des coûts

en: Estimated billing amounts
fr: Montants de facturation estimés

en: Break down projects into manageable tasks with detailed tracking and progress monitoring.
fr: Décomposez les projets en tâches gérables avec un suivi détaillé et un suivi des progrès.

en: Task Properties
fr: Propriétés de la tâche

en: Name & Description
fr: Nom et description

en: Clear task identification
fr: Identification claire des tâches

en: Priority Levels
fr: Niveaux de priorité

en: Low, Medium, High, Urgent
fr: Faible, Moyen, Élevé, Urgent

en: Due Dates
fr: Dates d'échéance

en: Deadline tracking
fr: Suivi des délais

en: Assignment
fr: Affectation

en: Task ownership
fr: Propriété des tâches

en: Status Tracking
fr: Suivi du statut

en: To Do - Not started
fr: À faire - Pas commencé

en: In Progress - Currently working
fr: En cours - En cours de travail

en: Review - Ready for review
fr: Révision – Prêt pour la révision

en: Done - Completed
fr: Terminé - Terminé

en: Cancelled - Not needed
fr: Annulé - Pas nécessaire

en: Time Tracking Features
fr: Fonctionnalités de suivi du temps

en: Start timers directly from tasks
fr: Démarrez les minuteries directement à partir des tâches

en: Link time entries to specific tasks
fr: Lier les entrées de temps à des tâches spécifiques

en: Track estimated vs actual hours
fr: Suivez les heures estimées par rapport aux heures réelles

en: Monitor task progress automatically
fr: Surveiller automatiquement la progression des tâches

en: Task Views
fr: Vues des tâches

en: My Tasks - Your assigned tasks
fr: Mes tâches - Vos tâches assignées

en: All Tasks - Complete task list
fr: Toutes les tâches - Liste complète des tâches

en: Overdue Tasks - Past due items
fr: Tâches en retard – Éléments en retard

en: Project Tasks - Tasks within projects
fr: Tâches du projet - Tâches au sein des projets

en: Collaboration Features
fr: Fonctionnalités collaboratives

en: Task Comments - Threaded discussions on tasks
fr: Commentaires sur les tâches – Discussions sur les tâches

en: Markdown Support - Rich formatting in descriptions
fr: Prise en charge de Markdown - Mise en forme riche dans les descriptions

en: User Mentions - Tag team members (if enabled)
fr: Mentions utilisateur – Taguer les membres de l'équipe (si activé)

en: File Attachments - Attach files to tasks (if enabled)
fr: Pièces jointes : Joindre des fichiers aux tâches (si activé)

en: Markdown Formatting
fr: Formatage Markdown

en: Task and project descriptions support Markdown:
fr: Les descriptions de tâches et de projets prennent en charge Markdown :

en: **Bold**, *Italic*, ~~Strikethrough~~
fr: **Gras**, *Italique*, ~~Barré~~

en: # Headings, - Lists, [Links](url)
fr: # Rubriques, - Listes, [Liens](url)

en: ```code blocks```, tables, images
fr: ```blocs de code```, tableaux, images

en: Visualize your workflow with a drag-and-drop Kanban board for intuitive task management.
fr: Visualisez votre flux de travail avec un tableau Kanban par glisser-déposer pour une gestion intuitive des tâches.

en: Board Features
fr: Caractéristiques du tableau

en: Customizable columns matching task statuses
fr: Colonnes personnalisables correspondant aux statuts des tâches

en: Drag-and-drop tasks between columns
fr: Glisser-déposer des tâches entre les colonnes

en: Filter by project, user, or priority
fr: Filtrer par projet, utilisateur ou priorité

en: Quick search across all tasks
fr: Recherche rapide dans toutes les tâches

en: Using the Kanban Board
fr: Utiliser le tableau Kanban

en: Access from the Tasks menu or project page
fr: Accès depuis le menu Tâches ou la page du projet

en: Drag tasks to different columns to change status
fr: Faites glisser les tâches vers différentes colonnes pour changer de statut

en: Click on a task card to view/edit details
fr: Cliquez sur une fiche de tâche pour afficher/modifier les détails

en: Use filters to focus on specific work
fr: Utilisez des filtres pour vous concentrer sur un travail spécifique

en: The Kanban board is perfect for sprint planning and daily standups. Each column represents a stage in your workflow!
fr: Le tableau Kanban est parfait pour la planification de sprints et les standups quotidiens. Chaque colonne représente une étape de votre workflow !

en: Expense Tracking
fr: Suivi des dépenses

en: Track business expenses, manage receipts, and handle reimbursements efficiently.
fr: Suivez les dépenses professionnelles, gérez les reçus et gérez efficacement les remboursements.

en: Expense Features
fr: Caractéristiques des dépenses

en: Categorize expenses (travel, meals, supplies, etc.)
fr: Catégoriser les dépenses (déplacements, repas, fournitures, etc.)

en: Attach receipt images and documents
fr: Joindre des images et des documents de reçu

en: Track amounts, tax, and payment methods
fr: Suivez les montants, les taxes et les modes de paiement

en: Approval workflow for expense requests
fr: Workflow d’approbation des demandes de dépenses

en: Billing & Reimbursement
fr: Facturation et remboursement

en: Mark expenses as billable to clients
fr: Marquer les dépenses comme facturables aux clients

en: Include expenses in client invoices
fr: Inclure les dépenses dans les factures des clients

en: Track reimbursement status
fr: Suivre l’état du remboursement

en: Link expenses to specific projects
fr: Lier les dépenses à des projets spécifiques

en: Record Expense
fr: Enregistrer les dépenses

en: Enter details and upload receipt
fr: Entrez les détails et téléchargez le reçu

en: Submit for Approval
fr: Soumettre pour approbation

en: Admin reviews and approves
fr: L'administrateur examine et approuve

en: Invoice/Reimburse
fr: Facture/Remboursement

en: Add to invoice or reimburse
fr: Ajouter à la facture ou rembourser

en: Track Payment
fr: Suivre le paiement

en: Monitor reimbursement status
fr: Surveiller l'état du remboursement

en: Professional Invoicing
fr: Facturation professionnelle

en: Professional PDF generation
fr: Génération PDF professionnelle

en: Company branding and logos
fr: Image de marque et logos de l'entreprise

en: Automatic invoice numbering
fr: Numérotation automatique des factures

en: Tax calculations
fr: Calculs d'impôts

en: Time Integration
fr: Intégration du temps

en: Generate from time entries
fr: Générer à partir des entrées de temps

en: Smart grouping by task/project
fr: Regroupement intelligent par tâche/projet

en: Prevent double-billing
fr: Prévenir la double facturation

en: Use project hourly rates
fr: Utiliser les taux horaires du projet

en: Set up client and project details
fr: Configurer les détails du client et du projet

en: Add Items
fr: Ajouter des éléments

en: Generate from time or add manually
fr: Générer à partir du temps ou ajouter manuellement

en: Review & Send
fr: Vérifier et envoyer

en: Export PDF and update status
fr: Exporter le PDF et mettre à jour le statut

en: Monitor status and payments
fr: Surveiller le statut et les paiements

en: Standard Reports
fr: Rapports standards

en: Project Report - Time breakdown by project
fr: Rapport de projet - Répartition du temps par projet

en: User Report - Individual performance metrics
fr: Rapport utilisateur – Mesures de performances individuelles

en: Summary Report - Key metrics and trends
fr: Rapport de synthèse – Indicateurs et tendances clés

en: Time Entry Report - Detailed time logs
fr: Rapport de saisie du temps - Journaux de temps détaillés

en: Export Options
fr: Options d'exportation

en: CSV Export - For external analysis
fr: Exportation CSV – Pour analyse externe

en: Configurable delimiters
fr: Délimiteurs configurables

en: Custom date ranges
fr: Plages de dates personnalisées

en: Filtered data export
fr: Exportation de données filtrées

en: Filter Options
fr: Options de filtre

en: Date Range - Custom start and end dates
fr: Plage de dates – Dates de début et de fin personnalisées

en: Project - Filter by specific projects
fr: Projet - Filtrer par projets spécifiques

en: User - Filter by team members
fr: Utilisateur - Filtrer par membres de l'équipe

en: Client - Filter by client organization
fr: Client - Filtrer par organisation cliente

en: Saved Filters - Save frequently used filters
fr: Filtres enregistrés - Enregistrez les filtres fréquemment utilisés

en: Visual Analytics
fr: Analyse visuelle

en: Interactive bar charts
fr: Graphiques à barres interactifs

en: Time distribution pie charts
fr: Diagrammes circulaires de distribution du temps

en: Trend analysis over time
fr: Analyse des tendances au fil du temps

en: Mobile-optimized charts
fr: Graphiques optimisés pour les mobiles

en: Use Saved Filters to quickly access your most common report views. Save filters for weekly reviews, monthly billing, or specific project tracking!
fr: Utilisez les filtres enregistrés pour accéder rapidement à vos vues de rapport les plus courantes. Enregistrez des filtres pour les évaluations hebdomadaires, la facturation mensuelle ou le suivi d'un projet spécifique !

en: Boost your efficiency with keyboard shortcuts, command palette, and automation features.
fr: Améliorez votre efficacité grâce aux raccourcis clavier, à la palette de commandes et aux fonctionnalités d'automatisation.

en: Command Palette
fr: Palette de commandes

en: Access any feature instantly without leaving the keyboard
fr: Accédez instantanément à n’importe quelle fonctionnalité sans quitter le clavier

en: Opening the Command Palette
fr: Ouverture de la palette de commandes

en: Press the question mark key
fr: Appuyez sur la touche point d'interrogation

en: Quick search
fr: Recherche rapide

en: Go to Projects
fr: Aller aux projets

en: Go to Tasks
fr: Accédez aux tâches

en: New Time Entry
fr: Nouvelle entrée de temps

en: Keyboard Shortcuts
fr: Raccourcis clavier

en: Navigate faster with keyboard-driven commands. Press Shift+? to see all shortcuts.
fr: Naviguez plus rapidement grâce aux commandes pilotées par le clavier. Appuyez sur Maj+ ? pour voir tous les raccourcis.

en: Global Search
fr: Recherche globale

en: Quickly find projects, tasks, clients, and time entries from anywhere in the app.
fr: Trouvez rapidement des projets, des tâches, des clients et des entrées de temps depuis n'importe où dans l'application.

en: Email Notifications
fr: Notifications par courrier électronique

en: Get notified about task assignments, overdue invoices, and weekly summaries via email.
fr: Soyez informé des affectations de tâches, des factures en retard et des résumés hebdomadaires par e-mail.

en: Administrator Features
fr: Fonctionnalités d'administrateur

en: Create new users with flexible authentication
fr: Créez de nouveaux utilisateurs avec une authentification flexible

en: Assign custom roles with specific permissions
fr: Attribuez des rôles personnalisés avec des autorisations spécifiques

en: Activate/deactivate user accounts
fr: Activer/désactiver les comptes utilisateurs

en: View user statistics and activity
fr: Afficher les statistiques et l'activité des utilisateurs

en: Generate API tokens for users
fr: Générer des jetons API pour les utilisateurs

en: Access Control
fr: Contrôle d'accès

en: Granular role-based permissions system
fr: Système d'autorisations granulaire basé sur les rôles

en: Custom roles with fine-grained access
fr: Rôles personnalisés avec accès précis

en: User data access controls
fr: Contrôles d'accès aux données utilisateur

en: OIDC/SSO integration (Azure AD, Authelia, etc.)
fr: Intégration OIDC/SSO (Azure AD, Authelia, etc.)

en: API token management for integrations
fr: Gestion des jetons API pour les intégrations

en: Authentication Methods
fr: Méthodes d'authentification

en: Username-only (simple internal use)
fr: Nom d'utilisateur uniquement (usage interne simple)

en: OIDC/SSO (enterprise authentication)
fr: OIDC/SSO (authentification d'entreprise)

en: Both methods simultaneously
fr: Les deux méthodes simultanément

en: Automatic role assignment via groups
fr: Attribution automatique des rôles via des groupes

en: Role & Permission Management
fr: Gestion des rôles et des autorisations

en: Create custom roles beyond Admin/User
fr: Créez des rôles personnalisés au-delà de l'administrateur/utilisateur

en: Set granular permissions per feature
fr: Définir des autorisations granulaires par fonctionnalité

en: Assign users to multiple roles
fr: Attribuer des utilisateurs à plusieurs rôles

en: View and manage all permissions
fr: Afficher et gérer toutes les autorisations

en: General Settings
fr: Paramètres généraux

en: Timezone and locale settings
fr: Paramètres de fuseau horaire et de paramètres régionaux

en: Currency configuration
fr: Configuration des devises

en: Time rounding rules
fr: Règles d'arrondi des temps

en: Self-registration settings
fr: Paramètres d'auto-inscription

en: Timer Settings
fr: Paramètres de la minuterie

en: Idle timeout configuration
fr: Configuration du délai d'inactivité

en: Single active timer mode
fr: Mode minuterie active unique

en: Timer display preferences
fr: Préférences d'affichage du minuteur

en: Notification settings
fr: Paramètres de notification

en: Database Management
fr: Gestion de base de données

en: Create manual database backups
fr: Créer des sauvegardes manuelles de base de données

en: View database migration status
fr: Afficher l'état de migration de la base de données

en: Monitor database performance
fr: Surveiller les performances de la base de données

en: Clean up old data and logs
fr: Nettoyer les anciennes données et journaux

en: System Monitoring
fr: Surveillance du système

en: View system information and health
fr: Afficher les informations et l'état du système

en: Monitor application performance
fr: Surveiller les performances des applications

en: Review system logs and errors
fr: Examiner les journaux et les erreurs du système

en: Mobile-Friendly Features
fr: Fonctionnalités adaptées aux mobiles

en: Optimized for phones and tablets
fr: Optimisé pour les téléphones et les tablettes

en: Touch-friendly interface
fr: Interface tactile

en: Adaptive layouts for all screen sizes
fr: Dispositions adaptatives pour toutes les tailles d'écran

en: High contrast for outdoor visibility
fr: Contraste élevé pour une visibilité extérieure

en: Mobile Navigation
fr: Navigation mobile

en: Bottom tab bar for easy access
fr: Barre d'onglets inférieure pour un accès facile

en: Quick access to dashboard
fr: Accès rapide au tableau de bord

en: One-tap time logging
fr: Enregistrement du temps en un seul clic

en: Mobile-optimized reports
fr: Rapports optimisés pour les mobiles

en: Open TimeTracker in your mobile browser
fr: Ouvrez TimeTracker dans votre navigateur mobile

en: Look for "Add to Home Screen" option
fr: Recherchez l'option "Ajouter à l'écran d'accueil".

en: Follow browser-specific installation prompts
fr: Suivez les invites d'installation spécifiques au navigateur

en: Launch from your home screen like a native app
fr: Lancez-vous depuis votre écran d'accueil comme une application native

en: PWA Benefits
fr: Avantages PWA

en: Offline capability for basic functions
fr: Capacité hors ligne pour les fonctions de base

en: Faster loading times
fr: Des temps de chargement plus rapides

en: Native app-like experience
fr: Expérience de type application native

en: Push notifications (where supported)
fr: Notifications push (si prises en charge)

en: Troubleshooting & FAQ
fr: Dépannage et FAQ

en: What happens if I forget to stop my timer?
fr: Que se passe-t-il si j'oublie d'arrêter mon chronomètre ?

en: The timer will continue running until you stop it manually. You can see your active timer on the dashboard and timer page. The timer persists even if you close your browser or restart your device. If idle detection is enabled, the timer may pause automatically after the configured timeout period.
fr: La minuterie continuera à fonctionner jusqu'à ce que vous l'arrêtiez manuellement. Vous pouvez voir votre minuterie active sur le tableau de bord et la page de la minuterie. Le minuteur persiste même si vous fermez votre navigateur ou redémarrez votre appareil. Si la détection d'inactivité est activée, la minuterie peut s'arrêter automatiquement après le délai d'attente configuré.

en: Can I edit time entries after they're created?
fr: Puis-je modifier les entrées de temps après leur création ?

en: Yes, you can edit any time entry by clicking the edit button in the time entry list. You can modify the project, start/end times, notes, tags, billable status, and task assignment. Admins can edit all time entries, while regular users can only edit their own entries.
fr: Oui, vous pouvez modifier n'importe quelle entrée de temps en cliquant sur le bouton Modifier dans la liste des entrées de temps. Vous pouvez modifier le projet, les heures de début/fin, les notes, les balises, le statut facturable et l'affectation des tâches. Les administrateurs peuvent modifier toutes les entrées de temps, tandis que les utilisateurs réguliers ne peuvent modifier que leurs propres entrées.

en: How do I track time for multiple projects?
fr: Comment puis-je suivre le temps de plusieurs projets ?

en: By default, you can only have one active timer at a time. To switch projects, stop your current timer and start a new one for the different project. Alternatively, you can create manual time entries for past work or configure the system to allow multiple active timers (admin setting).
fr: Par défaut, vous ne pouvez avoir qu'un seul minuteur actif à la fois. Pour changer de projet, arrêtez votre minuteur actuel et démarrez-en un nouveau pour l'autre projet. Vous pouvez également créer des entrées de temps manuelles pour les travaux antérieurs ou configurer le système pour autoriser plusieurs minuteries actives (paramètre administrateur).

en: How do I export my time data?
fr: Comment exporter mes données temporelles ?

en: Go to the Reports page and use the "Export CSV" feature. You can apply filters to export specific data, or export all time entries. The CSV file includes all time entry details and can be opened in Excel or other spreadsheet applications. You can also configure the delimiter for different regional standards.
fr: Accédez à la page Rapports et utilisez la fonctionnalité « Exporter CSV ». Vous pouvez appliquer des filtres pour exporter des données spécifiques ou exporter toutes les entrées de temps. Le fichier CSV comprend tous les détails de saisie du temps et peut être ouvert dans Excel ou d'autres applications de feuille de calcul. Vous pouvez également configurer le délimiteur pour différentes normes régionales.

en: What's the difference between billable and non-billable time?
fr: Quelle est la différence entre le temps facturable et le temps non facturable ?

en: Billable time is tracked for client billing purposes and can have an hourly rate associated with it. Non-billable time is for internal work that doesn't get charged to clients. You can mark individual time entries as billable or non-billable, and projects can have default billable settings. This distinction is crucial for accurate invoicing and profitability analysis.
fr: Le temps facturable est suivi à des fins de facturation des clients et peut être associé à un taux horaire. Le temps non facturable est destiné au travail interne qui n'est pas facturé aux clients. Vous pouvez marquer des entrées de temps individuelles comme facturables ou non facturables, et les projets peuvent avoir des paramètres facturables par défaut. Cette distinction est cruciale pour une facturation précise et une analyse de rentabilité.

en: How do I create an invoice from my time entries?
fr: Comment créer une facture à partir de mes saisies de temps ?

en: Navigate to Invoices → Create Invoice, set up the client and project details, then use "Generate from Time Entries" to automatically create invoice items from your tracked time. You can filter by date range and project, and the system will group time entries intelligently. Review the generated items and export as a professional PDF.
fr: Accédez à Factures → Créer une facture, configurez les détails du client et du projet, puis utilisez « Générer à partir des entrées de temps » pour créer automatiquement des éléments de facture à partir de votre temps suivi. Vous pouvez filtrer par plage de dates et par projet, et le système regroupera intelligemment les entrées de temps. Examinez les éléments générés et exportez-les au format PDF professionnel.

en: Can I use TimeTracker on my mobile device?
fr: Puis-je utiliser TimeTracker sur mon appareil mobile ?

en: Yes! TimeTracker is fully responsive and works great on mobile devices. You can install it as a Progressive Web App (PWA) for a native-like experience. The mobile interface includes a bottom tab bar for easy navigation and touch-optimized controls for time tracking on the go.
fr: Oui! TimeTracker est entièrement réactif et fonctionne très bien sur les appareils mobiles. Vous pouvez l'installer en tant que Progressive Web App (PWA) pour une expérience de type natif. L'interface mobile comprend une barre d'onglets inférieure pour une navigation facile et des commandes tactiles optimisées pour le suivi du temps en déplacement.

en: How do I use the command palette and keyboard shortcuts?
fr: Comment utiliser la palette de commandes et les raccourcis clavier ?

en: Press the question mark key (?) to open the command palette. From there, you can type to search for any action or navigation target. Use keyboard sequences like "g d" for Dashboard, "g p" for Projects, or "n e" for New Entry. Press Shift+? to see all available shortcuts. Press Ctrl+K (or Cmd+K on Mac) for quick search.
fr: Appuyez sur la touche point d'interrogation (?) pour ouvrir la palette de commandes. À partir de là, vous pouvez taper pour rechercher n’importe quelle action ou cible de navigation. Utilisez des séquences de clavier telles que « g d » pour le tableau de bord, « g p » pour les projets ou « n e » pour une nouvelle entrée. Appuyez sur Maj+ ? pour voir tous les raccourcis disponibles. Appuyez sur Ctrl+K (ou Cmd+K sur Mac) pour une recherche rapide.

en: How do I create bulk time entries for multiple days?
fr: Comment créer des entrées de temps groupées pour plusieurs jours ?

en: Navigate to Work → Bulk Time Entry. Select your project, choose a date range, set your daily start and end times, and optionally skip weekends. The system will create identical time entries for each day in the range. This is perfect for logging regular work patterns or filling in past time when you worked consistent hours.
fr: Accédez à Travail → Saisie groupée du temps. Sélectionnez votre projet, choisissez une plage de dates, définissez vos heures de début et de fin quotidiennes et éventuellement ignorez les week-ends. Le système créera des entrées de temps identiques pour chaque jour de la plage. C'est parfait pour enregistrer des habitudes de travail régulières ou pour renseigner le temps passé lorsque vous avez travaillé des heures constantes.

en: What are time entry templates and how do I use them?
fr: Que sont les modèles de saisie du temps et comment les utiliser ?

en: Time entry templates let you save frequently used time entry configurations. When creating a manual time entry, check "Save as Template" to save the project, task, and notes. Later, when creating new entries, you can select a template to quickly fill in these details. Templates are personal and only visible to you.
fr: Les modèles de saisie du temps vous permettent d'enregistrer les configurations de saisie du temps fréquemment utilisées. Lors de la création d'une saisie manuelle du temps, cochez « Enregistrer en tant que modèle » pour enregistrer le projet, la tâche et les notes. Plus tard, lors de la création de nouvelles entrées, vous pourrez sélectionner un modèle pour remplir rapidement ces détails. Les modèles sont personnels et visibles uniquement par vous.

en: How do I track expenses and add them to invoices?
fr: Comment suivre les dépenses et les ajouter aux factures ?

en: Go to Expenses → New Expense to record business expenses. Upload receipt images, categorize the expense, and mark it as billable if needed. When creating invoices, you can include these expenses as line items. Expenses support approval workflows, reimbursement tracking, and can be linked to specific projects.
fr: Accédez à Dépenses → Nouvelle dépense pour enregistrer les dépenses professionnelles. Téléchargez des images de reçus, catégorisez la dépense et marquez-la comme facturable si nécessaire. Lors de la création de factures, vous pouvez inclure ces dépenses sous forme de postes. Les dépenses prennent en charge les flux de travail d'approbation, le suivi des remboursements et peuvent être liées à des projets spécifiques.

en: Can I use Markdown in descriptions?
fr: Puis-je utiliser Markdown dans les descriptions ?

en: Yes! Project and task descriptions support full Markdown formatting. You can use bold, italic, headings, lists, links, code blocks, tables, and images. This allows you to create rich, well-formatted documentation directly in your projects and tasks. The Markdown editor includes a preview mode and supports dark theme.
fr: Oui! Les descriptions de projets et de tâches prennent en charge le formatage Markdown complet. Vous pouvez utiliser des titres en gras, en italique, des listes, des liens, des blocs de code, des tableaux et des images. Cela vous permet de créer une documentation riche et bien formatée directement dans vos projets et tâches. L'éditeur Markdown comprend un mode aperçu et prend en charge le thème sombre.

en: Where can I get additional help?
fr: Où puis-je obtenir une aide supplémentaire ?

en: This help page covers most common questions and features.
fr: Cette page d'aide couvre les questions et fonctionnalités les plus courantes.

en: Report issues and request features on
fr: Signaler des problèmes et demander des fonctionnalités sur

en: As an admin, you can access additional system information and diagnostics in the
fr: En tant qu'administrateur, vous pouvez accéder à des informations système et à des diagnostics supplémentaires dans le

en: Still Need Help?
fr: Vous avez encore besoin d'aide ?

en: Can't find what you're looking for? Here are additional resources:
fr: Vous ne trouvez pas ce que vous cherchez ? Voici des ressources supplémentaires :

en: GitHub Repository
fr: Dépôt GitHub

en: Report Issue
fr: Signaler un problème

en: Search Results
fr: Résultats de la recherche

en: Search notes or tags
fr: Rechercher des notes ou des balises

en: Results
fr: Résultats

en: End
fr: Fin

en: Are you sure you want to delete this time entry? This action cannot be undone.
fr: Êtes-vous sûr de vouloir supprimer cette entrée de temps ? Cette action ne peut pas être annulée.

en: Previous
fr: Précédent

en: of
fr: de

en: Next
fr: Suivant

en: No results found
fr: Aucun résultat trouvé

en: Try a different query or check your spelling.
fr: Essayez une autre requête ou vérifiez votre orthographe.

en: e.g., Client meeting, Site visit
fr: Par exemple, réunion client, visite du site

en: Additional details...
fr: Détails supplémentaires...

en: e.g., Office, Home
fr: par exemple, bureau, maison

en: e.g., Client site, Airport
fr: par exemple, site client, aéroport

en: e.g., 12345
fr: par exemple, 12345

en: e.g., 12400
fr: par exemple, 12 400

en: e.g., VW Golf
fr: par exemple, VW Golf

en: e.g., ABC-123
fr: par exemple, ABC-123

en: Filter Mileage
fr: Filtrer le kilométrage

en: Purpose, location...
fr: Objectif, emplacement...

en: Optional approval notes...
fr: Notes d'approbation facultatives...

en: Rejection reason (required)
fr: Motif du refus (obligatoire)

en: Record New Payment
fr: Enregistrer un nouveau paiement

en: Total Payments
fr: Paiements totaux

en: Gateway Fees
fr: Frais de passerelle

en: Filter Payments
fr: Filtrer les paiements

en: Delete Selected Payments
fr: Supprimer les paiements sélectionnés

en: Change Status for Selected Payments
fr: Modifier le statut des paiements sélectionnés

en: Payment Details
fr: Détails du paiement

en: Related Invoice
fr: Facture associée

en: e.g., Business trip to Berlin
fr: par exemple, voyage d'affaires à Berlin

en: e.g., DE, US, GB
fr: par exemple, DE, US, GB

en: e.g., Berlin
fr: par exemple, Berlin

en: Filter Claims
fr: Filtrer les revendications

en: Delete Selected Claims
fr: Supprimer les revendications sélectionnées

en: Change Status for Selected Claims
fr: Modifier le statut des réclamations sélectionnées

en: Additional notes about this rate...
fr: Notes supplémentaires sur ce tarif...

en: Are you sure you want to delete this per diem rate?
fr: Êtes-vous sûr de vouloir supprimer ce tarif journalier ?

en: Delete Per Diem Rate
fr: Supprimer le taux journalier

en: Kanban board columns
fr: Colonnes du tableau Kanban

en: Edit swimlane
fr: Modifier le couloir

en: Column
fr: Colonne

en: Add Extra Good
fr: Ajouter du bien supplémentaire

en: Add a product or service to
fr: Ajouter un produit ou un service à

en: Back to Project
fr: Retour au projet

en: SKU/Product Code
fr: UGS/Code produit

en: What happens when you archive a project?
fr: Que se passe-t-il lorsque vous archivez un projet ?

en: The project will be hidden from active project lists
fr: Le projet sera masqué des listes de projets actifs

en: No new time entries can be added to this project
fr: Aucune nouvelle entrée de temps ne peut être ajoutée à ce projet

en: Existing data and time entries are preserved
fr: Les données existantes et les entrées de temps sont préservées

en: You can unarchive the project later if needed
fr: Vous pouvez désarchiver le projet plus tard si nécessaire

en: Reason for Archiving
fr: Raison de l'archivage

en: e.g., Project completed, Client contract ended, Project cancelled, etc.
fr: Par exemple, projet terminé, contrat client terminé, projet annulé, etc.

en: Adding a reason helps with project organization and future reference.
fr: L'ajout d'une raison facilite l'organisation du projet et les références futures.

en: Quick Select
fr: Sélection rapide

en: Project completed successfully
fr: Projet terminé avec succès

en: Project Completed
fr: Projet terminé

en: Client contract ended
fr: Contrat client terminé

en: Contract Ended
fr: Contrat terminé

en: Project cancelled by client
fr: Projet annulé par le client

en: Project on hold indefinitely
fr: Projet suspendu indéfiniment

en: On Hold
fr: En attente

en: Maintenance period ended
fr: Période de maintenance terminée

en: Maintenance Ended
fr: Maintenance terminée

en: Archive Project
fr: Projet d'archives

en: Create Project
fr: Créer un projet

en: Set up a new project to organize your work and track time effectively
fr: Mettre en place un nouveau projet pour organiser votre travail et suivre efficacement le temps

en: Back to Projects
fr: Retour aux projets

en: Enter a descriptive project name
fr: Entrez un nom de projet descriptif

en: Choose a clear, descriptive name that explains the project scope
fr: Choisissez un nom clair et descriptif qui explique la portée du projet

en: Project Code
fr: Code du projet

en: Short code, e.g., ABC
fr: Code court, par exemple ABC

en: Optional: Short tag shown on Kanban cards
fr: Facultatif : Balise courte affichée sur les cartes Kanban

en: Select a client...
fr: Sélectionnez un client...

en: Create new client
fr: Créer un nouveau client

en: Provide detailed information about the project, objectives, and deliverables...
fr: Fournir des informations détaillées sur le projet, les objectifs et les livrables...

en: Optional: Add context, objectives, or specific requirements for the project
fr: Facultatif : ajoutez du contexte, des objectifs ou des exigences spécifiques pour le projet

en: Billable Project
fr: Projet facturable

en: Enable billing for this project
fr: Activer la facturation pour ce projet

en: Leave empty for non-billable projects
fr: Laisser vide pour les projets non facturables

en: PO number, contract reference, etc.
fr: Numéro de bon de commande, référence du contrat, etc.

en: Optional: Add a reference number or identifier for billing purposes
fr: Facultatif : Ajoutez un numéro de référence ou un identifiant à des fins de facturation

en: Budget Amount
fr: Montant budgétaire

en: e.g. 10000.00
fr: par ex. 10000.00

en: Optional: Set a total project budget to monitor spend
fr: Facultatif : définissez un budget total de projet pour surveiller les dépenses

en: Alert Threshold (%)
fr: Seuil d'alerte (%)

en: Notify when consumed budget exceeds this threshold
fr: Notifier lorsque le budget consommé dépasse ce seuil

en: Project Creation Tips
fr: Conseils pour la création de projets

en: Clear Naming
fr: Effacer la dénomination

en: Use descriptive names that clearly indicate the project's purpose
fr: Utilisez des noms descriptifs qui indiquent clairement le but du projet

en: Billing Setup
fr: Configuration de la facturation

en: Set appropriate hourly rates based on project complexity and client budget
fr: Fixer des taux horaires appropriés en fonction de la complexité du projet et du budget du client

en: Detailed Description
fr: Description détaillée

en: Include project objectives, deliverables, and key requirements
fr: Inclure les objectifs du projet, les livrables et les exigences clés

en: Client Selection
fr: Sélection des clients

en: Choose the right client to ensure proper project organization
fr: Choisir le bon client pour assurer une bonne organisation du projet

en: Creating...
fr: Création...

en: Could not create client. Please try again.
fr: Impossible de créer le client. Veuillez réessayer.

en: Client created
fr: Client créé

en: Network error while creating client
fr: Erreur réseau lors de la création du client

en: Project Dashboard & Analytics
fr: Tableau de bord et analyses du projet

en: Budget Analysis
fr: Analyse budgétaire

en: All Time
fr: Tout le temps

en: Last 7 Days
fr: 7 derniers jours

en: Last 30 Days
fr: 30 derniers jours

en: Last 3 Months
fr: 3 derniers mois

en: Last Year
fr: L'année dernière

en: estimated
fr: estimé

en: Budget Used
fr: Budget utilisé

en: of budget
fr: du budget

en: Tasks Complete
fr: Tâches terminées

en: completion
fr: achèvement

en: Team Members
fr: Membres de l'équipe

en: contributing
fr: contribuer

en: Budget vs. Actual
fr: Budget vs réel

en: No budget set for this project
fr: Aucun budget fixé pour ce projet

en: Task Status Distribution
fr: Répartition du statut des tâches

en: No tasks created yet
fr: Aucune tâche créée pour le moment

en: Team Member Contributions
fr: Contributions des membres de l'équipe

en: No time entries recorded yet
fr: Aucune entrée de temps enregistrée pour l'instant

en: Time Tracking Timeline
fr: Chronologie du suivi du temps

en: Select a time period to view timeline
fr: Sélectionnez une période pour afficher la chronologie

en: Team Member Details
fr: Détails des membres de l'équipe

en: entries
fr: entrées

en: tasks
fr: tâches

en: No team members have logged time yet
fr: Aucun membre de l'équipe n'a encore enregistré de temps

en: Attention Required
fr: Attention requise

en: task(s) are overdue
fr: les tâches sont en retard

en: Edit Project
fr: Modifier le projet

en: Edit Extra Good
fr: Modifier Extra Bon

en: Manage products and services for this project
fr: Gérer les produits et services pour ce projet

en: Total Goods
fr: Marchandises totales

en: Billable Amount
fr: Montant facturable

en: Categories
fr: Catégories

en: Invoiced
fr: Facturé

en: Non-billable
fr: Non facturable

en: Are you sure you want to delete this extra good?
fr: Etes-vous sûr de vouloir supprimer ce bien supplémentaire ?

en: Delete Extra Good
fr: Supprimer Extra Bon

en: No extra goods found for this project
fr: Aucune marchandise supplémentaire trouvée pour ce projet

en: Add Your First Good
fr: Ajoutez votre premier bien

en: Breakdown by Category
fr: Répartition par catégorie

en: item(s)
fr: articles)

en: Filter Projects
fr: Filtrer les projets

en: List View
fr: Vue en liste

en: Grid View
fr: Vue Grille

en: Mark project as Inactive?
fr: Marquer le projet comme inactif ?

en: Change Project Status
fr: Modifier le statut du projet

en: Activate project?
fr: Activer le projet ?

en: Activate Project
fr: Activer le projet

en: Unarchive project?
fr: Désarchiver le projet ?

en: Unarchive Project
fr: Désarchiver le projet

en: Unarchive
fr: Désarchiver

en: Delete Project
fr: Supprimer le projet

en: Archive Information
fr: Informations sur les archives

en: Archived on:
fr: Archivé sur :

en: Archived by:
fr: Archivé par :

en: Reason:
fr: Raison:

en: Budget Overview
fr: Aperçu budgétaire

en: Over
fr: Sur

en: View Full Budget Analysis
fr: Voir l'analyse budgétaire complète

en: Tasks for this project
fr: Tâches pour ce projet

en: Priority
fr: Priorité

en: Due
fr: Exigible

en: No tasks for this project.
fr: Aucune tâche pour ce projet.

en: Accept Quote
fr: Accepter le devis

en: Back to Quote
fr: Retour au devis

en: Accepting this quote will create a new project with the budget from the quote.
fr: Accepter ce devis créera un nouveau projet avec le budget du devis.

en: The project will be created with the budget from the quote
fr: Le projet sera créé avec le budget du devis

en: Accept Quote & Create Project
fr: Accepter le devis et créer un projet

en: Create Quote
fr: Créer un devis

en: Select a client
fr: Sélectionnez un client

en: Quote title
fr: Titre de la citation

en: Quote description
fr: Description du devis

en: Financial Details
fr: Détails financiers

en: Select payment terms
fr: Sélectionnez les conditions de paiement

en: Due on Receipt
fr: Exigible à réception

en: Or enter custom payment terms
fr: Ou saisissez des conditions de paiement personnalisées

en: Use custom terms
fr: Utiliser des termes personnalisés

en: Discount
fr: Rabais

en: Discount Type
fr: Type de remise

en: No Discount
fr: Pas de réduction

en: Percentage (%)
fr: Pourcentage (%)

en: Fixed Amount
fr: Montant fixe

en: Discount Amount
fr: Montant de la remise

en: 0.00
fr: 0,00

en: Coupon Code
fr: Code promo

en: Optional coupon code
fr: Code promo facultatif

en: Discount Reason
fr: Raison de la remise

en: Reason for discount
fr: Raison de la remise

en: Approval Workflow
fr: Flux de travail d'approbation

en: Requires approval before sending
fr: Nécessite une approbation avant l'envoi

en: Additional Information
fr: Informations Complémentaires

en: Internal notes (not visible to client)
fr: Notes internes (non visibles par le client)

en: These notes are only visible to your team
fr: Ces notes ne sont visibles que par votre équipe

en: Terms and Conditions
fr: Termes et conditions

en: Terms and conditions
fr: Termes et conditions

en: These terms will be visible to the client
fr: Ces termes seront visibles par le client

en: Edit Quote
fr: Modifier le devis

en: Client cannot be changed
fr: Le client ne peut pas être modifié

en: Update Quote
fr: Mettre à jour le devis

en: Total Quotes
fr: Total des cotations

en: Acceptance Rate
fr: Taux d'acceptation

en: Avg Quote Value
fr: Valeur moyenne du devis

en: Quotes by Status
fr: Citations par statut

en: Top Clients by Quotes
fr: Meilleurs clients par devis

en: Filter Quotes
fr: Filtrer les devis

en: Search quotes...
fr: Rechercher des citations...

en: Accepted
fr: Accepté

en: Rejected
fr: Rejeté

en: Duplicate
fr: Double

en: Mark as Sent
fr: Marquer comme envoyé

en: Create Your First Quote
fr: Créez votre premier devis

en: Learn More
fr: Apprendre encore plus

en: Are you sure you want to duplicate
fr: Etes-vous sûr de vouloir dupliquer

en: quote(s)?
fr: citations)?

en: Are you sure you want to mark
fr: Etes-vous sûr de vouloir marquer

en: quote(s) as sent?
fr: devis tel(s) envoyé(s) ?

en: QUOTE
fr: CITATION

en: Quote #
fr: Citation #

en: Quote For
fr: Devis pour

en: Subtotal After Discount:
fr: Sous-total après remise :

en: Back to Quotes
fr: Retour aux citations

en: Subtotal After Discount
fr: Sous-total après remise

en: Related Project
fr: Projet connexe

en: Approval Status
fr: Statut d'approbation

en: Approval not yet requested
fr: Approbation pas encore demandée

en: Request Approval
fr: Demander l'approbation

en: Pending approval
fr: En attente d'approbation

en: Approve
fr: Approuver

en: Reject
fr: Rejeter

en: Approved by
fr: Approuvé par

en: on
fr: sur

en: Rejected by
fr: Rejeté par

en: Request Approval Again
fr: Demander à nouveau l'approbation

en: Send Quote
fr: Envoyer un devis

en: Are you sure you want to reject this quote?
fr: Êtes-vous sûr de vouloir rejeter ce devis ?

en: Reject Quote
fr: Rejeter le devis

en: Delete Quote
fr: Supprimer le devis

en: Internal comment (not visible to client)
fr: Commentaire interne (non visible par le client)

en: Internal
fr: Interne

en: Client Visible
fr: Client visible

en: Are you sure you want to delete this comment?
fr: Êtes-vous sûr de vouloir supprimer ce commentaire ?

en: Write a reply...
fr: Écrivez une réponse...

en: No comments yet. Start the conversation by adding the first comment.
fr: Pas encore de commentaires. Démarrez la conversation en ajoutant le premier commentaire.

en: Sent At
fr: Envoyé à

en: Accepted At
fr: Accepté à

en: Send Quote via Email
fr: Envoyer un devis par e-mail

en: Recipient Email
fr: E-mail du destinataire

en: Quote %(quote_number)s
fr: Citation %(quote_number)s

en: Custom Message (Optional)
fr: Message personnalisé (facultatif)

en: Add a custom message to the email...
fr: Ajouter un message personnalisé à l'e-mail...

en: Attach PDF
fr: Joindre un PDF

en: Approve Quote
fr: Approuver le devis

en: Notes (Optional)
fr: Remarques (facultatif)

en: Add approval notes...
fr: Ajouter des notes d'approbation...

en: Reject Quote Approval
fr: Rejeter l'approbation du devis

en: Rejection Reason
fr: Motif du rejet

en: Please provide a reason for rejection...
fr: Veuillez indiquer le motif du refus...

en: Are you sure you want to delete this quote? This action cannot be undone.
fr: Êtes-vous sûr de vouloir supprimer cette citation ? Cette action ne peut pas être annulée.

en: Create Recurring Invoice
fr: Créer une facture récurrente

en: Update Recurring Invoice
fr: Mettre à jour la facture récurrente

en: Automate invoice generation for subscription-based billing
fr: Automatisez la génération de factures pour la facturation par abonnement

en: Frequency
fr: Fréquence

en: Next Run
fr: Prochaine exécution

en: Generate Now
fr: Générer maintenant

en: Template Details
fr: Détails du modèle

en: Invoice Settings
fr: Paramètres de facture

en: Recently Generated Invoices
fr: Factures récemment générées

en: e.g., development, meeting, urgent
fr: par exemple, développement, réunion, urgence

en: Date Range & Comparison
fr: Plage de dates et comparaison

en: Quick Date Ranges
fr: Plages de dates rapides

en: Comparison View
fr: Vue comparative

en: Comparison Results
fr: Résultats de comparaison

en: Export Reports
fr: Exporter des rapports

en: Export Format
fr: Format d'exportation

en: Scheduled Reports
fr: Rapports planifiés

en: Report Types
fr: Types de rapports

en: Project Report
fr: Rapport de projet

en: User Report
fr: Rapport utilisateur

en: Summary Report
fr: Rapport sommaire

en: Task Report
fr: Rapport de tâche

en: Recent Entries
fr: Entrées récentes

en: About Overtime Tracking
fr: À propos du suivi des heures supplémentaires

en: Apply filter
fr: Appliquer le filtre

en: Are you sure you want to delete this filter?
fr: Êtes-vous sûr de vouloir supprimer ce filtre ?

en: Delete Filter
fr: Supprimer le filtre

en: Customize Shortcuts
fr: Personnaliser les raccourcis

en: Search shortcuts...
fr: Rechercher des raccourcis...

en: This will reset all keyboard shortcuts to their default values. Continue?
fr: Cela réinitialisera tous les raccourcis clavier à leurs valeurs par défaut. Continuer?

en: Reset to Defaults
fr: Réinitialiser aux valeurs par défaut

en: Welcome
fr: Accueillir

en: Privacy First
fr: La confidentialité d'abord

en: Self-hosted on your server
fr: Auto-hébergé sur votre serveur

en: Anonymous telemetry (opt-in)
fr: Télémétrie anonyme (opt-in)

en: No PII collected ever
fr: Aucune information personnelle n'a été collectée

en: Open source & transparent
fr: Open source et transparent

en: Welcome to TimeTracker
fr: Bienvenue sur TimeTracker

en: Let's get you set up in just a moment
fr: Laissez-vous installer dans un instant

en: Thank you for choosing TimeTracker!
fr: Merci d'avoir choisi TimeTracker !

en: Your data stays on your server, and you have complete control.
fr: Vos données restent sur votre serveur et vous avez un contrôle total.

en: Help Us Improve (Optional)
fr: Aidez-nous à améliorer (facultatif)

en: Enable anonymous telemetry
fr: Activer la télémétrie anonyme

en: Help us understand usage patterns to improve TimeTracker
fr: Aidez-nous à comprendre les modèles d'utilisation pour améliorer TimeTracker

en: What data is collected?
fr: Quelles données sont collectées ?

en: What we collect:
fr: Ce que nous collectons :

en: Anonymous installation fingerprint (hashed)
fr: Empreinte digitale d'installation anonyme (hachée)

en: Application version & platform info
fr: Version de l'application et informations sur la plateforme

en: Feature usage statistics
fr: Statistiques d'utilisation des fonctionnalités

en: Internal numeric IDs only
fr: ID numériques internes uniquement

en: What we DON'T collect:
fr: Ce que nous ne collectons PAS :

en: No usernames or emails
fr: Aucun nom d'utilisateur ni e-mail

en: No project names or descriptions
fr: Aucun nom ou description de projet

en: No time entry data or notes
fr: Aucune donnée ni note de saisie du temps

en: No client or business data
fr: Aucune donnée client ou entreprise

en: No IP addresses or PII
fr: Aucune adresse IP ni PII

en: Why?
fr: Pourquoi?

en: Anonymous usage data helps us prioritize features and fix issues.
fr: Les données d'utilisation anonymes nous aident à prioriser les fonctionnalités et à résoudre les problèmes.

en: You can change this anytime in
fr: Vous pouvez modifier cela à tout moment dans

en: Privacy & Analytics section
fr: Section Confidentialité et analyses

en: Complete Setup & Continue
fr: Terminer la configuration et continuer

en: By continuing, you agree to use TimeTracker under the
fr: En continuant, vous acceptez d'utiliser TimeTracker sous les

en: GPL-3.0 License
fr: Licence GPL-3.0

en: Edit Task
fr: Modifier la tâche

en: Failed to update status
fr: Échec de la mise à jour du statut

en: Failed to update task status
fr: Échec de la mise à jour de l'état de la tâche

en: Kanban column created
fr: Colonne Kanban créée

en: Kanban column deleted
fr: Colonne Kanban supprimée

en: Kanban columns reordered
fr: Colonnes Kanban réorganisées

en: Kanban column visibility changed
fr: La visibilité de la colonne Kanban a été modifiée

en: Kanban columns updated
fr: Colonnes Kanban mises à jour

en: Update
fr: Mise à jour

en: Failed to refresh kanban columns
fr: Échec de l'actualisation des colonnes Kanban

en: Loading task details...
fr: Chargement des détails de la tâche...

en: Assigned To
fr: Attribué à

en: Tracked
fr: Suivi

en: Estimated
fr: Estimé

en: View Full Details
fr: Afficher tous les détails

en: Create Task
fr: Créer une tâche

en: Add a new task to your project to break down work into manageable components
fr: Ajoutez une nouvelle tâche à votre projet pour diviser le travail en composants gérables

en: Back to Tasks
fr: Retour aux tâches

en: Task Name
fr: Nom de la tâche

en: Enter a descriptive task name
fr: Entrez un nom de tâche descriptif

en: Choose a clear, descriptive name that explains what needs to be done
fr: Choisissez un nom clair et descriptif qui explique ce qui doit être fait

en: Provide detailed information about the task, requirements, and any specific instructions...
fr: Fournissez des informations détaillées sur la tâche, les exigences et toute instruction spécifique...

en: Optional: Add context, requirements, or specific instructions for the task
fr: Facultatif : ajoutez du contexte, des exigences ou des instructions spécifiques pour la tâche

en: Select the project this task belongs to
fr: Sélectionnez le projet auquel cette tâche appartient

en: Low
fr: Faible

en: Medium
fr: Moyen

en: High
fr: Haut

en: Initial Status
fr: Statut initial

en: Done
fr: Fait

en: Optional: Set a deadline for this task
fr: Facultatif : définissez une date limite pour cette tâche

en: Estimated Hours
fr: Heures estimées

en: Optional: Estimate how long this task will take
fr: Facultatif : estimez la durée de cette tâche

en: Assign To
fr: Attribuer à

en: Unassigned
fr: Non attribué

en: Optional: Assign this task to a team member
fr: Facultatif : Attribuez cette tâche à un membre de l'équipe

en: Task Creation Tips
fr: Conseils pour la création de tâches

en: Use action verbs and be specific about what needs to be done
fr: Utilisez des verbes d’action et soyez précis sur ce qui doit être fait

en: Realistic Estimates
fr: Estimations réalistes

en: Consider complexity and dependencies when estimating time
fr: Tenir compte de la complexité et des dépendances lors de l'estimation du temps

en: Set Deadlines
fr: Fixer des délais

en: Due dates help prioritize work and track progress
fr: Les dates d’échéance aident à prioriser le travail et à suivre les progrès

en: Priority Matters
fr: Questions prioritaires

en: Use priority levels to help team members focus on what's most important
fr: Utilisez les niveaux de priorité pour aider les membres de l'équipe à se concentrer sur ce qui est le plus important

en: Update task details and settings for "%(task)s"
fr: Mettre à jour les détails et les paramètres de la tâche pour « %(task)s »

en: Back to Task
fr: Retour à la tâche

en: Task Information
fr: Informations sur la tâche

en: Update Task
fr: Tâche de mise à jour

en: Estimate used
fr: Estimation utilisée

en: Actual
fr: Réel

en: Current Task Info
fr: Informations sur la tâche actuelle

en: Current Status
fr: Statut actuel

en: Current Priority
fr: Priorité actuelle

en: Currently Assigned To
fr: Actuellement affecté à

en: Current Due Date
fr: Date d'échéance actuelle

en: Current Estimate
fr: Estimation actuelle

en: hours
fr: heures

en: Actual Hours
fr: Heures réelles

en: Started
fr: Commencé

en: Edit Tips
fr: Modifier les conseils

en: Status Changes
fr: Changements de statut

en: Changing status may affect time tracking and progress calculations
fr: Changer de statut peut affecter le suivi du temps et les calculs de progression

en: Due Date Updates
fr: Mises à jour des dates d'échéance

en: Consider team workload when adjusting deadlines
fr: Tenir compte de la charge de travail de l'équipe lors de l'ajustement des délais

en: Assignment Changes
fr: Modifications des affectations

en: Notify team members when reassigning tasks
fr: Avertir les membres de l'équipe lors de la réaffectation des tâches

en: Updating...
fr: Mise à jour...

en: Filter Tasks
fr: Filtrer les tâches

en: Delete Selected Tasks
fr: Supprimer les tâches sélectionnées

en: Change Status for Selected Tasks
fr: Modifier le statut des tâches sélectionnées

en: Assign Selected Tasks
fr: Attribuer les tâches sélectionnées

en: Assign Tasks
fr: Attribuer des tâches

en: Move Selected Tasks to Project
fr: Déplacer les tâches sélectionnées vers le projet

en: Select Project
fr: Sélectionnez un projet

en: Move Tasks
fr: Déplacer des tâches

en: Are you sure you want to delete the task "{name}"?
fr: Êtes-vous sûr de vouloir supprimer la tâche « {name} » ?

en: Cannot delete task "{name}" because it has time entries. Please delete the time entries first.
fr: Impossible de supprimer la tâche « {name} », car elle comporte des entrées de temps. Veuillez d'abord supprimer les entrées de temps.

en: Delete Task
fr: Supprimer la tâche

en: My Tasks
fr: Mes tâches

en: New Task
fr: Nouvelle tâche

en: Tasks assigned to or created by you
fr: Tâches assignées ou créées par vous

en: Filter My Tasks
fr: Filtrer mes tâches

en: Task name or description
fr: Nom ou description de la tâche

en: All Priorities
fr: Toutes les priorités

en: Task Type
fr: Type de tâche

en: Assigned to Me
fr: M'a été attribué

en: Created by Me
fr: Créé par moi

en: Show overdue only
fr: Afficher uniquement les retards

en: Apply Filters
fr: Appliquer des filtres

en: Created by me
fr: Créé par moi

en: View Details
fr: Afficher les détails

en: My tasks pagination
fr: Pagination de mes tâches

en: No tasks found
fr: Aucune tâche trouvée

en: You don't have any tasks assigned to you or created by you yet.
fr: Aucune tâche ne vous a été assignée ou créée par vous pour le moment.

en: Create Your First Task
fr: Créez votre première tâche

en: View All Tasks
fr: Afficher toutes les tâches

en: Overdue Tasks
fr: Tâches en retard

en: Requires immediate attention
fr: Nécessite une attention immédiate

en: items
fr: articles

en: Overdue Tasks Detected
fr: Tâches en retard détectées

en: There are
fr: Il y a

en: overdue tasks that require immediate attention.
fr: tâches en retard qui nécessitent une attention immédiate.

en: Please review and update these tasks to prevent further delays.
fr: Veuillez examiner et mettre à jour ces tâches pour éviter de nouveaux retards.

en: Due:
fr: Exigible:

en: Est:
fr: HNE:

en: Actual:
fr: Réel:

en: No Overdue Tasks!
fr: Aucune tâche en retard !

en: Great job! All tasks are currently on schedule.
fr: Super travail ! Toutes les tâches sont actuellement dans les délais.

en: Enter new due date (YYYY-MM-DD):
fr: Entrez la nouvelle date d'échéance (AAAA-MM-JJ) :

en: Are you sure you want to extend the due date to
fr: Etes-vous sûr de vouloir prolonger la date d'échéance jusqu'à

en: for all overdue tasks?
fr: pour toutes les tâches en retard ?

en: Bulk due date update feature coming soon!
fr: La fonctionnalité de mise à jour groupée de la date d'échéance sera bientôt disponible !

en: Enter new priority (low/medium/high/urgent):
fr: Entrez une nouvelle priorité (faible/moyenne/élevée/urgente) :

en: Are you sure you want to set priority to
fr: Êtes-vous sûr de vouloir définir la priorité sur

en: Bulk priority update feature coming soon!
fr: Fonctionnalité de mise à jour prioritaire en masse à venir !

en: Invalid priority. Please use: low, medium, high, or urgent
fr: Priorité invalide. Veuillez utiliser : faible, moyen, élevé ou urgent

en: Start task and mark as In Progress?
fr: Démarrer la tâche et la marquer comme En cours ?

en: Change Task Status
fr: Modifier le statut de la tâche

en: Mark task as To Do?
fr: Marquer la tâche comme À faire ?

en: Mark task as Done?
fr: Marquer la tâche comme terminée ?

en: Complete Task
fr: Terminer la tâche

en: Complete
fr: Complet

en: Reopen task to Review?
fr: Rouvrir la tâche pour réviser ?

en: Reopen Task
fr: Rouvrir la tâche

en: Reopen
fr: Rouvrir

en: Create Time Entry Template
fr: Créer un modèle de saisie du temps

en: e.g., Daily Standup, Client Meeting
fr: par exemple, stand-up quotidien, réunion client

en: e.g., 1.0, 0.5
fr: par exemple, 1,0, 0,5

en: Pre-fill notes for this type of time entry
fr: Pré-remplir des notes pour ce type de saisie de temps

en: e.g., meeting, development, admin
fr: par exemple, réunion, développement, administration

en: Edit Template
fr: Modifier le modèle

en: Are you sure you want to delete this template?
fr: Êtes-vous sûr de vouloir supprimer ce modèle ?

en: Delete Template
fr: Supprimer le modèle

en: Usage Statistics
fr: Statistiques d'utilisation

en: Duplicate Entry
fr: Entrée en double

en: Duplicate Time Entry
fr: Saisie de temps en double

en: Log Time Manually
fr: Enregistrer l'heure manuellement

en: Create a copy of a previous entry with new times
fr: Créer une copie d'une entrée précédente avec de nouvelles heures

en: Create a new time entry
fr: Créer une nouvelle entrée de temps

en: Duplicating entry:
fr: Entrée en double :

en: to
fr: à

en: No task
fr: Aucune tâche

en: Tasks load after selecting a project
fr: Les tâches se chargent après la sélection d'un projet

en: What did you work on?
fr: Sur quoi as-tu travaillé ?

en: tag1, tag2
fr: étiquette1, étiquette2

en: Failed to load tasks
fr: Échec du chargement des tâches

en: Track your time with a visual timer
fr: Suivez votre temps avec une minuterie visuelle

en: Estimated Completion
fr: Achèvement estimé

en: Calculating...
fr: Calculateur...

en: Based on average session duration
fr: Basé sur la durée moyenne des sessions

en: No active timer. Start one below!
fr: Aucune minuterie active. Commencez-en un ci-dessous !

en: Start New Timer
fr: Démarrer une nouvelle minuterie

en: Select a project...
fr: Sélectionnez un projet...

en: Add notes about what you're working on...
fr: Ajoutez des notes sur ce sur quoi vous travaillez...

en: Recent Projects
fr: Projets récents

en: Today's Stats
fr: Les statistiques du jour

en: Settings
fr: Paramètres

en: No project
fr: Aucun projet

en: In progress
fr: En cours

en: View all time entries
fr: Afficher toutes les entrées de temps

en: No recent time entries
fr: Aucune entrée de temps récente

en: Manage your account settings and preferences
fr: Gérer les paramètres et préférences de votre compte

en: Profile Information
fr: Informations sur le profil

en: Username cannot be changed
fr: Le nom d'utilisateur ne peut pas être modifié

en: Email Address
fr: Adresse email

en: Required for email notifications
fr: Obligatoire pour les notifications par e-mail

en: Notification Preferences
fr: Préférences de notifications

en: Enable Email Notifications
fr: Activer les notifications par e-mail

en: Master switch for all email notifications
fr: Interrupteur principal pour toutes les notifications par e-mail

en: Overdue Invoice Notifications
fr: Notifications de factures en retard

en: Task Assignment Notifications
fr: Notifications d'affectation de tâches

en: Comment & Mention Notifications
fr: Notifications de commentaires et de mentions

en: Weekly Time Summary Email
fr: E-mail de résumé du temps hebdomadaire

en: Display Preferences
fr: Préférences d'affichage

en: System Default
fr: Système par défaut

en: Light
fr: Lumière

en: Time Rounding Preferences
fr: Préférences d'arrondi du temps

en: Configure how your time entries are rounded. This affects how durations are calculated when you stop timers.
fr: Configurez la façon dont vos entrées de temps sont arrondies. Cela affecte la façon dont les durées sont calculées lorsque vous arrêtez les chronomètres.

en: Enable Time Rounding
fr: Activer l'arrondi des temps

en: Round time entries to configured intervals
fr: Arrondir les entrées de temps aux intervalles configurés

en: Rounding Interval
fr: Intervalle d'arrondi

en: Time entries will be rounded to this interval
fr: Les entrées de temps seront arrondies à cet intervalle

en: Rounding Method
fr: Méthode d'arrondi

en: Overtime Settings
fr: Paramètres des heures supplémentaires

en: Set your standard working hours per day. Any time worked beyond this will be counted as overtime.
fr: Définissez vos heures de travail standard par jour. Tout temps travaillé au-delà de ce délai sera compté comme heures supplémentaires.

en: Standard Hours Per Day
fr: Heures standard par jour

en: Typically 8 hours for a full-time job
fr: Généralement 8 heures pour un travail à temps plein

en: How it works
fr: Comment ça marche

en: If you work more than your standard hours in a day, the extra time will be tracked as overtime in reports and analytics.
fr: Si vous travaillez plus que vos heures normales dans une journée, le temps supplémentaire sera enregistré comme heures supplémentaires dans les rapports et analyses.

en: Regional Settings
fr: Paramètres régionaux

en: Timezone
fr: Fuseau horaire

en: Date Format
fr: Format des dates

en: Time Format
fr: Format de l'heure

en: Week Starts On
fr: La semaine commence le

en: Sunday
fr: Dimanche

en: Monday
fr: Lundi

en: Saturday
fr: Samedi

en: Time rounding is disabled. All times will be recorded exactly as tracked.
fr: L'arrondi temporel est désactivé. Tous les temps seront enregistrés exactement comme suivis.

en: No rounding - times will be recorded exactly as tracked.
fr: Pas d'arrondi - les temps seront enregistrés exactement tels qu'ils sont suivis.

en: Actual time:
fr: Heure réelle :

en: Rounded:
fr: Arrondi :

en: With
fr: Avec

en:  minute intervals
fr: intervalles de minutes

en: Create Weekly Goal
fr: Créer un objectif hebdomadaire

en: Create Weekly Time Goal
fr: Créer un objectif de temps hebdomadaire

en: Set a target for hours to work this week
fr: Fixez-vous un objectif d’heures de travail cette semaine

en: Target Hours
fr: Heures cibles

en: How many hours do you want to work this week?
fr: Combien d'heures souhaitez-vous travailler cette semaine ?

en: Week Start Date
fr: Date de début de la semaine

en: Leave blank to use current week (starting Monday)
fr: Laisser vide pour utiliser la semaine en cours (à partir de lundi)

en: Optional notes about your goal...
fr: Notes facultatives sur votre objectif...

en: Quick Presets
fr: Préréglages rapides

en: Tips for Setting Goals
fr: Conseils pour fixer des objectifs

en: Be realistic: Consider holidays, meetings, and other commitments
fr: Soyez réaliste : envisagez les vacances, les réunions et autres engagements

en: Start conservative: You can always adjust your goal later
fr: Commencez prudemment : vous pourrez toujours ajuster votre objectif plus tard

en: Track progress: Check your dashboard regularly to stay on track
fr: Suivez les progrès : consultez régulièrement votre tableau de bord pour rester sur la bonne voie

en: Typical full-time: 40 hours per week (8 hours/day, 5 days)
fr: Temps plein typique : 40 heures par semaine (8 heures/jour, 5 jours)

en: Edit Weekly Goal
fr: Modifier l'objectif hebdomadaire

en: Edit Weekly Time Goal
fr: Modifier l'objectif de temps hebdomadaire

en: Week Period
fr: Période de la semaine

en: Current Progress
fr: Progrès actuels

en: Are you sure you want to delete this goal?
fr: Êtes-vous sûr de vouloir supprimer cet objectif ?

en: Delete Goal
fr: Supprimer l'objectif

en: Weekly Time Goals
fr: Objectifs de temps hebdomadaires

en: Set and track your weekly hour targets
fr: Définissez et suivez vos objectifs d'heures hebdomadaires

en: New Goal
fr: Nouvel objectif

en: Total Goals
fr: Objectifs totaux

en: Success Rate
fr: Taux de réussite

en: Current Week Goal
fr: Objectif de la semaine en cours

en: Remaining Hours
fr: Heures restantes

en: Days Remaining
fr: Jours restants

en: Avg Hours/Day Needed
fr: Heures moyennes/jour nécessaires

en: Edit Goal
fr: Modifier l'objectif

en: No goal set for this week
fr: Aucun objectif fixé pour cette semaine

en: Create a weekly time goal to start tracking your progress
fr: Créez un objectif de temps hebdomadaire pour commencer à suivre vos progrès

en: Goal History
fr: Historique des buts

en: Target
fr: Cible

en: Weekly Goal Details
fr: Détails de l'objectif hebdomadaire

en: Daily Breakdown
fr: Répartition quotidienne

en: Time Entries This Week
fr: Entrées de temps cette semaine

en: No Project
fr: Aucun projet

en: No time entries recorded for this week yet
fr: Aucune entrée de temps enregistrée pour cette semaine pour le moment

en: Overpaid
fr: Surpayé

en: Cash
fr: Espèces

en: Check
fr: Vérifier

en: Bank Transfer
fr: Virement bancaire

en: Credit Card
fr: Carte de crédit

en: Debit Card
fr: Carte de débit

en: PayPal
fr: Paypal

en: Stripe
fr: Bande

en: Company Card
fr: Carte d'entreprise

en: Approved
fr: Approuvé

en: Reimbursed
fr: Remboursé

en: Processing
fr: Traitement

en: Partial
fr: Partiel

en: 80% Budget Warning
fr: Avertissement budgétaire à 80 %

en: Budget Limit Reached
fr: Limite budgétaire atteinte

en: Info
fr: Informations

en: Invoice #: %(num)s
fr: Facture n° : %(num)s

en: Issue Date: %(date)s
fr: Date d'émission : %(date)s

en: Due Date: %(date)s
fr: Date d'échéance : %(date)s

en: Quote For:
fr: Devis pour :

en: Quote Details:
fr: Détails du devis :

en: Items:
fr: Articles:

en: Please log in to access this page
fr: Veuillez vous connecter pour accéder à cette page
