function textCounter(field, countfield, maxlimit, limit) 
{
	if (field.value.length > maxlimit)
	{
		if( limit == 1 )
		{
			field.value = field.value.substring(0, maxlimit);
		}
	}	
	
	countfield.value = maxlimit - field.value.length;	
}

var link;
var fieldInProgress;
var formInProgress;
var target;
function setHTMLtags(field,type,form)
{
	eval("targetField=document.forms."+form+"."+field);	
	if(type==1)
	{
		var start="<b>";
		var end="</b>";
	}
	else if(type==2)
	{
		var start="<i>";
		var end="</i>";
	}
	else if(type==3)
	{
		var start="<u>";
		var end="</u>";
	}
	else if(type==4)
	{
		if (link)
		{
			var start='<a href="'+link+'" target="'+target+'">';
			var end='</a>';
		}
		else
		{
			var start='';
			var end='';
		}
	}
	if(document.selection)
	{	
		var selectedText = document.selection.createRange();
		if(selectedText.text.length>0)
		{
			selectedText.text=start + selectedText.text + end;
		}
	}
	else if (targetField.selectionStart || targetField.selectionStart == '0') 
	{
		var startPos = targetField.selectionStart;
		var endPos = targetField.selectionEnd;
		if(startPos!=endPos)
		{
			targetField.value = targetField.value.substring(0, startPos)
					  + start +  targetField.value.substring(startPos, endPos) + end 
					  + targetField.value.substring(endPos, targetField.value.length);
		}
	}
}

function setEditorPageLink(field,type,form)
{
	fieldInProgress = field;
	formInProgress = form;
	usage = confirm("Create link to editor-page by clicking ok or create external link by clicking cancel");
	if (usage)
	{
		selectfiles('dhtmlLinking',0);
	}
	else
	{
		link = prompt('Enter URL:','http://');
		target = "_blank";
		setHTMLtags(fieldInProgress,4,formInProgress);
	}
}

function wakeDialog(linkFromSelection)
{
	link = linkFromSelection;
	target = "_self";
	setHTMLtags(fieldInProgress,4,formInProgress);
	fieldInProgress = "";
	formInProgress = "";
}
//------------------------------------------------------------

function changeRadiobox(field,i)
{
	eval('status=document.forms.haku.'+field+'.value');
	
	if(status!=0)
	{
		MM_swapImage(field+'_'+status,'','img/checkbox.gif',0);
	}
	
	if(status==i)
	{
		eval('document.forms.haku.'+field+'.value="0"');
	}
	else
	{
		eval('document.forms.haku.'+field+'.value='+i);
		MM_swapImage(field+'_'+i,'','img/checkbox_s.gif',0);	
	}
	
}

function changeCheckbox(field,i)
{
	eval('status=document.forms.haku.'+field+i+'.value');
	if(status!=0)
	{
		MM_swapImage(field+'_'+i,'','img/checkbox.gif',0);
		eval('document.forms.haku.'+field+i+'.value=0');
	}
	else
	{
		MM_swapImage(field+'_'+i,'','img/checkbox_s.gif',0);
		eval('document.forms.haku.'+field+i+'.value=1');
	}
}

function clearForm()
{
	document.forms.haku.length[0].checked=true;
	document.forms.haku.summertheatre.checked=false;
	document.forms.haku.svenska.checked=false;
	document.forms.haku.name.value="";
	document.forms.haku.writer.value="";
	document.forms.haku.rolesmin.value="";
	document.forms.haku.rolesmax.value="";
	document.forms.haku.womenmin.value="";
	document.forms.haku.womenmax.value="";
	document.forms.haku.menmin.value="";
	document.forms.haku.menmax.value="";
	document.forms.haku.publishedStart.value="";
	document.forms.haku.publishedEnd.value="";
	document.forms.haku.type1.checked=false;
	document.forms.haku.type2.checked=false;
	document.forms.haku.type3.checked=false;
	document.forms.haku.type5.checked=false;
	document.forms.haku.type6.checked=false;
	document.forms.haku.type7.checked=false;
	document.forms.haku.type8.checked=false;
	document.forms.haku.type9.checked=false;
	document.forms.haku.type10.checked=false;
}


