public static string Resolve(HttpRequest request) { // get list of currently allowed cultures from CMS database IEnumerable <string> allowedCultures = ListOfValues.GetAllCultureCodes(); // retrieve cookie HttpCookie cultureCookie = request.Cookies["Culture"]; // retrieve url parameter string cultureUrlParameter = request.QueryString["lang"]; string cultureDefault = "en-GB"; // set to default string cultureCode = cultureDefault; // apply url based culture if (allowedCultures.Contains(cultureUrlParameter)) { cultureCode = cultureUrlParameter; } // apply cookie based culture from dropdown else if (cultureCookie != null && !string.IsNullOrEmpty(cultureCookie.Value) && allowedCultures.Contains(cultureCookie.Value)) { cultureCode = cultureCookie.Value; } return(cultureCode); }
private void SaveGoogleMap(string googleSitemap) { XmlWriterSettings settings = new XmlWriterSettings(); settings.Indent = true; settings.Encoding = Encoding.UTF8; settings.CloseOutput = true; using (XmlWriter writer = XmlWriter.Create(googleSitemap, settings)) { writer.WriteStartDocument(); writer.WriteStartElement("urlset", "http://www.sitemaps.org/schemas/sitemap/0.9"); writer.WriteAttributeString("xmlns", "xsi", null, "http://www.w3.org/2001/XMLSchema-instance"); writer.WriteAttributeString("xsi", "schemaLocation", null, "http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"); var languageList = ListOfValues.GetAllCultureCodes(); foreach (Url url in _urls) { writer.WriteStartElement("url"); writer.WriteElementString("loc", url.Location); writer.WriteEndElement(); //D30 START 16/05/2013 --> We don´t need languages /* if (languageList.Count() > 1) * { * foreach (var lang in languageList) * { * //RRP START 18-04-2013 * //Original code (All cultures) * //writer.WriteStartElement("url"); * //writer.WriteElementString("loc", url.Location + "?lang=" + lang); * //writer.WriteEndElement(); * * //Only for en-GB culture * //We don't need references from the sitemap to the same page in all languages. * //Only English is needed * if (lang == "en-GB") * { * writer.WriteStartElement("url"); * writer.WriteElementString("loc", url.Location + "?lang=" + lang); * writer.WriteEndElement(); * } * //RRP END 18-04-2013 * } * }*/ //D30 END 16/05/2013 } writer.WriteEndElement(); writer.WriteEndDocument(); } }