package com.xabber.android.ui.dialog;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.Toast;
import com.xabber.android.R;
import com.xabber.android.data.Application;
import com.xabber.android.data.account.AccountManager;
import com.xabber.android.data.entity.AccountJid;
import com.xabber.android.data.extension.blocking.BlockingManager;
public class UnblockAllContactsDialog extends DialogFragment implements DialogInterface.OnClickListener, BlockingManager.BlockContactListener, BlockingManager.UnblockContactListener {
public static final String ARGUMENT_ACCOUNT = "com.xabber.android.ui.dialog.UnblockAllContactsDialog.ARGUMENT_ACCOUNT";
private AccountJid account;
public static UnblockAllContactsDialog newInstance(AccountJid account) {
UnblockAllContactsDialog fragment = new UnblockAllContactsDialog();
Bundle arguments = new Bundle();
arguments.putParcelable(ARGUMENT_ACCOUNT, account);
fragment.setArguments(arguments);
return fragment;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
Bundle args = getArguments();
account = args.getParcelable(ARGUMENT_ACCOUNT);
return new AlertDialog.Builder(getActivity())
.setMessage(String.format(getActivity().getString(R.string.unblock_all_contacts_confirm),
AccountManager.getInstance().getVerboseName(account)))
.setPositiveButton(R.string.unblock_all, this)
.setNegativeButton(android.R.string.cancel, this).create();
}
@Override
public void onClick(DialogInterface dialog, int which) {
if (which == Dialog.BUTTON_POSITIVE) {
BlockingManager.getInstance().unblockAll(account, this);
}
}
@Override
public void onSuccess() {
Toast.makeText(Application.getInstance(),
Application.getInstance().getString(R.string.contacts_unblocked_successfully),
Toast.LENGTH_SHORT).show();
}
@Override
public void onError() {
Toast.makeText(Application.getInstance(),
Application.getInstance().getString(R.string.error_unblocking_contacts),
Toast.LENGTH_SHORT).show();
}
}