diff options
author | Remy <relst@relst.nl> | 2015-02-21 07:04:41 +0100 |
---|---|---|
committer | Remy <relst@relst.nl> | 2015-02-21 07:04:41 +0100 |
commit | b8dea0fbd433618bf026e36d5e7fb29492508017 (patch) | |
tree | aa90b49c7d80ceb23d292e9a4b91dcfcb046c1ef /js/ajax.js | |
parent | 859c2bac015dc6761fff3d6dea00be2a8e80a4cd (diff) | |
download | ssl-decoder-b8dea0fbd433618bf026e36d5e7fb29492508017.zip ssl-decoder-b8dea0fbd433618bf026e36d5e7fb29492508017.tar.gz ssl-decoder-b8dea0fbd433618bf026e36d5e7fb29492508017.tar.bz2 |
split code up
Diffstat (limited to 'js/ajax.js')
-rw-r--r-- | js/ajax.js | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/js/ajax.js b/js/ajax.js new file mode 100644 index 0000000..72a2ec2 --- /dev/null +++ b/js/ajax.js @@ -0,0 +1,73 @@ +var request = createRequestObject(); +var dataReturn=''; +var ajaxTimeout=''; +var enterChecker=false; + +function createRequestObject() +{ + var ro; + var browser = navigator.appName; + if(browser == 'Microsoft Internet Explorer') + { + ro = new ActiveXObject('Microsoft.XMLHTTP'); + } + else{ + ro = new XMLHttpRequest(); + ro.setRequestHeader('HTTP_X_REQUESTED_WITH', 'XMLHttpRequest'); + } + return ro; +} + +function makeRequest (url, fun) +{ + enterChecker=false; + request.open('get', url); + request.onreadystatechange = function() { handleResponse(fun); } + + try{ + request.send(null); + window.history.pushState('wut', 'SSL Decoder for ' + document.getElementById('host').value, '/ssl/?host=' + document.getElementById('host').value + '&port=' + document.getElementById('port').value + '&csr=' + document.getElementById('csr').value + '&s='); + } + catch(err){ + alert('Error occured: '+err); + showElementbyID(false, 'preloader'); + showElementbyID(false, 'resultDiv'); + showElementbyID(true, 'sslform'); + } +} + + +function handleResponse(fun) { + if(request.readyState < 4) + { + ajaxTimeout=setTimeout('handleResponse(\''+fun+'\')',10); + } + else if(request.readyState == 4 && !enterChecker) + { + enterChecker=true; + var response = request.responseText; + dataReturn=response; + + if(fun!='') + ajaxTimeout=setTimeout(fun+'()', 200); + } +} + +function stopAjax() +{ + clearTimeout('ajaxTimeout'); + ajaxTimeout=''; +} + + +function showContent(){ + showElementbyID(false, 'preloader'); + document.getElementById('resultDiv').innerHTML=dataReturn; +} + +function showElementbyID(show, element){ + if(show) + document.getElementById(element).style.display='block'; + else + document.getElementById(element).style.display='none'; +}
\ No newline at end of file |