//*******************************************************************************
//                             JAVA SCRIPT  L I B R A R Y  2003
//                          Version 1.0, Copyright (C) 2001-2003
//*******************************************************************************
// INDEX :
//----------------------------------------------------------------------------------------------------------------------
//No.  Name
//----------------------------------------------------------------------------------------------------------------------
// 1.  function strReplaceAll(str,strFind,strReplace)
// 2.  function isEmailAddr(email)
// 3.  function Comma(number) 
// 4.  function formatCurrency(num)
// 5.  function OnlyNUMBERS(price_input, evnt, maxlen, dec)
// 6.  function fncFormatDecimal(strNumber,intDecimal,intRound)
// 7.  function getCookie(name)
// 8.  function setCookie(name, value, expires) 
// 9.  function delCookie(name) 
// 10. function isIE()
// 11. function whoBROWSER()
// 12. function isValidDate(dateStr) 
// 13. function setCursor(elem, state)
// 14. function add2Favorites() 
// 15. function addInternetExplorerFAVORITE(websitePATH)
// 16. function addNetscapePanel(websiteNAME)
// 17. function setCursorHAND(element)   
//**********************************************************************************



// 1 *******************************************************************************

//Replace all (no regular expression)

function strReplaceAll(str,strFind,strReplace)
{
  var returnStr = str;
  var start = returnStr.indexOf(strFind);
  while (start>=0)
  {
    returnStr = returnStr.substring(0,start) + strReplace + returnStr.substring(start+strFind.length,returnStr.length);
    start = returnStr.indexOf(strFind,start+strReplace.length);
  }
  return returnStr;
} 


// 2 *******************************************************************************

//Testing for an email address

function isEmailAddr(email)
{
  var result = false;
  if (email.length > 3)
  {
    var theStr = new String(email);
    var index = theStr.indexOf("@");
    if (index > 0)
    {
      var pindex = theStr.indexOf(".",index);
      if ((pindex > index+1) && (theStr.length > pindex+1))
        result = true;
    }
  }
  return result;
}

// 3 *******************************************************************************

//for example 10000 , 10.000

function Comma(number) 
{
var comma_character 
comma_character = '.'

//lastdec = substring(number.length,number.length-2);
number = '' + number;
if (number.length > 3) 
{
  var mod = number.length % 3;
  
  var output = (mod > 0 ? (number.substring(0,mod)) : '');
  for (i=0 ; i < Math.floor(number.length / 3); i++) 
  {
    if ((mod == 0) && (i == 0))
        output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
        else
            output+= comma_character + number.substring(mod + 3 * i, mod + 3 * i + 3);
  }
  
  return (output);
}
else return number;
}

// 4 ***********************************************************************************

function formatCurrency(num)
{
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+'.'+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + num + ',' + cents);
}


// 5 ***********************************************************************************

// for input box only NUMBERS
// example : <input class=input type="text" onKeyPress="return OnlyNUMBERS(this, event, 24, false)" autocomplete=off size="20" maxlength="20" id="amount" name="amount">

function OnlyNUMBERS(price_input, evnt, maxlen, dec)
{
var inp;
var inpchar;
var dec_places = 3;
var msg;

if (price_input.value.length >= maxlen)
	{
	//msg = 'Το πεδίο δέχεται μέχρι ' + maxlen + ' ψηφία'
	msg = 'The field accepted ' + maxlen + ' digit '
	if (dec)
		{
		// msg = msg + ' μαζί με την υποδιαστολή.'
		msg = msg + ' with the comma.'
		}
	else
		{
		msg = msg + '.'
		}
	return false;
	}
if (window.event)
   inp = window.event.keyCode;
else if (e)
   inp = e.which;
else
   return true;
inpchar = String.fromCharCode(inp);

if ((inp==null) || (inp==0) || (inp==8) || 
    (inp==9) || (inp==13) || (inp==27) )
   return true;

else if ((("0123456789").indexOf(inpchar) > -1))
	{
		if ((price_input.value.indexOf('.') > -1 || price_input.value.indexOf(',') > -1) && dec)
			{
			if (((price_input.value.indexOf('.') + price_input.value.indexOf(',') + 2) - price_input.value.length) < (dec * -1))
				{
				return false;
				}
			else
				{
				return true;
				}
			}
   return true;
	}
else if ((inpchar == "." && price_input.value.indexOf('.') == -1)  || (inpchar == "," && price_input.value.indexOf(',') == -1))
   { 
		if (price_input.value.indexOf('.') == -1 && price_input.value.indexOf(',') == -1)
			{
			if (dec)
				{
				return true;
				}
			else
				{
				return false;
				}
			}
		else
			{
			return false;
			}
   }
else
   return false;
}

// 6 ***********************************************************************************

// example : alert(fncFormatDecimal("12.0053265423",2,.4))

