private async void CheckAlreadyExists() { var data = StorageService.Instance.Storage.RetrieveList <PassportDataModel>(); if (data != null && data.Count > 0) { var dm = data[0]; var apis = StorageService.Instance.Storage.RetrieveList <APIKeyDataModel>(); if (apis != null && apis.Count > 0) { apiKey = apis.Where(x => x.Id == dm.APIKeyFKID).FirstOrDefault(); } RequestToken = new OAuthRequestToken() { Token = dm.Token, TokenSecret = dm.TokenSecret }; AccessToken = new OAuthAccessToken() { Username = dm.UserName, FullName = dm.FullName, ScreenName = dm.ScreenName, Token = dm.Token, TokenSecret = dm.TokenSecret, UserId = dm.UserId, }; IsLoggedIn = true; _flickr.OAuthAccessToken = AccessToken.Token; _flickr.OAuthAccessTokenSecret = AccessToken.TokenSecret; _flickr.ApiKey = apiKey.APIKey; _flickr.ApiSecret = apiKey.APISecret; var p = await _flickr.PeopleGetInfoAsync(AccessToken.UserId); if (!p.HasError) { LoggedInUser = p.Result; } var favs = await _flickr.FavoritesGetListAsync(AccessToken.UserId); if (!favs.HasError) { Favourites = favs.Result; } } }
private async void PopulatePassportData() { if (apiKey == null) { IsLoginVisible = Visibility.Visible; return; } var data = StorageService.Instance.Storage.RetrieveList <PassportDataModel>(); if (data != null && data.Count > 0) { IsLoginVisible = Visibility.Visible; IsTabsVisible = Visibility.Collapsed; var dm = data.Where(x => x.PassType == GroupingType).FirstOrDefault(); if (dm != null) { IsLoginVisible = Visibility.Collapsed; IsTabsVisible = Visibility.Visible; RequestToken = new OAuthRequestToken() { Token = dm.Token, TokenSecret = dm.TokenSecret }; AccessToken = new OAuthAccessToken() { Username = dm.UserName, FullName = dm.FullName, ScreenName = dm.ScreenName, Token = dm.Token, TokenSecret = dm.TokenSecret, UserId = dm.UserId, }; //IsLoggedIn = true; _flickr.OAuthAccessToken = AccessToken.Token; _flickr.OAuthAccessTokenSecret = AccessToken.TokenSecret; _flickr.ApiKey = apiKey.APIKey; _flickr.ApiSecret = apiKey.APISecret; var p = await _flickr.PeopleGetInfoAsync(AccessToken.UserId); if (!p.HasError) { LoggedInUser = p.Result; } var favs = await _flickr.FavoritesGetListAsync(AccessToken.UserId); if (!favs.HasError) { var temp = new PhotoCollection(); foreach (var fav in favs.Result) { //fav.MachineTags = "https://c1.staticflickr.com/1/523/buddyicons/118877287@N03_l.jpg?1437204284#118877287@N03"; fav.MachineTags = $"https://c1.staticflickr.com/{fav.IconFarm}/{fav.IconServer}/buddyicons/{fav.UserId}.jpg?"; temp.Add(fav); } FavouritePhotos = temp; } } } else { //no passport so show login button IsLoginVisible = Visibility.Visible; IsTabsVisible = Visibility.Collapsed; } }
private async void LoadDataSource(OAuthAccessToken accessToken) { var f = new Flickr("dbc316af64fb77dae9140de64262da0a", "0781969a058a2745") { OAuthAccessToken = accessToken.Token, OAuthAccessTokenSecret = accessToken.TokenSecret }; var groups = DefaultViewModel["Groups"] as ObservableCollection<SampleDataGroup>; groups.Clear(); var photostreamGroup = new SampleDataGroup("A", "Your Photos", "Photostream", "", ""); groups.Add(photostreamGroup); var contactsGroup = new SampleDataGroup("A", "Your Contact", "Latest Updates", "", ""); groups.Add(contactsGroup); var favouritesGroup = new SampleDataGroup("A", "Your Favourites", "Favourite Photos", "", ""); groups.Add(favouritesGroup); var photos = await f.PeopleGetPhotosAsync(accessToken.UserId, SafetyLevel.None, null, null, null, null, ContentTypeSearch.None, PrivacyFilter.None, PhotoSearchExtras.Description | PhotoSearchExtras.LargeUrl, 1, 30); foreach ( var photo in photos.Select( p => new SampleDataItem(p.PhotoId, p.Title, "", p.LargeUrl, p.Description, p.Description, photostreamGroup)) ) { photostreamGroup.Items.Add(photo); } photos = await f.PhotosGetContactsPhotosAsync(extras: PhotoSearchExtras.Description | PhotoSearchExtras.LargeUrl | PhotoSearchExtras.OwnerName); foreach ( var photo in photos.Select( p => new SampleDataItem(p.PhotoId, p.Title, p.OwnerName, p.LargeUrl, p.Description, p.Description, contactsGroup)) ) { contactsGroup.Items.Add(photo); } photos = await f.FavoritesGetListAsync(extras: PhotoSearchExtras.Description | PhotoSearchExtras.LargeUrl | PhotoSearchExtras.OwnerName); foreach ( var photo in photos.Select( p => new SampleDataItem(p.PhotoId, p.Title, p.OwnerName, p.LargeUrl, p.Description, p.Description, favouritesGroup)) ) { favouritesGroup.Items.Add(photo); } }