示例#1
0
        protected void btnSaveContact_Click(object sender, EventArgs e)
        {
            HelperMethods.ActivityTracker.Track("Saved New Contact Info", (int)UserActionEnum.Updated);

            try
            {
                // Grab current user ID
                string userId = HttpContext.Current.Session["UserId"].ToString();

                // Query database
                HPSUser user = db.HPSUsers.Where(u => u.UserId == userId).SingleOrDefault();

                // Update the information
                user.FirstName = txtFN.Text;
                user.LastName  = txtLN.Text;

                if (txtEmail.Text != user.AspNetUser.Email)
                {
                    user.AspNetUser.EmailConfirmed = false;
                }

                user.AspNetUser.Email = txtEmail.Text;

                if (txtPhone.Text != user.AspNetUser.PhoneNumber)
                {
                    user.AspNetUser.PhoneNumberConfirmed = false;
                }

                user.AspNetUser.PhoneNumber = txtPhone.Text;

                // Change the entry state
                db.Entry(user).State = System.Data.Entity.EntityState.Modified;

                // Save to DB
                db.SaveChanges();

                // Display success message
                lblContactSuccess.Text = "<br><br>Contact Information Changes Saved.";
            }
            catch (DataException dx)
            {
                lblContactErrors.Text += "A data error occured, contact your administrator if this continues to happen.<br>";
                LogFile.WriteToFile("UserSettings.aspx.cs", "btnSaveContact_Click", dx, "Database failed to save updated contact information", "HPSErrorLog.txt");
            }
            catch (Exception ex)
            {
                lblContactErrors.Text += "An error occured, contact your administrator if this continues to happen.<br>";
                LogFile.WriteToFile("UserSettings.aspx.cs", "btnSaveContact_Click", ex, "Database failed to save updated contact information", "HPSErrorLog.txt");
            }
        }
