// JavaScript Document

function makeRequest(url,ip) {

	obj=document.forms.abuseform

	var details=obj["abusedetails"].value

	var type=obj["abusetype"].value

	if(details!=='' && type!==''){

		

		var passData="url="+url+"&ip="+ip+"&details="+details+"&type="+type;

		var http_request = false;

	

			if (window.XMLHttpRequest) { // Mozilla, Safari, ...

				http_request = new XMLHttpRequest();

				if (http_request.overrideMimeType) {

					http_request.overrideMimeType('text/xml');

				}

			} else if (window.ActiveXObject) { // IE

				try {

					http_request = new ActiveXObject("Msxml2.XMLHTTP");

				} catch (e) {

					try {

						http_request = new ActiveXObject("Microsoft.XMLHTTP");

					} catch (e) {}

				}

			}

	

			if (!http_request) {

				alert('Error: Unable to initialize class');

				return false;

			}

			http_request.onreadystatechange = function() { alertContents(http_request,url,ip,details,type); };

			http_request.open('POST', url, true);

			http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');  

			http_request.send(passData);

	}

	else{

		alert("Please fill in all fields!")	

	}

}



function alertContents(http_request,url,ip,details,type) {



        if (http_request.readyState == 4) {

            if (http_request.status == 200) {

				var addtxt="<div class=\"messageblock\"><div class=\"messageheader\"><b>Your comment has been added.</b></div><div class=\"messagetype\">"+type+"</div><div class=\"messagedetails\">"+details+"</div></div>";

				document.getElementById('complaints').innerHTML+=addtxt;

			

			

				obj=document.forms.abuseform

				var details=obj["abusedetails"].value=''

				var type=obj["abusetype"].value=''



			}	 

			

			else {

                alert('Request has failed');

            }

        }

}



function checkcompare(td)

{

	if(td.checked==true){

	    $("#cpr2").animate({ opacity: 'show' }, 1000);

	}

	else{

         $("#cpr2").hide();

	}

}



function requestLoc(url) {

	var ip=document.getElementById('cpr2ip').value
	var passData="url="+url+"&ip="+ip;

	var tomatch_ip=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
	var tomatch_host=/[^\.\/]+\.[^\.\/]+$/;
		
	if(tomatch_ip.test(ip)==true){
		var valuecheck=true;
	}
	else if(tomatch_host.test(ip)==true){
		var valuecheck=true;
	}
	else{
		alert("The IP or hostname is entered incorrectly: "+host)	
		var valuecheck=false;
	}

	if(valuecheck==true){
		var http_requestloc = false;
			if (window.XMLHttpRequest) { // Mozilla, Safari, ...
				http_requestloc = new XMLHttpRequest();
				if (http_requestloc.overrideMimeType) {
					http_requestloc.overrideMimeType('text/xml');
				}
			} else if (window.ActiveXObject) { // IE
				try {
					http_requestloc = new ActiveXObject("Msxml2.XMLHTTP");
				} catch (e) {
					try {
						http_requestloc = new ActiveXObject("Microsoft.XMLHTTP");
					} catch (e) {}
				}
			}
		if (!http_requestloc) {
			alert('Error: Unable to initialize class');
			return false;
		}
		http_requestloc.onreadystatechange = function() { alertContentsloc(http_requestloc,url,ip); };
		http_requestloc.open('POST', url, true);
		http_requestloc.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');  
		http_requestloc.send(passData);
	}
}

function alertContentsloc(http_requestloc,url,ip) {
        if (http_requestloc.readyState == 4) {
            if (http_requestloc.status == 200) {
				  var loc=http_requestloc.responseText;
				  loc=loc.split("|");
				  var lat=parseFloat(loc[0]);
				  var long=parseFloat(loc[1]);
				  
				  //alert(http_requestloc.responseText)
				  
				  if (GBrowserIsCompatible()) {
					var map2 = new GMap2(document.getElementById("map2"));
					map2.addControl(new GSmallMapControl());
					map2.addControl(new GScaleControl());
					map2.setCenter(new GLatLng(lat,long), 7);
					var label2='<div style="width:240px">'+ip+' has been traced to:<b> '+loc[2]+'</b></div>'
					var point2 = new GLatLng(lat,long);
					var marker2 = new GMarker(point2)
					GEvent.addListener(marker2, "click", function(){marker2.openInfoWindowHtml(label);});
					map2.enableScrollWheelZoom();
					map2.addOverlay(marker2);
					marker2.openInfoWindowHtml(label2);
				  }
				  document.getElementById('cprip').innerHTML=loc[3]
			}	 
			else {
                alert('Request has failed');
            }
        }
}

