示例#1
0
        private static DownloadableContentBox GetTemplatesFromRemoteServer()
        {
            var templateBox = new DownloadableContentBox()
            {
                Items = new List <DownloadableContentObject>()
            };

            try
            {
                var request = WebRequest.Create(string.Format(RequestUrlGetTemplates, SettingsLic.LicKey));
                request.Method = "GET";

                using (var dataStream = request.GetResponse().GetResponseStream())
                    using (var reader = new StreamReader(dataStream))
                    {
                        var responseFromServer = reader.ReadToEnd();
                        if (!string.IsNullOrEmpty(responseFromServer))
                        {
                            templateBox = JsonConvert.DeserializeObject <DownloadableContentBox>(responseFromServer);
                        }
                    }
            }
            catch (Exception ex)
            {
                Debug.LogError(ex);
            }

            return(templateBox);
        }
示例#2
0
        public static DownloadableContentBox GetTemplates()
        {
            var templates = GetTemplatesFromRemoteServer();

            templates.Items.Add(new DownloadableContentObject()
            {
                StringId  = DefaultTemplateId,
                Name      = Resources.Resource.Admin_Templates_DefaultTemplate,
                IsInstall = true,
                Active    = true,
                Icon      = "../images/design/preview.png"
            });

            if (Directory.Exists(SettingsGeneral.AbsolutePath + "Templates"))
            {
                foreach (var templateFolder in Directory.GetDirectories(SettingsGeneral.AbsolutePath + "Templates"))
                {
                    if (File.Exists(templateFolder + "\\MasterPage.master"))
                    {
                        var stringId    = templateFolder.Split('\\').Last();
                        var curTemplate = templates.Items.Find(t => t.StringId == stringId.ToLower());

                        if (curTemplate != null)
                        {
                            curTemplate.IsInstall = true;
                            curTemplate.Active    = true;
                        }
                        else
                        {
                            templates.Items.Add(new DownloadableContentObject
                            {
                                StringId  = stringId,
                                Name      = stringId,
                                IsInstall = true,
                                Icon      = string.Format("../Templates/{0}/images/design/preview.png", stringId),
                                Active    = true
                            });
                        }
                    }
                }
            }

            templates.Items = templates.Items.OrderBy(t => t.Name).ThenByDescending(t => t.IsInstall).ToList();

            var resultTemplateBox = new DownloadableContentBox()
            {
                Message = templates.Message,
                Items   = new List <DownloadableContentObject>()
            };

            resultTemplateBox.Items.Add(templates.Items.FirstOrDefault(t => t.StringId == SettingsDesign.Template));
            resultTemplateBox.Items.AddRange(templates.Items.Where(t => t.StringId != SettingsDesign.Template));

            return(resultTemplateBox);
        }