package com.xiaomi.xms.sales.activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.text.TextUtils;
import com.xiaomi.xms.sales.R;
import com.xiaomi.xms.sales.ShopIntentService;
import com.xiaomi.xms.sales.ShopIntentServiceAction;
import com.xiaomi.xms.sales.ui.ProductDetailsFragment;
import com.xiaomi.xms.sales.util.Constants;
import com.xiaomi.xms.sales.util.ToastUtil;
public class ProductDetailsActivity extends BaseActivity {
public static final String TAG = "ProductDetailsActivity";
public static final String TAG_PRODUCT_DETAILS = "tag_product_details";
private ProductDetailsFragment mProductDetailsFragment;
private ShopIntentServiceAction mAddShoppingcartAction;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setCustomContentView(R.layout.product_details_activity);
showFragment(TAG_PRODUCT_DETAILS, getIntent().getExtras(), false);
}
@Override
public void onNewIntent(Intent intent) {
setIntent(intent);
}
@Override
protected Fragment newFragmentByTag(String tag) {
Fragment fragment = null;
if (TAG_PRODUCT_DETAILS.equals(tag)) {
mProductDetailsFragment = new ProductDetailsFragment();
fragment = mProductDetailsFragment;
}
return fragment;
}
@Override
public void onServiceCompleted(String action, Intent callbackIntent) {
super.onServiceCompleted(action, callbackIntent);
if (TextUtils.equals(action, Constants.Intent.ACTION_ADD_SHOPPING_CART)) {
if (mProductDetailsFragment != null) {
String result = callbackIntent.getStringExtra(
Constants.Intent.EXTRA_ADD_SHOPPING_CART_RESULT_MSG);
if (TextUtils.equals(result, Constants.AddShoppingCartStatus.ADD_SUCCESS)) {
if (mProductDetailsFragment != null && mProductDetailsFragment.isVisible()) {
mProductDetailsFragment.playAddCartAnimation();
}
} else if (TextUtils.equals(result, Constants.AddShoppingCartStatus.ADD_FAIL)) {
if (mProductDetailsFragment != null && mProductDetailsFragment.isVisible()) {
mProductDetailsFragment.onAddShoppingCartFinish();
}
ToastUtil.show(this, getString(R.string.add_shopping_cart_fail));
} else {
if (mProductDetailsFragment != null && mProductDetailsFragment.isVisible()) {
mProductDetailsFragment.onAddShoppingCartFinish();
}
ToastUtil.show(this, result);
}
}
unRegisterServiceAction();
}
}
public void registerServiceAction() {
mAddShoppingcartAction = new ShopIntentServiceAction(
Constants.Intent.ACTION_ADD_SHOPPING_CART, this);
ShopIntentService.registerAction(mAddShoppingcartAction);
}
public void unRegisterServiceAction() {
ShopIntentService.unregisterAction(mAddShoppingcartAction);
}
@Override
public void onBackPressed() {
if (mProductDetailsFragment != null && mProductDetailsFragment.isVisible()) {
if (mProductDetailsFragment.styleWindowStatus()) {
mProductDetailsFragment.hideStyleView();
} else {
super.onBackPressed();
}
} else {
super.onBackPressed();
}
}
}