var ProductType = "image"; var PosterSize = "letter"; var InitialImageWidth = 300; var InitialImageHeight = 200; var ImageContainer = document.getElementById("generated-image-container"); var PosterContainer = document.getElementById("poster-generation-results"); var InitialPosterContainerValue = PosterContainer.innerHTML; var LoadingImageBorder = ImageContainer.style.border; var ImgImageChecked = "https://numerologycolors.com/images/image-checked.jpg"; var ImgImageUnchecked = "https://numerologycolors.com/images/image-unchecked.jpg"; var ImgPosterChecked = "https://numerologycolors.com/images/poster-checked.jpg"; var ImgPosterUnchecked = "https://numerologycolors.com/images/poster-unchecked.jpg"; function AdjustImageDisplayDivSize() { let w = parseInt(document.getElementById("custom-horizontal").value); let h = parseInt(document.getElementById("custom-vertical").value); if(w>1000){w=1000; document.getElementById("custom-horizontal").value=1000; } if(h>1000){h=1000; document.getElementById("custom-vertical").value=1000; } ImageContainer.style.width=w+"px"; ImageContainer.style.height=h+"px"; RemoveImageFromContainer(); BrowserWidthNoticeAdjustment(); document.getElementById("poster-generation-results").innerHTML=InitialPosterContainerValue; } // function AdjustImageDisplayDivSize() function RemoveImageFromContainer() { ImageContainer.innerHTML = ''; ImageContainer.style.border=LoadingImageBorder; RestoreGetButton(); } // function RemoveImageFromContainer() function FulfillInitialFreeOrder() { document.getElementById("get-colors-button").style.display="none"; document.getElementById("processing-button").style.display="block"; } // function FulfillInitialFreeOrder() function RestoreGetButton() { document.getElementById("get-colors-button").style.display="block"; document.getElementById("processing-button").style.display="none"; document.getElementById("image-done-button").style.display="none"; document.getElementById("poster-done-button").style.display="none"; } // function RestoreGetButton() function GetColorImage() { var url = "./colors/colorimage.php"; var downloadScript = "https://numerologycolors.com/colors/colorimage-download.php"; var downloadDomainURL = "https://numerologycolors.com"; var http = new XMLHttpRequest(); if(! http) { return; } FulfillInitialFreeOrder(); let d1; var productType; var PosterSize; if( ! (d1=document.getElementById("product-type")) ) { productType="image"; } else if(d1.value=="") { productType="image"; } else { productType=d1.value; } if( ! (document.getElementById("poster-letter")) && (document.getElementById("poster-poster")) && (document.getElementById("poster-a4")) && (document.getElementById("poster-a3")) ) { PosterSize="letter"; } else { if( (d1=document.getElementById("poster-letter")) && d1.checked ) { PosterSize="letter"; } else if( (d1=document.getElementById("poster-poster")) && d1.checked ) { PosterSize="poster"; } else if( (d1=document.getElementById("poster-a4")) && d1.checked ) { PosterSize="a4"; } else if( (d1=document.getElementById("poster-a3")) && d1.checked ) { PosterSize="a3"; } else { PosterSize="letter"; } } var params = new Array(); params.push( "text=" + encodeURIComponent(document.getElementById("source").value) ); params.push( "product_type=" + encodeURIComponent(productType) ); if( ! (d1=document.getElementById("custom-horizontal")) ) { params.push( "width=300" ); } else { params.push( "width=" + encodeURIComponent(d1.value) ); } if( ! (d1=document.getElementById("custom-vertical")) ) { params.push( "height=300" ); } else { params.push( "height=" + encodeURIComponent(d1.value) ); } if( ! (d1=document.getElementById("edge-wise-V")) ) { params.push( "orientation=H" ); } else { params.push( "orientation=" + (document.getElementById("edge-wise-V").checked ? "V" : "H") ); } params.push( "poster_size=" + encodeURIComponent(PosterSize) ); http.onreadystatechange = function() { if(http.readyState == 4) { if(http.status == 200) { document.getElementById("processing-button").style.display="none"; if( productType=="poster" ) { document.getElementById("poster-done-button").style.display="block"; } else { document.getElementById("image-done-button").style.display="block"; } //setTimeout(RestoreGetButton,3500); if( http.responseText.match(/^ERROR/) ) { alert(http.responseText); RestoreGetButton(); return; } let ta = http.responseText.split("\t",2); let Key2ImageRecord = ta[0]; let ImageFile = ta[1]; //alert(http.responseText+"\n"+Key2ImageRecord+"\n"+ImageFile); if( productType=="image" ) { ImageContainer.style.border="none"; let dd; if( (dd=document.getElementById("custom-horizontal")) ) { ImageContainer.style.width=dd.value+"px"; } if( (dd=document.getElementById("custom-vertical")) ) { ImageContainer.style.height=dd.value+"px"; } ImageContainer.innerHTML=''; if( (dd=document.getElementById("download-link")) ) { dd.href = downloadScript + "?f="+encodeURIComponent(ImageFile); } if( (dd=document.getElementById("color-image-will-be-here")) ) { dd.style.display="none"; } //https://numerologycolors.com/A215/colors/ImgDir/3oe-9605.png } else { let txt = document.getElementById("poster-information-template").innerHTML; if( PosterSize=="poster" || PosterSize=="a3" ) { txt = txt.replace(/\{\{LARGEPAPER\}\}/,""); txt = txt.replace(/\{\{\/LARGEPAPER\}\}/,""); } else { txt = txt.replace(/\{\{LARGEPAPER\}\}.*?\{\{\/LARGEPAPER\}\}/s,""); } let ta = ImageFile.split('/'); let s = ta.pop(); ta = s.split('.'); txt = txt.replace(/\{\{IMAGENUMBER\}\}/sg,ta[0]); txt = txt.replace(/\{\{IMAGEKEY\}\}/sg,Key2ImageRecord); PosterContainer.innerHTML = txt; } } else { alert('\n\nContent request error, status code:\n'+http.status+' '+http.statusText); RestoreGetButton(); } } } // //alert(url + "\n" + params.join("&")); http.open("POST",url,true); http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); http.send(params.join("&")); } // function GetColorImage() function RevealAdvancedPreferencesContainer() { document.getElementById("advanced-preferences-link").style.display="none"; document.getElementById("advanced-preferences-container").style.display="block"; LogThis("Advanced preferences clicked"); } // function RevealAdvancedPreferencesContainer() function SpecifyImage() { ProductType = "image"; document.getElementById("product-type").value=ProductType; document.getElementById("type-radio-download").checked=true; document.getElementById("type-radio-poster").checked=false; document.getElementById("img-type-image").src=ImgImageChecked; document.getElementById("img-type-poster").src=ImgPosterUnchecked; document.getElementById("image-content").style.display="block"; document.getElementById("poster-content").style.display="none"; document.getElementById("image-generation-results").style.display="block"; document.getElementById("poster-generation-results").style.display="none"; document.getElementById("generate-button").value = "Get Colors Image"; AdjustImageDisplayDivSize(); } // function SpecifyImage() function SpecifyPoster() { ProductType = "poster"; document.getElementById("poster-generation-results").innerHTML=InitialPosterContainerValue; document.getElementById("product-type").value=ProductType; document.getElementById("type-radio-download").checked=false; document.getElementById("type-radio-poster").checked=true; document.getElementById("img-type-image").src=ImgImageUnchecked; document.getElementById("img-type-poster").src=ImgPosterChecked; document.getElementById("poster-content").style.display="block"; document.getElementById("image-content").style.display="none"; document.getElementById("poster-generation-results").style.display="block"; document.getElementById("image-generation-results").style.display="none"; document.getElementById("generate-button").value = "Make Colors Poster"; AdjustImageDisplayDivSize(); } // function SpecifyPoster() /* border:3px solid #999; box-shadow: 0px 0px 9px 3px #999; id="tab-type-download" id="tab-type-poster" id="type-radio-download" id="type-radio-poster" */ function BrowserWidthNoticeAdjustment() { let d = document.getElementById("note-at-URL-QR-link"); if(ProductType=="poster") { d.style.display="none"; return; } let w = Math.max( (self.innerWidth?self.innerWidth:0), (document.documentElement.clientWidth?document.documentElement.clientWidth:0) ); d.style.display=(w<1000?"block":"none"); } // function BrowserWidthNoticeAdjustment() function AdvancedPreferencesFocus() { if( document.getElementById("type-radio-poster").checked ) { SpecifyPoster(); } else { SpecifyImage(); } alert('focused'); } // function AdvancedPreferencesFocus() function LogThis(message) { var url = "./colors/colorimageLogger.php"; var http = new XMLHttpRequest(); if(! http) { return; } var params = new Array(); params.push( "message=" + encodeURIComponent(message) ); params.push( "ip=" + encodeURIComponent("13.58.150.59") ); http.onreadystatechange = function() {} http.open("POST",url,true); http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); http.send(params.join("&")); } // function LogThis() document.getElementById("custom-horizontal").value=InitialImageWidth; document.getElementById("custom-vertical").value=InitialImageHeight; document.getElementById("type-radio-poster").checked = false; document.getElementById("type-radio-download").checked = true; document.getElementById("edge-wise-H").checked = true; document.getElementById("edge-wise-V").checked = false; document.getElementById("product-type").value="image"; BrowserWidthNoticeAdjustment(); AdjustImageDisplayDivSize();