/** * galaxy inc. * meetup client for android */ package com.galaxy.meetup.client.android.ui.fragments; import android.content.ContentResolver; import android.content.Context; import android.net.ConnectivityManager; import android.os.AsyncTask; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.RadioGroup; import com.galaxy.meetup.client.android.InstantUpload; import com.galaxy.meetup.client.android.R; import com.galaxy.meetup.client.android.analytics.EsAnalytics; import com.galaxy.meetup.client.android.analytics.OzActions; import com.galaxy.meetup.client.android.analytics.OzViews; import com.galaxy.meetup.client.android.content.EsAccount; import com.galaxy.meetup.client.android.content.EsAccountsData; import com.galaxy.meetup.client.android.ui.activity.OobDeviceActivity; import com.galaxy.meetup.client.android.ui.fragments.AlertFragmentDialog.AlertDialogListener; /** * * @author sihai * */ public class OobInstantUploadFragment extends Fragment implements AlertDialogListener { private RadioGroup mUploadChoice; public OobInstantUploadFragment() { } private void doNextStep() { int i = mUploadChoice.getCheckedRadioButtonId(); final boolean wifiOnly; final boolean enabled; final OobDeviceActivity context; final EsAccount account; OzActions ozactions; if(i == R.id.option_wifi_only) { enabled = true; wifiOnly = true; } else if(i == R.id.option_wifi_and_mobile) { enabled = true; wifiOnly = false; } else { wifiOnly = true; enabled = false; } context = (OobDeviceActivity)getActivity(); account = (EsAccount)context.getIntent().getParcelableExtra("account"); (new AsyncTask() { protected final Object doInBackground(Object aobj[]) { EsAccountsData.saveInstantUploadPhotoWifiOnly(context, account, wifiOnly); EsAccountsData.saveInstantUploadVideoWifiOnly(context, account, true); EsAccountsData.saveInstantUploadEnabled(context, account, enabled); InstantUpload.setPhotoWiFiOnlySetting(context, wifiOnly); InstantUpload.setVideoWiFiOnlySetting(context, true); InstantUpload.enableInstantUpload(context, account, enabled); return null; } }).execute((Object[])null); if(enabled) { if(wifiOnly) ozactions = OzActions.CAMERA_SYNC_WIFI_ONLY_OPTED_IN; else ozactions = OzActions.CAMERA_SYNC_OPTED_IN; } else { ozactions = OzActions.CAMERA_SYNC_OPTED_OUT; } EsAnalytics.recordActionEvent(context, account, ozactions, OzViews.OOB_CAMERA_SYNC); } public final boolean commit() { boolean flag; boolean flag2; flag = true; int i; boolean flag1; if(mUploadChoice.getCheckedRadioButtonId() == R.id.option_disable) i = ((flag) ? 1 : 0); else i = 0; flag1 = InstantUpload.isSyncEnabled((EsAccount)getActivity().getIntent().getParcelableExtra("account")); flag2 = ContentResolver.getMasterSyncAutomatically(); if((!flag2 || !flag1) && i == 0) { if(!flag2) { FragmentManager fragmentmanager1 = getFragmentManager(); if(fragmentmanager1.findFragmentByTag("photo_master_dialog") == null) { AlertFragmentDialog alertfragmentdialog1 = AlertFragmentDialog.newInstance(getString(R.string.oob_master_sync_dialog_title), getString(R.string.oob_master_sync_dialog_message), getString(R.string.ok), null); alertfragmentdialog1.setTargetFragment(this, 0); alertfragmentdialog1.show(fragmentmanager1, "photo_master_dialog"); } } else { FragmentManager fragmentmanager = getFragmentManager(); if(fragmentmanager.findFragmentByTag("photo_sync_dialog") == null) { String s = getString(R.string.es_google_iu_provider); int j = R.string.oob_enable_sync_dialog_message; Object aobj[] = new Object[1]; aobj[0] = s; String s1 = getString(j, aobj); AlertFragmentDialog alertfragmentdialog = AlertFragmentDialog.newInstance(getString(R.string.oob_enable_sync_dialog_title), s1, getString(R.string.yes), getString(R.string.no)); alertfragmentdialog.setTargetFragment(this, 0); alertfragmentdialog.show(fragmentmanager, "photo_sync_dialog"); } } return false; } else { doNextStep(); return flag; } } public final View onCreateView(LayoutInflater layoutinflater, ViewGroup viewgroup, Bundle bundle) { View view = layoutinflater.inflate(R.layout.oob_instant_upload_fragment, viewgroup, false); mUploadChoice = (RadioGroup)view.findViewById(R.id.uploadChoice); mUploadChoice.check(R.id.option_wifi_and_mobile); if(((ConnectivityManager)getActivity().getSystemService("connectivity")).getNetworkInfo(0) == null) { View view1 = mUploadChoice.findViewById(R.id.option_wifi_and_mobile); if(view1 != null) mUploadChoice.removeView(view1); mUploadChoice.check(R.id.option_wifi_only); } return view; } public final void onDialogCanceled(String s) { } public final void onDialogListClick(int i, Bundle bundle) { } public final void onDialogNegativeClick(String s) { } public final void onDialogPositiveClick(Bundle bundle, String s) { doNextStep(); ((OobDeviceActivity)getActivity()).onContinue(); } }