Subversion Repositories SmartDukaan

Rev

Rev 22832 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
21480 rajender 1
package com.saholic.profittill.main;
2
import android.Manifest;
22132 rajender 3
import android.annotation.TargetApi;
21480 rajender 4
import android.app.AlarmManager;
5
import android.app.Fragment;
6
import android.app.FragmentManager;
7
import android.app.PendingIntent;
8
import android.content.Context;
9
import android.content.Intent;
10
import android.content.SharedPreferences;
22832 rajender 11
import android.content.pm.ActivityInfo;
21480 rajender 12
import android.content.pm.PackageManager;
13
import android.content.res.Configuration;
14
import android.graphics.Color;
22132 rajender 15
import android.graphics.PorterDuff;
21480 rajender 16
import android.graphics.drawable.ColorDrawable;
22132 rajender 17
import android.graphics.drawable.Drawable;
21480 rajender 18
import android.net.ConnectivityManager;
19
import android.net.Uri;
20
import android.os.AsyncTask;
22132 rajender 21
import android.os.Build;
21480 rajender 22
import android.os.Bundle;
23
import android.os.PersistableBundle;
24
import android.os.SystemClock;
25
import android.support.v4.app.ActionBarDrawerToggle;
26
import android.support.v4.app.ActivityCompat;
27
import android.support.v4.content.ContextCompat;
28
import android.support.v4.widget.DrawerLayout;
24857 tejbeer 29
import android.support.v7.app.AppCompatActivity;
21480 rajender 30
import android.util.Log;
31
import android.view.KeyEvent;
32
import android.view.Menu;
22832 rajender 33
import android.view.View;
21480 rajender 34
import android.view.ViewConfiguration;
35
import android.view.Window;
36
import android.webkit.CookieManager;
37
import android.webkit.CookieSyncManager;
38
import android.widget.ExpandableListView;
39
import android.widget.LinearLayout;
40
 
41
import com.google.android.gms.analytics.HitBuilders;
42
import com.google.android.gms.analytics.Tracker;
43
import com.google.android.gms.common.ConnectionResult;
44
import com.google.android.gms.common.api.GoogleApiClient;
45
import com.google.android.gms.plus.Plus;
46
import com.mixpanel.android.mpmetrics.MixpanelAPI;
47
import com.saholic.profittill.Constants.ProfitTillConstants;
48
import com.saholic.profittill.Network.NotificationCount;
49
import com.saholic.profittill.R;
50
import com.saholic.profittill.Services.PollingService;
51
import com.saholic.profittill.Utils.AnalyticsUtility;
52
import com.saholic.profittill.Utils.DESEncrypter;
53
import com.saholic.profittill.Utils.UtilityFunctions;
54
import com.saholic.profittill.Volley.Analytics;
55
import com.saholic.profittill.Volley.AnalyticsErrorResponse;
56
import com.saholic.profittill.Volley.AnalyticsJsonResponse;
22132 rajender 57
 
21480 rajender 58
import com.testin.agent.TestinAgent;
59
 
60
import org.apache.http.HttpEntity;
61
import org.apache.http.HttpResponse;
62
import org.apache.http.NameValuePair;
63
import org.apache.http.client.HttpClient;
64
import org.apache.http.client.entity.UrlEncodedFormEntity;
65
import org.apache.http.client.methods.HttpPost;
66
import org.apache.http.impl.client.DefaultHttpClient;
67
import org.apache.http.message.BasicNameValuePair;
68
import org.json.JSONException;
69
import org.json.JSONObject;
70
 
71
import java.lang.reflect.Field;
72
import java.lang.reflect.Method;
73
import java.util.ArrayList;
74
import java.util.Date;
75
import java.util.HashMap;
76
import java.util.List;
77
import java.util.Map;
78
 
79
 
24857 tejbeer 80
public class MainActivity extends AppCompatActivity implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener {
21480 rajender 81
    public GoogleApiClient mGoogleApiClient;
82
    SharedPreferences userData;
83
    SharedPreferences apiData;
84
    boolean glogout;
85
    SharedPreferences.Editor userDataEditor;
86
    SharedPreferences.Editor apiSettingsEditor;
87
    SharedPreferences.Editor inviteDataEditor;
88
    SharedPreferences inviteData;
89
    String type1;
90
    int flag;
22132 rajender 91
    Context context;
21480 rajender 92
    boolean shouldGoInvisible;
93
    int titleVisible;
94
    String redirectUrl;
95
    MixpanelAPI mixpanel;
96
    String notificationURL;
97
    ArrayList<NameValuePair> nameValuePairsGcm;
98
    private DrawerLayout mDrawerLayout;
99
    private ExpandableListView mDrawerList;
100
    private LinearLayout navDrawerView;
22132 rajender 101
    //ExpandableNavigationAdapter customAdapter;
21480 rajender 102
    private ActionBarDrawerToggle mDrawerToggle;
103
    private CharSequence mDrawerTitle;
104
    private CharSequence mTitle;
105
    private String[] mPlanetTitles;
106
    private String[] mHelpTtiles;
107
    private int selectedPosition;
22132 rajender 108
    //List<ExpandableNavigationItem> listParent;
21480 rajender 109
    HashMap<String, List<String>> listDataChild;
24857 tejbeer 110
  //  public static final int SMS_RECIEVE_PERMISSION = 100;
22132 rajender 111
    public static final int CAMERA_PERMISSION = 101;
112
    public static final int Storage_permission=102;
21480 rajender 113
    private boolean PermissionIngranted=false;
114
 
115
 
116
    @Override
117
    protected void onCreate(Bundle savedInstanceState) {
118
        super.onCreate(savedInstanceState);
119
        setContentView(R.layout.activity_main);
22832 rajender 120
        this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
21480 rajender 121
        TestinAgent.init(this);
22132 rajender 122
        getSupportActionBar().hide();
22832 rajender 123
        int InstanceId =      MainActivity.class.hashCode();
21480 rajender 124
        userData = getApplicationContext().getSharedPreferences("User_Data", MODE_PRIVATE);
125
        apiData = getApplicationContext().getSharedPreferences("API_Data", MODE_PRIVATE);
126
        userDataEditor = userData.edit();
127
        apiSettingsEditor = apiData.edit();
22132 rajender 128
        checkPermission();
21480 rajender 129
        inviteData = getApplicationContext().getSharedPreferences("Invite_Data", Context.MODE_PRIVATE);
130
        inviteDataEditor = inviteData.edit();
131
        TestinAgent.setUserInfo(userData.getString("id",""));
132
        mixpanel = MixpanelAPI.getInstance(getApplicationContext(), ProfitTillConstants.MIX_PANEL_TOKEN);
133
        type1 = userData.getString("type",null);
134
 
135
        if(getIntent().getAction()=="20"){
136
            Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
137
                    GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
138
            t.send(new HitBuilders.EventBuilder()
139
                    .setCategory("Notification")
140
                    .setAction("Notification Opened ")
141
                    .setLabel("For User Id " + userData.getString("id","0"))
142
                    .build());
143
            new Analytics(ProfitTillConstants.ANALYTICS_URL,
144
                    AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),
145
                    AnalyticsJsonResponse.getAnalyticsRequestInstance(),
146
                    AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
147
            flag=20;
148
            notificationURL = String.valueOf(getIntent().getData());
149
            nameValuePairsGcm = new ArrayList<>();
150
            nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));
151
            nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));
152
            nameValuePairsGcm.add(new BasicNameValuePair("timestamp", UtilityFunctions.notificationDate()));
153
            nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));
154
            getIntent().getExtras().remove("cid");
155
            new NotificationOpenedData().execute(nameValuePairsGcm);
