void GetFilteredAndSortedSites() { SitesList.Clear(); var localSitesDic = OnlineVideoSettings.Instance.SiteSettingsList.ToDictionary(s => s.Name, s => s); var onlyLocalSites = OnlineVideoSettings.Instance.SiteSettingsList.ToDictionary(s => s.Name, s => s); List <OnlineVideosWebservice.Site> filteredsortedSites = new List <OnlineVideos.OnlineVideosWebservice.Site>(Sites.Updater.OnlineSites); filteredsortedSites.ForEach(os => { if (localSitesDic.ContainsKey(os.Name)) { onlyLocalSites.Remove(os.Name); } }); filteredsortedSites.AddRange(onlyLocalSites.Select(ls => new OnlineVideosWebservice.Site() { Name = ls.Value.Name, IsAdult = ls.Value.ConfirmAge, Description = ls.Value.Description, Language = ls.Value.Language, LastUpdated = ls.Value.LastUpdated })); filteredsortedSites = filteredsortedSites.FindAll(SitePassesFilter); filteredsortedSites.Sort(CompareSiteForSort); foreach (OnlineVideosWebservice.Site site in filteredsortedSites) { if (!site.IsAdult || !OnlineVideoSettings.Instance.UseAgeConfirmation || OnlineVideoSettings.Instance.AgeConfirmed) { SiteSettings localSite = null; localSitesDic.TryGetValue(site.Name, out localSite); var loListItem = new OnlineSiteViewModel(site, localSite); SitesList.Add(loListItem); } } SitesList.FireChange(); }
ItemsList GetUserReports(OnlineSiteViewModel item) { var items = new ItemsList(); OnlineVideosWebservice.OnlineVideosService ws = new OnlineVideosWebservice.OnlineVideosService(); var reports = ws.GetReports(item.Site.Name); foreach (var report in reports.OrderByDescending(r => r.Date)) { items.Add(new ReportViewModel(report)); } return(items); }
public void ShowSiteOptions(OnlineSiteViewModel item) { ServiceRegistration.Get <IWorkflowManager>().NavigatePushTransient( WorkflowState.CreateTransientState("OnlineSiteOptions", item.Site.Name, true, "ovsDialogGenericItems", false, WorkflowType.Dialog), new NavigationContextConfig() { AdditionalContextVariables = new Dictionary <string, object> { { Constants.CONTEXT_VAR_ITEMS, GetSiteOptions(item) }, { Constants.CONTEXT_VAR_COMMAND, new CommandContainer <ListItem>(ExecuteSiteOption) } } }); }
ItemsList GetSiteOptions(OnlineSiteViewModel item) { var items = new ItemsList(); if (item.LocalSite == null && item.Site.State != OnlineVideosWebservice.SiteState.Broken) { var option = new ListItem(Consts.KEY_NAME, "[OnlineVideos.AddToMySites]"); option.AdditionalProperties[Constants.KEY_VALUE] = "AddToMySites"; items.Add(option); } else { if ((item.Site.LastUpdated - item.LocalSite.LastUpdated).TotalMinutes > 2 && item.Site.State != OnlineVideosWebservice.SiteState.Broken) { var option = new ListItem(Consts.KEY_NAME, "[OnlineVideos.UpdateMySite]"); option.AdditionalProperties[Constants.KEY_VALUE] = "UpdateMySite"; items.Add(option); } var optionR = new ListItem(Consts.KEY_NAME, "[OnlineVideos.RemoveFromMySites]"); optionR.AdditionalProperties[Constants.KEY_VALUE] = "RemoveFromMySites"; items.Add(optionR); } if (!string.IsNullOrEmpty(item.Site.Owner_FK) && item.LocalSite != null) // !only local && ! only global { var option = new ListItem(Consts.KEY_NAME, "[OnlineVideos.ShowReports]"); option.AdditionalProperties[Constants.KEY_VALUE] = "ShowReports"; items.Add(option); if (item.Site.State != OnlineVideosWebservice.SiteState.Broken) { var optionR = new ListItem(Consts.KEY_NAME, "[OnlineVideos.ReportBroken]"); optionR.AdditionalProperties[Constants.KEY_VALUE] = "ReportBroken"; items.Add(optionR); } } foreach (var anOption in items) { anOption.AdditionalProperties.Add(Consts.KEY_MEDIA_ITEM, item); } return(items); }
public void ShowSiteOptions(OnlineSiteViewModel item) { ServiceRegistration.Get<IWorkflowManager>().NavigatePushTransient( WorkflowState.CreateTransientState("OnlineSiteOptions", item.Site.Name, true, "ovsDialogGenericItems", false, WorkflowType.Dialog), new NavigationContextConfig() { AdditionalContextVariables = new Dictionary<string, object> { { Constants.CONTEXT_VAR_ITEMS, GetSiteOptions(item) }, { Constants.CONTEXT_VAR_COMMAND, new CommandContainer<ListItem>(ExecuteSiteOption) } } }); }
ItemsList GetUserReports(OnlineSiteViewModel item) { var items = new ItemsList(); OnlineVideosWebservice.OnlineVideosService ws = new OnlineVideosWebservice.OnlineVideosService(); var reports = ws.GetReports(item.Site.Name); foreach (var report in reports.OrderByDescending(r => r.Date)) { items.Add(new ReportViewModel(report)); } return items; }
ItemsList GetSiteOptions(OnlineSiteViewModel item) { var items = new ItemsList(); if (item.LocalSite == null && item.Site.State != OnlineVideosWebservice.SiteState.Broken) { var option = new ListItem(Consts.KEY_NAME, "[OnlineVideos.AddToMySites]"); option.AdditionalProperties[Constants.KEY_VALUE] = "AddToMySites"; items.Add(option); } else { if ((item.Site.LastUpdated - item.LocalSite.LastUpdated).TotalMinutes > 2 && item.Site.State != OnlineVideosWebservice.SiteState.Broken) { var option = new ListItem(Consts.KEY_NAME, "[OnlineVideos.UpdateMySite]"); option.AdditionalProperties[Constants.KEY_VALUE] = "UpdateMySite"; items.Add(option); } var optionR = new ListItem(Consts.KEY_NAME, "[OnlineVideos.RemoveFromMySites]"); optionR.AdditionalProperties[Constants.KEY_VALUE] = "RemoveFromMySites"; items.Add(optionR); } if (!string.IsNullOrEmpty(item.Site.Owner_FK) && item.LocalSite != null) // !only local && ! only global { var option = new ListItem(Consts.KEY_NAME, "[OnlineVideos.ShowReports]"); option.AdditionalProperties[Constants.KEY_VALUE] = "ShowReports"; items.Add(option); if (item.Site.State != OnlineVideosWebservice.SiteState.Broken) { var optionR = new ListItem(Consts.KEY_NAME, "[OnlineVideos.ReportBroken]"); optionR.AdditionalProperties[Constants.KEY_VALUE] = "ReportBroken"; items.Add(optionR); } } foreach (var anOption in items) anOption.AdditionalProperties.Add(Consts.KEY_MEDIA_ITEM, item); return items; }
void GetFilteredAndSortedSites() { SitesList.Clear(); var localSitesDic = OnlineVideoSettings.Instance.SiteSettingsList.ToDictionary(s => s.Name, s => s); var onlyLocalSites = OnlineVideoSettings.Instance.SiteSettingsList.ToDictionary(s => s.Name, s => s); List<OnlineVideosWebservice.Site> filteredsortedSites = new List<OnlineVideos.OnlineVideosWebservice.Site>(Sites.Updater.OnlineSites); filteredsortedSites.ForEach(os => { if (localSitesDic.ContainsKey(os.Name)) onlyLocalSites.Remove(os.Name); }); filteredsortedSites.AddRange(onlyLocalSites.Select(ls => new OnlineVideosWebservice.Site() { Name = ls.Value.Name, IsAdult = ls.Value.ConfirmAge, Description = ls.Value.Description, Language = ls.Value.Language, LastUpdated = ls.Value.LastUpdated })); filteredsortedSites = filteredsortedSites.FindAll(SitePassesFilter); filteredsortedSites.Sort(CompareSiteForSort); foreach (OnlineVideosWebservice.Site site in filteredsortedSites) { if (!site.IsAdult || !OnlineVideoSettings.Instance.UseAgeConfirmation || OnlineVideoSettings.Instance.AgeConfirmed) { SiteSettings localSite = null; localSitesDic.TryGetValue(site.Name, out localSite); var loListItem = new OnlineSiteViewModel(site, localSite); SitesList.Add(loListItem); } } SitesList.FireChange(); }