package com.anand.sampleads;

import android.app.ProgressDialog;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

import com.ad.sdk.adserver.Listener.AdViewListener;
import com.ad.sdk.reference.AppSharedpreferences;
import com.ad.sdk.retroCall.RetroCall;
import com.anand.firebaseapp.R;
import com.anand.progress.dialog;
import com.google.android.gms.ads.identifier.AdvertisingIdClient;


public class ZoneActivity extends AppCompatActivity {
    String zone_id;
    AppSharedpreferences appSharedpreferences;
    com.anand.geofence.reference.AppSharedpreferences appSharedpreferencesgeo;
    dialog dialog;
    String deviceToken,Google_id, GeoId;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_zone);
        appSharedpreferences = AppSharedpreferences.getInstance(this);
        appSharedpreferencesgeo = com.anand.geofence.reference.AppSharedpreferences.getInstance(ZoneActivity.this);
        deviceToken = appSharedpreferencesgeo.getString("token");
        Log.i("deviceToken135","deviceToken : "+deviceToken);
        GeoId = appSharedpreferences.getString("geoId");
        new RetrieveGAIDTask().execute();

        ((TextView) findViewById(R.id.header)).setText("Publisher ID");

        ((LinearLayout) findViewById(R.id.lay_zone)).setVisibility(View.VISIBLE);
        ((LinearLayout) findViewById(R.id.lay_response)).setVisibility(View.GONE);

        ((LinearLayout) findViewById(R.id.zone_btn_lay)).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                ((LinearLayout) findViewById(R.id.lay_zone)).setVisibility(View.VISIBLE);
                ((LinearLayout) findViewById(R.id.lay_response)).setVisibility(View.GONE);

            }
        });


        ((LinearLayout) findViewById(R.id.res_lay)).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                ((LinearLayout) findViewById(R.id.lay_zone)).setVisibility(View.GONE);
                ((LinearLayout) findViewById(R.id.lay_response)).setVisibility(View.VISIBLE);
            }
        });


        ((Button) findViewById(R.id.load_btn)).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                dialog = new dialog(ZoneActivity.this);
                dialog.startLoadingdialog();

                zone_id = ((EditText) findViewById(R.id.ed_zone_id)).getText().toString();

               /* AppApplication.editor.putString("Zone_ID", ((EditText) findViewById(R.id.ed_zone_id)).getText().toString());
                AppApplication.editor.commit();*/
                appSharedpreferences.saveString("Zone_ID",((EditText) findViewById(R.id.ed_zone_id)).getText().toString());
                appSharedpreferencesgeo.saveString("publisherId",((EditText) findViewById(R.id.ed_zone_id)).getText().toString());
              /*  new AdsInitialize(ZoneActivity.this, zone_id, new AdViewListener() {
                    @Override
                    public void onInitializationComplete() {
                        startActivity(new Intent(ZoneActivity.this, HomeActivity.class));
                        finish();
                    }

                    @Override
                    public void onInitializationFailure() {

                    }
                });*/


               /* final dialog loadingdialog = new dialog(ZoneActivity.this);
                loadingdialog.*/

                new RetroCall(ZoneActivity.this, zone_id,deviceToken,Google_id,GeoId, new AdViewListener() {
                    @Override
                    public void onInitializationComplete() {
                        dialog.dismissdialog();
                        startActivity(new Intent(ZoneActivity.this, HomeActivity.class));
                        finish();
                    }

                    @Override
                    public void onInitializationFailure() {

                    }
                });


            }
        });


    }


    @Override
    public void onBackPressed() {
        super.onBackPressed();
        finish();
    }


    private class RetrieveGAIDTask extends AsyncTask<Void, Void, String> {

        @Override
        protected String doInBackground(Void... voids) {
            try {
                // Get the Advertising ID
                AdvertisingIdClient.Info adInfo = AdvertisingIdClient.getAdvertisingIdInfo(getApplicationContext());
                return adInfo != null ? adInfo.getId() : null;
            } catch (Exception e) {
               // Log.e(TAG, "Error retrieving Advertising ID", e);
                return null;
            }
        }

        @Override
        protected void onPostExecute(String adId) {
            super.onPostExecute(adId);
            if (adId != null) {
                Google_id = adId;
                Log.i("GAID","Google Advertising ID: : "+adId);
                appSharedpreferencesgeo.saveString("GAID",adId);
            } else {
                Log.i("TAG", "Failed to retrieve Google Advertising ID");
            }
        }
    }
}