22832 rajender 156
        }
157
        else if(getIntent().getAction()=="15"){
21480 rajender 158
            Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
159
                    GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
160
            t.send(new HitBuilders.EventBuilder()
161
                    .setCategory("Notification")
162
                    .setAction("Notification Opened ")
163
                    .setLabel("For User Id " + userData.getString("id","0"))
164
                    .build());
165
            flag=15;
166
            new Analytics(ProfitTillConstants.ANALYTICS_URL,
167
                    AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),
168
                    AnalyticsJsonResponse.getAnalyticsRequestInstance(),
169
                    AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
170
            nameValuePairsGcm = new ArrayList<>();
171
            nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));
172
            nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));
173
            nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));
174
            nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));
175
            getIntent().getExtras().remove("cid");
176
            new NotificationOpenedData().execute(nameValuePairsGcm);
22832 rajender 177
        }
178
        else if(getIntent().getAction()=="7"){
21480 rajender 179
            Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
180
                    GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
181
            t.send(new HitBuilders.EventBuilder()
182
                    .setCategory("Notification")
183
                    .setAction("Notification Opened ")
184
                    .setLabel("For User Id " + userData.getString("id","0"))
185
                    .build());
186
            new Analytics(ProfitTillConstants.ANALYTICS_URL,
187
                    AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),
188
                    AnalyticsJsonResponse.getAnalyticsRequestInstance(),
189
                    AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
190
            flag=7;
191
            nameValuePairsGcm = new ArrayList<>();
192
            nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));
193
            nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));
194
            nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));
195
            nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));
196
            getIntent().getExtras().remove("cid");
197
            new NotificationOpenedData().execute(nameValuePairsGcm);
22832 rajender 198
        }
199
        else if(getIntent().getAction()=="6"){
21480 rajender 200
            Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
201
                    GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
202
            t.send(new HitBuilders.EventBuilder()
203
                    .setCategory("Notification")
204
                    .setAction("Notification Opened ")
205
                    .setLabel("For User Id " + userData.getString("id","0"))
206
                    .build());
207
            new Analytics(ProfitTillConstants.ANALYTICS_URL,
208
                    AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Opened",getIntent().getExtras().getString("cid")),
209
                    AnalyticsJsonResponse.getAnalyticsRequestInstance(),
210
                    AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
211
            flag=6;
212
            nameValuePairsGcm = new ArrayList<>();
213
            nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));
214
            nameValuePairsGcm.add(new BasicNameValuePair("cid",getIntent().getExtras().getString("cid")));
215
            nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));
216
            nameValuePairsGcm.add(new BasicNameValuePair("result","opened"));
217
            getIntent().getExtras().remove("cid");
218
            new NotificationOpenedData().execute(nameValuePairsGcm);
219
        }else if(getIntent().getAction()=="31"){
220
            String emailURL= String.valueOf(getIntent().getData());
221
            Uri url = Uri.parse(emailURL);
222
            if(url.getQueryParameter("intent_type").equalsIgnoreCase("url")){
223
                String campaignId = url.getQueryParameter("campaign");
224
                DESEncrypter desEncrypter = new DESEncrypter(ProfitTillConstants.AUTH_PASSWORD);
225
                String urlOpen = desEncrypter.decrypt(url.getQueryParameter("key"));
226
                String campaignUserId=urlOpen.split("user_id=")[1];
227
                Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
228
                        GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
229
                t.send(new HitBuilders.EventBuilder()
230
                        .setCategory("Message/Email")
231
                        .setAction("Message/Email Opened For User Id " + UtilityFunctions.campaignUserId(url))
232
                        .setLabel("Campaign Id " + campaignId)
233
                        .build());
234
 
235
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
236
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,UtilityFunctions.campaignUserId(url),"Message","Message Opened",campaignId),
237
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
238
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
239
 
240
                nameValuePairsGcm = new ArrayList<>();
241
                nameValuePairsGcm.add(new BasicNameValuePair("user_id",campaignUserId));
242
                nameValuePairsGcm.add(new BasicNameValuePair("cid",campaignId));
243
                nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));
244
                nameValuePairsGcm.add(new BasicNameValuePair("result","message_opened"));
245
                new NotificationOpenedData().execute(nameValuePairsGcm);
246
                flag=20;
247
                notificationURL=urlOpen.replace("?user_id="+campaignUserId,"?user_id="+userData.getString("id",""));
22832 rajender 248
            }
249
            else if (url.getQueryParameter("intent_type").equalsIgnoreCase("native")){
21480 rajender 250
                String campaignId = url.getQueryParameter("campaign");
251
                DESEncrypter desEncrypter = new DESEncrypter(ProfitTillConstants.AUTH_PASSWORD);
252
                Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
253
                        GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
254
                t.send(new HitBuilders.EventBuilder()
255
                        .setCategory("Message/Email")
256
                        .setAction("Message/Email Opened For User Id " + userData.getString("id",""))
257
                        .setLabel("Campaign Id " + campaignId)
258
                        .build());
259
 
260
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
261
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Message","Message Opened",campaignId),
262
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
263
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
264
 
265
                nameValuePairsGcm = new ArrayList<>();
266
                nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));
267
                nameValuePairsGcm.add(new BasicNameValuePair("cid",campaignId));
268
                nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));
269
                nameValuePairsGcm.add(new BasicNameValuePair("result","message_opened"));
270
                new NotificationOpenedData().execute(nameValuePairsGcm);
271
 
272
                if(desEncrypter.decrypt(url.getQueryParameter("key")).equalsIgnoreCase("profile")){
273
                    flag=15;
274
                }
275
                else if(desEncrypter.decrypt(url.getQueryParameter("key")).equalsIgnoreCase("contact")){
276
                    flag=6;
277
                }
278
                else if(desEncrypter.decrypt(url.getQueryParameter("key")).equalsIgnoreCase("tutorial")){
279
                    flag=7;
280
                }else{
22832 rajender 281
                    String dealsUrl=apiData.getString("Web_Uri","http://app.profitmandi.com/entry-point");
22132 rajender 282
                    //String dealsUrl=ProfitTillConstants.Web_Uri;
21480 rajender 283
                    flag=20;
284
                    notificationURL =dealsUrl;
285
                }
286
            }else if (url.getQueryParameter("intent_type").equalsIgnoreCase("update")){
287
                String campaignId = url.getQueryParameter("campaign");
288
                Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
289
                        GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
290
                t.send(new HitBuilders.EventBuilder()
291
                        .setCategory("Message/Email")
292
                        .setAction("Message/Email Opened For User Id " + userData.getString("id",""))
293
                        .setLabel("Campaign Id " + campaignId)
294
                        .build());
295
 
296
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
297
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Message","Message Opened",campaignId),
298
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
299
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
300
 
301
                nameValuePairsGcm = new ArrayList<>();
302
                nameValuePairsGcm.add(new BasicNameValuePair("user_id",userData.getString("id","")));
303
                nameValuePairsGcm.add(new BasicNameValuePair("cid",campaignId));
304
                nameValuePairsGcm.add(new BasicNameValuePair("timestamp",UtilityFunctions.notificationDate()));
305
                nameValuePairsGcm.add(new BasicNameValuePair("result","message_opened"));
306
                new NotificationOpenedData().execute(nameValuePairsGcm);
307
 
308
                Intent intent = null;
309
                try {
310
                    intent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getApplicationContext().getPackageName()));
311
                } catch (android.content.ActivityNotFoundException anfe) {
312
                    intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + getApplicationContext().getPackageName()));
313
                }
314
                startActivity(intent);
315
            }
