Ejemplo n.º 1
0
        public AlbumsData GetAlbumsData(int i_NumberOfAlbums)
        {
            AlbumsData retVal = null;

            retVal = m_SocialData.GetLastAlbums(i_NumberOfAlbums);

            return(retVal);
        }
Ejemplo n.º 2
0
 public void GetData(GenericCollectionViewModel <AlbumsData, AlbumHeader> caller, int offset, int count, Action <BackendResult <AlbumsData, ResultCode> > callback)
 {
     PhotosService.Current.GetUsersAlbums(this.UserOrGroupId, this.IsGroup, offset, count, (Action <BackendResult <AlbumsData, ResultCode> >)(res =>
     {
         if (res.ResultCode == ResultCode.Succeeded)
         {
             this._albumsData = res.ResultData;
             this.NotifyPropertyChanged <string>((() => this.Title));
         }
         callback(res);
     }), false);
 }
Ejemplo n.º 3
0
 public void GetData(GenericCollectionViewModel <AlbumsData, Group <AlbumHeader> > caller, int offset, int count, Action <BackendResult <AlbumsData, ResultCode> > callback)
 {
     if (((Collection <Group <AlbumHeader> >) this.AlbumsVM.Collection).Count > 0)
     {
         Group <AlbumHeader> group = ((IEnumerable <Group <AlbumHeader> >) this.AlbumsVM.Collection).First <Group <AlbumHeader> >();
         if (offset != 0)
         {
             offset -= ((Collection <AlbumHeader>)group).Count;
         }
     }
     PhotosService.Current.GetUsersAlbums(this.UserOrGroupId, this.IsGroup, offset, count, (Action <BackendResult <AlbumsData, ResultCode> >)(res =>
     {
         if (res.ResultCode == ResultCode.Succeeded)
         {
             this._albumsData = res.ResultData;
             this.NotifyPropertyChanged <string>((() => this.Title));
             this.PhotoFeedMoveNotificationVisibility = (!AppGlobalStateManager.Current.GlobalState.PhotoFeedMoveHintShown).ToVisiblity();
             this.NotifyPropertyChanged <Visibility>((() => this.PhotoFeedMoveNotificationVisibility));
         }
         callback(res);
     }), true);
 }
