Ejemplo n.º 1
0
 public NewsLetter(IMapper _mapper, Subreddits _subreddits, IUser _user, ISubreddit _reddit)
 {
     this._mapper     = _mapper;
     this._subreddits = _subreddits;
     this._reddit     = _reddit;
     this._user       = _user;
 }
Ejemplo n.º 2
0
 public RedditController(IMapper _mapper, ISubreddit _reddit, IUser _user, Subreddits _subreddit)
 {
     this._reddit    = _reddit;
     this._mapper    = _mapper;
     this._user      = _user;
     this._subreddit = _subreddit;
 }
Ejemplo n.º 3
0
        private async void GetReddits()
        {
            if (Subreddits.LoggedIn)
            {
                try
                {
                    HttpClientHandler handler = new HttpClientHandler();

                    //var request = (HttpWebRequest)WebRequest.Create("http://www.reddit.com/reddits/mine.json");
                    //request.CookieContainer = new CookieContainer();

                    Cookie c = new Cookie("reddit_session", App.cookie.Replace(",", "%2C"));
                    handler.CookieContainer.Add(new Uri("http://www.reddit.com"), c);

                    App.JsonClient = new HttpClient(handler);

                    var response = App.JsonClient.GetAsync("http://www.reddit.com/reddits/mine.json").Result.Content;
                    await Subreddits.LoadCollection(response);
                }
                catch (Exception)
                {
                }
            }
            else
            {
                App.JsonClient = new HttpClient();
                var response = App.JsonClient.GetAsync("http://www.reddit.com/reddits.json").Result.Content;
                await Subreddits.LoadCollection(response);
            }

            ItemListView.ScrollIntoView(ItemListView.Items[0]);
        }
Ejemplo n.º 4
0
        private async Task InitializeImpl()
        {
            _comments = await Comments.GetInstance();

            _links = await Links.GetInstance();

            _subreddits = await Subreddits.GetInstance();

            //tell the key value pair infrastructure to allow duplicates
            //we dont really have a key, all we actually wanted was an ordered queue
            //the duplicates mechanism should give us that
            _actionsDb = await DB.CreateAsync(Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\actions.ism", DBCreateFlags.None,
                                              ushort.MaxValue - 100,
                                              new DBKey[] { new DBKey(8, 0, DBKeyFlags.KeyValue, "default", true, false, false, 0) });

            _historyDb = await DB.CreateAsync(Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\history.ism", DBCreateFlags.None);

            _settingsDb = await DB.CreateAsync(Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\settings.ism", DBCreateFlags.None);

            _blobStoreDb = await DB.CreateAsync(Windows.Storage.ApplicationData.Current.LocalFolder.Path + "\\blobs.ism", DBCreateFlags.None);

            //get our initial action queue state
            var actionCursor = await _actionsDb.SeekAsync(_actionsDb.GetKeys().First(), "action", DBReadFlags.AutoLock);

            _hasQueuedActions = actionCursor != null;

            var historyCursor = await _historyDb.SeekAsync(DBReadFlags.NoLock);

            if (historyCursor != null)
            {
                using (historyCursor)
                {
                    do
                    {
                        _clickHistory.Add(historyCursor.GetString());
                    } while (await historyCursor.MoveNextAsync());
                }
            }

            _settingsCache = new Dictionary <string, string>();
            //load all of the settings up front so we dont spend so much time going back and forth
            var cursor = await _settingsDb.SeekAsync(DBReadFlags.NoLock);

            if (cursor != null)
            {
                using (cursor)
                {
                    do
                    {
                        _settingsCache.Add(cursor.GetKeyString(), cursor.GetString());
                    } while (await cursor.MoveNextAsync());
                }
            }
        }
Ejemplo n.º 5
0
 /// <summary>
 /// Keep track of requests across all models.
 /// </summary>
 /// <param name="sender">The sender</param>
 /// <param name="e">A valid RequestsUpdateEventArgs instance</param>
 public void C_RequestsUpdated(object sender, RequestsUpdateEventArgs e)
 {
     Account.UpdateRequests(e.Requests);
     Emoji.UpdateRequests(e.Requests);
     Flair.UpdateRequests(e.Requests);
     LinksAndComments.UpdateRequests(e.Requests);
     Listings.UpdateRequests(e.Requests);
     LiveThreads.UpdateRequests(e.Requests);
     Misc.UpdateRequests(e.Requests);
     Moderation.UpdateRequests(e.Requests);
     Modmail.UpdateRequests(e.Requests);
     Multis.UpdateRequests(e.Requests);
     PrivateMessages.UpdateRequests(e.Requests);
     RedditGold.UpdateRequests(e.Requests);
     Search.UpdateRequests(e.Requests);
     Subreddits.UpdateRequests(e.Requests);
     Users.UpdateRequests(e.Requests);
     Widgets.UpdateRequests(e.Requests);
     Wiki.UpdateRequests(e.Requests);
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Propagate token across all models.
 /// </summary>
 /// <param name="sender">The sender</param>
 /// <param name="e">A valid TokenUpdateEventArgs instance</param>
 public void C_TokenUpdated(object sender, TokenUpdateEventArgs e)
 {
     Account.UpdateAccessToken(e.AccessToken);
     Emoji.UpdateAccessToken(e.AccessToken);
     Flair.UpdateAccessToken(e.AccessToken);
     LinksAndComments.UpdateAccessToken(e.AccessToken);
     Listings.UpdateAccessToken(e.AccessToken);
     LiveThreads.UpdateAccessToken(e.AccessToken);
     Misc.UpdateAccessToken(e.AccessToken);
     Moderation.UpdateAccessToken(e.AccessToken);
     Modmail.UpdateAccessToken(e.AccessToken);
     Multis.UpdateAccessToken(e.AccessToken);
     OAuthCredentials.UpdateAccessToken(e.AccessToken);
     PrivateMessages.UpdateAccessToken(e.AccessToken);
     RedditGold.UpdateAccessToken(e.AccessToken);
     Search.UpdateAccessToken(e.AccessToken);
     Subreddits.UpdateAccessToken(e.AccessToken);
     Users.UpdateAccessToken(e.AccessToken);
     Widgets.UpdateAccessToken(e.AccessToken);
     Wiki.UpdateAccessToken(e.AccessToken);
 }
 public async Task AddSubreddit(SubredditItem subreddit)
 {
     subreddit.IsFavorited = true;
     Subreddits.Insert(0, subreddit);
     await SaveSubreddits();
 }
 public async Task RemoveSubreddit(SubredditItem subreddit)
 {
     subreddit.IsFavorited = false;
     Subreddits.Remove(Subreddits.Where(s => s.Url == subreddit.Url).First());
     await SaveSubreddits();
 }
Ejemplo n.º 9
0
        private void LoadData()
        {
            Subreddits subreddits = new Subreddits();

            this.cmbSubreddits.DataSource = subreddits.SubredditsList;
        }