public async Task <bool> UploadSessions(int index, bool recursive) { if (adapter.Sessions.ElementAtOrDefault(index) == null) { return(false); } var sessionsUploadButton = Activity.FindViewById <AppCompatButton>(Resource.Id.upload_sessions); sessionsUploadButton.Enabled = false; adapter.SessionIsUploading(index); LOG_EVENT_WITH_ACTION("UPLOAD_SESSION", "ATTEMPT"); var didUpload = await RestClient.Upload(adapter.Sessions[index]); if (didUpload) { LOG_EVENT_WITH_ACTION("UPLOAD_SESSION", "SUCCESS"); LOG_UPLOAD_ONE(adapter.Sessions[index]); adapter.SessionIsUploaded(index); Toast.MakeText(Activity, StringResources.sessions_ui_message_upload_success, ToastLength.Long).Show(); ISharedPreferences prefs = PreferenceManager.GetDefaultSharedPreferences(Activity); if (!prefs.GetBoolean("HAS_DISMISSED_DEBRIEF", false)) { StartActivity(new Intent(Activity, typeof(FirstDebriefActivity))); } else { if (recursive) { await UploadSessions(0, true); } } } else { LOG_EVENT_WITH_ACTION("UPLOAD_SESSION", "FAIL"); adapter.SessionUploadFail(index); Toast.MakeText(Activity, StringResources.sessions_ui_message_upload_fail, ToastLength.Long).Show(); } sessionsUploadButton.Enabled = true; ShowHideInstructions(); return(true); }
public async Task <bool> UploadSessions(int index, bool recursive) { if (adapter.Sessions.ElementAtOrDefault(index) == null) { return(false); } var sessionsUploadButton = Activity.FindViewById <AppCompatButton>(Resource.Id.upload_sessions); sessionsUploadButton.Enabled = false; adapter.SessionIsUploading(index); LOG_EVENT_WITH_ACTION("UPLOAD_SESSION", "ATTEMPT"); var didUpload = await new RestClient().Upload(adapter.Sessions[index]); if (didUpload) { LOG_EVENT_WITH_ACTION("UPLOAD_SESSION", "SUCCESS"); LOG_UPLOAD_ONE(adapter.Sessions[index]); adapter.SessionIsUploaded(index); Toast.MakeText(Activity, StringResources.sessions_ui_message_upload_success, ToastLength.Long).Show(); if (recursive) { await UploadSessions(0, true); } } else { LOG_EVENT_WITH_ACTION("UPLOAD_SESSION", "FAIL"); adapter.SessionUploadFail(index); Toast.MakeText(Activity, StringResources.sessions_ui_message_upload_fail, ToastLength.Long).Show(); } sessionsUploadButton.Enabled = true; ShowHideInstructions(); return(true); }