Exemple #1
0
        /// <summary>
        /// Add strava activity to database.
        /// </summary>
        /// <param name="athleteId">Strava Athlete Id</param>
        /// <param name="item">Strava Summary infomation</param>
        /// <returns></returns>
        private Activity InsertActivity(StravaDotNetActivities.ActivitySummary item)
        {
            Models.Activity s = new Models.Activity();

            try
            {
                s.AthleteId = _fvAthlete.Id;

                UpdateActivityDetails(item, s);

                s.DetailsDownloaded = false;

                // get the weight on the activty date on/before activity.
                ActivityWeight w = new ActivityWeight(_userId, item.Id);
                s.Weight = w.GetActivityWeight();
            }
            catch (Exception ex)
            {
                // catches event types (i.e. watersport) which aren't handled.  Ignoring these activities for now
                System.Diagnostics.Debug.WriteLine(ex.Message);
                return(null);
            }

            return(s);
        }
        /// <summary>
        /// Dummy method to test downloads.
        /// </summary>
        /// <returns></returns>
        public void Download(bool fullDownload)
        {
            RefreshToken();

            // which metrics are we interested in?
            List <TimeSeriesResourceType> series = new List <TimeSeriesResourceType>()
            {
                TimeSeriesResourceType.TimeEnteredBed,
                TimeSeriesResourceType.MinutesAsleep,
                TimeSeriesResourceType.TimeInBed,
                TimeSeriesResourceType.CaloriesIn,
                TimeSeriesResourceType.Weight,
                TimeSeriesResourceType.Fat
            };

            foreach (TimeSeriesResourceType r in series)
            {
                DownloadMetric(r, true);
            }

            // as weight details have changed we need to refresh weights recorded against activities
            ActivityWeight w = new ActivityWeight(_userId);

            w.UpdateActivityWeight();

            _unitOfWork.Complete();
            return;
        }