316
            else{
22832 rajender 317
                String dealsUrl=apiData.getString("Web_Uri","http://app.profitmandi.com/entry-point");
22132 rajender 318
                //String dealsUrl=ProfitTillConstants.Web_Uri;
21480 rajender 319
                flag=20;
320
                notificationURL =dealsUrl;
321
            }
322
        }
323
        else if(getIntent().getAction()=="11"){
324
            flag=11;
325
        }else {
326
            Bundle i = getIntent().getExtras();
327
            try{
22132 rajender 328
                if (i != null) {
329
                    flag = Integer.parseInt(i.getString("displayView"));
330
                    if (flag == 31) {
331
                        redirectUrl = i.getString("redirectUrl");
332
                    }
333
                }}
21480 rajender 334
            catch (Exception e){
335
                e.printStackTrace();
336
            }
337
        }
338
 
24857 tejbeer 339
       getSupportActionBar().setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.app_red)));
22132 rajender 340
        //getSupportActionBar().setIcon(R.drawable.backarrow);
21480 rajender 341
        getSupportActionBar().setDisplayShowCustomEnabled(true);
342
        getSupportActionBar().setDisplayShowTitleEnabled(false);
24857 tejbeer 343
        final Drawable upArrow = getResources().getDrawable(R.drawable.com_mixpanel_android_arrowleft);
344
        //upArrow.setColorFilter(getResources().getColor(R.color.grey_black), PorterDuff.Mode.SRC_ATOP);
22132 rajender 345
        getSupportActionBar().setHomeAsUpIndicator(upArrow);
346
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
347
        getSupportActionBar().setHomeButtonEnabled(true);
22381 rajender 348
        getSupportActionBar().setCustomView(R.layout.actionbarprofittill);
21480 rajender 349
 
350
        try {
351
            ViewConfiguration config = ViewConfiguration.get(this);
352
            Field menuKeyField = ViewConfiguration.class
353
                    .getDeclaredField("sHasPermanentMenuKey");
354
            if (menuKeyField != null) {
355
                menuKeyField.setAccessible(true);
356
                menuKeyField.setBoolean(config, false);
357
            }
358
        } catch (Exception ex) {
359
            Log.d("Exception","Message"+ex);
360
        }
361
 
362
        if(type1!=null && type1.equalsIgnoreCase("google")) {
363
            mGoogleApiClient = new GoogleApiClient.Builder(this)
364
                    .addConnectionCallbacks(this)
365
                    .addOnConnectionFailedListener(this).addApi(Plus.API)
366
                    .addScope(Plus.SCOPE_PLUS_LOGIN).build();
367
            mGoogleApiClient.connect();
368
        }
369
 
22832 rajender 370
       /* mTitle = mDrawerTitle = getTitle();
21480 rajender 371
 
22832 rajender 372
       navDrawerView = (LinearLayout) findViewById(R.id.navDrawerView);
21480 rajender 373
        mPlanetTitles = getResources().getStringArray(R.array.stores_array);
374
        mHelpTtiles= getResources().getStringArray(R.array.help_array);
375
        mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
22832 rajender 376
        mDrawerList = (ExpandableListView) findViewById(R.id.nav_left_drawer);
377
                if(userData.getString("registered","").equalsIgnoreCase("false")){
21480 rajender 378
            getSupportActionBar().hide();
379
             mDrawerLayout.setVisibility(View.INVISIBLE);
380
 
22832 rajender 381
        }
382
      listParent = new ArrayList<ExpandableNavigationItem>();
21480 rajender 383
        listDataChild = new HashMap<String, List<String>>();
384
        listParent.add(new ExpandableNavigationItem(getString(R.string.Deals)));
385
        listParent.add(new ExpandableNavigationItem(getString(R.string.Search)));
386
        listParent.add(new ExpandableNavigationItem(getString(R.string.Stores)));
387
        listParent.add(new ExpandableNavigationItem(getString(R.string.Help)));
388
        listDataChild.put(getString(R.string.Deals), new ArrayList<String>());
389
        listDataChild.put(getString(R.string.Search), new ArrayList<String>());
390
        listDataChild.put(getString(R.string.Stores), Arrays.asList(mPlanetTitles));
391
        listDataChild.put(getString(R.string.Help), Arrays.asList(mHelpTtiles));
392
 
393
        customAdapter = new ExpandableNavigationAdapter(this, listParent, listDataChild);
394
 
395
        mDrawerList.setAdapter(customAdapter);
22832 rajender 396
        mDrawerList.setChoiceMode(ExpandableListView.CHOICE_MODE_SINGLE);
21480 rajender 397
 
22832 rajender 398
         getSupportActionBar().setDisplayHomeAsUpEnabled(true);
399
        getSupportActionBar().setHomeButtonEnabled(true);
400
        mDrawerList.setOnChildClickListener(new ExpandableListViewChildClick());
21480 rajender 401
        mDrawerList.setOnGroupExpandListener(new ExpandableGroupExpandListener());
402
 
403
        mDrawerList.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
404
            @Override
405
            public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
406
                if(groupPosition==0 || groupPosition ==1) {
407
                    displayView(groupPosition);
408
                    mDrawerLayout.closeDrawer(navDrawerView);
409
                    mDrawerList.collapseGroup(2);
410
                    mDrawerList.collapseGroup(3);
411
                    return true;
412
                }
413
                return false;
414
            }
415
        });
416
        mDrawerToggle = new ActionBarDrawerToggle(this,
417
                mDrawerLayout,
418
                R.drawable.menu_button_2,
419
                R.string.drawer_open,
420
                R.string.drawer_close
421
        ) {
22832 rajender 422
           /* public void onDrawerClosed(View view) {
21480 rajender 423
                if(titleVisible!=0) {
424
                    if(titleVisible==1)
425
                        getSupportActionBar().setCustomView(R.layout.actionbarmyfavorites);
426
 
427
                    if(titleVisible==2)
428
                        getSupportActionBar().setCustomView(R.layout.actionbarprefernces);
429
 
430
                    if(titleVisible==3)
431
                        getSupportActionBar().setCustomView(R.layout.actionbarmywallet);
432
 
433
                    if(titleVisible==4)
434
                        getSupportActionBar().setCustomView(R.layout.actionbarmyorders);
435
 
436
                    if(titleVisible==5)
437
                        getSupportActionBar().setCustomView(R.layout.actionbarpendingcashback);
438
 
439
                    if(titleVisible==6)
440
                        getSupportActionBar().setCustomView(R.layout.actionbarmyprofile);
441
                }
442
                shouldGoInvisible = false;
443
                invalidateOptionsMenu();
444
            }
445
 
446
            public void onDrawerOpened(View drawerView) {
447
                getSupportActionBar().setCustomView(R.layout.actionbarprofittill);
448
                shouldGoInvisible = true;
449
                invalidateOptionsMenu();
450
            }
451
        };
452
        mDrawerLayout.setDrawerListener(mDrawerToggle);
22832 rajender 453
*/
21480 rajender 454
 