function checkip()
{
	var obj=document.forms.ip
	var ip=obj["ip"].value
	var regex='(1\d{0,2}|2(?:[0-4]\d{0,1}|[6789]|5[0-5]?)?|'+'[3-9]\d?|0)\.(1\d{0,2}|2(?:[0-4]\d{0,1}|[6789]|5[0-5]?)?|[3-9]\d?|0)'+'\.(1\d{0,2}|2(?:[0-4]\d{0,1}|[6789]|5[0-5]?)?|[3-9]\d?|0)\.(1\d{0,2}'+'|2(?:[0-4]\d{0,1}|[6789]|5[0-5]?)?|[3-9]\d?|0)(\/(?:[012]\d?|3[012]?'+')){0,1}$';

	

	var tomatch=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;



	if(tomatch.test(ip)==true){

		window.location='http://www.ipillion.com/?ip='+ip

	}

	else{

			alert("The IP address is entered incorrectly: "+ip)	

	}

}



function checkhost()

{

	var obj=document.forms.hostname

	var hostname=obj["host"].value

	

	

	var tomatch=/[^\.\/]+\.[^\.\/]+$/





	if(tomatch.test(hostname)==true){

		window.location='http://www.ipillion.com/?host='+hostname

	}

	else{

			alert("The hostname is entered incorrectly: "+hostname)	

	}



}

function checkwhois()

{

	var obj=document.forms.whois

	var hostname=obj["whois"].value

	

	

	var tomatch=/[^\.\/]+\.[^\.\/]+$/





	if(tomatch.test(hostname)==true){

		window.location='http://www.ipillion.com/?host='+hostname

	}

	else{

			alert("The hostname is entered incorrectly: "+hostname)	

	}



}


//AJAX RELATED

function makeRequestVote(action,url,smoid,td) {

       

	   var passData="action="+action+"&smoid="+smoid;

	   

	   var http_request = false;



        if (window.XMLHttpRequest) { // Mozilla, Safari, ...

            http_request = new XMLHttpRequest();

            if (http_request.overrideMimeType) {

                http_request.overrideMimeType('text/xml');

            }

        } else if (window.ActiveXObject) { // IE

            try {

                http_request = new ActiveXObject("Msxml2.XMLHTTP");

            } catch (e) {

                try {

                    http_request = new ActiveXObject("Microsoft.XMLHTTP");

                } catch (e) {}

            }

        }



        if (!http_request) {

            alert('Error: Unable to initialize class');

            return false;

        }

        http_request.onreadystatechange = function() { alertContentsVote(http_request,action,smoid,td); };

        http_request.open('POST', url, true);

       	http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');  

		http_request.send(passData);



    }



function alertContentsVote(http_request,action,smoid,td) {
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
			   if(!td.disable){
					if(http_request.responseText=="true"){
						td.disable=true;
						var ctrl=document.getElementById(smoid);
	
						if(action=='votes_up'){
						   ctrl.childNodes[0].childNodes[0].innerHTML++;
						   ctrl.childNodes[0].childNodes[0].className='voteuppas';
						   ctrl.childNodes[0].childNodes[1].className='votedownpas';
						   ctrl.removeChild(ctrl.childNodes[1])
						}
	
						else if(action=='votes_down'){
						   ctrl.childNodes[0].childNodes[1].innerHTML++;
						   ctrl.childNodes[0].childNodes[0].className='voteuppas';
						   ctrl.childNodes[0].childNodes[1].className='votedownpas';
						   ctrl.removeChild(ctrl.childNodes[1])
						}

					}
					else if(http_request.responseText=="false"){
						window.location='http://www.ipillion.com/login'
					}
					else{
					}
					
				}

            } else {
                alert('Request has failed');
            }
        }
    }
