diff --git a/approot/messages.xml b/approot/messages.xml
index cc421dab..3d056f79 100644
--- a/approot/messages.xml
+++ b/approot/messages.xml
@@ -49,6 +49,7 @@
Demo account
Demo account already exists!
Demo password must be the login name!
+
Last login attempt
User already exists!
New user
New user created!
@@ -84,7 +85,7 @@
Recently added
-
Top releases
+
Top albums
Recently added
@@ -118,4 +119,9 @@
WEBMA
New settings saved!
+
+
+
+
+
diff --git a/approot/messages_fr.xml b/approot/messages_fr.xml
new file mode 100644
index 00000000..0a2690f8
--- /dev/null
+++ b/approot/messages_fr.xml
@@ -0,0 +1,132 @@
+
+
+
+
+Ajouter
+Appliquer
+Annuler
+Administration
+Annuler
+Créer
+Login
+Logout
+N'est pas un répertoire
+Mot de passe
+Confirmation du mot de passe
+Les mots de passe ne correspondent pas
+Êtes-vous sûr ?
+Une autre session a été ouverte. Reouvrir celle-ci ?
+Sauvegarder
+
+
+Tous les jours
+Base de données
+Scanner maintenant !
+Tous les mois
+Jamais
+Dossier racine des fichiers de musique
+Scan terminé : {1} fichiers, {2} ajouts, {3} mises à jour, {4} suppressions, {5} duplicatas, {6} erreurs
+Scan lancé !
+Options
+Nouveaux paramètres sauvegardés !
+Tags
+Périodicité des mises à jour
+Heure de départ de la mise à jour
+Toutes les semaines
+
+
+Ajouter
+Admin
+Supprimer
+Supprimer l'utilisateur
+Supprimer l'utilisateur ?
+Demo
+Editer
+Utilisateurs
+
+
+Limite du bitrate
+Compte de démonstration
+Le compte de démonstration existe déjà !
+Le password doit être égal au login !
+Dernière tentative de login
+L'utilisateur existe déjà !
+Nouvel utilisateur
+Nouvel utilisateur créé !
+Utilisateur {1}
+L'utilisateur a été mis à jour !
+
+
+Le compte d'administration a été créé. Rafraichissez la page pour continuer !
+
+
+
+Se souvenir de moi
+Bienvenue !
+
+
+Ajouter filtre
+Artistes
+Filtres
+Albums
+Rechercher...
+Montrer plus
+Pistes
+Type
+Valeur
+Artistes divers
+
+
+Ajouts récents
+Artistes populaires
+
+
+Copyright
+
+
+Ajouts récents
+Albums populaires
+
+
+Ajouts récents
+Pistes populaires
+
+
+
+Effacer
+{1} pistes
+{1} pistes ajoutées
+{1} pistes ajouées
+Liste de lecture
+Mode radio
+Repéter
+Mélanger
+
+
+Historique de lecture
+
+
+
+Compte
+Audio
+Auto
+Bitrate
+Impossible de sauvegarder en utilisant un compte de démo !
+Encodage
+MP3
+OGA
+Paramètres
+WEBMA
+Paramètres sauvegardés !
+
+
+Oui
+Non
+
+
+
+Invalide
+
+Mot de passe invalide
+
+
diff --git a/approot/release.xml b/approot/release.xml
index ea9191ec..0824a57b 100644
--- a/approot/release.xml
+++ b/approot/release.xml
@@ -2,6 +2,10 @@
+
+
+
+
diff --git a/docroot/css/lms.css b/docroot/css/lms.css
index 7bf20079..0485a49b 100644
--- a/docroot/css/lms.css
+++ b/docroot/css/lms.css
@@ -158,7 +158,7 @@ a:hover {
}
.Lms-explore-release-entry-controls {
- text-align: center;
+ text-align: right;
}
.Lms-explore-release-entry-playing {
@@ -202,7 +202,7 @@ a:hover {
}
.Lms-explore-tracks-entry-controls {
- text-align: center;
+ text-align: right;
}
.Lms-explore-tracksinfo-entry {
@@ -235,7 +235,7 @@ a:hover {
}
.Lms-playqueue-entry-controls {
- text-align: center;
+ text-align: right;
}
.Lms-playqueue-btn {
diff --git a/src/database/DatabaseHandler.cpp b/src/database/DatabaseHandler.cpp
index 1473d7d1..4645d464 100644
--- a/src/database/DatabaseHandler.cpp
+++ b/src/database/DatabaseHandler.cpp
@@ -54,6 +54,7 @@ Handler::configureAuth(void)
{
authService.setEmailVerificationEnabled(false);
authService.setAuthTokensEnabled(true, "lmsauth");
+ authService.setAuthTokenValidity(24 * 60 * 365); // A year
authService.setIdentityPolicy(Wt::Auth::IdentityPolicy::LoginName);
authService.setRandomTokenLength(32);
diff --git a/src/database/Track.hpp b/src/database/Track.hpp
index e16b54d3..18c96618 100644
--- a/src/database/Track.hpp
+++ b/src/database/Track.hpp
@@ -95,6 +95,7 @@ class Track : public Wt::Dbo::Dbo