455
        if (savedInstanceState == null) {
456
 
457
            if (flag == 7) {
22832 rajender 458
              //  getSupportActionBar().setCustomView(R.layout.actionbarhowitworks);
21480 rajender 459
                displayHelpChildView(1);
22832 rajender 460
            } /*else if (flag == 6) {
21480 rajender 461
                getSupportActionBar().setCustomView(R.layout.actionbarcontactus);
462
                displayHelpChildView(0);
463
            } else if (flag == 15) {
464
                getSupportActionBar().setCustomView(R.layout.actionbarmyprofile);
465
                MyProfile myProfile = new MyProfile();
466
                this.getFragmentManager().beginTransaction()
467
                        .replace(R.id.frame_container, myProfile, "Mike")
468
                        .addToBackStack(null)
469
                        .commit();
22832 rajender 470
            }*/
471
            else if(flag == 13){
472
                displayView(1);
473
            }
474
           else if (flag == 20) {
475
               getSupportActionBar().setCustomView(R.layout.actionbardeals);
21480 rajender 476
                JSONObject propsNotification = new JSONObject();
477
                try {
478
                    mixpanel.identify(userData.getString("id",null));
479
                    propsNotification.put("Screen", "Notification Url opened");
480
                    mixpanel.track("Notification Opened", propsNotification);
481
                } catch (JSONException e) {
482
                    e.printStackTrace();
483
                }
484
                Bundle args = new Bundle();
485
                DealsHomeFragment notifcationFragment = new DealsHomeFragment();
486
                args.putString("key", notificationURL);
487
                notifcationFragment.setArguments(args);
22832 rajender 488
                FragmentManager fragmentManager = getFragmentManager();
489
                fragmentManager.popBackStack(notifcationFragment.toString(),FragmentManager.POP_BACK_STACK_INCLUSIVE);
490
                fragmentManager.beginTransaction().replace(R.id.frame_container, notifcationFragment).addToBackStack(notifcationFragment.toString()).commit();
491
                System.gc();
492
 
493
 
21480 rajender 494
            }else if (flag == 31) {
495
                getSupportActionBar().setCustomView(R.layout.actionbardeals);
496
                Bundle args = new Bundle();
497
                DealsHomeFragment redirectUrlFragment = new DealsHomeFragment();
498
                args.putString("key", redirectUrl);
22832 rajender 499
                redirectUrlFragment.setArguments(args);
21480 rajender 500
                this.getFragmentManager().beginTransaction()
501
                        .replace(R.id.frame_container, redirectUrlFragment, "Mike")
502
                        .addToBackStack(null)
503
                        .commit();
504
                redirectUrlFragment.setArguments(args);
22832 rajender 505
            }/*else if (flag == 11) {
21480 rajender 506
                getSupportActionBar().setCustomView(R.layout.actionbaraboutus);
507
                Bundle args = new Bundle();
508
                AboutUsFragment redirectUrlFragment = new AboutUsFragment();
509
                args.putString("key", redirectUrl);
510
                this.getFragmentManager().beginTransaction()
511
                        .replace(R.id.frame_container, redirectUrlFragment, "Mike")
512
                        .addToBackStack(null)
513
                        .commit();
514
                redirectUrlFragment.setArguments(args);
22832 rajender 515
            }*/
516
            else {
517
               // getSupportActionBar().setCustomView(R.layout.actionbardeals);
21480 rajender 518
                displayView(0);
519
            }
22832 rajender 520
        }
521
       // displayView(0);
21480 rajender 522
    }
523
 
524
 
525
 
22132 rajender 526
 
527
 
528
   /* private class ExpandableGroupExpandListener implements ExpandableListView.OnGroupExpandListener {
21480 rajender 529
        @Override
530
        public void onGroupExpand(int groupPosition) {
531
            int len = customAdapter.getGroupCount();
532
            int index = mDrawerList.getFlatListPosition(ExpandableListView.getPackedPositionForGroup(groupPosition));
533
            mDrawerList.setItemChecked(index, true);
534
            String parentTitle = customAdapter.getGroup(groupPosition).getTitle();
535
            if (groupPosition == 3) {
536
                if (mDrawerList.isGroupExpanded(2)) {
537
                    mDrawerList.collapseGroup(2);
538
                }
539
            } else if (groupPosition == 2) {
540
                if (mDrawerList.isGroupExpanded(3)) {
541
                    mDrawerList.collapseGroup(3);
542
                }
543
            }
544
            setActionBarTitlte(parentTitle);
545
        }
546
 
547
    }
548
 
549
    private class ExpandableListViewChildClick implements ExpandableListView.OnChildClickListener {
550
        @Override
551
        public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
552
            int index = parent.getFlatListPosition(ExpandableListView.getPackedPositionForChild(groupPosition, childPosition));
553
            parent.setItemChecked(index, true);
554
            mDrawerLayout.closeDrawer(navDrawerView);
555
            if(groupPosition==2) {
556
                displayChildView(childPosition);
557
            }else if(groupPosition==3){
558
                if (childPosition==0) {
559
                    getSupportActionBar().setCustomView(R.layout.actionbarcontactus);
560
                }
561
                else if (childPosition==1) {
562
                    getSupportActionBar().setCustomView(R.layout.actionbarhowitworks);
563
                }
564
                else if (childPosition==2) {
565
                    getSupportActionBar().setCustomView(R.layout.actionbaraboutus);
566
                }
567
                displayHelpChildView(childPosition);
568
            }
569
            return false;
570
        }
571
 
572
    }
22832 rajender 573
*/
21480 rajender 574
    private void displayHelpChildView(int position) {
575
        titleVisible=0;
576
        Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
577
                GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
578
        Fragment fragment = null;
579
        Map<String, String> jsonParams;
580
        switch (position) {
581
            case 0:
582
                JSONObject propsContactUs = new JSONObject();
583
                try {
584
                    mixpanel.identify(userData.getString("id",null));
585
                    propsContactUs.put("Screen", "Contact Us");
586
                    mixpanel.track("Contact Us", propsContactUs);
587
                } catch (JSONException e) {
588
                    e.printStackTrace();
589
                }
590
                t.send(new HitBuilders.EventBuilder()
591
                        .setCategory("Menu")
592
                        .setAction("Contact Us ")
593
                        .setLabel("Contact us Clicked")
594
                        .build());
22832 rajender 595
               // fragment = new ContactUsFragment();
21480 rajender 596
                break;
597
            case 1:
598
                JSONObject propsHowItWorks = new JSONObject();
599
                try {
600
                    mixpanel.identify(userData.getString("id",null));
601
                    propsHowItWorks.put("Screen", "How it Works");
602
                    mixpanel.track("How it Works", propsHowItWorks);
603
                } catch (JSONException e) {
604
                    e.printStackTrace();
605
                }
606
                t.send(new HitBuilders.EventBuilder()
607
                        .setCategory("Menu")
608
                        .setAction("Tutorials ")
609
                        .setLabel("Tutorials Clicked")
610
                        .build());
22832 rajender 611
                fragment = new HowItWorks();
21480 rajender 612
                break;
613
            case 2:
614
                JSONObject propsAboutUs = new JSONObject();
615
                try {
616
                    mixpanel.identify(userData.getString("id",null));
617
                    propsAboutUs.put("Screen", "About Us");
618
                    mixpanel.track("About Us", propsAboutUs);
619
                } catch (JSONException e) {
620
                    e.printStackTrace();
621
                }
622
                t.send(new HitBuilders.EventBuilder()
623
                        .setCategory("Menu")
624
                        .setAction("About Us ")
625
                        .setLabel("About us Clicked")
626
                        .build());
22832 rajender 627
               // fragment = new AboutUsFragment();
21480 rajender 628
                break;
629
            default:
630
                break;
631
        }
22832 rajender 632
       /* if (fragment != null) {
21480 rajender 633
            FragmentManager fragmentManager = getFragmentManager();
634
            fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();
635
 
636
        } else {
637
            Log.e("MainActivity", "Error in creating fragment");
638
        }*/
22832 rajender 639
        if (fragment != null) {
21480 rajender 640
            FragmentManager fragmentManager = getFragmentManager();
641
            fragmentManager.popBackStack(fragment.toString(),FragmentManager.POP_BACK_STACK_INCLUSIVE);
642
            fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).addToBackStack(fragment.toString()).commit();
643
            System.gc();
644
        } else {
645
            Log.e("MainActivity", "Error in creating fragment");
646
        }
