package com.indigitall.cordova.views;

import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;

import androidx.annotation.Nullable;

import com.indigitall.android.push.HiddenActivity;
import com.indigitall.android.push.models.Push;
import com.indigitall.cordova.CordovaIndigitall;
import com.indigitall.cordova.utils.CordovaPreferenceUtils;

import org.json.JSONObject;

public class CordovaIndigitallHiddenActivity extends HiddenActivity {
    @Override
    protected void onCreate(@Nullable Bundle bundle) {
        super.onCreate(bundle);
    }

    @Override
    protected void onHandleIntentAction(Intent intentAction) {
        try {
            if (CordovaIndigitall.indigitallInterface != null && CordovaIndigitall.getPushCallback != null) {
                if (intentAction.hasExtra(Push.EXTRA_PUSH)) {
                    JSONObject json = new JSONObject(intentAction.getStringExtra(Push.EXTRA_PUSH));
                    CordovaIndigitall.indigitallInterface.onIndigitallGetPush(this, json, null);
                    Context context = getApplicationContext();
                    PackageManager manager = context.getPackageManager();

                    Intent i = manager.getLaunchIntentForPackage(getPackageName());
                    if (i != null) {
                        i.addCategory(Intent.CATEGORY_LAUNCHER);
                    }
                    context.startActivity(i);
                } else {
                    super.onHandleIntentAction(intentAction);
                }
            } else {
                if (intentAction.hasExtra(Push.EXTRA_PUSH)) {
                    CordovaPreferenceUtils.setPushString(getApplicationContext(), intentAction.getStringExtra(Push.EXTRA_PUSH));
                }
                super.onHandleIntentAction(intentAction);
            }

        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}
