Example #1
0
        private static void LoadInternalConfigurations(string xmlFilePath)
        {
            try
            {
                XmlManager xm = new XmlManager();
                xm.InitializeFromFile(xmlFilePath);
                if (!string.IsNullOrEmpty(FTPSharedSettings.LauncherVersion) &&
                    !string.IsNullOrEmpty(FTPSharedSettings.UpdaterURL))
                {
                    return;
                }
                FTPSharedSettings.LauncherVersion = xm.GetNode("internalConfigs/version").InnerText;
                FTPSharedSettings.UpdaterURL      = xm.GetNode("internalConfigs/launcherUpdateLink").InnerText;

                if (string.IsNullOrEmpty(FTPSharedSettings.LauncherVersion) || string.IsNullOrEmpty(FTPSharedSettings.UpdaterURL))
                {
                    LogManager.WriteLog($"Launcher version or updaterURL is null or empty. \n Version: {FTPSharedSettings.LauncherVersion} \n UpdaterURL: {FTPSharedSettings.UpdaterURL}");
                }
            }
            catch (Exception er)
            {
                LogManager.WriteLog("Error on load internal configurations " + er.Message);
            }
        }
        internal void LoadInternalConfigsFromXml(string xmlFilePath)
        {
            try
            {
                XmlManager xmlManager = new XmlManager();
                xmlManager.InitializeFromFile(xmlFilePath);

                XmlNode internalConfigsNode = xmlManager.GetNode("internalConfigs");
                FTPSharedSettings.LauncherVersion = internalConfigsNode.SelectSingleNode("version")?.InnerText;
                FTPSharedSettings.UpdaterURL      = internalConfigsNode.SelectSingleNode("launcherUpdateLink")?.InnerText;
                FtpSettings.ClientMirrorUrl       = internalConfigsNode.SelectSingleNode("clientMirror")?.InnerText;
                FtpSettings.FileListUrl           = internalConfigsNode.SelectSingleNode("fileListURL")?.InnerText;
                FtpSettings.BlackListUrl          = internalConfigsNode.SelectSingleNode("blackListURL").InnerText;

                XmlNode newsNode = internalConfigsNode.SelectSingleNode("news");
                FtpSettings.ForumUrl   = newsNode.SelectSingleNode("forumURL").InnerText;
                FtpSettings.XmlNewsUrl = newsNode.SelectSingleNode("xmlNewsUrl")?.InnerText;
                //optional!


                LauncherSettings.ShowNews = bool.Parse(newsNode.SelectSingleNode("showNews").InnerText);

                LauncherSettings.IsOnMaintenance = bool.Parse(internalConfigsNode.SelectSingleNode("maintenance").InnerText);

                if (!HasLoadedAllInternalConfigs(FTPSharedSettings.LauncherVersion, FTPSharedSettings.UpdaterURL, FtpSettings.ClientMirrorUrl, FtpSettings.FileListUrl, FtpSettings.ForumUrl, FtpSettings.XmlNewsUrl))
                {
                    LogManager.WriteLog("Not all internal configs was loaded correctly.");
                }
                OnConfigurationsLoaded?.Invoke();

#if DEBUG
                Debug.Print("Internal configs loaded sucessfully");
#endif
            }
            catch (Exception er)
            {
#if DEBUG
                Debug.Print(er.Message);
#endif
                LogManager.WriteLog("Error on load internal configs: " + er.Message);
            }
        }
Example #3
0
        internal void LoadLanguages()
        {
            try
            {
                XmlManager xml = new XmlManager();
                xml.InitializeFromFile("LauncherLanguage.xml");

                XmlNode languagesNode = xml.GetNode("languages");

                XmlNodeList nodeList = languagesNode.SelectNodes("language");// xml.GetNodes("languages/language");

                if (!languagesNode.HasAttribute("currentLanguageId"))
                {
                    LauncherSettings.HasDefaultLanguage = false;
                }
                else
                {
                    LauncherSettings.DefaultLanguageId = languagesNode.ParseIntAttribute("currentLanguageId");
                }

                for (int i = 0; i < nodeList.Count; i++)
                {
                    XmlNode  node     = nodeList[i];
                    Language language = new Language
                    {
                        Name     = node.SelectSingleNode("name")?.InnerText,
                        FileName = node.SelectSingleNode("fileName")?.InnerText,
                        Id       = node.ParseIntAttribute("id")
                    };
                    Languages.Add(language);
                }
#if DEBUG
                Debug.WriteLine("Loaded languages count -> " + Languages.Count);
#endif
            }
            catch (Exception er)
            {
                LogManager.WriteLog("Exception on load languages:" + er.Message);
            }
        }