var ServerURL = 'http://www0.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL1 = 'http://www1.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL2 = 'http://www2.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL3 = 'http://www3.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL4 = 'http://www4.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL5 = 'http://www5.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL6 = 'http://www6.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL7 = 'http://www7.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL10 = 'http://www10.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerURL11 = 'http://www11.freepdfconvert.com/cgi-bin/pdfengine30.dll';
var ServerEngineURL = '';
var URL='';

 

document.domain="freepdfconvert.com";

function doLoad(value) {


var req = new JsHttpRequest();


req.onreadystatechange = function() {
		hidediv('JobDoneForm');


        if (req.readyState == 1) {

			showdiv('responseText');
			document.getElementById('responseText').innerHTML = 'Validating...please wait...';
			document.forms[0].pdfsubmit.disabled = true;
			document.body.style.cursor='wait';


		};

        if (req.readyState == 4) {

			if (req.responseText == ''){

				doUpload(value)
			
			}
			else
			{

				document.getElementById('responseText').innerHTML = req.responseText;
				document.forms[0].pdfsubmit.disabled = false;
				document.body.style.cursor='auto';

			}

        }
    }


	
    if (getExtension(document.forms[0].elements['UploadedFile'].value) == 'pdf')
	{
           RandomNo = Math.floor(Math.random()*2);
           if (RandomNo == 1)
           {
  	     ServerEngineURL=ServerURL10;
	   }
	   else
	   {
	     ServerEngineURL=ServerURL4;
	   }
	}
    else
	{



			if (getExtension(document.forms[0].elements['UploadedFile'].value) == 'xls' || getExtension(document.forms[0].elements['UploadedFile'].value) == 'xlsx')
			{ServerEngineURL=ServerURL7;}
			else
			{
			if (getExtension(document.forms[0].elements['UploadedFile'].value) == 'pub' || getExtension(document.forms[0].elements['UploadedFile'].value) == 'rtf' || getExtension(document.forms[0].elements['UploadedFile'].value) == 'ppt' || getExtension(document.forms[0].elements['UploadedFile'].value) == 'pptx')
			{ServerEngineURL=ServerURL2;}
			else
			{
			if (getExtension(document.forms[0].elements['UploadedFile'].value) == 'doc')
					{
						RandomNo = Math.floor(Math.random()*4);



						switch (RandomNo) {
							case 1: ServerEngineURL=ServerURL6;break;
							case 2: ServerEngineURL=ServerURL1;break;
							case 3: ServerEngineURL=ServerURL3;break;
							case 0: ServerEngineURL=ServerURL11;break;

						}	



					}
					else
					{

       					if (getExtension(document.forms[0].elements['UploadedFile'].value) == 'docx')
						{ServerEngineURL=ServerURL;}
						else
						{ServerEngineURL=ServerURL5;}
						
						
						
					
					
					}

			}
			
		}
	}	

	if (checkExistance(document.forms[0].elements['URL']))
	{
	URL = document.forms[0].elements['URL'].value;
	if (URL != '')
		{
		ServerEngineURL = URL;
		}	
	}


   if (IsChrome() == true)
	   {req.open('POST', ServerEngineURL + '/Validate', true);}
   else
	   {req.open('GET', ServerEngineURL + '/Validate', true);}
	
    req.send( { string: value } );





}


function doUpload(value) {

    var req = new JsHttpRequest();

    
	
	req.onreadystatechange = function() {
		hidediv('JobDoneForm');

        if (req.readyState == 1) {

			showdiv('responseText');
			document.getElementById('responseText').innerHTML = 'Uploading...please wait...';
			document.forms[0].pdfsubmit.disabled = true;
			document.body.style.cursor='wait';




		};

        if (req.readyState == 4) {

			if (req.responseText == ''){


			document.getElementById('responseText').innerHTML ='The conversion is in process. If you have entered your e-mail in the form then you can close the window as the results will be sent to you by e-mail. If you have not entered the e-mail, please wait.  <BR>It can take quite long converting large files, up to 5 min. Converting from PDF to DOC can take even more, up to 15 min.';
			QueryStatus(req.responseJS.ConversionID);

			
			}
			else
			{

	          document.getElementById('responseText').innerHTML = req.responseText;
			  document.forms[0].pdfsubmit.disabled = false;
			  document.body.style.cursor='auto';





			}

        }
    }


    req.open('POST', ServerEngineURL + '/Upload', true);

    req.send( { string: value } );

}

function QueryStatus(value) {
	var req = new JsHttpRequest();
	req.loader='SCRIPT';
	document.forms[0].pdfsubmit.disabled = true;
	document.body.style.cursor='wait';


	req.onreadystatechange = function() {
		if (req.readyState == 4) {
		document.forms[0].pdfsubmit.disabled = false;
		document.body.style.cursor='auto';

			if (req.responseText== ''){
				 if (req.responseJS.FullResultURL=='')
					 {
			 			pausecomp(2000);
						QueryStatus(req.responseJS.ConversionID);
					 }
				 else
					 {
						showdiv('JobDoneForm');
						hidediv('responseText');
						document.getElementById('FullResultURL').href = req.responseJS.FullResultURL; 
						document.getElementById('ResultDeleteURL').href = 'JavaScript:DeleteFile("'+ req.responseJS.ConversionID+'");'; 
					 }
				}
				else
					{
						document.getElementById('responseText').innerHTML = req.responseText;
					}

		}				
	}

	req.open(null, ServerEngineURL + '/QueryStatus', true);
	req.send( { ID: value } );
}

   function DeleteFile(value) {
        JsHttpRequest.query(
             ServerEngineURL + '/Delete',
            {'ID': value},
            function(result, message) {
				
               hidediv('JobDoneForm');
  				showdiv('responseText');
				document.getElementById('responseText').innerHTML = message;

			},
            true
			);
    }