647
 
22832 rajender 648
    }
22132 rajender 649
 
650
    @TargetApi(Build.VERSION_CODES.M)
651
    private void checkPermission() {
652
        if (ContextCompat.checkSelfPermission(MainActivity.this,
653
                Manifest.permission.READ_EXTERNAL_STORAGE) + ContextCompat
654
                .checkSelfPermission(MainActivity.this,
24857 tejbeer 655
                        Manifest.permission.CAMERA)
22132 rajender 656
                != PackageManager.PERMISSION_GRANTED) {
657
 
658
            if (ActivityCompat.shouldShowRequestPermissionRationale
659
                    (MainActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE) ||
660
                    ActivityCompat.shouldShowRequestPermissionRationale
24857 tejbeer 661
                            (MainActivity.this, Manifest.permission.CAMERA)) {
22132 rajender 662
 
663
                requestPermissions(
664
                        new String[]{Manifest.permission
24857 tejbeer 665
                                .READ_EXTERNAL_STORAGE, Manifest.permission.CAMERA},
22132 rajender 666
                        123);
667
 
668
            } else {
669
                requestPermissions(
670
                        new String[]{Manifest.permission
24857 tejbeer 671
                                .READ_EXTERNAL_STORAGE, Manifest.permission.CAMERA},
22132 rajender 672
                        123);
673
            }
674
        } else {
675
            // write your logic code if permission already granted
676
        }
21480 rajender 677
    }
678
    @Override
679
    public boolean onCreateOptionsMenu(Menu menu) {
680
        mainMenu=menu;
681
        super.onCreateOptionsMenu(menu);
682
        getMenuInflater().inflate(R.menu.menu_main, menu);
22132 rajender 683
       /* RelativeLayout badgeLayout = (RelativeLayout) mainMenu.findItem(R.id.action_notifications).getActionView();
21480 rajender 684
        ImageView k = (ImageView) badgeLayout.findViewById(R.id.inAppNotificationImage);
685
        TextView notifciationCount = (TextView) badgeLayout.findViewById(R.id.inAppNotificationText);
686
        k.setOnClickListener(new View.OnClickListener() {
687
            @Override
688
            public void onClick(View v) {
689
                Bundle args = new Bundle();
22132 rajender 690
                args.putString("key", apiData.getString("notification.page.url", "http://staging.profittill.com/users/usernotification") + "?user_id=" + userData.getString("id", "") + "&android_id=" + UtilityFunctions.androidId(MainActivity.this));
21480 rajender 691
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
692
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Notification","Notification Icon","Notification Icon Clicked"),
693
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
694
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
695
 
696
                Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
697
                        GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
698
                t.send(new HitBuilders.EventBuilder()
699
                        .setCategory("Menu")
700
                        .setAction("Search ")
701
                        .setLabel("Search Clicked")
702
                        .build());
703
                DealsHomeFragment notificationFragment = new DealsHomeFragment();
704
                getFragmentManager().beginTransaction()
705
                        .replace(R.id.frame_container, notificationFragment, "Mike")
706
                        .addToBackStack(null)
707
                        .commit();
708
                notificationFragment.setArguments(args);
709
            }
710
        });
711
 
712
        if(userData.getInt("notification_count",0)!=0) {
713
            notifciationCount.setVisibility(View.VISIBLE);
714
            notifciationCount.setText(userData.getInt("notification_count",0)+"");
715
        }else{
716
            notifciationCount.setVisibility(View.GONE);
22132 rajender 717
        }*/
21480 rajender 718
        return true;
719
    }
720
 
22381 rajender 721
   /* @Override
21480 rajender 722
    public boolean onOptionsItemSelected(MenuItem item) {
723
        Fragment menuFragment= null;
724
        JSONObject props = new JSONObject();
725
        Bundle args = new Bundle();
726
        String id = userData.getString("id",null);
22132 rajender 727
        /*if (mDrawerToggle.onOptionsItemSelected(item)) {
21480 rajender 728
            return true;
729
        }
22381 rajender 730
 
21480 rajender 731
        switch (item.getItemId()) {
22132 rajender 732
            // Respond to the action bar's Up/Home button
733
            case android.R.id.home:
734
                new AlertDialog.Builder(this)
735
                        .setIcon(android.R.drawable.ic_dialog_alert)
736
                        .setTitle("Exit!")
737
                        .setMessage("Are you sure you want to close?")
738
                        .setPositiveButton("Yes", new DialogInterface.OnClickListener()
739
                        {
740
                            @Override
741
                            public void onClick(DialogInterface dialog, int which) {
742
                                Intent startMain = new Intent(Intent.ACTION_MAIN);
743
                                startMain.addCategory(Intent.CATEGORY_HOME);
744
                                startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
745
                                startActivity(startMain);
746
                            }
747
                        })
748
                        .setNegativeButton("No", null)
749
                        .show();
750
        }
22381 rajender 751
        return super.onOptionsItemSelected(item);*/
22132 rajender 752
 
753
           /* case R.id.action_settings:
21480 rajender 754
                AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
755
                Intent i = new Intent(this, PollingService.class);
756
                PendingIntent pi = PendingIntent.getService(this, 0, i, 0);
757
                am.cancel(pi);
758
                userDataEditor.putString("alarm_set","false").commit();
759
                android.webkit.CookieManager cookieManager = android.webkit.CookieManager.getInstance();
760
                android.webkit.CookieSyncManager.createInstance(this);
761
                cookieManager.removeAllCookie();
762
                try {
763
                    mixpanel.identify(userData.getString("id",null));
764
                    props.put("Screen", "Signing Out");
765
                    mixpanel.track("Signing Out", props);
766
                } catch (JSONException e) {
767
                    e.printStackTrace();
768
                }
769
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
770
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Sign Out","Sign Out Clicked"),
771
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
772
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
773
                try{
774
                    if (mGoogleApiClient.isConnected()) {
775
                        Plus.AccountApi.clearDefaultAccount(mGoogleApiClient);
776
                        mGoogleApiClient.disconnect();
777
                        mGoogleApiClient.connect();
778
                        userDataEditor.clear().commit();
779
                        inviteDataEditor.clear().commit();
780
                        startActivity(new Intent(MainActivity.this, LoginActivity.class));
781
                    }
782
                    else{
783
                        if(!mGoogleApiClient.isConnected()){
784
                            userDataEditor.clear().commit();
785
                            inviteDataEditor.clear().commit();
786
                            startActivity(new Intent(MainActivity.this, LoginActivity.class));
22132 rajender 787
                        }}
788
                }
789
                catch (Exception e){
21480 rajender 790
                    userDataEditor.clear().commit();
791
                    startActivity(new Intent(MainActivity.this, LoginActivity.class));
792
                }
22132 rajender 793
                return true;*/
21480 rajender 794
 
