// JavaScript Document
/// epistrefei to onoma tou navigator
function NavigatorIs()
{
   // alert (navigator.userAgent + '\n' + navigator.appName + '\n' + navigator.appVersion + '\n');
   if(navigator.appName.indexOf('Netscape') != - 1)
   {
      return 'Netscape';
   }
   else if(navigator.appName.indexOf('Explorer') != - 1)
   {
      return 'Explorer';
   }
}

//  ---------------------------------------

// elenxi to navigator kai analogos kanei to request
function make_http_request()
{
   var http_request = false;
   if (window.XMLHttpRequest)
   {
      // Mozilla, Safari, ...
      http_request = new XMLHttpRequest();
      if (http_request.overrideMimeType)
      {
         http_request.overrideMimeType('text/html');
         // See note below about this line
      }
   }
   else if(window.ActiveXObject)
   {
      // IE
      try
      {
         http_request = new ActiveXObject("Msxml2.XMLHTTP");
      }
      catch (e)
      {
         try
         {
            http_request = new ActiveXObject("Microsoft.XMLHTTP");
         }
         catch(e)
         {
         }
      }
   }
   return http_request;
}

//  ---------------------------------------

function makeUrlFromParameter(url, names, values)
{
   var parameters = '';
   // to thisElementId eimai etsei "car_'car_id'" p.x "car_423"
   // kovo to car_ kai epistrefo to id ka8aro
   //////////////// thisElementId = thisElementId.substr(thisElementId.indexOf('_') + 1);
   // auto edo ginetai se periptosei pou to url exei ksanadilo8ei
   // names = names + ',' + values;
   if(url.indexOf('?') != - 1)
   {
      // an to url exei ksanadilo8ei tote kovetai mexrei to "?"
      url = url.substr(0, url.indexOf('?'));
   }

   names = names.split(',');
   values = values.split(',');
   for(var i = 0; i < names.length; i ++ )
   {
      parameters += names[i] + '=' + values[i] + '&';
   }

   if(parameters != '')
   {
      url = url + '?' + parameters;
      url = url.substr(0, url.length - 1);
   }
   // tora prostetontai i parametrei pou xreiazomastai
   // url = url + '?car_id=' + thisElementId ;
   // epistrefo to url gia na stalei
   return url;
}

//  ---------------------------------------

// kanei to request BASE
                        
function makeRequest(thisElement, names, values, inObject,loadObject,innerHTMLinLoadObject)
{
   // edo einai to url apo tin global metavliti mazei me tis paramerous
   url = makeUrlFromParameter(url, names, values);
   // i getElements() pernei san parametro to url kai to id tou element kai epeistrefei ena morfopihmeno url
   // ginetai i apostolei ton data sto url pou dosame
   http_request = make_http_request();
   // epistrefei to request
   // an to request den exei dilo8ei to vgazei ena alert kai epistrefei false
   //alert(url);
   if ( ! http_request)
   {
      alert('Giving up :( Cannot create an XMLHTTP instance');
      return false;
   }
   // elenxei to alertContents ola ta readyState einai dipla
   http_request.onreadystatechange = function()                     // 0 Object is not initialized
   {
      // 1 Loading object is loading data
      alertContents(http_request, inObject,loadObject,innerHTMLinLoadObject);
      // 2 Loaded object has loaded data
   }
   ;
   // 3 Data from object can be worked with
   // 4 Object completely initialized
   // stalnei ta data
   http_request.open('GET', url, true);
  // http_request.setRequestHeader('Content-type', 'text/plain;charset=iso-8859-7;');
   //http_request.setRequestHeader('Content-type', 'text/html; charset=iso-8859-7');
   http_request.send(null);

   return http_request;
}

//  ---------------------------------------

