diff --git a/Habitica/res/values-en-rGB/strings.xml b/Habitica/res/values-en-rGB/strings.xml index c6fac5955..bd910561d 100644 --- a/Habitica/res/values-en-rGB/strings.xml +++ b/Habitica/res/values-en-rGB/strings.xml @@ -387,6 +387,8 @@ To start, which parts of your life do you want to improve? Scan QR Code Enter Recipient\'s User ID You were invited to join a party! + Leave Party + Are you sure you want to leave the Party? Habitica Stats Add Task Add Habit diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.java b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.java index 600c4bdf5..0e27f8558 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyFragment.java @@ -12,6 +12,7 @@ import com.magicmicky.habitrpgwrapper.lib.models.Group; import com.magicmicky.habitrpgwrapper.lib.models.UserParty; import android.app.Activity; +import android.app.AlertDialog; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.Fragment; @@ -159,11 +160,19 @@ public class PartyFragment extends BaseMainFragment { this.displayEditForm(); return true; case R.id.menu_guild_leave: - this.apiHelper.apiService.leaveGroup(this.group.id).compose(apiHelper.configureApiCallObserver()) - .subscribe(group -> { - getActivity().getSupportFragmentManager().beginTransaction().remove(PartyFragment.this).commit(); - }, throwable -> { - }); + new AlertDialog.Builder(viewPager.getContext()) + .setTitle(viewPager.getContext().getString(R.string.party_leave)) + .setMessage(viewPager.getContext().getString(R.string.party_leave_confirmation)) + .setPositiveButton(viewPager.getContext().getString(R.string.yes), (dialog, which) -> this.apiHelper.apiService.leaveGroup(this.group.id) + .compose(apiHelper.configureApiCallObserver()) + .subscribe(group -> { + getActivity().getSupportFragmentManager().beginTransaction().remove(PartyFragment.this).commit(); + }, throwable -> { + })) + .setNegativeButton(viewPager.getContext().getString(R.string.no), (dialog, which) -> { + dialog.dismiss(); + }) + .show(); return true; }