22132 rajender 795
          /*  case R.id.my_wallet:
21480 rajender 796
                titleVisible=3;
797
                getSupportActionBar().setCustomView(R.layout.actionbarmywallet);
798
                try {
799
                    mixpanel.identify(userData.getString("id",null));
800
                    props.put("Screen", "My Wallet");
801
                    mixpanel.track("My Wallet", props);
802
                } catch (JSONException e) {
803
                    e.printStackTrace();
804
                }
805
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
806
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Wallet","My Wallet Clicked"),
807
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
808
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
809
                MyWallet myWallet= new MyWallet();
810
                this.getFragmentManager().beginTransaction()
811
                        .replace(R.id.frame_container, myWallet,"Mike")
812
                        .addToBackStack(null)
813
                        .commit();
814
                return true;
815
            case R.id.pending_cashback:
816
                titleVisible=5;
817
                getSupportActionBar().setCustomView(R.layout.actionbarpendingcashback);
818
                try {
819
                    mixpanel.identify(userData.getString("id",null));
820
                    props.put("Screen", "Cashback Status");
821
                    mixpanel.track("Cashback Status", props);
822
                } catch (JSONException e) {
823
                    e.printStackTrace();
824
                }
825
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
826
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Cashback Status","Cashback Status Clicked"),
827
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
828
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
829
                args.putString("key", apiData.getString("pendingcashback.url",null)+"?user_id="+id);
830
                DealsHomeFragment orderFragment= new DealsHomeFragment();
831
                this.getFragmentManager().beginTransaction()
832
                        .replace(R.id.frame_container, orderFragment,"Mike")
833
                        .addToBackStack(null)
834
                        .commit();
835
                orderFragment.setArguments(args);
836
 
837
                return true;
838
            case R.id.my_favorites:
839
                titleVisible=1;
840
                getSupportActionBar().setCustomView(R.layout.actionbarmyfavorites);
841
                try {
842
                    mixpanel.identify(userData.getString("id",null));
843
                    props.put("Screen", "My Favorites");
844
                    mixpanel.track("My Favorites", props);
845
                } catch (JSONException e) {
846
                    e.printStackTrace();
847
                }
848
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
849
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Favorites","My Favorites Clicked"),
850
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
851
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
852
                args.putString("key", apiData.getString("myfavourite.url",null)+"?user_id="+id);
853
                DealsHomeFragment favoritesFragment= new DealsHomeFragment();
854
                this.getFragmentManager().beginTransaction()
855
                        .replace(R.id.frame_container, favoritesFragment,"Mike")
856
                        .addToBackStack(null)
857
                        .commit();
858
                favoritesFragment.setArguments(args);
859
                return true;
860
            case R.id.my_profile:
861
                titleVisible=6;
862
                getSupportActionBar().setCustomView(R.layout.actionbarmyprofile);
863
                try {
864
                    mixpanel.identify(userData.getString("id",null));
865
                    props.put("Screen", "My Profile");
866
                    mixpanel.track("My profile", props);
867
                } catch (JSONException e) {
868
                    e.printStackTrace();
869
                }
870
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
871
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Profile","My Profile Clicked"),
872
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
873
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
874
                MyProfile myProfile= new MyProfile();
875
                this.getFragmentManager().beginTransaction()
876
                        .replace(R.id.frame_container, myProfile,"Mike")
877
                        .addToBackStack(null)
878
                        .commit();
879
                return true;
880
            case R.id.my_order:
881
                titleVisible=4;
882
                getSupportActionBar().setCustomView(R.layout.actionbarmyorders);
883
                try {
884
                    mixpanel.identify(userData.getString("id",null));
885
                    props.put("Screen", "My Orders");
886
                    mixpanel.track("My Orders", props);
887
                } catch (JSONException e) {
888
                    e.printStackTrace();
889
                }
890
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
891
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Orders","My Orders Clicked"),
892
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
893
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
894
                args.putString("key", apiData.getString("myorders.url",null)+"?user_id="+id);
895
                DealsHomeFragment preferenceFragment= new DealsHomeFragment();
896
                this.getFragmentManager().beginTransaction()
897
                        .replace(R.id.frame_container, preferenceFragment,"Mike")
898
                        .addToBackStack(null)
899
                        .commit();
900
                preferenceFragment.setArguments(args);
901
 
902
                return true;
903
            case R.id.my_preferences:
904
                titleVisible=2;
905
                getSupportActionBar().setCustomView(R.layout.actionbarprefernces);
906
                try {
907
                    mixpanel.identify(userData.getString("id",null));
908
                    props.put("Screen", "My Preferences");
909
                    mixpanel.track("My Preferences", props);
910
                } catch (JSONException e) {
911
                    e.printStackTrace();
912
                }
913
                userDataEditor.remove("preferences").commit();
914
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
915
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","My Preferences","My Preferences Clicked"),
916
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
917
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
918
                PreferencesFragment my_preferences = new PreferencesFragment();
919
                this.getFragmentManager().beginTransaction()
920
                        .replace(R.id.frame_container, my_preferences,"Mike")
921
                        .addToBackStack(null)
922
                        .commit();
923
 
22132 rajender 924
                return true;*/
925
          /* default:*/
926
        // return super.onOptionsItemSelected(item);
21480 rajender 927
 
928
 
929
 
22132 rajender 930
 
22381 rajender 931
 
21480 rajender 932
    @Override
933
    public void onConnected(Bundle bundle) {
934
 
935
    }
936
 
937
    @Override
938
    public void onConnectionSuspended(int i) {
939
 
940
    }
941
 
942
    @Override
943
    public void onConnectionFailed(ConnectionResult connectionResult) {
944
 
945
    }
946
 
947
    @Override
948
    public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {
949
        super.onSaveInstanceState(outState, outPersistentState);
950
    }
951
    @Override
952
    protected void onRestoreInstanceState(Bundle savedInstanceState) {
953
        super.onRestoreInstanceState(savedInstanceState);
954
        Intent i= new Intent(MainActivity.this,MainActivity.class);
955
        i.putExtra("displayView","0");
956
        startActivity(i);
957
    }
958
 
959
    @Override
960
    public boolean onMenuOpened(int featureId, Menu menu)
961
    {
962
        if(featureId == Window.FEATURE_ACTION_BAR && menu != null){
963
            if(menu.getClass().getSimpleName().equals("MenuBuilder")){
964
                try{
965
                    Method m = menu.getClass().getDeclaredMethod(
966
                            "setOptionalIconsVisible", Boolean.TYPE);
967
                    m.setAccessible(true);
968
                    m.invoke(menu, true);
969
 
970
                }
971
                catch(Exception e){
972
                    throw new RuntimeException(e);
973
                }
974
            }
975
        }
976
        return super.onMenuOpened(featureId, menu);
977
    }
978
 
979
    private void displayView(int position) {
980
        titleVisible=0;
981
 
982
        Bundle args = new Bundle();
983
        Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
984
                GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
985
        String id = userData.getString("id",null);
986
        Fragment fragment = null;
987
        switch (position) {
988
            case 0:
989
                JSONObject props = new JSONObject();
990
                try {
991
                    mixpanel.getPeople().set( "$last_login",new Date());
992
                    mixpanel.identify(userData.getString("id",null));
993
                    props.put("Screen", "Deals Screen");
994
                    mixpanel.track("Deals", props);
995
                } catch (JSONException e) {
996
                    e.printStackTrace();
997
                }
998
 
999
                t.send(new HitBuilders.EventBuilder()
1000
                        .setCategory("Menu")
1001
                        .setAction("Deals ")
1002
                        .setLabel("Deals Clicked")
1003
                        .build());
1004
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1005
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Deals","Deals Clicked"),
1006
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1007
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
22381 rajender 1008
                String dealsUrl=apiData.getString("Web_Uri","http://app.profitmandi.com/entry-point");
24857 tejbeer 1009
                //String dealsUrl=("http://192.168.120.52:4200/entry-point");
21480 rajender 1010
                args.putString("key",dealsUrl);
1011
                fragment = new DealsHomeFragment();
1012
                fragment.setArguments(args);
1013
                break;
1014
            case 1:
1015
                JSONObject props1 = new JSONObject();
1016
                try {
1017
                    mixpanel.identify(userData.getString("id",null));
22832 rajender 1018
                    props1.put("Screen", "home");
1019
                    mixpanel.track("home", props1);
21480 rajender 1020
                } catch (JSONException e) {
1021
                    e.printStackTrace();
1022
                }
1023
                t.send(new HitBuilders.EventBuilder()
1024
                        .setCategory("Menu")
22832 rajender 1025
                        .setAction("home ")
1026
                        .setLabel("home Clicked")
21480 rajender 1027
                        .build());
1028
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
22832 rajender 1029
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","home","home Clicked"),
21480 rajender 1030
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1031
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
24857 tejbeer 1032
              args.putString("key", apiData.getString("checkRegistration","http://app.profitmandi.com/pages/checkRegistration"));
1033
             //   args.putString("key", "http://192.168.120.52:4200/pages/checkRegistration");
21480 rajender 1034
                fragment = new DealsHomeFragment();
1035
                fragment.setArguments(args);
1036
                break;
1037
            default:
1038
                break;
1039
        }
1040
/*        if (fragment != null) {
1041
            FragmentManager fragmentManager = getFragmentManager();
1042
            fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();
1043
 
1044
        } else {
1045
            Log.e("MainActivity", "Error in creating fragment");
1046
        }*/
1047
 
1048
        if (fragment != null) {
1049
            FragmentManager fragmentManager = getFragmentManager();
1050
            fragmentManager.popBackStack(fragment.toString(),FragmentManager.POP_BACK_STACK_INCLUSIVE);
1051
            fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).addToBackStack(fragment.toString()).commit();
1052
            System.gc();
1053
        } else {
1054
            Log.e("MainActivity", "Error in creating fragment");
1055
        }
