예제 #1
0
        public Stream GetJavascript(string lang)
        {
            var memoryStream = new MemoryStream();
            var baseUrl      = appSettingsHelper.Get("BaseUrl");

            var path     = hostingHelper.GetRootPath();
            var langPath = Path.Combine(path,
                                        $"App_Data\\Framework\\Languages\\{lang}.js");

            if (!File.Exists(langPath))
            {
                langPath = Path.Combine(path,
                                        "App_Data\\Framework\\Languages\\en.js");
            }

            TextWriter writer = new StreamWriter(memoryStream, Encoding.UTF8);

            using (TextReader reader = new StreamReader(
                       Path.Combine(path, "App_Data\\Framework\\framework.js"), Encoding.UTF8))
            {
                string buf;
                while ((buf = reader.ReadLine()) != null)
                {
                    if (buf.Contains("//#BaseUrl"))
                    {
                        buf = $"    var baseUrl = '{baseUrl}';";
                    }

                    if (buf.Contains("//#LanguageKey"))
                    {
                        buf = $"    var languageKey = '{lang}';";
                    }

                    if (buf.Contains("//#LanguageData"))
                    {
                        using (TextReader reader2 = new StreamReader(langPath, Encoding.UTF8))
                        {
                            string buf2;
                            while ((buf2 = reader2.ReadLine()) != null)
                            {
                                writer.WriteLine(buf2);
                            }
                        }

                        buf = string.Empty;
                    }

                    writer.WriteLine(buf);
                }
            }

            writer.Flush();

            // Apply obfuscation algorithm

            memoryStream.Position = 0;
            return(memoryStream);
        }
예제 #2
0
        public ClientService(IHostingHelper hostingHelper, IStringHelper stringHelper,
                             IAppSettingsHelper appSettingsHelper)
        {
            this.appSettingsHelper = appSettingsHelper;
            this.stringHelper      = stringHelper;
            validationItems        = new Dictionary <string, List <ValidationItem> >();
            pathToFile             = hostingHelper.GetRootPath("App_Data\\clients.json");

            using (TextReader reader = new StreamReader(pathToFile, Encoding.UTF8))
            {
                clientItems =
                    JsonConvert.DeserializeObject <Dictionary <string, ClientItem> >(reader.ReadToEnd());
            }
        }