Brand: install folder uses uppercase PROSERVE v{version}
The product wordmark is rendered uppercase everywhere in the UI (PROSERVE in Pirulen). Align the install directory naming so it reads "PROSERVE v1.4.7" instead of "Proserve v1.4.7" — same brand, same case on disk and in dialog titles. Changes: - server/manifest/versions.json: installFolderTemplate updated for both existing entries. - server/admin/versions.php: default template for new versions added via the backoffice form. - src/PSLauncher.Models/RemoteManifest.cs: default fallback for the property when missing from JSON. - src/PSLauncher.App/Views/MainWindow.xaml + dialogs + ViewModel toasts: UI strings now read "PROSERVE v..." consistent with the brand. InstallationRegistry's regex was already RegexOptions.IgnoreCase, so existing user installs in "Proserve v..." folders keep working (case-insensitive on Windows filesystems anyway). Re-installing an older version after the change re-creates the folder with the new case — Windows is case-preserving but case-insensitive, so launching remains identical. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -135,7 +135,7 @@ public sealed partial class MainViewModel : ObservableObject
|
||||
public string EmptyHint =>
|
||||
"Aucune version locale ni distante.\n" +
|
||||
"Clique « Vérifier les mises à jour » pour récupérer le catalogue depuis le serveur, " +
|
||||
"ou place un dossier « Proserve v{X.Y.Z} » contenant PROSERVE_UE_5_5.exe dans :\n" +
|
||||
"ou place un dossier « PROSERVE v{X.Y.Z} » contenant PROSERVE_UE_5_5.exe dans :\n" +
|
||||
_config.InstallRoot;
|
||||
|
||||
public Visibility EmptyHintVisibility =>
|
||||
@@ -439,7 +439,7 @@ public sealed partial class MainViewModel : ObservableObject
|
||||
proc.EnableRaisingEvents = true;
|
||||
proc.Exited += (_, _) =>
|
||||
{
|
||||
_logger.LogInformation("Proserve v{Version} a quitté — restauration du launcher", row.Version);
|
||||
_logger.LogInformation("PROSERVE v{Version} a quitté — restauration du launcher", row.Version);
|
||||
Application.Current?.Dispatcher.Invoke(() =>
|
||||
{
|
||||
if (Application.Current.MainWindow is { } main)
|
||||
@@ -539,7 +539,7 @@ public sealed partial class MainViewModel : ObservableObject
|
||||
RebuildList();
|
||||
_toastService.ShowSuccess(
|
||||
"Installation terminée",
|
||||
$"Proserve v{row.Version} est prête à être lancée.");
|
||||
$"PROSERVE v{row.Version} est prête à être lancée.");
|
||||
}
|
||||
catch (OperationCanceledException)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user