Ejemplo n.º 4
0
        public void GetUsersAlbums(long userOrGroupid, bool isGroup, int offset, int count, Action <BackendResult <AlbumsData, ResultCode> > callback, bool needGroupSystemAlbums = true)
        {
            Dictionary <string, string> parameters = new Dictionary <string, string>();
            string str;

            if (!isGroup)
            {
                str = string.Format("var allPhotos= API.photos.getAll({{extended:\"1\", owner_id:\"{0}\", count:\"3\", offset:\"0\"}});\r\nvar profilePhotos = API.photos.get({{owner_id:\"{0}\", album_id:\"profile\", offset:\"0\", count:\"3\", extended:\"1\", rev:\"1\"}});\r\nvar userPhotos = API.photos.getUserPhotos({{extended:\"1\", user_id:\"{0}\", count:\"3\", offset:\"0\", sort:\"0\"}});\r\nvar wallPhotos = API.photos.get({{owner_id:\"{0}\", album_id:\"wall\", offset:\"0\", count:\"3\", extended:\"1\", rev:\"1\"}});\r\nvar savedPhotos = API.photos.get({{owner_id:\"{0}\", album_id:\"saved\", offset:\"0\", count:\"3\", extended:\"1\", rev:\"1\"}});\r\nvar albumPhotos = API.photos.getAlbums({{need_covers:\"1\", offset:\"{1}\", count:\"{2}\", owner_id:\"{0}\"}}); \r\n\r\nvar full_gen = API.users.get({{\"user_ids\":\"{0}\", \"name_case\":\"gen\"}})[0];\r\n\r\nvar full_ins = API.users.get({{\"user_ids\":\"{0}\", \"name_case\":\"ins\"}})[0];\r\n\r\nvar owners = [email protected]_id;\r\nvar thumbIds = [email protected]_id;\r\n\r\nvar ownersPlusThumbs = [];\r\nvar i=albumPhotos.items.length-1;\r\n\r\nwhile(i != -1)\r\n{{\r\n  var s = owners[i] + \"_\" + thumbIds[i];\r\n  ownersPlusThumbs.push(s);\r\n  i = i -1;\r\n}};\r\n\r\nvar p = [];\r\nif (albumPhotos.items.length >0)\r\n{{\r\n  p= API.photos.getById({{photos:ownersPlusThumbs}});\r\n}};\r\n\r\nreturn {{\"AllPhotos\":allPhotos, \"ProfilePhotos\":profilePhotos, \"UserPhotos\":userPhotos, \r\n\"WallPhotos\":wallPhotos, \"SavedPhotos\":savedPhotos, \"Albums\":albumPhotos, \"covers\":p,\r\n\"userGen\":full_gen, \"userIns\":full_ins}};", userOrGroupid, offset, count);
            }
            else
            {
                str = string.Format("var allPhotos= API.photos.getAll({{extended:\"1\", owner_id:\"{0}\", count:\"3\", offset:\"0\"}});\r\nvar albumPhotos = API.photos.getAlbums({{need_covers:\"1\", offset:\"{2}\", count:\"{3}\", gid:\"{1}\", need_system:\"{4}\"}}); \r\n\r\nvar owners = [email protected]_id;\r\nvar thumbIds = [email protected]_id;\r\n\r\nvar ownersPlusThumbs = [];\r\nvar i=albumPhotos.items.length-1;\r\n\r\nwhile(i != -1)\r\n{{\r\n  var s = owners[i] + \"_\" + thumbIds[i];\r\n  ownersPlusThumbs.push(s);\r\n  i = i -1;\r\n}};\r\n\r\nvar p = [];\r\nif (albumPhotos.items.length >0)\r\n{{\r\n  p= API.photos.getById({{photos:ownersPlusThumbs}});\r\n}};\r\n\r\nreturn {{\"AllPhotos\":allPhotos,  \"Albums\":albumPhotos, \"covers\":p }};", -userOrGroupid, userOrGroupid, offset, count, (needGroupSystemAlbums ? "1" : "0"));
            }
            parameters["code"] = str;
            VKRequestsDispatcher.DispatchRequestToVK <AlbumsData>("execute", parameters, callback, (Func <string, AlbumsData>)(jsonStr =>
            {
                AlbumsData albumsData = new AlbumsData();
                jsonStr             = VKRequestsDispatcher.FixFalseArray(jsonStr, "AllPhotos", true);
                jsonStr             = VKRequestsDispatcher.FixFalseArray(jsonStr, "ProfilePhotos", true);
                jsonStr             = VKRequestsDispatcher.FixFalseArray(jsonStr, "UserPhotos", true);
                jsonStr             = VKRequestsDispatcher.FixFalseArray(jsonStr, "WallPhotos", true);
                jsonStr             = VKRequestsDispatcher.FixFalseArray(jsonStr, "SavedPhotos", true);
                jsonStr             = jsonStr.Replace("\"covers\":false", "\"covers\":[]");
                AlbumsData response = JsonConvert.DeserializeObject <VKRequestsDispatcher.GenericRoot <AlbumsData> >(jsonStr).response;
                this.UpdateThumbSrc(response.albums, response.covers);
                if (offset != 0)
                {
                    response.AllPhotos.items.Clear();
                    response.ProfilePhotos.items.Clear();
                    response.SavedPhotos.items.Clear();
                    response.UserPhotos.items.Clear();
                    response.WallPhotos.items.Clear();
                }
                return(response);
            }), false, true, new CancellationToken?(), null);
        }