function DeleteFileURL(value) {
        JsHttpRequest.query(
            value,
            null,
            function(result, message) {
				
				document.getElementById('responseText').innerHTML = message;
				showdiv('responseText');

			},
            true
			);
    }



//------------------------------------------------------------------------------------------------


document.cookie = "expires=Fri, 13 Jul 2004 05:28:21 UTC; path=/";


function getObj(name)
{
	if (document.getElementById)
	{
		this.obj = document.getElementById(name);
		this.style = document.getElementById(name).style;
	}
	else if (document.all)
	{
		this.obj = document.all[name];
		this.style = document.all[name].style;
	}
	else if (document.layers)
	{
		this.obj = document.layers[name];
		this.style = document.layers[name];
	}
return this.obj
}


function createCookie(name, value, days)
{
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
    }
  else var expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
  var ca = document.cookie.split(';');
  var nameEQ = name + "=";
  for(var i=0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1, c.length); //delete spaces
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }
  return "";
}

function eraseCookie(name)
{
  createCookie(name, "", -1);
}

function SaveCookies ()
{
createCookie('Email',document.forms[0].Email.value,200);
createCookie('AttachFile',document.forms[0].AttachFile.checked,200);
createCookie('ConvertType',document.forms[0].ConvertType[1].checked,200);

}

function LoadCookies ()
{
document.forms[0].Email.value=readCookie('Email');

if (readCookie('AttachFile') == 'true' )
{
document.forms[0].AttachFile.checked = true;
}

if (readCookie('ConvertType') == 'true' )
{
document.forms[0].ConvertType[1].checked = true;
}

}

function checkExistance(f)
{
if (f)
    return true;
else
    return false;
}

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}



function disableControl(control) {
if (document.forms[0].elements[control].value == "JPG" ||
   document.forms[0].elements[control].value == "BMP" ||
   document.forms[0].elements[control].value == "PNG" ||
   document.forms[0].elements[control].value == "TIF") {
 GroupState("security","true","gray");
 GroupState("resolution","","black");
}	

if (document.forms[0].elements[control].value == "POSTSCRIPT") {
 GroupState("security","true","gray");
 GroupState("resolution","true","gray");
}
if (document.forms[0].elements[control].value == "PDF") {
 GroupState("security","","black");
 GroupState("resolution","","black");
}
}

function GroupState(group,state,color) {
if (group == "security") {

getObj('ColorFormat').disabled = state;	

getObj('UserPass').disabled = state;	
getObj('OwnerPass').disabled = state;	

getObj('Print').disabled = state;	
getObj('Copy').disabled = state;	
getObj('Modify').disabled = state;	


getObj('ColorFormat_').style.color = color;
getObj('UserPass_').style.color = color;
getObj('OwnerPass_').style.color = color;
getObj('Sec_').style.color = color;
getObj('Seclabel_').style.color = color;	
getObj('Print_').style.color = color;	
getObj('Copy_').style.color = color;	

getObj('Modify_').style.color = color;	
}

if (group == "resolution") {
getObj('DocumentRes').disabled = state;	
getObj('DocumentResLabel_').style.color = color;
getObj('DocumentRes_').style.color = color;
}


}






var ids=new Array('AFile','AURL','PDFOptions');

function switchid(id){	
	hideallids();
	showdiv(id);
}

function hideallids(){
	//loop through the array and hide each element by id
	for (var i=0;i<ids.length;i++){
		hidediv(ids[i]);
	}		  
}

function hidediv(id) {
	//safe function to hide an element with a specified id
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'none';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'none';
		}
		else { // IE 4
			document.all.id.style.display = 'none';
		}
	}
}

function showdiv(id) {
	//safe function to show an element with a specified id
		  
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'block';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'block';
		}
		else { // IE 4
			document.all.id.style.display = 'block';
		}
	}
}




function DoEMailCheck() {
if(document.forms[0].AttachFile.checked == true)
  { alert('Do not use this option on large files, because some e-mail servers do not accept e-mails with large attachments.'); }
}



function getExtension(value) {
  value = value.toLowerCase();
  return value.substring(value.lastIndexOf('.') + 1,value.length);
}

function pausecomp(millis) 
{
var date = new Date();
var curDate = null;

do { curDate = new Date(); } 
while(curDate-date < millis);
} 



function IsChrome() {

var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome/') > -1;
var is_safari = navigator.userAgent.toLowerCase().indexOf('safari/') > -1;

if (is_chrome || is_safari)
	{
	return true;	
	}
	else
	{
    return false;
	}
}