package com.tealium.library;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.Application;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.http.SslError;
import android.os.Build.VERSION;
import android.os.Handler;
import android.util.Log;
import android.webkit.ConsoleMessage;
import android.webkit.ConsoleMessage.MessageLevel;
import android.webkit.JsPromptResult;
import android.webkit.JsResult;
import android.webkit.SslErrorHandler;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import java.io.File;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLDecoder;
import java.text.SimpleDateFormat;
import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import java.util.Locale;
import java.util.Map;
import java.util.TimeZone;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.net.ssl.HttpsURLConnection;
import org.json.JSONObject;

final class ae
  implements g, i, k, p, q, r, s, u, Runnable
{
  private final SimpleDateFormat a;
  private final ConnectivityManager b;
  private final SharedPreferences c;
  private final c d;
  private final Map<String, RemoteCommand> e;
  private final Z f;
  private final String g;
  private final String h;
  private final String i;
  private final String j;
  private final Pattern k;
  private final V l;
  private volatile Tealium.LogLevel m;
  private final boolean n;
  private a o = a.a;
  private WebView p;
  private long q = 0L;
  private long r = 0L;

  ae(Tealium.Config paramConfig, V paramV)
  {
    this.l = paramV;
    this.d = new c(paramConfig, paramV);
    this.f = new Z(paramConfig.g(), paramV);
    this.e = paramConfig.b();
    this.k = Pattern.compile("^tealium://.+", 2);
    this.m = paramConfig.f();
    this.n = paramConfig.d();
    this.c = paramConfig.a();
    this.g = paramConfig.k();
    this.h = paramConfig.h();
    this.i = paramConfig.i();
    this.j = paramConfig.j();
    this.b = ((ConnectivityManager)paramConfig.g().getSystemService("connectivity"));
    this.a = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss 'GMT'", Locale.ROOT);
    this.a.setTimeZone(TimeZone.getTimeZone("GMT"));
  }

  private void c()
  {
    if ((this.p == null) || (!d()) || (this.o == a.b))
      return;
    if (System.currentTimeMillis() - this.q > 3600000L)
    {
      this.q = System.currentTimeMillis();
      new Thread(this).start();
      return;
    }
    Locale localLocale = Locale.ROOT;
    Object[] arrayOfObject = new Object[2];
    arrayOfObject[0] = Long.valueOf(3600000L + this.q - System.currentTimeMillis());
    arrayOfObject[1] = this.g;
    X.a(String.format(localLocale, "%d ms until next reload of <%s>.", arrayOfObject));
  }

  private boolean d()
  {
    if (this.l.d());
    for (NetworkInfo localNetworkInfo = this.b.getNetworkInfo(1); (localNetworkInfo != null) && (localNetworkInfo.isConnected()); localNetworkInfo = this.b.getActiveNetworkInfo())
      return true;
    return false;
  }

  public final void a()
  {
    if (this.p == null)
      return;
    if (this.l.i() == null)
    {
      X.d("Unable to leave active trace, none found.");
      return;
    }
    d.a().post(new Runnable()
    {
      public final void run()
      {
        Locale localLocale = Locale.ROOT;
        Object[] arrayOfObject = new Object[1];
        arrayOfObject[0] = ae.g(ae.this).i();
        X.c(String.format(localLocale, "Leaving trace \"%s\".", arrayOfObject));
        ae.a(ae.this).loadUrl("javascript:utag.track('kill_visitor_session', { event: 'kill_visitor_session', 'cp.trace_id' : utag.data['cp.trace_id'] });");
        ae.a(ae.this).loadUrl("javascript:document.cookie = 'trace_id=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/'");
        ae.a(ae.this, ae.a.b);
        ae.a(ae.this).reload();
      }
    });
  }

  public final void a(c.a parama)
  {
    try
    {
      ab localab;
      if (parama.g())
      {
        boolean bool = this.d.a(parama.f(), parama.d());
        localab = parama.d();
        if (!bool)
          break label57;
      }
      label57: for (String str = "NO"; ; str = "YES")
      {
        localab.a("Is Currently Tracking", str);
        d.h();
        return;
      }
    }
    finally
    {
    }
  }

  public final void a(final String paramString)
  {
    if (this.p == null)
      return;
    d.a().post(new Runnable()
    {
      public final void run()
      {
        if (ae.g(ae.this).i() != null)
        {
          Locale localLocale3 = Locale.ROOT;
          Object[] arrayOfObject3 = new Object[1];
          arrayOfObject3[0] = ae.g(ae.this).i();
          X.c(String.format(localLocale3, "Leaving trace \"%s\".", arrayOfObject3));
          ae.a(ae.this).loadUrl("javascript:utag.track('kill_visitor_session', { event: 'kill_visitor_session', 'cp.trace_id' : utag.data['cp.trace_id'] });");
          ae.a(ae.this).loadUrl("javascript:document.cookie = 'trace_id=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/'");
        }
        Locale localLocale1 = Locale.ROOT;
        Object[] arrayOfObject1 = new Object[1];
        arrayOfObject1[0] = paramString;
        X.c(String.format(localLocale1, "Starting trace with id \"%s\".", arrayOfObject1));
        Locale localLocale2 = Locale.ROOT;
        Object[] arrayOfObject2 = new Object[1];
        arrayOfObject2[0] = paramString;
        String str = String.format(localLocale2, "javascript:document.cookie = 'trace_id=%s; expires=0; path=/';", arrayOfObject2);
        ae.a(ae.this).loadUrl(str);
        ae.a(ae.this, ae.a.b);
        ae.a(ae.this).reload();
      }
    });
  }

  public final void a(Map<String, String> paramMap1, Map<String, String> paramMap2, Map<String, String> paramMap3, Map<String, String> paramMap4)
  {
    SimpleDateFormat localSimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm 'UTC'", Locale.ROOT);
    localSimpleDateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
    paramMap1.put("account", this.h);
    paramMap1.put("profile", this.i);
    paramMap1.put("target", this.j);
    String str1;
    String str2;
    label98: String str3;
    label157: String str4;
    label184: String str5;
    label211: String str6;
    label250: String str7;
    label297: String str8;
    if (this.l.j() == null)
    {
      str1 = "(fetching...)";
      if (!this.l.f())
        break label491;
      str2 = "YES";
      paramMap2.put("Published At", str1);
      paramMap2.put("Mobile Companion On", str2);
      paramMap2.put("Power Save Call Limit", Integer.toString(this.l.n()));
      if (!this.d.b())
        break label499;
      str3 = "YES";
      paramMap2.put("Track All Events", str3);
      if (!this.d.c())
        break label507;
      str4 = "YES";
      paramMap2.put("Track All Views", str4);
      if (!this.d.a())
        break label515;
      str5 = "YES";
      paramMap2.put("Track Custom Events", str5);
      paramMap3.put("Published At", str1);
      if (!this.l.b())
        break label523;
      str6 = "YES";
      paramMap3.put("Battery Saver On", str6);
      paramMap3.put("Dispatch Expiration (days)", Integer.toString(this.l.l()));
      if (!this.l.c())
        break label531;
      str7 = "YES";
      paramMap3.put("iVar Tracking", str7);
      paramMap3.put("Event Batch Size", Integer.toString(this.l.n()));
      paramMap3.put("Mobile Companion On", str2);
      paramMap3.put("Offline Dispatch Queue Size", Integer.toString(this.l.k()));
      if (!this.l.a())
        break label539;
      str8 = "YES";
      label376: paramMap3.put("UI Autotracking On", str8);
      if (!this.l.d())
        break label547;
    }
    label515: label523: label531: label539: label547: for (String str9 = "YES"; ; str9 = "NO")
    {
      paramMap3.put("Wifi Only Dispatching On", str9);
      Iterator localIterator = this.e.values().iterator();
      while (localIterator.hasNext())
      {
        RemoteCommand localRemoteCommand = (RemoteCommand)localIterator.next();
        paramMap4.put(localRemoteCommand.a(), localRemoteCommand.b());
      }
      str1 = localSimpleDateFormat.format(this.l.j());
      break;
      label491: str2 = "NO";
      break label98;
      label499: str3 = "NO";
      break label157;
      label507: str4 = "NO";
      break label184;
      str5 = "NO";
      break label211;
      str6 = "NO";
      break label250;
      str7 = "NO";
      break label297;
      str8 = "NO";
      break label376;
    }
    d.h();
  }

  public final void a(boolean paramBoolean, final String paramString)
  {
    if (paramBoolean)
      this.m = Tealium.LogLevel.VERBOSE;
    if (this.p == null)
      return;
    if (!paramString.startsWith("javascript:"))
      paramString = "javascript:" + paramString;
    if (ad.a())
    {
      this.p.loadUrl(paramString);
      return;
    }
    d.a().post(new Runnable()
    {
      public final void run()
      {
        ae.a(ae.this).loadUrl(paramString);
      }
    });
  }

  public final void b()
  {
    this.f.b();
    c();
  }

  public final void b(final Activity paramActivity)
  {
    if (this.p == null)
      d.a().post(new Runnable()
      {
        @SuppressLint({"SetJavaScriptEnabled"})
        public final void run()
        {
          ae.a(ae.this, new WebView(paramActivity));
          WebSettings localWebSettings = ae.a(ae.this).getSettings();
          localWebSettings.setAppCacheEnabled(true);
          localWebSettings.setDatabaseEnabled(true);
          localWebSettings.setJavaScriptEnabled(true);
          localWebSettings.setDomStorageEnabled(true);
          Locale localLocale = Locale.ROOT;
          Object[] arrayOfObject = new Object[3];
          arrayOfObject[0] = paramActivity.getCacheDir().getAbsolutePath();
          arrayOfObject[1] = File.separator;
          arrayOfObject[2] = File.separator;
          String str = String.format(localLocale, "%s%stealium%s", arrayOfObject);
          localWebSettings.setAppCachePath(str);
          if (Build.VERSION.SDK_INT < 19)
            localWebSettings.setDatabasePath(str);
          ae.b localb = new ae.b(ae.this, (byte)0);
          ae.a(ae.this).addJavascriptInterface(new JSInterface(localb), "WCC");
          ae.a(ae.this).setWebChromeClient(localb);
          ae.a(ae.this).setWebViewClient(new ae.c(ae.this, (byte)0));
          d.a(new Runnable()
          {
            public final void run()
            {
              ae.b(ae.this);
            }
          });
        }
      });
  }

  public final void b(c.a parama)
  {
    int i1 = 1;
    int i2;
    int i3;
    label56: int i4;
    if (1 + this.f.a() >= this.l.n())
    {
      i2 = i1;
      if ((this.l.b()) && (this.l.g()))
        break label133;
      if (this.o != a.c)
        break label121;
      i3 = i1;
      if (this.p == null)
        break label127;
      i4 = i1;
      label66: boolean bool = d();
      if ((i3 == 0) || (i4 == 0) || (!bool))
        break label133;
    }
    while (true)
    {
      if ((!this.l.h()) || (!this.d.a(parama.f(), parama.d())))
        break label138;
      return;
      i2 = 0;
      break;
      label121: i3 = 0;
      break label56;
      label127: i4 = 0;
      break label66;
      label133: i1 = 0;
    }
    label138: if ((i2 != 0) && (i1 != 0))
    {
      for (aa localaa : this.f.c())
        if ((localaa.d()) || (!this.d.a(localaa.b(), localaa.c())))
        {
          a(false, localaa.a());
          d.b(ab.a(localaa.c()));
        }
      a(false, ad.a(parama));
      d.b(parama.d());
      return;
    }
    this.f.a(parama);
    d.a(parama.d());
  }

  public final void run()
  {
    a locala = this.o;
    int i1;
    while (true)
    {
      URLConnection localURLConnection;
      try
      {
        this.o = a.b;
        String str = this.a.format(new Date(this.r));
        localURLConnection = new URL(this.g).openConnection();
        if (this.n)
        {
          ((HttpsURLConnection)localURLConnection).setRequestMethod("HEAD");
          localURLConnection.setRequestProperty("If-Modified-Since", str);
          localURLConnection.setRequestProperty("Accept-Encoding", "*");
          localURLConnection.connect();
          if (this.n)
          {
            i1 = ((HttpsURLConnection)localURLConnection).getResponseCode();
            if (i1 != 404)
              break;
            X.e("Invalid account-profile-environment or override url set, configuration fetch returned 404. The Tealium Library is shutting down.");
            this.o = locala;
            Tealium.disable();
          }
        }
        else
        {
          ((HttpURLConnection)localURLConnection).setRequestMethod("HEAD");
          continue;
        }
      }
      catch (Throwable localThrowable)
      {
        this.o = locala;
        X.a(localThrowable);
        return;
      }
      i1 = ((HttpURLConnection)localURLConnection).getResponseCode();
    }
    if (i1 != 200)
    {
      this.o = locala;
      return;
    }
    d.a().post(new Runnable()
    {
      public final void run()
      {
        StringBuilder localStringBuilder = new StringBuilder().append(ae.k(ae.this));
        if (ae.k(ae.this).contains("?"));
        for (char c = '&'; ; c = '?')
        {
          String str = c + "cache_buster=" + System.currentTimeMillis();
          ae.a(ae.this).loadUrl(str);
          return;
        }
      }
    });
  }

  static enum a
  {
    static
    {
      a[] arrayOfa = new a[3];
      arrayOfa[0] = a;
      arrayOfa[1] = b;
      arrayOfa[2] = c;
    }
  }

  final class b extends WebChromeClient
    implements JSInterface.Callback
  {
    private b()
    {
    }

    public final boolean onConsoleMessage(ConsoleMessage paramConsoleMessage)
    {
      Locale localLocale = Locale.ROOT;
      Object[] arrayOfObject = new Object[3];
      arrayOfObject[0] = paramConsoleMessage.sourceId();
      arrayOfObject[1] = Integer.valueOf(paramConsoleMessage.lineNumber());
      arrayOfObject[2] = paramConsoleMessage.message();
      String str = String.format(localLocale, "Src: %s; Line: %d; %s", arrayOfObject);
      switch (ae.6.a[paramConsoleMessage.messageLevel().ordinal()])
      {
      default:
        if (ae.j(ae.this).a() == Tealium.LogLevel.VERBOSE.a())
          Log.v(b.b, str);
        break;
      case 1:
      case 2:
      case 3:
      case 4:
      case 5:
      }
      do
      {
        do
        {
          do
          {
            do
            {
              do
                return true;
              while (ae.j(ae.this).a() > Tealium.LogLevel.DEBUG.a());
              Log.d(b.b, str);
              return true;
            }
            while (ae.j(ae.this).a() > Tealium.LogLevel.ERROR.a());
            Log.e(b.b, str);
            return true;
          }
          while (ae.j(ae.this).a() > Tealium.LogLevel.INFO.a());
          Log.i(b.b, str);
          return true;
        }
        while (ae.j(ae.this).a() != Tealium.LogLevel.VERBOSE.a());
        Log.v(b.b, str);
        return true;
      }
      while (ae.j(ae.this).a() > Tealium.LogLevel.WARN.a());
      Log.w(b.b, str);
      return true;
    }

    public final boolean onJsAlert(WebView paramWebView, String paramString1, String paramString2, JsResult paramJsResult)
    {
      paramJsResult.cancel();
      onConsoleMessage(new ConsoleMessage("ALERT:" + paramString2, null, 0, ConsoleMessage.MessageLevel.LOG));
      return true;
    }

    public final boolean onJsConfirm(WebView paramWebView, String paramString1, String paramString2, JsResult paramJsResult)
    {
      paramJsResult.cancel();
      onConsoleMessage(new ConsoleMessage("CONFIRM:" + paramString2, null, 0, ConsoleMessage.MessageLevel.LOG));
      return true;
    }

    public final boolean onJsPrompt(WebView paramWebView, String paramString1, String paramString2, String paramString3, JsPromptResult paramJsPromptResult)
    {
      paramJsPromptResult.cancel();
      onConsoleMessage(new ConsoleMessage("PROMPT:" + paramString2, null, 0, ConsoleMessage.MessageLevel.LOG));
      return true;
    }

    public final void receivedConfig(boolean paramBoolean, long paramLong, String paramString1, String paramString2, String paramString3)
    {
      if (ae.f(ae.this) == ae.a.c)
        return;
      ae.a(ae.this, ae.a.c);
      ae.a(ae.this, System.currentTimeMillis());
      while (true)
      {
        try
        {
          if ((paramString2.length() == 0) && (paramString1.length() == 0))
          {
            X.d("The account-profile was not configured for mobile, please double check your TIQ connection. Tealium Library is shutting down.");
            Tealium.disable();
            return;
          }
        }
        catch (V.a locala)
        {
          X.c("This Library has been disabled by TealiumIQ, shutting down...");
          d.e();
          return;
          if (!ae.g(ae.this).h())
          {
            ae.h(ae.this).edit().putBoolean("config_loaded", true).apply();
            ae.g(ae.this).a(true);
          }
          ae.g(ae.this).a(paramLong);
          V localV = ae.g(ae.this);
          if ("".equals(paramString3))
            paramString3 = null;
          localV.a(paramString3);
          if (paramString1.length() > 0)
          {
            ae.i(ae.this).d();
            ae.g(ae.this).b(paramString1);
            X.c(ae.g(ae.this).toString());
            d.h();
            return;
          }
        }
        catch (Throwable localThrowable)
        {
          X.b(localThrowable);
          return;
        }
        ae.i(ae.this).a(new JSONObject(paramString2));
      }
    }
  }

  final class c extends WebViewClient
  {
    private c()
    {
    }

    public final void onLoadResource(WebView paramWebView, String paramString)
    {
      super.onLoadResource(paramWebView, paramString);
    }

    public final void onPageFinished(WebView paramWebView, String paramString)
    {
      super.onPageFinished(paramWebView, paramString);
      ae.this.a(false, "(function(){var e=document.childNodes;if(e.length>0){var t=0;var n=46;var r=e[0].data;if(r!=undefined&&r.length>n+12){var i=r.substring(n,n+4);var s=r.substring(n+4,n+6);var o=r.substring(n+6,n+8);var u=r.substring(n+8,n+10);var a=r.substring(n+10,n+12);t=Date.parse(s+'/'+o+'/'+i+' '+u+':'+a+' UTC');if(isNaN(t)){t=0}}}var f=document.cookie.indexOf('trace_id=');var l='';if(f>=0){l=document.cookie.substring(f+9,f+14)}var c=typeof utag==='object'?/\"load\":1/.test(JSON.stringify(utag.loader.cfg)):false;var h=typeof mps==='undefined'?'':JSON.stringify(mps);var p=typeof nativeAppLiveHandlerData==='undefined'?'':JSON.stringify(nativeAppLiveHandlerData);if(typeof WCC==='undefined'){console.log({tags:c,published:t,pub_settings:h,config:p,trace_id:l})}else{WCC.receivedConfig(c,t,h,p,l)}})()");
    }

    public final void onReceivedError(WebView paramWebView, int paramInt, String paramString1, String paramString2)
    {
      super.onReceivedError(paramWebView, paramInt, paramString1, paramString2);
      ae.a(ae.this, ae.a.c);
      ae.a(ae.this, System.currentTimeMillis());
    }

    public final void onReceivedSslError(WebView paramWebView, SslErrorHandler paramSslErrorHandler, SslError paramSslError)
    {
      if (!ae.e(ae.this))
        paramSslErrorHandler.proceed();
      super.onReceivedSslError(paramWebView, paramSslErrorHandler, paramSslError);
    }

    public final boolean shouldOverrideUrlLoading(WebView paramWebView, String paramString)
    {
      int i;
      String str1;
      Object localObject;
      int j;
      if (ae.c(ae.this).matcher(paramString).matches())
      {
        i = paramString.indexOf("?args=");
        if (i == -1)
        {
          String str7 = paramString.substring(10);
          JSONObject localJSONObject2 = new JSONObject();
          str1 = str7;
          localObject = localJSONObject2;
          j = 0;
        }
      }
      while (true)
      {
        String str3;
        JSONObject localJSONObject1;
        if (j == 0)
        {
          str3 = str1.toLowerCase(Locale.ROOT);
          RemoteCommand localRemoteCommand = (RemoteCommand)ae.d(ae.this).get(str3);
          if (localRemoteCommand != null)
          {
            X.a(c.a.a(str3, (JSONObject)localObject));
            localRemoteCommand.a((JSONObject)localObject);
          }
        }
        else
        {
          return true;
          str1 = paramString.substring(10, i);
          String str2 = paramString.substring(i + 6);
          try
          {
            String str6 = URLDecoder.decode(str2, "UTF-8");
            if (str6.length() == 0)
              localJSONObject1 = new JSONObject();
            else
              localJSONObject1 = new JSONObject(str6);
          }
          catch (Throwable localThrowable)
          {
            X.a(localThrowable);
            j = 1;
            localObject = null;
          }
          continue;
        }
        String str4 = ((JSONObject)localObject).optString("response_id");
        String str5 = String.format(Locale.ROOT, "No remote command with the name \"%s\" was found.", new Object[] { str3 });
        if (str4 != null)
          RemoteCommand.a(str3, str4, RemoteCommand.RESULT_NOT_FOUND, str5);
        X.d(str5);
        return true;
        X.d(String.format(Locale.ROOT, "Suppressed a tag trying to open <%s>, please inspect your tealiumiq settings.", new Object[] { paramString }));
        return true;
        localObject = localJSONObject1;
        j = 0;
      }
    }
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.tealium.library.ae
 * JD-Core Version:    0.6.2
 */