public async Task <ActionResult> GetTextTemplate(string name, string company, string email) { if (Request.Cookies.AllKeys.Contains("token")) { _apiHttpClient.Token = Request.Cookies["token"].Value; } var sys = _systemInformationService.GetBasicInformation(); var systemInfoStr = LocalizedStrings.GetStringFormat("Web_Controller_License_TextTemplate_SystemInfos", LocalizedStrings.GetString("Web_Controller_License_TextTemplate_MachineName"), sys.MachineName, LocalizedStrings.GetString("Web_Controller_License_TextTemplate_OperatingSystem"), string.Format("{0} {1} {2}", sys.OperatingSystem, sys.OperatingSystemArchitecture, sys.OperatingSystemVersion), LocalizedStrings.GetString("Web_Controller_License_TextTemplate_Language"), sys.OperatingSystemLanguage.ToString(), LocalizedStrings.GetString("Web_Controller_License_TextTemplate_SystemManufacturer"), sys.Manufacturer, LocalizedStrings.GetString("Web_Controller_License_TextTemplate_SystemModel"), sys.Model, LocalizedStrings.GetString("Web_Controller_License_TextTemplate_Processors"), sys.Processors != null ? string.Join("|", sys.Processors) : null, LocalizedStrings.GetString("Web_Controller_License_TextTemplate_Memory"), string.Format("{0} MB", (int)(sys.Memory / 1048576d)), LocalizedStrings.GetString("Web_Controller_License_TextTemplate_AvailableOSMemory"), string.Format("{0} MB", (int)(sys.OSVisibleMemory / 1024d))); if (sys.VideoControllers != null) { foreach (var vc in sys.VideoControllers) { if (!string.IsNullOrEmpty(vc.Resolution)) { systemInfoStr += string.Format("\r\n{0}: {1}, {2}", LocalizedStrings.GetString("Web_Controller_License_TextTemplate_VideoController"), vc.Name, vc.Resolution); } } } var version = Assembly.GetExecutingAssembly().FullName .Split(',') .Single(_ => _.Contains("Version=")) .Split('=') .Last(); var productLicense = await LicenseMapper.GetLicense(); var content = string.Format(LocalizedStrings.GetString("Web_Controller_License_TextTemplate"), name, company, email, await LicenseMapper.GetMachineHash(), //On n'affiche plus le statut TrialVersion, on Licensed à la place. string.Format("{0} - {1}", productLicense.Status == WebLicenseStatus.TrialVersion ? WebLicenseStatus.Licensed : productLicense.Status, LocalizedStrings.GetStringFormat(productLicense.StatusReason, productLicense.StatusReasonParams?.Select(_ => _.ToString()).ToArray())), version, systemInfoStr ); return(Content(content)); }