function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


function validateSearch()
{
	var status=true;
	if(document.forms.haku.rolesmin.value!="" && !IsNumeric(document.forms.haku.rolesmin.value)) status=false;
	if(document.forms.haku.rolesmax.value!="" && !IsNumeric(document.forms.haku.rolesmax.value)) status=false;
	if(document.forms.haku.womenmin.value!="" && !IsNumeric(document.forms.haku.womenmin.value)) status=false;
	if(document.forms.haku.womenmax.value!="" && !IsNumeric(document.forms.haku.womenmax.value)) status=false;
	if(document.forms.haku.menmin.value!="" && !IsNumeric(document.forms.haku.menmin.value)) status=false;
	if(document.forms.haku.menmax.value!="" && !IsNumeric(document.forms.haku.menmax.value)) status=false;
	if(document.forms.haku.publishedStart.value!="" && !IsNumeric(document.forms.haku.publishedStart.value)) status=false;
	if(document.forms.haku.publishedEnd.value!="" && !IsNumeric(document.forms.haku.publishedEnd.value)) status=false;
	
	if(status==false)
	{
		alert('Tarkista kenttien tiedot.');
	}
	else
	{
		if(document.forms.haku.length.value==0 && document.forms.haku.type1.value==0 && document.forms.haku.type2.value==0 && document.forms.haku.type3.value==0 && document.forms.haku.type5.value==0 && document.forms.haku.type6.value==0 && document.forms.haku.type7.value==0  && document.forms.haku.type8.value==0  && document.forms.haku.type9.value==0  && document.forms.haku.type10.value==0 && document.forms.haku.summertheatre.value==0 && document.forms.haku.svenska.value==0 && document.forms.haku.name.value=="" && document.forms.haku.writer.value=="" && document.forms.haku.rolesmin.value=="" && document.forms.haku.rolesmax.value=="" && document.forms.haku.womenmin.value=="" && document.forms.haku.womenmax.value=="" && document.forms.haku.menmin.value=="" && document.forms.haku.menmax.value=="" && document.forms.haku.publishedStart.value=="" && document.forms.haku.publishedEnd.value=="")
		{
			status=false;
			alert('Täytä jokin hakukriteeri.');
		}
		
	}
	
	return status;
}

function IsNumeric(strString)
   //  check for valid numeric strings	
{
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}

function frontpageSearch()
{
	if(document.forms.hakuTop.name.value.replace(/^\s+|\s+$/g, '')=="")
	{
		alert('Täytä hakukenttä, kiitos!');
	}
	else
	{
		document.forms.hakuTop.action="index.php";
		document.forms.hakuTop.writer.value=document.forms.hakuTop.name.value;
		document.forms.hakuTop.submit();
	}
}

function changeImagesOnLoad()
{
	form=document.forms.haku;
	if(form.summertheatre.value==1)MM_swapImage('summertheatre_1','','img/checkbox_s.gif',0);
	if(form.svenska.value==1)MM_swapImage('svenska_1','','img/checkbox_s.gif',0);
	if(form.length.value==1)MM_swapImage('length_1','','img/checkbox_s.gif',0);
	if(form.length.value==2)MM_swapImage('length_2','','img/checkbox_s.gif',0);
	for(var i=1;i<11;i++)
	{
		if(i!=4)
		{
			eval("if(form.type"+i+".value==1)MM_swapImage('type_"+i+"','','img/checkbox_s.gif',0);");
		}
	}
}

//----------------------------------Tilityslomake

