var currentUrl = window.location.href; var menu_iframe; var call_iframe; var insta_option = {}; $.post( "//api.ringlerr.com/instacall/welcome/loadButton", {url: currentUrl, user_id:19}).done(function( id ) { if(id != 'na'){ loadIframe(id); } }); function loadIframe(id){ var iframeM = document.createElement('iframe'); iframeM.id = "menucontainer"; var myInstaLanguage = localStorage.getItem('myInstaLanguage'); if(typeof myInstaLanguage != undefined && myInstaLanguage != null){ iframeM.src = 'https://api.ringlerr.com/instacall/intent-menu/'+id+'/'+myInstaLanguage; }else{ iframeM.src = 'https://api.ringlerr.com/instacall/intent-menu/'+id; } iframeM.style = 'outline: none !important; visibility: visible !important; resize: none !important; box-shadow: none !important; overflow: visible !important; background: none transparent !important; opacity: 1 !important; position: fixed !important; border: 0px !important; padding: 0px !important; transition-property: none !important; cursor: auto !important; float: none !important; border-radius: unset !important; pointer-events: auto !important; transform: rotate(0deg) translateZ(0px) !important; transform-origin: 0px center !important; bottom: 95px !important; top: auto !important; right: 0px !important; left: auto !important; width: 250px !important; max-width: 250px !important; min-width: 250px !important; height: 250px !important; max-height: 250px !important; min-height: 250px !important; z-index: 1000002 !important; margin: 0px !important; display: none !important;'; iframeM.allow="microphone" document.body.appendChild(iframeM); console.log('iframe.contentWindow =', iframeM.contentWindow); var iframe = document.createElement('iframe'); iframe.id = "callcontainer"; if(typeof myInstaLanguage != undefined && myInstaLanguage != null){ iframe.src = '//api.ringlerr.com/instacall/button/'+id+'/'+myInstaLanguage; }else{ iframe.src = '//api.ringlerr.com/instacall/button/'+id; } iframe.style = 'outline: none !important; visibility: visible !important; resize: none !important; box-shadow: none !important; overflow: visible !important; background: none transparent !important; opacity: 1 !important; position: fixed !important; border: 0px !important; padding: 0px !important; transition-property: none !important; cursor: auto !important; float: none !important; border-radius: unset !important; pointer-events: auto !important; transform: rotate(0deg) translateZ(0px) !important; transform-origin: 0px center !important; bottom: 30px !important; top: auto !important; right: 0px !important; left: auto !important; width: 200px !important; max-width: 200px !important; min-width: 150px !important; height: 60px !important; max-height: 60px !important; min-height: 60px !important; z-index: 1000002 !important; margin: 0px !important; display: block !important;'; document.body.appendChild(iframe); console.log('iframe.contentWindow =', iframe.contentWindow); $('#menucontainer').on('load', function(){ menu_iframe = $('#menucontainer').contents(); menu_iframe.find("#c2").click(function(){ call_iframe.find("#instacall_primary_text").text('Calling...'); }); menu_iframe.find(".xslang").click(function(){ var select_lang = $(this).text(); localStorage.setItem('myInstaLanguage', select_lang); var sourceURL= '//api.ringlerr.com/instacall/intent-menu/'+id+'/'+select_lang; iframeM.src = sourceURL; var buttonSourceUrl = '//api.ringlerr.com/instacall/button/'+id+'/'+select_lang; iframe.src = buttonSourceUrl; }); }); $(document).on("funcDoRequest", function(e, params) { insta_option = params; }); $("#callcontainer").on("load", function () { //call_iframe = $("#callcontainer").contents(); //call_iframe.find("#call").click(function () { // $("#menucontainer").toggle(); //}); var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent"; var eventer = window[eventMethod]; var messageEvent = eventMethod == "attachEvent" ? "onmessage" : "message"; const menuframe = document.getElementById('menucontainer'); const callframe = document.getElementById('callcontainer'); // Listen to message from child window eventer(messageEvent,function(e) { console.log(e); if(e.data == "call_clicked"){ $("#menucontainer").toggle(); menuframe.contentWindow.postMessage(insta_option, "*"); }else if(e.data == "loadinCallUI"){ callframe.contentWindow.postMessage("loadinCallUI", "*"); }else if(e.data == "ringing"){ callframe.contentWindow.postMessage("ringing", "*"); }else if(e.data == "end_call"){ menuframe.contentWindow.postMessage("end_call", "*"); }else if(e.data == "call_ended"){ callframe.contentWindow.postMessage("call_ended", "*"); }else{ if(typeof e.data.lang !== "undefined"){ var select_lang = e.data.lang; localStorage.setItem('myInstaLanguage', select_lang); var sourceURL= '//api.ringlerr.com/instacall/intent-menu/'+id+'/'+select_lang; iframeM.src = sourceURL; var buttonSourceUrl = '//api.ringlerr.com/instacall/button/'+id+'/'+select_lang; iframe.src = buttonSourceUrl; }else{ callframe.contentWindow.postMessage(e.data, "*"); } } },false); }); }