public async Task <bool> DeleteItemAsync(string id) { var firebaseUserInfo = await FirebaseUserInfo.ReadFromDevice(); if (string.IsNullOrEmpty(id) || firebaseUserInfo == null || !CrossConnectivity.Current.IsConnected) { return(false); } await SetAuthenticationHeader(); var response = await client.DeleteAsync($"entry/{firebaseUserInfo.Id}/{id}"); return(response.IsSuccessStatusCode); }
public async Task <bool> SubmitTimecardAsync(TimecardSubmission timecardSubmission) { var firebaseUserInfo = await FirebaseUserInfo.ReadFromDevice(); if (timecardSubmission == null || firebaseUserInfo == null || !CrossConnectivity.Current.IsConnected) { return(false); } await SetAuthenticationHeader(); var serializedSubmission = JsonConvert.SerializeObject(timecardSubmission, _serializerSettings); var response = await client.PostAsync($"submit/{firebaseUserInfo.Id}", new StringContent(serializedSubmission, Encoding.UTF8, "application/json")); return(response.IsSuccessStatusCode); }
public async Task <bool> UpdateItemAsync(Item item) { var firebaseUserInfo = await FirebaseUserInfo.ReadFromDevice(); if (item == null || item.Id == null || firebaseUserInfo == null || !CrossConnectivity.Current.IsConnected) { return(false); } await SetAuthenticationHeader(); var serializedItem = JsonConvert.SerializeObject(item, _serializerSettings); var response = await client.PostAsync($"entry/{firebaseUserInfo.Id}/{item.Id}", new StringContent(serializedItem, Encoding.UTF8, "application/json")); return(response.IsSuccessStatusCode); }
public async Task <IEnumerable <Item> > GetItemsAsync(bool forceRefresh = false) { if (forceRefresh && CrossConnectivity.Current.IsConnected) { var firebaseUserInfo = await FirebaseUserInfo.ReadFromDevice(); if (firebaseUserInfo != null) { await SetAuthenticationHeader(); var json = await client.GetStringAsync($"entries/{firebaseUserInfo.Id}"); items = await Task.Run(() => JsonConvert.DeserializeObject <IEnumerable <Item> >(json)); } } return(items); }