public async Task <IActionResult> IndexAsync(long id, string name, CancellationToken token) { var query = new UserProfileQuery(id, 0); var retVal = await _queryBus.QueryAsync(query, token); if (retVal is null) { return(NotFound()); } if (retVal.Tutor is null) { Response.Headers.Add("X-Robots-Tag", "noindex"); return(View("Index")); } ViewBag.title = _localizer["TitleNoUniversity", retVal.Name]; ViewBag.metaDescription = _localizer["Description", retVal.Description]; if (retVal.Image != null) { Country country = retVal.Tutor.TutorCountry; //ViewBag.ogImage = $"{retVal.Image}?width=1200&height=630"; ViewBag.ogImage = _urlBuilder.BuildUserImageProfileShareEndpoint(retVal.Id, new { width = 1200, height = 630, rtl = country.MainLanguage.Info.TextInfo.IsRightToLeft.ToString() }); ViewBag.ogImageWidth = 1200; ViewBag.ogImageHeight = 630; ViewBag.ogTitle = retVal.Name; if (retVal.Tutor?.Subjects?.Any() == true) { ViewBag.ogDescription = _localizer.WithCulture(country.MainLanguage)["OgDescription", string.Join(", ", retVal.Tutor.Subjects)]; } } //var jsonLd = new ProfilePage() //{ // SourceOrganization = new Organization // { // Logo = new Uri($"{_configuration["site"].TrimEnd('/')}/images/favicons/android-icon-192x192.png"), // Url = Request.GetUri() // }, // About = new Person() // { // Name = retVal.Name, // GivenName = retVal.FirstName, // FamilyName = retVal.LastName, // Image = new Uri($"{_configuration["site"].TrimEnd('/')}{retVal.Image}"), // TODO should be fixed // Description = retVal.Description, // }, // Url = Request.GetUri() //}; //ViewBag.jsonLd = jsonLd; return(View("Index")); }