public HttpResponseMessage GetResources([FromUri] string name, [FromUri] string runtime)
{
runtime = getClearRuntime(runtime);
string portalFolder = "";
string sdkFolder = "";
string languageFolder = name;
if (name != "en")
{
if (!_languageMap.TryGetValue(name, out languageFolder)) {
languageFolder = name + "-" + name;
}
portalFolder = Path.Combine(languageFolder, "AzureFunctions\\ResourcesPortal");
sdkFolder = Path.Combine(languageFolder, "Resources");
}
List<string> resxFiles = new List<string>();
var result = new JObject();
string templateResourcesPath;
if (!string.IsNullOrEmpty(portalFolder) && !string.IsNullOrEmpty(sdkFolder))
{
resxFiles.Add(Path.Combine(this._settings.ResourcesPortalPath.Replace(".Client", ""), portalFolder + "\\Resources.resx"));
templateResourcesPath = Path.Combine(this._settings.TemplatesPath, runtime + "\\Resources\\" + sdkFolder + "\\Resources.resx");
if (!File.Exists(templateResourcesPath))
{
templateResourcesPath = Path.Combine(this._settings.TemplatesPath, "default\\Resources\\" + sdkFolder + "\\Resources.resx");
}
resxFiles.Add(templateResourcesPath);
result["lang"] = ConvertResxToJObject(resxFiles);
resxFiles.Clear();
}
// Always add english strings
resxFiles.Add(Path.Combine(this._settings.ResourcesPortalPath.Replace(".Client", ""), "Resources.resx"));
templateResourcesPath = Path.Combine(this._settings.TemplatesPath, runtime + "\\Resources\\Resources.resx");
if (!File.Exists(templateResourcesPath)) {
templateResourcesPath = Path.Combine(this._settings.TemplatesPath, "default\\Resources\\Resources.resx");
}
resxFiles.Add(templateResourcesPath);
result["en"] = ConvertResxToJObject(resxFiles);
return Request.CreateResponse(HttpStatusCode.OK, result);
}