private async void ExecuteCreateGroupCommand() { //checking for connectivity var network = Connectivity.NetworkAccess; if (network != NetworkAccess.Internet) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: No internet access", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } //checking for null if (string.IsNullOrEmpty(GroupName) || string.IsNullOrEmpty(Description)) { await MaterialDialog.Instance.SnackbarAsync(message : "Error: Fill the required fields", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } IsBusy = true; if (a == "1") { groupPic = await remoteService.UploadFile(mediaFile.GetStream(), Path.GetFileName(mediaFile.Path)); } else { groupPic = "https://firebasestorage.googleapis.com/v0/b/naijaconnect-3b414.appspot.com/o/Naija%20Connect%20Images%2Fgroup_chat_picture.png?alt=media&token=547a5d56-3c2c-4811-849c-14a7f55132ed"; } var group = new Group() { Name = GroupName.Trim(), Description = Description.Trim(), Avatar = groupPic }; var createGroup = await remoteService.CreateGroup(group); if (!string.IsNullOrEmpty(createGroup)) { var final = new Group() { Name = GroupName.Trim(), Description = Description.Trim(), Avatar = groupPic, Id = createGroup }; var create = await remoteService.UpdateGroup(final); IsBusy = false; if (create) { var parameters = new NavigationParameters(); parameters.Add("groupName", final.Name); parameters.Add("groupId", final.Id); parameters.Add("groupAvatar", final.Avatar); await NavigationService.NavigateAsync("GroupChatPage", parameters); } else { await MaterialDialog.Instance.SnackbarAsync(message : "Error occured", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } } else { IsBusy = false; await MaterialDialog.Instance.SnackbarAsync(message : "Error occured", actionButtonText : "OK", msDuration : 3000, configuration : App.snackBarConfiguration); return; } }