public string BuildRouteApiUrl(string language, bool?hasRouteError) { string baseUrl = $"{_uriHelper.GetBaseUri()}/data/routes"; string relativeUrl = $"{_uriHelper.ToBaseRelativePath(_uriHelper.GetBaseUri(), _uriHelper.GetAbsoluteUri())}"; //Incorrect url if (hasRouteError.HasValue && hasRouteError.Value) { return($"{baseUrl}/error/{language}.json"); } ISitecoreItem rootItem = _sitecoreItemService.GetSitecoreItemRootMock(language); if (rootItem.GetItSelfAndDescendants().Any(item => item.Url == "/" + relativeUrl) || relativeUrl == "") { if (relativeUrl.Length <= language.Length) { return($"{baseUrl}/{language}.json"); } return($"{baseUrl}{relativeUrl.Substring(language.Length)}/{language}.json"); } return($"{baseUrl}/error/{language}.json"); }
private string GetCurrentUrl() { string currentUrl = "/" + uri.ToBaseRelativePath(uri.GetBaseUri(), uri.GetAbsoluteUri()); int indexOfReturnUrl = currentUrl.IndexOf("?returnUrl"); if (indexOfReturnUrl >= 0) { currentUrl = currentUrl.Substring(0, indexOfReturnUrl); } return(currentUrl); }
public async Task Initialise() { int done = 10; while (done-- > 0) { if (ComponentContext.IsConnected) { try { await LocalisationHelper.BuildLocalCulture(); await LocalisationHelper.BuildLocalTimeZone(); if (!HasApiKey) { SetApiKey(await LocalStorage.GetItemAsync <string>("GitterKey")); } break; } catch (Exception ex) { if (done == 1) { Console.WriteLine(ex); } } } await Task.Delay(1000); } if (HasApiKey) { initialised = true; } else { var currentUri = UriHelper.GetAbsoluteUri(); var baseUri = UriHelper.GetBaseUri(); var currentPage = UriHelper.ToBaseRelativePath(baseUri, currentUri); if (!currentPage.Equals(LOGINPAGE, StringComparison.OrdinalIgnoreCase) && !string.IsNullOrWhiteSpace(currentPage)) { UriHelper.NavigateTo(LOGINPAGE); } } }