1056
    }
1057
 
1058
 
22832 rajender 1059
   /* private void displayChildView(int position) {
21480 rajender 1060
        titleVisible=0;
1061
        Bundle args = new Bundle();
1062
        Tracker t = ((GoogleAnalyticsTracker) getApplicationContext()).getTracker(
1063
                GoogleAnalyticsTracker.TrackerName.APP_TRACKER);
1064
        String id = userData.getString("id", null);
1065
        Fragment fragment = null;
1066
        Map<String, String> jsonParams;
1067
        switch (position) {
1068
            case 0:
1069
                JSONObject propsAmazon = new JSONObject();
1070
                try {
1071
                    mixpanel.identify(userData.getString("id",null));
1072
                    propsAmazon.put("Screen", "Amazon");
1073
                    mixpanel.track("Amazon", propsAmazon);
1074
                } catch (JSONException e) {
1075
                    e.printStackTrace();
1076
                }
1077
                t.send(new HitBuilders.EventBuilder()
1078
                        .setCategory("Menu")
1079
                        .setAction("Amazon ")
1080
                        .setLabel("Amazon Clicked")
1081
                        .build());
1082
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1083
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Amazon","Amazon Clicked"),
1084
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1085
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
1086
                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));
1087
                fragment = new DealsHomeFragment();
1088
                fragment.setArguments(args);
1089
                break;
1090
            case 1:
1091
                JSONObject propsFlipkart = new JSONObject();
1092
                try {
1093
                    mixpanel.identify(userData.getString("id",null));
1094
                    propsFlipkart.put("Screen", "Flipkart");
1095
                    mixpanel.track("Flipkart", propsFlipkart);
1096
                } catch (JSONException e) {
1097
                    e.printStackTrace();
1098
                }
1099
                t.send(new HitBuilders.EventBuilder()
1100
                        .setCategory("Menu")
1101
                        .setAction("Flipkart ")
1102
                        .setLabel("Flipkart Clicked")
1103
                        .build());
1104
 
1105
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1106
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Flipkart","Flipkart Clicked"),
1107
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1108
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
1109
                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));
1110
                fragment = new DealsHomeFragment();
1111
                fragment.setArguments(args);
1112
                break;
1113
            case 2:
1114
                t.send(new HitBuilders.EventBuilder()
1115
                        .setCategory("Menu")
1116
                        .setAction("HomeShop18 ")
1117
                        .setLabel("HomeShop18 Clicked")
1118
                        .build());
1119
 
1120
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1121
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","HomeShop18","HomeShop18 Clicked"),
1122
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1123
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
1124
                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));
1125
                fragment = new DealsHomeFragment();
1126
                fragment.setArguments(args);
1127
                break;
1128
            case 3:
1129
                t.send(new HitBuilders.EventBuilder()
1130
                        .setCategory("Menu")
1131
                        .setAction("Paytm ")
1132
                        .setLabel("Paytm Clicked")
1133
                        .build());
1134
 
1135
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1136
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Paytm","Paytm Clicked"),
1137
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1138
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
1139
                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));
1140
                fragment = new DealsHomeFragment();
1141
                fragment.setArguments(args);
1142
                break;
1143
            case 4:
1144
                JSONObject propsSaholic = new JSONObject();
1145
                try {
1146
                    mixpanel.identify(userData.getString("id",null));
1147
                    propsSaholic.put("Screen", "Saholic");
1148
                    mixpanel.track("Saholic", propsSaholic);
1149
                } catch (JSONException e) {
1150
                    e.printStackTrace();
1151
                }
1152
                t.send(new HitBuilders.EventBuilder()
1153
                        .setCategory("Menu")
1154
                        .setAction("Saholic ")
1155
                        .setLabel("Saholic Clicked")
1156
                        .build());
1157
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1158
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Saholic","Saholic Clicked"),
1159
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1160
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
1161
                args.putString("key", apiData.getString("saholic.autologin.url","")+"?user_id="+userData.getString("id",""));
1162
                fragment = new DealsHomeFragment();
1163
                fragment.setArguments(args);
1164
                break;
1165
            case 5:
1166
                JSONObject propsShopclues = new JSONObject();
1167
                try {
1168
                    mixpanel.identify(userData.getString("id",null));
1169
                    propsShopclues.put("Screen", "Shopclues");
1170
                    mixpanel.track("Shopclues", propsShopclues);
1171
                } catch (JSONException e) {
1172
                    e.printStackTrace();
1173
                }
1174
                t.send(new HitBuilders.EventBuilder()
1175
                        .setCategory("Menu")
1176
                        .setAction("Shopclues ")
1177
                        .setLabel("Shopclues Clicked")
1178
                        .build());
1179
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1180
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Shopclues","Shopclues Clicked"),
1181
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1182
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
1183
                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);
1184
                args.putString("key", url);
1185
                if(Uri.parse(url).getHost().equalsIgnoreCase(ProfitTillConstants.DOMAIN)) {
1186
                    CookieSyncManager.createInstance(getApplicationContext());
1187
                    CookieManager cookieManager1 = CookieManager.getInstance();
1188
                    cookieManager1.setCookie(url, "token=" + userData.getString("token", ""));
1189
                    cookieManager1.setCookie(url, "walletAuthentication=true");
1190
                    cookieManager1.setCookie(url, "shopcluesActive=true");
1191
                }
1192
                fragment = new DealsHomeFragment();
1193
                fragment.setArguments(args);
1194
                break;
1195
            case 6:
1196
                JSONObject propsSnapdeal = new JSONObject();
1197
                try {
1198
                    mixpanel.identify(userData.getString("id",null));
1199
                    propsSnapdeal.put("Screen", "Snapdeal");
1200
                    mixpanel.track("Snapdeal", propsSnapdeal);
1201
                } catch (JSONException e) {
1202
                    e.printStackTrace();
1203
                }
1204
                t.send(new HitBuilders.EventBuilder()
1205
                        .setCategory("Menu")
1206
                        .setAction("Snapdeal ")
1207
                        .setLabel("Snapdeal Clicked")
1208
                        .build());
1209
                new Analytics(ProfitTillConstants.ANALYTICS_URL,
1210
                        AnalyticsUtility.getAnalyticsRequest(MainActivity.this,userData.getString("id",""),"Menu","Snapdeal","Snapdeal Clicked"),
1211
                        AnalyticsJsonResponse.getAnalyticsRequestInstance(),
1212
                        AnalyticsErrorResponse.getAnalyitcsResponseInstance()).anlyticsRequest(MainActivity.this);
1213
                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));
1214
                fragment = new DealsHomeFragment();
1215
                fragment.setArguments(args);
1216
                break;
1217
            default:
1218
                break;
1219
        }
22832 rajender 1220
        if (fragment != null) {
21480 rajender 1221
            FragmentManager fragmentManager = getFragmentManager();
1222
            fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit();
1223
 
1224
        } else {
1225
            Log.e("MainActivity", "Error in creating fragment");
22832 rajender 1226
        }
21480 rajender 1227
        if (fragment != null) {
1228
            FragmentManager fragmentManager = getFragmentManager();
1229
            fragmentManager.popBackStack(fragment.toString(),FragmentManager.POP_BACK_STACK_INCLUSIVE);
1230
            fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).addToBackStack(fragment.toString()).commit();
1231
            System.gc();
1232
        } else {
1233
            Log.e("MainActivity", "Error in creating fragment");
1234
        }
1235
    }
1236
 
1237
 
22132 rajender 1238
   /* public void setActionBarTitlte(String parentTitle){
21480 rajender 1239
        if (parentTitle.equals("Deals")) {
1240
            getSupportActionBar().setCustomView(R.layout.actionbardeals);
1241
        }
1242
        if (parentTitle.equalsIgnoreCase("Visit Other Stores")) {
1243
            getSupportActionBar().setCustomView(R.layout.actionbarprofittill);
1244
        }
1245
        if (parentTitle.equals("FAQ")) {
1246
            getSupportActionBar().setCustomView(R.layout.actionbaraboutus);
1247
        }
1248
        if (parentTitle.equals("Contact Us")) {
1249
            getSupportActionBar().setCustomView(R.layout.actionbarcontactus);
1250
        }
1251
        if (parentTitle.equals("Search")) {
1252
            getSupportActionBar().setCustomView(R.layout.actionbarsearch);
1253
        }
1254
        if (parentTitle.equals("How it Works")) {
1255
            getSupportActionBar().setCustomView(R.layout.actionbarhowitworks);
1256
        }
22132 rajender 1257
    }*/
