package bf.io.openshop.ux.dialogs;
import android.app.Dialog;
import android.content.Intent;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.DialogFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import bf.io.openshop.R;
import bf.io.openshop.SettingsMy;
import bf.io.openshop.entities.Shop;
import bf.io.openshop.utils.Analytics;
import bf.io.openshop.ux.RestartAppActivity;
import timber.log.Timber;
public class RestartDialogFragment extends DialogFragment {
private Shop newShopSelected;
public static RestartDialogFragment newInstance(Shop selectedShop) {
RestartDialogFragment frag = new RestartDialogFragment();
frag.newShopSelected = selectedShop;
return frag;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setStyle(DialogFragment.STYLE_NO_TITLE, android.R.style.Theme_Holo_Light_Dialog_NoActionBar_MinWidth);
}
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
Dialog dialog = super.onCreateDialog(savedInstanceState);
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
dialog.getWindow().setWindowAnimations(R.style.dialogFragmentAnimation);
return dialog;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
Timber.d("%s - OnCreateView", this.getClass().getSimpleName());
View view = inflater.inflate(R.layout.dialog_restart_app, container, false);
Button okBtn = (Button) view.findViewById(R.id.dialog_restart_app_ok);
okBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Analytics.logShopChange(SettingsMy.getActualNonNullShop(getActivity()), newShopSelected);
Analytics.deleteAppTrackers();
// Log out user, change actual shop and restart
SettingsMy.setActiveUser(null);
SettingsMy.setActualShop(newShopSelected);
Intent i = new Intent(getActivity(), RestartAppActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(i);
getActivity().finish();
dismiss();
}
});
Button cancelBtn = (Button) view.findViewById(R.id.dialog_restart_app_cancel);
cancelBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dismiss();
}
});
return view;
}
}