Ejemplo n.º 1
0
        /// <summary>
        /// Gets latest tweets from a user
        /// </summary>
        /// <param name="userName">The user to retrieve the twweets from</param>
        /// <param name="count">The max number of tweets to retrieve</param>
        /// <param name="minDateTime">The min date time</param>
        /// <returns>A list of NewsItems</returns>
        public List <NewsItem> GetItemsFromTwitter(string userName, int count, DateTimeOffset minDateTime)
        {
            var proxy = TwitterProxyFactory.GetProxy();

            if (!proxy.HasKeys)
            {
                return(new List <NewsItem>());
            }
            try
            {
                var lines = GetReadNews();
                var items = proxy.GetTweets(userName, count).Where(t => t.CreatedAt >= minDateTime).Select(t => new NewsItem
                {
                    DateTime   = t.CreatedAt,
                    Title      = t.Text,
                    Link       = string.Format("{0}/{1}/status/{2}", "https://twitter.com", userName, t.ID),
                    SourceName = "Twitter - " + userName
                }).ToList();
                items.ForEach(i =>
                {
                    i.Tag   = GetSavedFormat(i);
                    i.IsNew = !lines.Any(l => l == i.Tag);
                });
                return(items);
            }
            catch (Exception ex)
            {
                if (CoinTNet.Properties.Settings.Default.LogNewsErrors)
                {
                    Logger.Log(ex);
                }
            }
            return(new List <NewsItem>());
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Saves the new API parameters
 /// </summary>
 /// <returns></returns>
 public bool Save()
 {
     if (txtSecret.Text != _apiParams.SecretKey || txtKey.Text != _apiParams.ConsumerKey)
     {
         var p = new TwitterAPIParams
         {
             ConsumerKey = txtKey.Text,
             SecretKey   = txtSecret.Text,
         };
         SecureStorage.SaveEncryptedData(p, SecuredDataKeys.TwitterAPI);
         TwitterProxyFactory.NotifySettingsChanged();
     }
     return(true);
 }