void BtnSaveLoginDetailsClick(object sender, EventArgs e) { GarminConnectAPI gc = new GarminConnectAPI(); if (gc.Login(txtUsername.Text, txtPassword.Text)) { _gc_user = txtUsername.Text; _gc_password = txtPassword.Text; this.DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("GarminConnect: Login failed. Incorrect username / password ?"); } }
void checkForGarminConnectDetails() { try{ SetControlPropertyThreadSafe(tStatusText, "Text", "Checking GarminConnect authentication details..."); _gc_user = loadDbSetting("gc_user", ""); _gc_password = loadDbSetting("gc_password", ""); if (_gc_user != "" && _gc_password != "") { _gc = new GarminConnectAPI(); _gc_login = _gc.Login(_gc_user, _gc_password); } } catch (Exception ex) { this.Invoke((MethodInvoker) delegate { MessageBox.Show("GarminConnect: Login Exception.\r\n" + ex.Message); }); } }
void loadProfile() { SetStatusProgressThreadSafe(statusBar, "Maximum", 3); SetStatusProgressThreadSafe(statusBar, "Value", 0); SetStatusTextThreadSafe(statusBar, "Logging in to GarminConnect..."); // Log in to GarminConnect, display error if failed _gc = new GarminConnectAPI(); if (!_gc.Login(_gc_user, _gc_password)) { MessageBox.Show("GarminConnect login failed"); this.Close(); } SetStatusProgressThreadSafe(statusBar, "Value", 1); SetStatusTextThreadSafe(statusBar, "Loading User Metrics..."); garminMetric[] metrics = _gc.GetMetrics(); if (metrics != null) { // load the metrics into the metrics list view for (int m = 0; m < metrics.Length; m++) { TimeSpan ts = TimeSpan.FromSeconds(Convert.ToDouble(metrics[m].totalDuration)); string[] stat = { metrics[m].month, metrics[m].totalActivities, string.Format("{0:0.00} miles", (Convert.ToDouble(metrics[m].totalDistance) / 1000) * 0.621371), string.Format("{0:D2} days {1:D2} h {2:D2} m {3:D2} s",Convert.ToInt32(Math.Floor(ts.TotalDays)), ts.Hours,ts.Minutes, ts.Seconds), string.Format("{0:0.00} mph", (((Convert.ToDouble(metrics[m].totalDistance) / 1000) / (Convert.ToDouble(metrics[m].totalDuration) / 3600)) * 0.621371)), string.Format("{0:0.00} ft", Convert.ToDouble(metrics[m].totalElevationGain) * 3.2808399), string.Format("{0:0}", Convert.ToDouble(metrics[m].totalCalories)) }; AddListViewItem(lstUserMetrics, new ListViewItem(stat)); } } ResizeListView(lstUserMetrics); SetStatusProgressThreadSafe(statusBar, "Value", 2); SetStatusTextThreadSafe(statusBar, "Retrieving Activity Information..."); List <GarminActivityListItem> activities = _gc.GetLastActivities(this); for (int a = 0; a < activities.Count; a++) { string[] row = { activities[a].activityId.ToString(), activities[a].startTime, activities[a].activityName, activities[a].duration.ToString(), activities[a].distance, activities[a].elevationGain, activities[a].speedAvg, activities[a].cadenceAvg, activities[a].heartRateAvg, activities[a].cadenceMax, activities[a].heartRateMax, activities[a].speedMax, activities[a].tempMin, activities[a].tempAvg, activities[a].durationElapsed, activities[a].uploadDate, activities[a].deviceName }; AddListViewItem(lstActivities, new ListViewItem(row)); } ResizeListView(lstActivities); SetStatusProgressThreadSafe(statusBar, "Maximum", 3); SetStatusProgressThreadSafe(statusBar, "Value", 3); SetStatusTextThreadSafe(statusBar, "Done."); }