Ejemplo n.º 5
0
        private async void Page_Loaded(object sender, RoutedEventArgs e)
        {
            IsLoading = true;

            LoadArtwork();

            if (!isLoaded)
            {
                try
                {
                    var app    = (App)Application.Current;
                    var albums = await app.plexClient.GetAlbums(Artist);

                    AlbumsData.FromArray(albums);
                }
                catch
                {
                    MessageBox.Show("Could not fetch data from remote server.", "PlexFlux", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                }
            }

            IsLoading = false;
            isLoaded  = true;
        }
Ejemplo n.º 6
0
 private void ConvertToAlbumHeaders(AlbumsData data, out List <AlbumHeader> nonEditAlbums, out List <AlbumHeader> editAlbums)
 {
     nonEditAlbums = new List <AlbumHeader>();
     editAlbums    = new List <AlbumHeader>();
     if (data.allPhotos.NotNullAndHasAtLeastOneNonNullElement())
     {
         List <AlbumHeader> albumHeaderList = nonEditAlbums;
         AlbumHeader        albumHeader     = new AlbumHeader();
         albumHeader.AlbumName = PhotoResources.PhotosMainPage_AllPhotos;
         string srcBig = data.allPhotos[0].src_big;
         albumHeader.ImageUri = srcBig;
         string src = data.allPhotos[0].src;
         albumHeader.ImageUriSmall = src;
         string str1 = data.allPhotos.Count >= 2 ? data.allPhotos[1].src_big : "";
         albumHeader.ImageUri2 = str1;
         string str2 = data.allPhotos.Count >= 3 ? data.allPhotos[2].src_big : "";
         albumHeader.ImageUri3 = str2;
         int allPhotosCount = data.allPhotosCount;
         albumHeader.PhotosCount = allPhotosCount;
         int num = 0;
         albumHeader.AlbumType = (AlbumType)num;
         albumHeaderList.Add(albumHeader);
     }
     if (data.profilePhotos.NotNullAndHasAtLeastOneNonNullElement())
     {
         List <AlbumHeader> albumHeaderList = nonEditAlbums;
         AlbumHeader        albumHeader     = new AlbumHeader();
         albumHeader.AlbumName = PhotoResources.PhotosMainPage_ProfilePhotos;
         string srcBig = data.profilePhotos[0].src_big;
         albumHeader.ImageUri = srcBig;
         string src = data.profilePhotos[0].src;
         albumHeader.ImageUriSmall = src;
         string str1 = data.profilePhotos.Count >= 2 ? data.profilePhotos[1].src_big : "";
         albumHeader.ImageUri2 = str1;
         string str2 = data.profilePhotos.Count >= 3 ? data.profilePhotos[2].src_big : "";
         albumHeader.ImageUri3 = str2;
         int profilePhotosCount = data.profilePhotosCount;
         albumHeader.PhotosCount = profilePhotosCount;
         int num = 1;
         albumHeader.AlbumType = (AlbumType)num;
         albumHeaderList.Add(albumHeader);
     }
     if (data.userPhotos.NotNullAndHasAtLeastOneNonNullElement())
     {
         nonEditAlbums.Add(new AlbumHeader()
         {
             AlbumName     = string.Format(PhotoResources.PhotosMainPage_PhotosWithFormat, data.userIns.first_name),
             ImageUri      = data.userPhotos[0].src_big,
             ImageUriSmall = data.userPhotos[0].src,
             ImageUri2     = data.userPhotos.Count >= 2 ? data.userPhotos[1].src_big : "",
             ImageUri3     = data.userPhotos.Count >= 3 ? data.userPhotos[2].src_big : "",
             PhotosCount   = data.userPhotosCount,
             AlbumType     = AlbumType.PhotosWithUser
         });
     }
     if (data.wallPhotos.NotNullAndHasAtLeastOneNonNullElement())
     {
         List <AlbumHeader> albumHeaderList = nonEditAlbums;
         AlbumHeader        albumHeader     = new AlbumHeader();
         albumHeader.AlbumName = PhotoResources.PhotosMainPage_WallPhotos;
         string srcBig = data.wallPhotos[0].src_big;
         albumHeader.ImageUri = srcBig;
         string src = data.wallPhotos[0].src;
         albumHeader.ImageUriSmall = src;
         string str1 = data.wallPhotos.Count >= 2 ? data.wallPhotos[1].src_big : "";
         albumHeader.ImageUri2 = str1;
         string str2 = data.wallPhotos.Count >= 3 ? data.wallPhotos[2].src_big : "";
         albumHeader.ImageUri3 = str2;
         int wallPhotosCount = data.wallPhotosCount;
         albumHeader.PhotosCount = wallPhotosCount;
         int num = 3;
         albumHeader.AlbumType = (AlbumType)num;
         albumHeaderList.Add(albumHeader);
     }
     if (data.savedPhotos.NotNullAndHasAtLeastOneNonNullElement())
     {
         List <AlbumHeader> albumHeaderList = nonEditAlbums;
         AlbumHeader        albumHeader     = new AlbumHeader();
         albumHeader.AlbumName = PhotoResources.PhotosMainPage_SavedPhotos;
         string srcBig = data.savedPhotos[0].src_big;
         albumHeader.ImageUri = srcBig;
         string src = data.savedPhotos[0].src;
         albumHeader.ImageUriSmall = src;
         string str1 = data.savedPhotos.Count >= 2 ? data.savedPhotos[1].src_big : "";
         albumHeader.ImageUri2 = str1;
         string str2 = data.savedPhotos.Count >= 3 ? data.savedPhotos[2].src_big : "";
         albumHeader.ImageUri3 = str2;
         int savedPhotosCount = data.savedPhotosCount;
         albumHeader.PhotosCount = savedPhotosCount;
         int num = 4;
         albumHeader.AlbumType = (AlbumType)num;
         albumHeaderList.Add(albumHeader);
     }
     foreach (Album album in data.albums)
     {
         if (album.aid != this._excludeAlbumId)
         {
             editAlbums.Add(new AlbumHeader()
             {
                 AlbumName     = album.title,
                 PhotosCount   = album.size,
                 ImageUri      = album.thumb_src,
                 ImageUriSmall = album.thumb_src_small,
                 AlbumId       = album.aid,
                 AlbumType     = AlbumType.NormalAlbum,
                 Album         = album
             });
         }
     }
 }
Ejemplo n.º 7
0
 public AlbumsController(AlbumsData data)
 {
     this.data = data;
 }