示例#2
0
        protected void PopulateStatistics(string userId, string statisticType)
        {
            HPSUser user = db.HPSUsers.Where(u => u.UserId == userId).SingleOrDefault();

            if (statisticType == "Steps")
            {
                // Get All Data
                int?     max     = db.Steps.Where(d => d.UserId.Contains(userId)).Max(s => (int?)s.StepCount);
                int?     sum     = db.Steps.Where(d => d.UserId.Contains(userId)).Sum(s => (int?)s.StepCount);
                double?  avg     = db.Steps.Where(d => d.UserId.Contains(userId)).Average(s => (double?)s.StepCount);
                int?     min     = db.Steps.Where(d => d.UserId.Contains(userId)).Where(s => s.StepCount > 0).Min(s => (int?)s.StepCount);
                int?     total   = db.Steps.Where(d => d.UserId.Contains(userId)).Count();
                DateTime?minDate = Convert.ToDateTime(db.Steps.Where(d => d.UserId.Contains(userId)).Min(d => d.StepDate));
                DateTime?maxDate = Convert.ToDateTime(db.Steps.Where(d => d.UserId.Contains(userId)).Max(d => d.StepDate));

                // Display Data
                lblStepsUserValue.Text         = (user == null) ? "All Users Combined" : user.FirstName + " " + user.LastName;
                lblStepsMaxValue.Text          = (max == 0 || max == null) ? "No data found." : ((int)max).ToString("N0");
                lblStepsSumValue.Text          = (sum == 0 || sum == null) ? "No data found." : ((int)sum).ToString("N0");
                lblStepsAvgValue.Text          = (avg == 0 || avg == null) ? "No data found." : ((double)avg).ToString("N0");
                lblStepsMinValue.Text          = (min == 0 || min == null) ? "No data found." : ((int)min).ToString("N0");
                lblStepsTotalRecordsValue.Text = (total == 1 || max == null) ? "No data found." : ((int)total) + " records";
                lblStepsDateRangeValue.Text    = (max == null || max == 0 || sum == null || sum == 0 || avg == null || avg == 0 || min == null || min == 0 || total == null || total == 1) ? "No data found." : ((DateTime)minDate).ToShortDateString() + " - " + ((DateTime)maxDate).ToShortDateString();
            }
            else if (statisticType == "Distances")
            {
                // Get All Data
                decimal? max     = db.Distances.Where(d => d.UserId.Contains(userId)).Max(s => (decimal?)s.DistanceCount);
                decimal? sum     = db.Distances.Where(d => d.UserId.Contains(userId)).Sum(s => (decimal?)s.DistanceCount);
                decimal? avg     = db.Distances.Where(d => d.UserId.Contains(userId)).Average(s => (decimal?)s.DistanceCount);
                decimal? min     = db.Distances.Where(d => d.UserId.Contains(userId)).Where(s => s.DistanceCount > 0).Min(s => (decimal?)s.DistanceCount);
                int?     total   = db.Distances.Where(d => d.UserId.Contains(userId)).Count();
                DateTime?minDate = Convert.ToDateTime(db.Distances.Where(d => d.UserId.Contains(userId)).Min(d => d.DistanceDate));
                DateTime?maxDate = Convert.ToDateTime(db.Distances.Where(d => d.UserId.Contains(userId)).Max(d => d.DistanceDate));

                // Display Data
                lblDistancesUserValue.Text           = (user == null) ? "All Users Combined" : user.FirstName + " " + user.LastName;
                lblDistancesMaxValue.Text            = (max == 0 || max == null) ? "No data found." : ((decimal)max).ToString("N2") + " km";
                lblDistancesSumValue.Text            = (sum == 0 || sum == null) ? "No data found." : ((decimal)sum).ToString("N2") + " km";
                lblDistancesAvgValue.Text            = (avg == 0 || avg == null) ? "No data found." : ((decimal)avg).ToString("N2") + " km";
                lblDistancesMinValue.Text            = (min == 0 || min == null) ? "No data found." : ((decimal)min).ToString("N2") + " km";
                lblDistancesTotalRecordsValue.Text   = (total == 1 || max == null) ? "No data found." : ((int)total) + " records";
                lblDistancesDateRangeEntryValue.Text = (max == null || max == 0 || sum == null || sum == 0 || avg == null || avg == 0 || min == null || min == 0 || total == null || total == 1) ? "No data found." : ((DateTime)minDate).ToShortDateString() + " - " + ((DateTime)maxDate).ToShortDateString();
            }
            else
            {
                // Get All Data
                decimal? max     = db.Minutes.Where(d => d.UserId.Contains(userId)).Max(s => (decimal?)s.MinuteCount);
                decimal? sum     = db.Minutes.Where(d => d.UserId.Contains(userId)).Sum(s => (decimal?)s.MinuteCount);
                decimal? avg     = db.Minutes.Where(d => d.UserId.Contains(userId)).Average(s => (decimal?)s.MinuteCount);
                decimal? min     = db.Minutes.Where(d => d.UserId.Contains(userId)).Where(s => s.MinuteCount > 0).Min(s => (decimal?)s.MinuteCount);
                int?     total   = db.Minutes.Where(d => d.UserId.Contains(userId)).Count();
                DateTime?minDate = Convert.ToDateTime(db.Minutes.Where(d => d.UserId.Contains(userId)).Min(d => d.MinuteDate));
                DateTime?maxDate = Convert.ToDateTime(db.Minutes.Where(d => d.UserId.Contains(userId)).Max(d => d.MinuteDate));

                // Display Data
                lblMinutesUserValue.Text         = (user == null) ? "All Users Combined" : user.FirstName + " " + user.LastName;
                lblMinutesMaxValue.Text          = (max == 0 || max == null) ? "No data found." : ((decimal)max).ToString("N0") + " min";
                lblMinutesSumValue.Text          = (sum == 0 || sum == null) ? "No data found." : ((decimal)sum).ToString("N0") + " min";
                lblMinutesAvgValue.Text          = (avg == 0 || avg == null) ? "No data found." : ((decimal)avg).ToString("N0") + " min";
                lblMinutesMinValue.Text          = (min == 0 || min == null) ? "No data found." : ((decimal)min).ToString("N0") + " min";
                lblMinutesTotalRecordsValue.Text = (total == 1 || max == null) ? "No data found." : ((int)total) + " records";
                lblMinutesDateRangeValue.Text    = (max == null || max == 0 || sum == null || sum == 0 || avg == null || avg == 0 || min == null || min == 0 || total == null || total == 1) ? "No data found." : ((DateTime)minDate).ToShortDateString() + " - " + ((DateTime)maxDate).ToShortDateString();
            }
        }