//  ---------------------------------------
var i = 0;
var tmp;
var tmpValue;
function alertContents(http_request, inObject,loadObject,innerHTMLinLoadObject)
{
   	if(NavigatorIs() == 'Explorer')
	{	
		if(loadObject != undefined)
   		{	
        	if(i == 0)
        	{
				if(document.getElementById(loadObject).type != 'select-one' )
				{
					//alert(document.getElementById(loadObject).type);
					tmp = document.getElementById(loadObject).innerHTML;
				}
            	i++;
        	}
        	if (http_request.readyState < 4)
        	{
				if(tmp != undefined)
				{
            		document.getElementById(loadObject).innerHTML = innerHTMLinLoadObject;
				}
        	}
        	else if (http_request.readyState == 4)
        	{
            	// an to status = 200 tote simenei oti den eiparxei kanena server error
            	if (http_request.status == 200)
            	{
                	// ektelei ton kodika pou 8eloumai
                	
					if(tmp != undefined)
					{
						document.getElementById(loadObject).innerHTML = tmp;
					}
					requestOutput(http_request, inObject);
					i=0;
            	}
            	else
            	{
                	alert('There was a problem with the request.');
            	}
        	}
		}
		else
   		{
        	if (http_request.readyState == 4)
        	{
            // an to status = 200 tote simenei oti den eiparxei kanena server error
            	if (http_request.status == 200)
            	{
                // ektelei ton kodika pou 8eloumai
                	requestOutput(http_request, inObject);
            	}
            	else
            	{
                	alert('There was a problem with the request.');
            	}
        	}
   		}
	}
	else
	{
		//alert('firefox');
   		if(loadObject != undefined)
   		{
       		// document.write(document.getElementById(loadObject).type);
   			//alert(document.getElementById(loadObject).text);	
        	if(i == 0)
        	{
            	tmp = document.getElementById(loadObject).innerHTML;
				if(document.getElementById(loadObject).type == 'select-one')
				{
					tmpValue=document.getElementById(loadObject).selectedIndex;

				}
            	i++;
        	}
        	if (http_request.readyState < 4)
        	{
            	document.getElementById(loadObject).innerHTML = innerHTMLinLoadObject;
        	}
        	else if (http_request.readyState == 4)
        	{
            	// an to status = 200 tote simenei oti den eiparxei kanena server error
            	if (http_request.status == 200)
            	{
                	// ektelei ton kodika pou 8eloumai
                	document.getElementById(loadObject).innerHTML = tmp;
					if(tmpValue != undefined)
					{
						document.getElementById(loadObject).selectedIndex = tmpValue;
					}
					requestOutput(http_request, inObject);
					i=0;
            	}
            	else
            	{
                	alert('There was a problem with the request.');
            	}
        	}
		}
   		else
   		{
        	if (http_request.readyState == 4)
        	{
            // an to status = 200 tote simenei oti den eiparxei kanena server error
            	if (http_request.status == 200)
            	{
                // ektelei ton kodika pou 8eloumai
                	requestOutput(http_request, inObject);
            	}
            	else
            	{
                	alert('There was a problem with the request.');
            	}
        	}
   		}
	}
}

//  ---------------------------------------

// pernei san parametro ena element
// an an emfanizetai tote pavi na emfanizetai kai to antistrofo
function ShowHideElement(thisElement)
{
   if(document.getElementById(thisElement.id).style.display == '')
   {
      document.getElementById(thisElement.id).style.display = 'none';
   }
   else
   {
      document.getElementById(thisElement.id).style.display = '';
   }
}

//  ---------------------------------------

function makeFontColor(thisElement, collor)
{
   thisElement.style.color = collor;
}



function $()
{
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}

function getMouseXY(e) 
{
	var IE = document.all?true:false
	if (!IE) document.captureEvents(Event.MOUSEMOVE)
 
  	if (IE){
    	tempX = event.clientX + document.body.scrollLeft
    	tempY = event.clientY + document.body.scrollTop
  	}
  	else {
    	tempX = e.pageX
    	tempY = e.pageY
  	}  
	if(tempX < 0){
		tempX = 0
	}
  	if(tempY < 0){
		tempY = 0
	}
	var XYarray = new Array(tempX,tempY);
	return XYarray;
}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

function getURLParam(strParamName)
{
  var strReturn = "";
  var strHref = window.location.href;
  if ( strHref.indexOf("?") > -1 )
  {
    var strQueryString = strHref.substr(strHref.indexOf("?")).toLowerCase();
    var aQueryString = strQueryString.split("&");
    for ( var iParam = 0; iParam < aQueryString.length; iParam++ )
	{
      if (aQueryString[iParam].indexOf(strParamName + "=") > -1 )
	  {
        var aParam = aQueryString[iParam].split("=");
        strReturn = aParam[1];
        break;
      }
    }
  }
  return strReturn;
}

function email_validation(email)
{

  if ( email.indexOf('@') > -1 )
  {
    if((email.lastIndexOf('.')) > (email.indexOf('@')))
    {
        if(email.length > (email.indexOf('.')) )
        {
            email.toLowerCase();
            return true;
        }
    }
    
  }
  return false;
}

