Blame | Last modification | View Log | RSS feed
package com.saholic.profittill.main;import android.Manifest;import android.app.AlarmManager;import android.app.Fragment;import android.app.FragmentManager;import android.app.PendingIntent;import android.content.Context;import android.content.Intent;import android.content.SharedPreferences;import android.content.pm.PackageManager;import android.content.res.Configuration;import android.graphics.Color;import android.graphics.drawable.ColorDrawable;import android.net.ConnectivityManager;import android.net.Uri;import android.os.AsyncTask;import android.os.Bundle;import android.os.PersistableBundle;import android.os.SystemClock;import android.support.v4.app.ActionBarDrawerToggle;import android.support.v4.app.ActivityCompat;import android.support.v4.content.ContextCompat;import android.support.v4.widget.DrawerLayout;import android.support.v7.app.ActionBarActivity;import android.util.Log;import android.view.KeyEvent;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ViewConfiguration;import android.view.Window;import android.webkit.CookieManager;import android.webkit.CookieSyncManager;import android.widget.ExpandableListView;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.RelativeLayout;import android.widget.TextView;import com.google.android.gms.analytics.HitBuilders;import com.google.android.gms.analytics.Tracker;import com.google.android.gms.common.ConnectionResult;import com.google.android.gms.common.api.GoogleApiClient;import com.google.android.gms.plus.Plus;import com.mixpanel.android.mpmetrics.MixpanelAPI;import com.saholic.profittill.Constants.ProfitTillConstants;import com.saholic.profittill.Network.NotificationCount;import com.saholic.profittill.R;import com.saholic.profittill.Services.PollingService;import com.saholic.profittill.Utils.AnalyticsUtility;import com.saholic.profittill.Utils.DESEncrypter;import com.saholic.profittill.Utils.UtilityFunctions;import com.saholic.profittill.Volley.Analytics;import com.saholic.profittill.Volley.AnalyticsErrorResponse;import com.saholic.profittill.Volley.AnalyticsJsonResponse;import com.saholic.profittill.navigationdrawer.ExpandableNavigationAdapter;import com.saholic.profittill.navigationdrawer.ExpandableNavigationItem;import com.testin.agent.TestinAgent;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.NameValuePair;import org.apache.http.client.HttpClient;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.HttpPost;import org.apache.http.impl.client.DefaultHttpClient;import org.apache.http.message.BasicNameValuePair;import org.json.JSONException;import org.json.JSONObject;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.ArrayList;import java.util.Arrays;import java.util.Date;import java.util.HashMap;import java.util.List;import java.util.Map;public class MainActivity extends ActionBarActivity implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener {public GoogleApiClient mGoogleApiClient;SharedPreferences userData;SharedPreferences apiData;boolean glogout;SharedPreferences.Editor userDataEditor;SharedPreferences.Editor apiSettingsEditor;SharedPreferences.Editor inviteDataEditor;SharedPreferences inviteData;String type1;int flag;boolean shouldGoInvisible;int titleVisible;String redirectUrl;MixpanelAPI mixpanel;String notificationURL;ArrayList<NameValuePair> nameValuePairsGcm;private DrawerLayout mDrawerLayout;private ExpandableListView mDrawerList;private LinearLayout navDrawerView;ExpandableNavigationAdapter customAdapter;private ActionBarDrawerToggle mDrawerToggle;private CharSequence mDrawerTitle;private CharSequence mTitle;private String[] mPlanetTitles;private String[] mHelpTtiles;private int selectedPosition;List<ExpandableNavigationItem> listParent;HashMap<String, List<String>> listDataChild;public static final int SMS_RECIEVE_PERMISSION = 100;private boolean PermissionIngranted=false;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TestinAgent.init(this);userData = getApplicationContext().getSharedPreferences("User_Data", MODE_PRIVATE);apiData = getApplicationContext().getSharedPreferences("API_Data", MODE_PRIVATE);userDataEditor = userData.edit();apiSettingsEditor = apiData.edit();if(userData.getString("registered","").equalsIgnoreCase("false")){requestReceivemessag();}inviteData = getApplicationContext().getSharedPreferences("Invite_Data", Context.MODE_PRIVATE);inviteDataEditor = inviteData.edit();TestinAgent.setUserInfo(userData.getString("id",""));mixpanel = MixpanelAPI.getInstance(getApplicationContext(), ProfitTillConstants.MIX_PANEL_TOKEN);type1 = userData.getString("type",null);if(getIntent().getAction()=="20"){Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Notification").setAction("Notification Opened ").setLabel("For User Id " + userData.getString("id","0")).build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);flag=20;notificationURL = String.valueOf(getIntent().getData());nameValuePairsGcm = new ArrayList<>();nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));nameValuePairsGcm.add(new BasicNameValuePair("timestamp", UtilityFunctions.notificationDate()));nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));getIntent().getExtras().remove("cid");new NotificationOpenedData().execute(nameValuePairsGcm);}else if(getIntent().getAction()=="15"){Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Notification").setAction("Notification Opened ").setLabel("For User Id " + userData.getString("id","0")).build());flag=15;new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);nameValuePairsGcm = new ArrayList<>();nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));getIntent().getExtras().remove("cid");new NotificationOpenedData().execute(nameValuePairsGcm);}else if(getIntent().getAction()=="7"){Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Notification").setAction("Notification Opened ").setLabel("For User Id " + userData.getString("id","0")).build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);flag=7;nameValuePairsGcm = new ArrayList<>();nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));getIntent().getExtras().remove("cid");new NotificationOpenedData().execute(nameValuePairsGcm);}else if(getIntent().getAction()=="6"){Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Notification").setAction("Notification Opened ").setLabel("For User Id " + userData.getString("id","0")).build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);flag=6;nameValuePairsGcm = new ArrayList<>();nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));getIntent().getExtras().remove("cid");new NotificationOpenedData().execute(nameValuePairsGcm);}else if(getIntent().getAction()=="31"){String emailURL= String.valueOf(getIntent().getData());Uri url = Uri.parse(emailURL);if(url.getQueryParameter("intent_type").equalsIgnoreCase("url")){String campaignId = url.getQueryParameter("campaign");DESEncrypter desEncrypter = new DESEncrypter(ProfitTillConstants.AUTH_PASSWORD);String urlOpen = desEncrypter.decrypt(url.getQueryParameter("key"));String campaignUserId=urlOpen.split("user_id=")[1];Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Message/Email").setAction("Message/Email Opened For User Id " + UtilityFunctions.campaignUserId(url)).setLabel("Campaign Id " + campaignId).build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,UtilityFunctions.campaignUserId(url),"Message","Message Opened",campaignId),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);nameValuePairsGcm = new ArrayList<>();nameValuePairsGcm.add(new BasicNameValuePair("user_id",campaignUserId));nameValuePairsGcm.add(new BasicNameValuePair("cid",campaignId));nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));nameValuePairsGcm.add(new BasicNameValuePair("result","message_opened"));new NotificationOpenedData().execute(nameValuePairsGcm);flag=20;notificationURL=urlOpen.replace("?user_id="+campaignUserId,"?user_id="+userData.getString("id",""));}else if (url.getQueryParameter("intent_type").equalsIgnoreCase("native")){String campaignId = url.getQueryParameter("campaign");DESEncrypter desEncrypter = new DESEncrypter(ProfitTillConstants.AUTH_PASSWORD);Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Message/Email").setAction("Message/Email Opened For User Id " + userData.getString("id","")).setLabel("Campaign Id " + campaignId).build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Message","Message Opened",campaignId),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);nameValuePairsGcm = new ArrayList<>();nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));nameValuePairsGcm.add(new BasicNameValuePair("cid",campaignId));nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));nameValuePairsGcm.add(new BasicNameValuePair("result","message_opened"));new NotificationOpenedData().execute(nameValuePairsGcm);if(desEncrypter.decrypt(url.getQueryParameter("key")).equalsIgnoreCase("profile")){flag=15;}else if(desEncrypter.decrypt(url.getQueryParameter("key")).equalsIgnoreCase("contact")){flag=6;}else if(desEncrypter.decrypt(url.getQueryParameter("key")).equalsIgnoreCase("tutorial")){flag=7;}else{String dealsUrl= ProfitTillConstants.Web_Uri+"entry-point";flag=20;notificationURL =dealsUrl;}}else if (url.getQueryParameter("intent_type").equalsIgnoreCase("update")){String campaignId = url.getQueryParameter("campaign");Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Message/Email").setAction("Message/Email Opened For User Id " + userData.getString("id","")).setLabel("Campaign Id " + campaignId).build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Message","Message Opened",campaignId),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);nameValuePairsGcm = new ArrayList<>();nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));nameValuePairsGcm.add(new BasicNameValuePair("cid",campaignId));nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));nameValuePairsGcm.add(new BasicNameValuePair("result","message_opened"));new NotificationOpenedData().execute(nameValuePairsGcm);Intent intent = null;try {intent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getApplicationContext().getPackageName()));} catch (android.content.ActivityNotFoundException anfe) {intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + getApplicationContext().getPackageName()));}startActivity(intent);}else{String dealsUrl= ProfitTillConstants.Web_Uri+"entry-point";flag=20;notificationURL =dealsUrl;}}else if(getIntent().getAction()=="11"){flag=11;}else {Bundle i = getIntent().getExtras();try{if (i != null) {flag = Integer.parseInt(i.getString("displayView"));if (flag == 31) {redirectUrl = i.getString("redirectUrl");}}}catch (Exception e){e.printStackTrace();}}getSupportActionBar().setBackgroundDrawable(new ColorDrawable(Color.WHITE));getSupportActionBar().setIcon(R.drawable.logo_cirlce_1);getSupportActionBar().setDisplayShowCustomEnabled(true);getSupportActionBar().setDisplayShowTitleEnabled(false);try {ViewConfiguration config = ViewConfiguration.get(this);Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");if (menuKeyField != null) {menuKeyField.setAccessible(true);menuKeyField.setBoolean(config, false);}} catch (Exception ex) {Log.d("Exception","Message"+ex);}if(type1!=null && type1.equalsIgnoreCase("google")) {mGoogleApiClient = new GoogleApiClient.Builder(this).addConnectionCallbacks(this).addOnConnectionFailedListener(this).addApi(Plus.API).addScope(Plus.SCOPE_PLUS_LOGIN).build();mGoogleApiClient.connect();}mTitle = mDrawerTitle = getTitle();navDrawerView = (LinearLayout) findViewById(R.id.navDrawerView);mPlanetTitles = getResources().getStringArray(R.array.stores_array);mHelpTtiles= getResources().getStringArray(R.array.help_array);mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);mDrawerList = (ExpandableListView) findViewById(R.id.nav_left_drawer);/* if(userData.getString("registered","").equalsIgnoreCase("false")){getSupportActionBar().hide();mDrawerLayout.setVisibility(View.INVISIBLE);}*/listParent = new ArrayList<ExpandableNavigationItem>();listDataChild = new HashMap<String, List<String>>();listParent.add(new ExpandableNavigationItem(getString(R.string.Deals)));listParent.add(new ExpandableNavigationItem(getString(R.string.Search)));listParent.add(new ExpandableNavigationItem(getString(R.string.Stores)));listParent.add(new ExpandableNavigationItem(getString(R.string.Help)));listDataChild.put(getString(R.string.Deals), new ArrayList<String>());listDataChild.put(getString(R.string.Search), new ArrayList<String>());listDataChild.put(getString(R.string.Stores), Arrays.asList(mPlanetTitles));listDataChild.put(getString(R.string.Help), Arrays.asList(mHelpTtiles));customAdapter = new ExpandableNavigationAdapter(this, listParent, listDataChild);mDrawerList.setAdapter(customAdapter);mDrawerList.setChoiceMode(ExpandableListView.CHOICE_MODE_SINGLE);getSupportActionBar().setDisplayHomeAsUpEnabled(true);getSupportActionBar().setHomeButtonEnabled(true);mDrawerList.setOnChildClickListener(new ExpandableListViewChildClick());mDrawerList.setOnGroupExpandListener(new ExpandableGroupExpandListener());mDrawerList.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {@Overridepublic boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {if(groupPosition==0 || groupPosition ==1) {displayView(groupPosition);mDrawerLayout.closeDrawer(navDrawerView);mDrawerList.collapseGroup(2);mDrawerList.collapseGroup(3);return true;}return false;}});mDrawerToggle = new ActionBarDrawerToggle(this,mDrawerLayout,R.drawable.menu_button_2,R.string.drawer_open,R.string.drawer_close) {public void onDrawerClosed(View view) {if(titleVisible!=0) {if(titleVisible==1)getSupportActionBar().setCustomView(R.layout.actionbarmyfavorites);if(titleVisible==2)getSupportActionBar().setCustomView(R.layout.actionbarprefernces);if(titleVisible==3)getSupportActionBar().setCustomView(R.layout.actionbarmywallet);if(titleVisible==4)getSupportActionBar().setCustomView(R.layout.actionbarmyorders);if(titleVisible==5)getSupportActionBar().setCustomView(R.layout.actionbarpendingcashback);if(titleVisible==6)getSupportActionBar().setCustomView(R.layout.actionbarmyprofile);}shouldGoInvisible = false;invalidateOptionsMenu();}public void onDrawerOpened(View drawerView) {getSupportActionBar().setCustomView(R.layout.actionbarprofittill);shouldGoInvisible = true;invalidateOptionsMenu();}};mDrawerLayout.setDrawerListener(mDrawerToggle);if (savedInstanceState == null) {if (flag == 7) {getSupportActionBar().setCustomView(R.layout.actionbarhowitworks);displayHelpChildView(1);} else if (flag == 6) {getSupportActionBar().setCustomView(R.layout.actionbarcontactus);displayHelpChildView(0);} else if (flag == 15) {getSupportActionBar().setCustomView(R.layout.actionbarmyprofile);MyProfile myProfile = new MyProfile();this.getFragmentManager().beginTransaction().replace(R.id.frame_container, myProfile, "Mike").addToBackStack(null).commit();}else if (flag == 20) {getSupportActionBar().setCustomView(R.layout.actionbardeals);JSONObject propsNotification = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsNotification.put("Screen", "Notification Url opened");mixpanel.track("Notification Opened", propsNotification);} catch (JSONException e) {e.printStackTrace();}Bundle args = new Bundle();DealsHomeFragment notifcationFragment = new DealsHomeFragment();args.putString("key", notificationURL);this.getFragmentManager().beginTransaction().replace(R.id.frame_container, notifcationFragment, "Mike").addToBackStack(null).commit();notifcationFragment.setArguments(args);}else if (flag == 31) {getSupportActionBar().setCustomView(R.layout.actionbardeals);Bundle args = new Bundle();DealsHomeFragment redirectUrlFragment = new DealsHomeFragment();args.putString("key", redirectUrl);this.getFragmentManager().beginTransaction().replace(R.id.frame_container, redirectUrlFragment, "Mike").addToBackStack(null).commit();redirectUrlFragment.setArguments(args);}else if (flag == 11) {getSupportActionBar().setCustomView(R.layout.actionbaraboutus);Bundle args = new Bundle();AboutUsFragment redirectUrlFragment = new AboutUsFragment();args.putString("key", redirectUrl);this.getFragmentManager().beginTransaction().replace(R.id.frame_container, redirectUrlFragment, "Mike").addToBackStack(null).commit();redirectUrlFragment.setArguments(args);}else {getSupportActionBar().setCustomView(R.layout.actionbardeals);displayView(0);}}}public void requestReceivemessag(){if (ContextCompat.checkSelfPermission(MainActivity.this,Manifest.permission.RECEIVE_SMS)!= PackageManager.PERMISSION_GRANTED) {if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this,Manifest.permission.RECEIVE_SMS)) {} else {ActivityCompat.requestPermissions(MainActivity.this,new String[]{Manifest.permission.RECEIVE_SMS},SMS_RECIEVE_PERMISSION);}return;}}private class ExpandableGroupExpandListener implements ExpandableListView.OnGroupExpandListener {@Overridepublic void onGroupExpand(int groupPosition) {int len = customAdapter.getGroupCount();int index = mDrawerList.getFlatListPosition(ExpandableListView.getPackedPositionForGroup(groupPosition));mDrawerList.setItemChecked(index, true);String parentTitle = customAdapter.getGroup(groupPosition).getTitle();if (groupPosition == 3) {if (mDrawerList.isGroupExpanded(2)) {mDrawerList.collapseGroup(2);}} else if (groupPosition == 2) {if (mDrawerList.isGroupExpanded(3)) {mDrawerList.collapseGroup(3);}}setActionBarTitlte(parentTitle);}}private class ExpandableListViewChildClick implements ExpandableListView.OnChildClickListener {@Overridepublic boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {int index = parent.getFlatListPosition(ExpandableListView.getPackedPositionForChild(groupPosition, childPosition));parent.setItemChecked(index, true);mDrawerLayout.closeDrawer(navDrawerView);if(groupPosition==2) {displayChildView(childPosition);}else if(groupPosition==3){if (childPosition==0) {getSupportActionBar().setCustomView(R.layout.actionbarcontactus);}else if (childPosition==1) {getSupportActionBar().setCustomView(R.layout.actionbarhowitworks);}else if (childPosition==2) {getSupportActionBar().setCustomView(R.layout.actionbaraboutus);}displayHelpChildView(childPosition);}return false;}}private void displayHelpChildView(int position) {titleVisible=0;Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);Fragment fragment = null;Map<String, String> jsonParams;switch (position) {case 0:JSONObject propsContactUs = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsContactUs.put("Screen", "Contact Us");mixpanel.track("Contact Us", propsContactUs);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Contact Us ").setLabel("Contact us Clicked").build());fragment = new ContactUsFragment();break;case 1:JSONObject propsHowItWorks = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsHowItWorks.put("Screen", "How it Works");mixpanel.track("How it Works", propsHowItWorks);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Tutorials ").setLabel("Tutorials Clicked").build());fragment = new HowItWorksFragment();break;case 2:JSONObject propsAboutUs = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsAboutUs.put("Screen", "About Us");mixpanel.track("About Us", propsAboutUs);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("About Us ").setLabel("About us Clicked").build());fragment = new AboutUsFragment();break;default:break;}/*if (fragment != null) {FragmentManager fragmentManager = getFragmentManager();fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();} else {Log.e("MainActivity", "Error in creating fragment");}*/if (fragment != null) {FragmentManager fragmentManager = getFragmentManager();fragmentManager.popBackStack(fragment.toString(),FragmentManager.POP_BACK_STACK_INCLUSIVE);fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).addToBackStack(fragment.toString()).commit();System.gc();} else {Log.e("MainActivity", "Error in creating fragment");}}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {mainMenu=menu;super.onCreateOptionsMenu(menu);getMenuInflater().inflate(R.menu.menu_main, menu);RelativeLayout badgeLayout = (RelativeLayout) mainMenu.findItem(R.id.action_notifications).getActionView();ImageView k = (ImageView) badgeLayout.findViewById(R.id.inAppNotificationImage);TextView notifciationCount = (TextView) badgeLayout.findViewById(R.id.inAppNotificationText);k.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Bundle args = new Bundle();args.putString("key", apiData.getString("notification.page.url", "http://api.profittill.com/users/usernotification") + "?user_id=" + userData.getString("id", "") + "&android_id=" + UtilityFunctions.androidId(MainActivity.this));new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Icon","Notification Icon Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Search ").setLabel("Search Clicked").build());DealsHomeFragment notificationFragment = new DealsHomeFragment();getFragmentManager().beginTransaction().replace(R.id.frame_container, notificationFragment, "Mike").addToBackStack(null).commit();notificationFragment.setArguments(args);}});if(userData.getInt("notification_count",0)!=0) {notifciationCount.setVisibility(View.VISIBLE);notifciationCount.setText(userData.getInt("notification_count",0)+"");}else{notifciationCount.setVisibility(View.GONE);}return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {Fragment menuFragment= null;JSONObject props = new JSONObject();Bundle args = new Bundle();String id = userData.getString("id",null);if (mDrawerToggle.onOptionsItemSelected(item)) {return true;}getSupportActionBar().setDisplayShowCustomEnabled(true);switch (item.getItemId()) {case R.id.action_settings:AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);Intent i = new Intent(this, PollingService.class);PendingIntent pi = PendingIntent.getService(this, 0, i, 0);am.cancel(pi);userDataEditor.putString("alarm_set","false").commit();android.webkit.CookieManager cookieManager = android.webkit.CookieManager.getInstance();android.webkit.CookieSyncManager.createInstance(this);cookieManager.removeAllCookie();try {mixpanel.identify(userData.getString("id",null));props.put("Screen", "Signing Out");mixpanel.track("Signing Out", props);} catch (JSONException e) {e.printStackTrace();}new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Sign Out","Sign Out Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);try{if (mGoogleApiClient.isConnected()) {Plus.AccountApi.clearDefaultAccount(mGoogleApiClient);mGoogleApiClient.disconnect();mGoogleApiClient.connect();userDataEditor.clear().commit();inviteDataEditor.clear().commit();startActivity(new Intent(MainActivity.this, LoginActivity.class));}else{if(!mGoogleApiClient.isConnected()){userDataEditor.clear().commit();inviteDataEditor.clear().commit();startActivity(new Intent(MainActivity.this, LoginActivity.class));}}}catch (Exception e){userDataEditor.clear().commit();startActivity(new Intent(MainActivity.this, LoginActivity.class));}return true;case R.id.my_wallet:titleVisible=3;getSupportActionBar().setCustomView(R.layout.actionbarmywallet);try {mixpanel.identify(userData.getString("id",null));props.put("Screen", "My Wallet");mixpanel.track("My Wallet", props);} catch (JSONException e) {e.printStackTrace();}new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Wallet","My Wallet Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);MyWallet myWallet= new MyWallet();this.getFragmentManager().beginTransaction().replace(R.id.frame_container, myWallet,"Mike").addToBackStack(null).commit();return true;case R.id.pending_cashback:titleVisible=5;getSupportActionBar().setCustomView(R.layout.actionbarpendingcashback);try {mixpanel.identify(userData.getString("id",null));props.put("Screen", "Cashback Status");mixpanel.track("Cashback Status", props);} catch (JSONException e) {e.printStackTrace();}new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Cashback Status","Cashback Status Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("pendingcashback.url",null)+"?user_id="+id);DealsHomeFragment orderFragment= new DealsHomeFragment();this.getFragmentManager().beginTransaction().replace(R.id.frame_container, orderFragment,"Mike").addToBackStack(null).commit();orderFragment.setArguments(args);return true;case R.id.my_favorites:titleVisible=1;getSupportActionBar().setCustomView(R.layout.actionbarmyfavorites);try {mixpanel.identify(userData.getString("id",null));props.put("Screen", "My Favorites");mixpanel.track("My Favorites", props);} catch (JSONException e) {e.printStackTrace();}new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Favorites","My Favorites Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("myfavourite.url",null)+"?user_id="+id);DealsHomeFragment favoritesFragment= new DealsHomeFragment();this.getFragmentManager().beginTransaction().replace(R.id.frame_container, favoritesFragment,"Mike").addToBackStack(null).commit();favoritesFragment.setArguments(args);return true;case R.id.my_profile:titleVisible=6;getSupportActionBar().setCustomView(R.layout.actionbarmyprofile);try {mixpanel.identify(userData.getString("id",null));props.put("Screen", "My Profile");mixpanel.track("My profile", props);} catch (JSONException e) {e.printStackTrace();}new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Profile","My Profile Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);MyProfile myProfile= new MyProfile();this.getFragmentManager().beginTransaction().replace(R.id.frame_container, myProfile,"Mike").addToBackStack(null).commit();return true;case R.id.my_order:titleVisible=4;getSupportActionBar().setCustomView(R.layout.actionbarmyorders);try {mixpanel.identify(userData.getString("id",null));props.put("Screen", "My Orders");mixpanel.track("My Orders", props);} catch (JSONException e) {e.printStackTrace();}new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Orders","My Orders Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("myorders.url",null)+"?user_id="+id);DealsHomeFragment preferenceFragment= new DealsHomeFragment();this.getFragmentManager().beginTransaction().replace(R.id.frame_container, preferenceFragment,"Mike").addToBackStack(null).commit();preferenceFragment.setArguments(args);return true;case R.id.my_preferences:titleVisible=2;getSupportActionBar().setCustomView(R.layout.actionbarprefernces);try {mixpanel.identify(userData.getString("id",null));props.put("Screen", "My Preferences");mixpanel.track("My Preferences", props);} catch (JSONException e) {e.printStackTrace();}userDataEditor.remove("preferences").commit();new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Preferences","My Preferences Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);PreferencesFragment my_preferences = new PreferencesFragment();this.getFragmentManager().beginTransaction().replace(R.id.frame_container, my_preferences,"Mike").addToBackStack(null).commit();return true;default:return super.onOptionsItemSelected(item);}}@Overridepublic void onConnected(Bundle bundle) {}@Overridepublic void onConnectionSuspended(int i) {}@Overridepublic void onConnectionFailed(ConnectionResult connectionResult) {}@Overridepublic void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {super.onSaveInstanceState(outState, outPersistentState);}@Overrideprotected void onRestoreInstanceState(Bundle savedInstanceState) {super.onRestoreInstanceState(savedInstanceState);Intent i= new Intent(MainActivity.this,MainActivity.class);i.putExtra("displayView","0");startActivity(i);}@Overridepublic boolean onMenuOpened(int featureId, Menu menu){if(featureId == Window.FEATURE_ACTION_BAR && menu != null){if(menu.getClass().getSimpleName().equals("MenuBuilder")){try{Method m = menu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);m.setAccessible(true);m.invoke(menu, true);}catch(Exception e){throw new RuntimeException(e);}}}return super.onMenuOpened(featureId, menu);}private void displayView(int position) {titleVisible=0;Bundle args = new Bundle();Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);String id = userData.getString("id",null);Fragment fragment = null;switch (position) {case 0:JSONObject props = new JSONObject();try {mixpanel.getPeople().set( "$last_login",new Date());mixpanel.identify(userData.getString("id",null));props.put("Screen", "Deals Screen");mixpanel.track("Deals", props);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Deals ").setLabel("Deals Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Deals","Deals Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);//String dealsUrl= "http://api.profittill.com/deals"+"?user_id=30916"+"&email="+userData.getString("email","")+"®istered="+userData.getString("registered","");String dealsUrl= ProfitTillConstants.Web_Uri+"entry-point";args.putString("key",dealsUrl);fragment = new DealsHomeFragment();fragment.setArguments(args);break;case 1:JSONObject props1 = new JSONObject();try {mixpanel.identify(userData.getString("id",null));props1.put("Screen", "Search");mixpanel.track("Search", props1);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Search ").setLabel("Search Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Search","Search Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("search.url",null)+"?user_id="+id);fragment = new DealsHomeFragment();fragment.setArguments(args);break;default:break;}/* if (fragment != null) {FragmentManager fragmentManager = getFragmentManager();fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();} else {Log.e("MainActivity", "Error in creating fragment");}*/if (fragment != null) {FragmentManager fragmentManager = getFragmentManager();fragmentManager.popBackStack(fragment.toString(),FragmentManager.POP_BACK_STACK_INCLUSIVE);fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).addToBackStack(fragment.toString()).commit();System.gc();} else {Log.e("MainActivity", "Error in creating fragment");}}private void displayChildView(int position) {titleVisible=0;Bundle args = new Bundle();Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(GoogleAnalyticsTracker.TrackerName.APP_TRACKER);String id = userData.getString("id", null);Fragment fragment = null;Map<String, String> jsonParams;switch (position) {case 0:JSONObject propsAmazon = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsAmazon.put("Screen", "Amazon");mixpanel.track("Amazon", propsAmazon);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Amazon ").setLabel("Amazon Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Amazon","Amazon Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key",apiData.getString("affiliate.url.redirect","")+"?user_id="+userData.getString("id","")+"&store_id="+UtilityFunctions.getNewStoreId(UtilityFunctions.generateStoreMap(apiData.getString("stores.code","amazon=1,flipkart=2,snapdeal=3,spice=4,shopclues=5,")),ProfitTillConstants.AMAZON));fragment = new DealsHomeFragment();fragment.setArguments(args);break;case 1:JSONObject propsFlipkart = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsFlipkart.put("Screen", "Flipkart");mixpanel.track("Flipkart", propsFlipkart);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Flipkart ").setLabel("Flipkart Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Flipkart","Flipkart Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("affiliate.url.redirect","")+"?user_id="+userData.getString("id","")+"&store_id="+UtilityFunctions.getNewStoreId(UtilityFunctions.generateStoreMap(apiData.getString("stores.code","amazon=1,flipkart=2,snapdeal=3,spice=4,shopclues=5,")),ProfitTillConstants.FLIPKART));fragment = new DealsHomeFragment();fragment.setArguments(args);break;case 2:t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("HomeShop18 ").setLabel("HomeShop18 Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","HomeShop18","HomeShop18 Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("affiliate.url.redirect","")+"?user_id="+userData.getString("id","")+"&store_id="+UtilityFunctions.getNewStoreId(UtilityFunctions.generateStoreMap(apiData.getString("stores.code","amazon=1,flipkart=2,snapdeal=3,spice=4,shopclues=5,paytm=6,homeshop18=7,")),ProfitTillConstants.HOMESHOP18));fragment = new DealsHomeFragment();fragment.setArguments(args);break;case 3:t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Paytm ").setLabel("Paytm Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Paytm","Paytm Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("affiliate.url.redirect","")+"?user_id="+userData.getString("id","")+"&store_id="+UtilityFunctions.getNewStoreId(UtilityFunctions.generateStoreMap(apiData.getString("stores.code","amazon=1,flipkart=2,snapdeal=3,spice=4,shopclues=5,")),ProfitTillConstants.PAYTM));fragment = new DealsHomeFragment();fragment.setArguments(args);break;case 4:JSONObject propsSaholic = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsSaholic.put("Screen", "Saholic");mixpanel.track("Saholic", propsSaholic);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Saholic ").setLabel("Saholic Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Saholic","Saholic Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("saholic.autologin.url","")+"?user_id="+userData.getString("id",""));fragment = new DealsHomeFragment();fragment.setArguments(args);break;case 5:JSONObject propsShopclues = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsShopclues.put("Screen", "Shopclues");mixpanel.track("Shopclues", propsShopclues);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Shopclues ").setLabel("Shopclues Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Shopclues","Shopclues Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);String url=apiData.getString("affiliate.url.redirect","")+"?user_id="+userData.getString("id","")+"&store_id="+UtilityFunctions.getNewStoreId(UtilityFunctions.generateStoreMap(apiData.getString("stores.code","amazon=1,flipkart=2,snapdeal=3,spice=4,shopclues=5,")),ProfitTillConstants.SHOPCLUES);args.putString("key", url);if(Uri.parse(url).getHost().equalsIgnoreCase(ProfitTillConstants.DOMAIN)) {CookieSyncManager.createInstance(getApplicationContext());CookieManager cookieManager1 = CookieManager.getInstance();cookieManager1.setCookie(url, "token=" + userData.getString("token", ""));cookieManager1.setCookie(url, "walletAuthentication=true");cookieManager1.setCookie(url, "shopcluesActive=true");}fragment = new DealsHomeFragment();fragment.setArguments(args);break;case 6:JSONObject propsSnapdeal = new JSONObject();try {mixpanel.identify(userData.getString("id",null));propsSnapdeal.put("Screen", "Snapdeal");mixpanel.track("Snapdeal", propsSnapdeal);} catch (JSONException e) {e.printStackTrace();}t.send(new HitBuilders.EventBuilder().setCategory("Menu").setAction("Snapdeal ").setLabel("Snapdeal Clicked").build());new Analytics(ProfitTillConstants.ANALYTICS_URL,AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Snapdeal","Snapdeal Clicked"),AnalyticsJsonResponse.getAnalyticsRequestInstance(),AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);args.putString("key", apiData.getString("affiliate.url.redirect", "") + "?user_id=" + userData.getString("id", "") + "&store_id=" + UtilityFunctions.getNewStoreId(UtilityFunctions.generateStoreMap(apiData.getString("stores.code", "amazon=1,flipkart=2,snapdeal=3,spice=4,shopclues=5,")), ProfitTillConstants.SNAPDEAL));fragment = new DealsHomeFragment();fragment.setArguments(args);break;default:break;}/*if (fragment != null) {FragmentManager fragmentManager = getFragmentManager();fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();} else {Log.e("MainActivity", "Error in creating fragment");}*/if (fragment != null) {FragmentManager fragmentManager = getFragmentManager();fragmentManager.popBackStack(fragment.toString(),FragmentManager.POP_BACK_STACK_INCLUSIVE);fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).addToBackStack(fragment.toString()).commit();System.gc();} else {Log.e("MainActivity", "Error in creating fragment");}}public void setActionBarTitlte(String parentTitle){if (parentTitle.equals("Deals")) {getSupportActionBar().setCustomView(R.layout.actionbardeals);}if (parentTitle.equalsIgnoreCase("Visit Other Stores")) {getSupportActionBar().setCustomView(R.layout.actionbarprofittill);}if (parentTitle.equals("FAQ")) {getSupportActionBar().setCustomView(R.layout.actionbaraboutus);}if (parentTitle.equals("Contact Us")) {getSupportActionBar().setCustomView(R.layout.actionbarcontactus);}if (parentTitle.equals("Search")) {getSupportActionBar().setCustomView(R.layout.actionbarsearch);}if (parentTitle.equals("How it Works")) {getSupportActionBar().setCustomView(R.layout.actionbarhowitworks);}}@Overrideprotected void onPostCreate(Bundle savedInstanceState) {super.onPostCreate(savedInstanceState);mDrawerToggle.syncState();}@Overridepublic boolean onPrepareOptionsMenu(Menu menu) {boolean drawerOpen = shouldGoInvisible;hideMenuItems(menu, !drawerOpen);return super.onPrepareOptionsMenu(menu);}private void hideMenuItems(Menu menu, boolean visible){for(int i = 0; i < menu.size(); i++){menu.getItem(i).setVisible(visible);}}@Overridepublic void onConfigurationChanged(Configuration newConfig) {super.onConfigurationChanged(newConfig);mDrawerToggle.onConfigurationChanged(newConfig);}@Overridepublic boolean onKeyUp(int keycode, KeyEvent e) {switch(keycode) {case KeyEvent.KEYCODE_MENU:if (mainMenu !=null) {mainMenu.performIdentifierAction(R.id.overflowMenu,0);}}return super.onKeyUp(keycode, e);}@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {switch(keyCode) {case KeyEvent.KEYCODE_MENU:if (mainMenu !=null) {mainMenu.performIdentifierAction(R.id.overflowMenu,0);}}return super.onKeyUp(keyCode, event);}private Menu mainMenu;public final boolean isInternetOn() {ConnectivityManager connec =(ConnectivityManager)getSystemService(this.getBaseContext().CONNECTIVITY_SERVICE);if ( connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.CONNECTED ||connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.CONNECTING ||connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.CONNECTING ||connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.CONNECTED ) {return true;} else if (connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.DISCONNECTED ||connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.DISCONNECTED ) {return false;}return false;}class NotificationOpenedData extends AsyncTask<ArrayList<NameValuePair>, Integer, String> {@Overrideprotected void onPreExecute() {super.onPreExecute();}@Overrideprotected String doInBackground(ArrayList<NameValuePair>... arg0) {try {HttpClient httpclient = new DefaultHttpClient();HttpPost httppost = new HttpPost(apiData.getString("notification.data.url","http://api.profittill.com/pushnotifications/add"));httppost.setHeader("Authorization", ProfitTillConstants.BASIC_AUTH);httppost.setEntity(new UrlEncodedFormEntity(arg0[0]));HttpResponse response = httpclient.execute(httppost);HttpEntity entity = response.getEntity();int status = response.getStatusLine().getStatusCode();nameValuePairsGcm.clear();} catch (Exception e) {e.printStackTrace();}return "success";}@Overrideprotected void onPostExecute(String result) {super.onPostExecute(result);}}@Overrideprotected void onResume() {super.onResume();String userId = userData.getString("id","");String androidId=UtilityFunctions.androidId(MainActivity.this);if(!userId.isEmpty() && !androidId.isEmpty()) {String notificationUrl = apiData.getString("notification.count", "http://45.33.50.227:3001/getNotificationCount") + "?user_id=" + userId + "&android_id=" + androidId;new NotificationCount().getCount(MainActivity.this, null, notificationUrl);}AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);Intent i = new Intent(this, PollingService.class);PendingIntent pi = PendingIntent.getService(this, 0, i, 0);am.cancel(pi);am.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + 60 * 1000, 30 * 60 * 1000, pi);invalidateOptionsMenu();}}