void UpdateBookmarks() { try { int height = 150; Bookmarks.HeightRequest = height; List <string> keys = App.GetKeys <string>(App.BOOKMARK_DATA); List <string> data = new List <string>(); bookmarkPosters = new List <BookmarkPoster>(); Bookmarks.Children.Clear(); int index = 0; bool allDone = false; for (int i = 0; i < keys.Count; i++) { string __key = App.ConvertToObject <string>(keys[i], ""); if (__key == "") { continue; } string name = FindHTML(__key, "Name=", "|||"); string posterUrl = FindHTML(__key, "PosterUrl=", "|||"); posterUrl = ConvertIMDbImagesToHD(posterUrl, 182, 268); string id = FindHTML(__key, "Id=", "|||"); if (name != "" && posterUrl != "" && id != "") { if (CheckIfURLIsValid(posterUrl)) { string posterURL = ConvertIMDbImagesToHD(posterUrl, 76, 113, 1.75); //.Replace(",76,113_AL", "," + pwidth + "," + pheight + "_AL").Replace("UY113", "UY" + pheight).Replace("UX76", "UX" + pwidth); if (CheckIfURLIsValid(posterURL)) { Grid stackLayout = new Grid() { VerticalOptions = LayoutOptions.Start }; Button imageButton = new Button() { HeightRequest = RecPosterHeight, WidthRequest = RecPosterWith, BackgroundColor = Color.Transparent, VerticalOptions = LayoutOptions.Start }; var ff = new FFImageLoading.Forms.CachedImage { Source = posterURL, HeightRequest = RecPosterHeight, WidthRequest = RecPosterWith, BackgroundColor = Color.Transparent, VerticalOptions = LayoutOptions.Start, Transformations = { // new FFImageLoading.Transformations.RoundedTransformation(10,1,1.5,10,"#303F9F") new FFImageLoading.Transformations.RoundedTransformation(10, 1, 1.5, 0, "#303F9F") }, InputTransparent = true, }; // ================================================================ RECOMMENDATIONS CLICKED ================================================================ // stackLayout.SetValue(XamEffects.BorderView.CornerRadiusProperty, 20); var brView = new BorderView() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.Fill, CornerRadius = 5 }; brView.SetValue(XamEffects.TouchEffect.ColorProperty, Color.White); Commands.SetTap(brView, new Command((o) => { var z = (BookmarkPoster)o; PushPageFromUrlAndName(z.id, z.name); })); var _b = new BookmarkPoster() { id = id, name = name, posterUrl = posterUrl }; Commands.SetTapParameter(brView, _b); bookmarkPosters.Add(_b); // var _color = Settings.BlackColor + 5; BoxView boxView = new BoxView() { BackgroundColor = Settings.ItemBackGroundColor,// Color.FromRgb(_color, _color, _color), InputTransparent = true, CornerRadius = 10, HeightRequest = RecPosterHeight + bookmarkLabelTransY, TranslationY = 0, WidthRequest = RecPosterWith, }; stackLayout.Children.Add(boxView); stackLayout.Children.Add(ff); stackLayout.Children.Add(imageButton); stackLayout.Children.Add(new Label() { Text = name, VerticalOptions = LayoutOptions.Start, VerticalTextAlignment = TextAlignment.Center, HorizontalTextAlignment = TextAlignment.Center, HorizontalOptions = LayoutOptions.Center, Padding = 1, TextColor = Color.White, MaxLines = 2, ClassId = "OUTLINE", TranslationY = RecPosterHeight }); stackLayout.Children.Add(brView); stackLayout.Opacity = 0; async void WaitUntillComplete() { stackLayout.Opacity = 0; while (!allDone) { await Task.Delay(50); } await stackLayout.FadeTo(1, (uint)(200 + index * 50), Easing.Linear); } WaitUntillComplete(); index++; Bookmarks.Children.Add(stackLayout); /* * Grid stackLayout = new Grid(); * * * var ff = new FFImageLoading.Forms.CachedImage { * Source = posterUrl, * HeightRequest = height, * WidthRequest = 87, * BackgroundColor = Color.Transparent, * VerticalOptions = LayoutOptions.Start, * Transformations = { * new FFImageLoading.Transformations.RoundedTransformation(1,1,1.5,0,"#303F9F") * }, * InputTransparent = true, * }; * * //Source = p.posterUrl * * stackLayout.Children.Add(ff); * // stackLayout.Children.Add(imageButton); * bookmarkPosters.Add(new BookmarkPoster() { id = id, name = name, posterUrl = posterUrl }); * Grid.SetColumn(stackLayout, Bookmarks.Children.Count); * Bookmarks.Children.Add(stackLayout); * * // --- RECOMMENDATIONS CLICKED ----- * stackLayout.SetValue(XamEffects.TouchEffect.ColorProperty, Color.White); * Commands.SetTap(stackLayout, new Command((o) => { * int z = (int)o; * PushPageFromUrlAndName(bookmarkPosters[z].id, bookmarkPosters[z].name); * })); * Commands.SetTapParameter(stackLayout, i);*/ } } // data.Add(App.GetKey("BookmarkData")) } //await Task.Delay(100); //MScroll.HeightRequest = keys.Count > 0 ? 130 : 0; } allDone = true; hasBookmarks = bookmarkPosters.Count > 0; UpdateNoBookmarks(); /*if (ImdbTypePicker.SelectedIndex == -1) { * ImdbTypePicker.SelectedIndex = bookmarkPosters.Count > 0 ? 0 : 2; // SET TO POPULAR BY DEAFULT * }*/ SetRecs(); } catch (Exception _ex) { error(_ex); } ChangeSizeOfTabs(); }
void UpdateBookmarks() { try { int height = 150; Bookmarks.HeightRequest = height; string[] keys = App.GetKeys <string>(App.BOOKMARK_DATA); List <string> data = new List <string>(); bookmarkPosters = new List <BookmarkPoster>(); Bookmarks.Children.Clear(); updateLabels.Clear(); IsBookmarked.Clear(); int index = 0; bool allDone = false; for (int i = 0; i < keys.Length; i++) { string __key = keys[i]; if (__key == "") { continue; } string name = FindHTML(__key, "Name=", "|||"); string posterUrl = FindHTML(__key, "PosterUrl=", "|||"); posterUrl = ConvertIMDbImagesToHD(posterUrl, 182, 268); string id = FindHTML(__key, "Id=", "|||"); if (name != "" && posterUrl != "" && id != "") { if (CheckIfURLIsValid(posterUrl)) { IsBookmarked.Add(id, true); string posterURL = ConvertIMDbImagesToHD(posterUrl, 76, 113, 1.75); if (CheckIfURLIsValid(posterURL)) { Grid stackLayout = new Grid() { VerticalOptions = LayoutOptions.Start, }; stackLayout.Effects.Add(Effect.Resolve("CloudStreamForms.LongPressedEffect")); var _b = new BookmarkPoster() { id = id, name = name, posterUrl = posterUrl }; bookmarkPosters.Add(_b); LongPressedEffect.SetCommand(stackLayout, new Command(() => { PushPageFromUrlAndName(_b.id, _b.name); })); var ff = new FFImageLoading.Forms.CachedImage { Source = posterURL, HeightRequest = RecPosterHeight, WidthRequest = RecPosterWith, BackgroundColor = Color.Transparent, VerticalOptions = LayoutOptions.Start, InputTransparent = true, Transformations = { // new FFImageLoading.Transformations.RoundedTransformation(10,1,1.5,10,"#303F9F") new FFImageLoading.Transformations.RoundedTransformation(10, 1, 1.5, 0, "#303F9F") }, // InputTransparent = true, }; // ================================================================ RECOMMENDATIONS CLICKED ================================================================ //stackLayout.SetValue(XamEffects.BorderView.CornerRadiusProperty, 20); /* * var brView = new BorderView() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.Fill, CornerRadius = 5 }; * * brView.SetValue(XamEffects.TouchEffect.ColorProperty, Color.White); * Commands.SetTap(brView, new Command((o) => { * var z = (BookmarkPoster)o; * PushPageFromUrlAndName(z.id, z.name); * })); * Commands.SetTapParameter(brView, _b);*/ // var _color = Settings.BlackColor + 5; Frame boxView = new Frame() { BackgroundColor = Settings.ItemBackGroundColor, // Color.FromRgb(_color, _color, _color), // InputTransparent = true, CornerRadius = 5, HeightRequest = RecPosterHeight + bookmarkLabelTransY, TranslationY = 0, WidthRequest = RecPosterWith, HasShadow = true, }; stackLayout.Children.Add(boxView); stackLayout.Children.Add(ff); //stackLayout.Children.Add(imageButton); stackLayout.Children.Add(new Label() { Text = name, VerticalOptions = LayoutOptions.Start, VerticalTextAlignment = TextAlignment.Center, HorizontalTextAlignment = TextAlignment.Center, HorizontalOptions = LayoutOptions.Center, Padding = 1, TextColor = Color.White, MaxLines = 2, ClassId = "OUTLINE", TranslationY = RecPosterHeight }); //stackLayout.Children.Add(brView); if (Settings.ShowNextEpisodeReleaseDate) { CloudStreamCore.NextAiringEpisodeData?nextData = App.GetKey <NextAiringEpisodeData?>(App.NEXT_AIRING, id, null); if (nextData.HasValue) { var nextAir = nextData.Value; string nextTxt = GetAirDate(nextAir.airingAt); var btt = new Button() { //BackgroundColor = new Color(0.188, 0.247, 0.623, 0.8) BackgroundColor = new Color(0, 0, 0, 0.4), Text = nextTxt, ClassId = "CUST", TextColor = Color.White, InputTransparent = true, HeightRequest = 20, FontSize = 11, VerticalOptions = LayoutOptions.Start, HorizontalOptions = LayoutOptions.End, CornerRadius = 1, Padding = 2, Margin = 0, Scale = 1, TranslationX = 1, WidthRequest = 60 }; updateLabels.Add(new UpdateLabel() { label = btt, id = id }); stackLayout.Children.Add(btt); } } stackLayout.Opacity = 0; async void WaitUntillComplete() { stackLayout.Opacity = 0; while (!allDone) { await Task.Delay(50); } await stackLayout.FadeTo(1, (uint)(200 + index * 50), Easing.Linear); } WaitUntillComplete(); index++; //slay.Children.Add(stackLayout); Bookmarks.Children.Add(stackLayout); /* * Grid stackLayout = new Grid(); * * * var ff = new FFImageLoading.Forms.CachedImage { * Source = posterUrl, * HeightRequest = height, * WidthRequest = 87, * BackgroundColor = Color.Transparent, * VerticalOptions = LayoutOptions.Start, * Transformations = { * new FFImageLoading.Transformations.RoundedTransformation(1,1,1.5,0,"#303F9F") * }, * InputTransparent = true, * }; * * //Source = p.posterUrl * * stackLayout.Children.Add(ff); * // stackLayout.Children.Add(imageButton); * bookmarkPosters.Add(new BookmarkPoster() { id = id, name = name, posterUrl = posterUrl }); * Grid.SetColumn(stackLayout, Bookmarks.Children.Count); * Bookmarks.Children.Add(stackLayout); * * // --- RECOMMENDATIONS CLICKED ----- * stackLayout.SetValue(XamEffects.TouchEffect.ColorProperty, Color.White); * Commands.SetTap(stackLayout, new Command((o) => { * int z = (int)o; * PushPageFromUrlAndName(bookmarkPosters[z].id, bookmarkPosters[z].name); * })); * Commands.SetTapParameter(stackLayout, i);*/ } } // data.Add(App.GetKey("BookmarkData")) } //await Task.Delay(100); //MScroll.HeightRequest = keys.Count > 0 ? 130 : 0; } allDone = true; hasBookmarks = bookmarkPosters.Count > 0; UpdateNoBookmarks(); /*if (ImdbTypePicker.SelectedIndex == -1) { * ImdbTypePicker.SelectedIndex = bookmarkPosters.Count > 0 ? 0 : 2; // SET TO POPULAR BY DEAFULT * }*/ SetRecs(); } catch (Exception _ex) { error(_ex); } ChangeSizeOfTabs(); }
void UpdateBookmarks() { try { string[] keys = App.GetKeys <string>(App.BOOKMARK_DATA); List <string> data = new List <string>(); bookmarkPosters = new List <BookmarkPoster>(); updateLabels.Clear(); IsBookmarked.Clear(); epView.HomeCollection.Clear(); var bgColor = Settings.ItemBackGroundColor.ToHex(); int index = 0; bool allDone = false; for (int i = 0; i < keys.Length; i++) { string __key = keys[i]; if (__key == "") { continue; } string name = FindHTML(__key, "Name=", "|||"); string posterUrl = FindHTML(__key, "PosterUrl=", "|||"); posterUrl = ConvertIMDbImagesToHD(posterUrl, 182, 268); string id = FindHTML(__key, "Id=", "|||"); if (name != "" && posterUrl != "" && id != "") { if (CheckIfURLIsValid(posterUrl)) { IsBookmarked.Add(id, true); string posterURL = ConvertIMDbImagesToHD(posterUrl, 76, 113, 1.75); if (CheckIfURLIsValid(posterURL)) { var _b = new BookmarkPoster() { id = id, name = name, posterUrl = posterUrl }; bookmarkPosters.Add(_b); bool showNext = false; string nextTxt = ""; if (Settings.ShowNextEpisodeReleaseDate) { CloudStreamCore.NextAiringEpisodeData?nextData = App.GetKey <NextAiringEpisodeData?>(App.NEXT_AIRING, id, null); if (nextData.HasValue) { showNext = true; var nextAir = nextData.Value; nextTxt = GetAirDate(nextAir.airingAt); } } epView.HomeCollection.Add(new HomeBookmark() { ExtraColor = bgColor, ImdbId = id, Title = name, PosterUrl = posterUrl, OpenCommand = new Command(() => { PushPageFromUrlAndName(id, name); }), NextEpisodeText = nextTxt, ShowNextEpisode = showNext, }); } } } } allDone = true; hasBookmarks = bookmarkPosters.Count > 0; UpdateNoBookmarks(); /*if (ImdbTypePicker.SelectedIndex == -1) { * ImdbTypePicker.SelectedIndex = bookmarkPosters.Count > 0 ? 0 : 2; // SET TO POPULAR BY DEAFULT * }*/ SetRecs(); } catch (Exception _ex) { error(_ex); } ChangeSizeOfTabs(); }