function fncFormatDecimal(strNumber,intDecimal,intRound)
{
	strNumber = strNumber.replace(",",".");
	intOUT = parseInt((parseFloat(strNumber,10) * (Math.pow(10,intDecimal)))+intRound,10);
	if(isNaN(intOUT))
	{
		return false;
	}
	return (intOUT / (Math.pow(10,intDecimal))).toString(10).replace(".",",");
}

// 7 ***********************************************************************************

// Use this function to retrieve a cookie.

function getCookie(name){
var cname = name + "="; 
var dc = document.cookie; 
if (dc.length > 0) { 
begin = dc.indexOf(cname); 
if (begin != -1) { 
begin += cname.length; 
end = dc.indexOf(";", begin);
if (end == -1) end = dc.length;
return unescape(dc.substring(begin, end));
} 
}
return null;
}

// 8 ***********************************************************************************

// Use this function to save a cookie.

function setCookie(name, value, expires) 
{
document.cookie = name + "=" + escape(value) + "; path=/" +
((expires == null) ? "" : "; expires=" + expires.toGMTString());
}

// 9 ***********************************************************************************

// Use this function to delete a cookie.

function delCookie(name) 
{
document.cookie = name + "=; expires=Thu, 01-Jan-70 00:00:01 GMT" + "; path=/";
}


// 10 ***********************************************************************************

function isIE()
{
	var name = navigator.appName;
	var vers = navigator.appVersion;
	vers = vers.substring(0,1); // or 0,4  could return 4.5 instead of just 4

	if (name == "Microsoft Internet Explorer") 
	{
	    return true;
	    //document.write(IE)
	}    
	else
	{
	    return false;
	    //document.write('NS6')

	}
}	


// 11 ***********************************************************************************

function whoBROWSER()
{

var IE5,N6,browser
IE5 = (document.all && document.getElementById) ? true : false;
NS6 = (document.getElementById && !document.all) ? true : false;
if (IE5==true)
{ 
  browser="IE";
}
else
{
 browser="NS";
}  

return browser
}

// 12 ***********************************************************************************

function isValidDate(dateStr) {

// Checks for the following valid date formats:
// MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY
// Also separates date into month, day, and year variables

var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;

// To require a 4 digit year entry, use this line instead:
// var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/;

var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null) {
alert(dateStr + ":" + " Invalid date!")
return false;
}
month = matchArray[1]; // parse date into variables
day = matchArray[3];
year = matchArray[4];
if (month < 1 || month > 12) { // check month range
alert("Month must be between 1 and 12.");
//alert("Ο Μήνας πρέπει να περιέχει τιμές μεταξύ 1 και 12");
return false;
}
if (day < 1 || day > 31) {
alert("Day must be between 1 and 31.");
//alert("Η Ημέρα πρέπει να περιέχει τιμές μεταξύ 1 και 31");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Month "+month+" doesn't have 31 days!")
//alert("Ο Μήνας "+month+" δέν έχει 31 ημέρες!")
return false
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day>29 || (day==29 && !isleap)) {
alert("February " + year + " doesn't have " + day + " days!");
//alert("Ο Φεβρουάριος " + year + " δέν έχει " + day + " ημέρες");
return false;
   }
}
return true;  // date is valid
}

// 13 ***********************************************************************************

function setCursor(elem, state)
{
  elem.style.cursor = state;
}

// 14 ***********************************************************************************

function add2Favorites()  // for IE
{
   if ((navigator.appVersion.indexOf("MSIE") > 0) && (parseInt(navigator.appVersion) >= 4)) {
       var sText = " <a href='javascript:window.external.AddFavorite(location.href,";
       sText += "document.title);'><img src=images/addtof.gif border=0></a>";
       add_fav.innerHTML = sText;
   }
}

// 15 ***********************************************************************************

function addInternetExplorerFAVORITE(websitePATH)
{
	if (whoBROWSER()=="IE")
	{
	  window.external.AddFavorite(location.href,document.title);		 
	}
	else
	{
	  addNetscapePanel(websitePATH);  
	}
}

// 16 ***********************************************************************************

function addNetscapePanel(websiteNAME)   // websiteNAME example : www.start.gr
{ 
   if ((typeof window.sidebar == "object") && (typeof window.sidebar.addPanel == "function")) 
   { 
      window.sidebar.addPanel(websiteNAME,location.href,""); 
   } 
   else 
   { 
      var rv = window.confirm ("This page is enhanced for use with Netscape 6.  " + "Would you like to upgrade now?"); 
      if (rv) { document.location.href = "http://home.netscape.com/download/index.html"; }
   } 
} 

// 17 ***********************************************************************************

function setCursorHAND(element)          // πχ. setCursorHAND('Button1');
{
	if (whoBROWSER()=="IE")
	{
	  temp = strReplaceAll(element,"'","");
	  eval(temp).style.cursor = 'hand';
	}
	else
	{ 
	  temp = strReplaceAll(element,"'","");
	  document.getElementById(temp).style.cursor = 'pointer';
	}
}

// 18 ***********************************************************************************