function makeCalculation(field)
{
	fieldName=field;
	form="document.forms.accountInfo";
	eval("field="+form+"."+field+";");
	if(IsNumeric(field.value) || field.value=="")
	{
		total_tickets=0;
		total_freetickets=0;
		total_income=0;
		total_copyright=0;
    alv=eval(form+".alv.value");

		//rivit läpi
		for(var i=1;i<21;i++)
		{
			//myydyt ja ilmaiset liput
			eval("temp_tickets=("+form+".myydytliput_"+i+".value-0);");
			eval("temp_freetickets=("+form+".ilmaisliput_"+i+".value-0);");
			total_tickets=temp_tickets+total_tickets;
			total_freetickets=temp_freetickets+total_freetickets;			
			temp_rowTickets=temp_freetickets+temp_tickets;
			if(temp_rowTickets>0)
				eval(form+".lippujayhteensa_"+i+".value=temp_rowTickets;");
			else
				eval(form+".lippujayhteensa_"+i+".value='x';");
				
			//tulopuolen laskut
			eval("temp_income=("+form+".tulot_"+i+".value-0);");
			total_income=temp_income+total_income;
			
			if(temp_income>0)
			{
				if(temp_rowTickets>0)
				{
					average=temp_income/temp_rowTickets;
					eval(form+".keskihinta_"+i+".value=average.toFixed(2);");
				}
				
				if(IsNumeric(document.forms.accountInfo.copyrightPro.value) || IsNumeric(document.forms.accountInfo.copyrightMin.value))
				{
          if (alv > 0){
            copyright=(temp_income*document.forms.accountInfo.copyrightPro.value)/100;
            copyright+=copyright*(alv/100);
          }else{
            copyright=(temp_income*document.forms.accountInfo.copyrightPro.value)/100;
          }
					if(copyright<document.forms.accountInfo.copyrightMin.value && IsNumeric(document.forms.accountInfo.copyrightMin.value))
					{
            if (alv > 0){
              cp_min_alv = eval(document.forms.accountInfo.copyrightMin.value*(alv/100+1)).toFixed(2);
              eval(form+".tekijanoikeus_"+i+".value="+ cp_min_alv);
              total_copyright=total_copyright+(cp_min_alv-0);
            }else{
              eval(form+".tekijanoikeus_"+i+".value="+form+".copyrightMin.value;");
              total_copyright=total_copyright+(document.forms.accountInfo.copyrightMin.value-0);
            }
					}
					else
					{
						total_copyright=total_copyright+copyright;
						eval(form+".tekijanoikeus_"+i+".value=copyright.toFixed(2);");
					}
				}
			}
			else
			{
				eval(form+".keskihinta_"+i+".value='x';");
				eval(form+".tekijanoikeus_"+i+".value='x';");
			}
			
		}
		
		//loppuyhteenveto
		if(total_tickets>0)
		document.forms.accountInfo.kaikki_myydytliput.value=total_tickets;
		else
			document.forms.accountInfo.kaikki_myydytliput.value="x";
			
		if(total_freetickets>0)
			document.forms.accountInfo.kaikki_ilmaisliput.value=total_freetickets;
		else
			document.forms.accountInfo.kaikki_ilmaisliput.value="x";
			
		total_ticketcount=total_tickets+total_freetickets;
		if(total_ticketcount>0)
			document.forms.accountInfo.kaikki_lippujayhteensa.value=total_ticketcount;
		else
			document.forms.accountInfo.kaikki_lippujayhteensa.value="x";
		
		if(total_income>0)
			document.forms.accountInfo.kaikki_tulot.value=total_income;
		else
			document.forms.accountInfo.kaikki_tulot.value="x";
			
		if(total_income>0 && total_ticketcount>0)
		{
			average=total_income/total_ticketcount;
			document.forms.accountInfo.kaikki_keskihinta.value=average.toFixed(2);
		}
		else
			document.forms.accountInfo.kaikki_keskihinta.value="x";
			
		if(total_copyright>0)
			document.forms.accountInfo.kaikki_tekijanoikeus.value=total_copyright.toFixed(2);
		else
			document.forms.accountInfo.kaikki_tekijanoikeus.value="x";
	}
	else
	{
		removeNonNumeric(fieldName);
	}
}

function removeNonNumeric(field)
{
	eval("field=document.forms.accountInfo."+field+";");
	field.value=field.value.substring(0, field.value.length-1);
}


//--------------------------------------------------