21480 rajender 1258
 
1259
    @Override
1260
    protected void onPostCreate(Bundle savedInstanceState) {
1261
        super.onPostCreate(savedInstanceState);
22132 rajender 1262
        // mDrawerToggle.syncState();
21480 rajender 1263
    }
1264
 
1265
    @Override
1266
    public boolean onPrepareOptionsMenu(Menu menu) {
1267
        boolean drawerOpen = shouldGoInvisible;
1268
        hideMenuItems(menu, !drawerOpen);
1269
        return super.onPrepareOptionsMenu(menu);
1270
    }
1271
    private void hideMenuItems(Menu menu, boolean visible)
1272
    {
22132 rajender 1273
        for(int i = 0; i < menu.size(); i++){
1274
            menu.getItem(i).setVisible(visible);
1275
        }
21480 rajender 1276
    }
22832 rajender 1277
  /*  @Override
21480 rajender 1278
    public void onConfigurationChanged(Configuration newConfig) {
1279
        super.onConfigurationChanged(newConfig);
22832 rajender 1280
        //mDrawerToggle.onConfigurationChanged(newConfig);
1281
    }*/
21480 rajender 1282
    @Override
1283
    public boolean onKeyUp(int keycode, KeyEvent e) {
1284
        switch(keycode) {
1285
            case KeyEvent.KEYCODE_MENU:
1286
 
22132 rajender 1287
            /*   if (mainMenu !=null) {
21480 rajender 1288
                    mainMenu.performIdentifierAction(R.id.overflowMenu,0);
22132 rajender 1289
                }*/
21480 rajender 1290
        }
1291
 
1292
        return super.onKeyUp(keycode, e);
1293
    }
22832 rajender 1294
 
21480 rajender 1295
    @Override
1296
    public boolean onKeyDown(int keyCode, KeyEvent event) {
1297
 
1298
        switch(keyCode) {
1299
            case KeyEvent.KEYCODE_MENU:
22132 rajender 1300
               /*  if (mainMenu !=null) {
21480 rajender 1301
                  mainMenu.performIdentifierAction(R.id.overflowMenu,0);
22132 rajender 1302
                  }*/
21480 rajender 1303
        }
1304
        return super.onKeyUp(keyCode, event);
1305
    }
22832 rajender 1306
 
1307
 
1308
 
21480 rajender 1309
    private Menu mainMenu;
1310
    public final boolean isInternetOn() {
1311
 
1312
        ConnectivityManager connec =
1313
                (ConnectivityManager)getSystemService(this.getBaseContext().CONNECTIVITY_SERVICE);
1314
 
1315
        if ( connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.CONNECTED ||
1316
                connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.CONNECTING ||
1317
                connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.CONNECTING ||
1318
                connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.CONNECTED ) {
1319
            return true;
1320
 
1321
        } else if (
1322
                connec.getNetworkInfo(0).getState() == android.net.NetworkInfo.State.DISCONNECTED ||
1323
                        connec.getNetworkInfo(1).getState() == android.net.NetworkInfo.State.DISCONNECTED  ) {
1324
            return false;
1325
        }
1326
        return false;
1327
    }
1328
    class NotificationOpenedData extends AsyncTask<ArrayList<NameValuePair>, Integer, String> {
1329
 
1330
        @Override
1331
        protected void onPreExecute() {
1332
            super.onPreExecute();
1333
        }
1334
 
1335
        @Override
1336
        protected String doInBackground(ArrayList<NameValuePair>... arg0) {
1337
 
1338
            try {
1339
                HttpClient httpclient = new DefaultHttpClient();
1340
                HttpPost httppost = new HttpPost(apiData.getString("notification.data.url","http://api.profittill.com/pushnotifications/add"));
1341
                httppost.setHeader("Authorization", ProfitTillConstants.BASIC_AUTH);
1342
                httppost.setEntity(new UrlEncodedFormEntity(arg0[0]));
1343
                HttpResponse response = httpclient.execute(httppost);
1344
                HttpEntity entity = response.getEntity();
1345
                int status = response.getStatusLine().getStatusCode();
1346
 
1347
                nameValuePairsGcm.clear();
1348
            } catch (Exception e) {
1349
                e.printStackTrace();
1350
            }
1351
            return "success";
1352
        }
1353
 
1354
        @Override
1355
        protected void onPostExecute(String result) {
22132 rajender 1356
 
21480 rajender 1357
            super.onPostExecute(result);
1358
        }
1359
    }
1360
    @Override
1361
    protected void onResume() {
1362
        super.onResume();
1363
        String userId = userData.getString("id","");
1364
        String androidId=UtilityFunctions.androidId(MainActivity.this);
1365
        if(!userId.isEmpty() && !androidId.isEmpty()) {
1366
            String notificationUrl = apiData.getString("notification.count", "http://45.33.50.227:3001/getNotificationCount") + "?user_id=" + userId + "&android_id=" + androidId;
1367
            new NotificationCount().getCount(MainActivity.this, null, notificationUrl);
1368
        }
1369
        AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
1370
        Intent i = new Intent(this, PollingService.class);
1371
        PendingIntent pi = PendingIntent.getService(this, 0, i, 0);
1372
        am.cancel(pi);
1373
        am.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + 60 * 1000, 30 * 60 * 1000, pi);
1374
        invalidateOptionsMenu();
1375
    }
24857 tejbeer 1376
}