JSFiddle - React, Tailwind, and code Playground

by dpa99c

JavaScript

var log = function(msg){
	document.body.innerHTML += '<p>'+msg+'</p>';
};

// Mock IAB
var cordova = {
	InAppBrowser:{
  	open: function(url){
    	log("IAB: opening " + url);
      return {
        close: function(){
          log("IAB: closed");
        }
      }
    }
  }
}

var iab_controller = (function(){
    var ref, isOpen = false;
    return {
        open: function(url){
            ref = cordova.InAppBrowser.open(url, '_blank', 'location=yes');
            isOpen = true;
            return ref;
        },
        close: function(){
            if(isOpen){
                ref.close();
                ref = null;
                isOpen = false;
            }
        },
        isOpen: function(){
            return isOpen;
        },
        isClosed: function(){
            return !isOpen;
        }
    };
})();

log("isOpen: " + iab_controller.isOpen())
log("isClosed: " + iab_controller.isClosed())

iab_controller.open('http://apache.org');

log("isOpen: " + iab_controller.isOpen())
log("isClosed: " + iab_controller.isClosed())

iab_controller.close();

log("isOpen: " + iab_controller.isOpen())
log("isClosed: " + iab_controller.isClosed())