
   function print( printel )
   {
		if( printel )
		{
			var content = printel.innerHTML;
			window.open( content );
		}
   }

   function selectOrderDate( formid )
   {
	   if( formid != "" )
	   {
		   if( f = document.getElementById( formid ) )
		   {
			   if( f.orderdate.value > 0 )
			   {
				   f.submit();
			   }
		   }
	   }
   }

   function removeRow( prod_id, name, lang_id )
   {
      var f = document.getElementById( "deleteForm" );
      if( f )
      {
		 switch( lang_id )
		 {
			case "1":
				var str = "Are you sure you want to remove: " +  name + " from the shoppingcart?";
			break;

			case "2":
				var str = "Oletko varma, että haluat poistaa tuotteen: " +  name + " ostoskorista?";
			break;

			case "4":
				var str = "Är du säkert att du vilja rensa produktet: " +  name + " ur kundvagn?";
			break;

			case "6":
				var str = "Sind Sie sicher Sie möchten entfernen " + name + " vom shoppingcart?";
			break;
		 }
         if( confirm( str ) )
         {
            f.remove_product_id.value = prod_id;
            f.submit();
         }         
      }
   }

   String.prototype.trim = new Function(
			'	var beginIndex = 0;' +
			'	var endIndex = this.length;' +
			'	while(this.charAt(beginIndex) == \' \')' +
			'		beginIndex++;' +
			'	while(this.charAt(endIndex-1) == \' \')' +
			'		endIndex--;' +
			'	return this.slice(beginIndex, endIndex);' );

   var f = null;

   function checkForgotPasswordForm( f, lang_id )
   {
		if( f && f.elements && f.elements[ 'email_address' ] )
		{
			reg = /^([a-zA-Z0-9\-\.\_]{1,})@([0-9a-zA-Z\-\.]{1,})\.([a-z]{2,5})$/;
			if( f.elements[ 'email_address' ].value.trim() == '' || !reg.exec( f.elements[ 'email_address' ].value.trim() ) )
			{
				switch( lang_id )
				{
    				case "1":
						window.alert( 'Check the email format.' );
					break;

					case "2":
						window.alert( 'Sähköpostiosoite on muotoiltu väärin.' );
					break;

					case "4":
						window.alert( 'Kolla email form.' );
					break;

					case "6":
						window.alert( 'Überprüfen Sie das email Format.' );
					break;
				}				
				return false;
			}
			return true;
		}
		return false;
   }
 
   function checkDealerSearch( f, lang_id )
   {
	  var ret = false;
      var errors = Array();

	  if( f )
      {
         var req = Array( "postcode" );         
         
         for ( var i=0; i<req.length; i++ )
         {
			var id = req[ i ];
                                    
            var val = document.getElementById( "form_" + id ).value;         
            var trimmed = val.replace(/^\s+|\s+$/g, '');

            if( trimmed == "" )
            {               
               errors.push( id );
            }

			if( id == "postcode" && trimmed != "" )
            {
				var postcode_ok = false;

				if( trimmed.length > 3 )
				{
					var firsttwo = trimmed.substring( 0,2 );

					// check if first two chars are not integer -->
					if( !parseInt( firsttwo ) )
					{
						// check if - character is declared -->
						if( trimmed.substring( 2,3 ) == "-" )
						{
							var numeric = trimmed.substring( 3, trimmed.length );
							if( parseInt( numeric ) > 0 )
							{
								postcode_ok = true;
							}
						}
						else
						{
							var numeric = trimmed.substring( 2, trimmed.length );
							if( parseInt( numeric ) > 0 )
							{
								postcode_ok = true;
							}	
						}
					}
					else
					{
						var numeric = trimmed.substring( 0, trimmed.length );
						if( parseInt( numeric ) > 0 )
						{
							postcode_ok = true;
						}
					}
				}

				if( !postcode_ok )
				{
					errors.push( "PostcodeNotValid" );  
				}
            }
		 }
	  }
	  if( errors.length == 0 )
      {
         return true;
      }
      else
      {		  
		 switch( lang_id )
		 {
			case "1":
				var errstr = "Check the following info: \n\n";
			break;

			case "2":
				var errstr = "Tarkista seuraavat tiedot: \n\n";
			break;

			case "4":
				var errstr = "Kolla den nästa uppgifter: \n\n";
			break;

			case "6":
				var errstr = "Überprüfen Sie das folgende Info: \n\n";
			break;
		 }

		 for( var j=0; j<errors.length; j++ )
         {
            var errorname = "";
            var error = errors[ j ];

			if ( error == "postcode" )
			{				
				switch( lang_id )
				{
					case "1":
						errorname = "- Zip code is mandatory information.";
					break;

					case "2":
						errorname = "- Postinumero on pakollinen tieto.";
					break;

					case "4":
						errorname = "- Postnummer är obligatoriska uppgifter.";
					break;

					case "6":
						errorname = "- Postleitzahl sind erforderliche Abgaben.";
					break;
				}               
			}
			else if ( error == "PostcodeNotValid" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Check the zip code format.";
					break;

					case "2":						
						errorname = "- Tarkista postinumeron muoto.";
					break;

					case "4":
						errorname = "- Kolla postnummer form.";
					break;

					case "6":
						errorname = "- Überprüfen Sie das postleitzahl Format.";
					break;
				}                
            }
			if( errorname != "" )
			{
				errstr = errstr + errorname + "\n";
			}
		 }		             
	  }
	  alert( errstr );
	  return false;
   }

   function checkOfferRequest( f, lang_id )
   {
      var ret = false;
      var errors = Array();
      if( f )
      {
         var req = Array( "name", "email", "phone", "address", "postcode", "postaddress" );         
         
         for ( var i=0; i<req.length; i++ )
         {
            var id = req[ i ];
                                    
            var val = document.getElementById( "form_" + id ).value;         
            var trimmed = val.replace(/^\s+|\s+$/g, '');

            if( trimmed == "" )
            {               
               errors.push( id );
            } 
            
            if( id == "email" && trimmed != "" )
            {
               if( !echeck( trimmed ) )
               {
                  errors.push( "EmailNotValid" );  
               }
            }

			if( id == "postcode" && trimmed != "" )
            {
				var postcode_ok = false;

				if( trimmed.length > 4 )
				{
					var firsttwo = trimmed.substring( 0,2 );

					// check if first two chars are not integer -->
					if( !parseInt( firsttwo ) )
					{
						// check if - character is declared -->
						if( trimmed.substring( 2,3 ) == "-" )
						{
							var numeric = trimmed.substring( 3, trimmed.length );
							if( parseInt( numeric ) > 0 )
							{
								postcode_ok = true;
							}
						}
						else
						{
							var numeric = trimmed.substring( 2, trimmed.length );
							if( parseInt( numeric ) > 0 )
							{
								postcode_ok = true;
							}	
						}
					}
					else
					{
						var numeric = trimmed.substring( 0, trimmed.length );
						if( parseInt( numeric ) > 0 )
						{
							postcode_ok = true;
						}
					}
				}

				if( !postcode_ok )
				{
					errors.push( "PostcodeNotValid" );  
				}
            }
         }
      }

      if( errors.length == 0 )
      {
         return true;
      }
      else
      {
		 switch( lang_id )
		 {
			case "1":
				var errstr = "Check the following info: \n\n";
			break;

			case "2":
				var errstr = "Tarkista seuraavat tiedot: \n\n";
			break;

			case "4":
				var errstr = "Kolla den nästa uppgifter: \n\n";
			break;

			case "6":
				var errstr = "Überprüfen Sie das folgende Info: \n\n";
			break;
		 }
         
         for( var j=0; j<errors.length; j++ )
         {
            var errorname = "";
            var error = errors[ j ];

            if ( error == "name" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Name is mandatory information.";
					break;

					case "2":
						errorname = "- Nimi on pakollinen tieto.";
					break;

					case "4":
						errorname = "- Namn är obligatoriska uppgifter.";
					break;

					case "6":
						errorname = "- Name sind erforderliche Abgaben.";
					break;
				}                
            }            
            else if ( error == "email" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Email is mandatory information.";
					break;

					case "2":
						errorname = "- Sähköpostiosoite on pakollinen tieto.";
					break;

					case "4":
						errorname = "- Email är obligatoriska uppgifter.";
					break;

					case "6":
						errorname = "- Email sind erforderliche Abgaben.";
					break;
				}                 
            }            
            else if ( error == "phone" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Phonenumber is mandatory information.";
					break;

					case "2":
						errorname = "- Puhelinnumero on pakollinen tieto.";
					break;

					case "4":
						errorname = "- Telefon är obligatoriska uppgifter.";
					break;

					case "6":
						errorname = "- Telefon sind erforderliche Abgaben.";
					break;
				}               
            }
            else if ( error == "address" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Street address is mandatory information.";
					break;

					case "2":
						errorname = "- Lähiosoite on pakollinen tieto.";
					break;

					case "4":
						errorname = "- Adress är obligatoriska uppgifter.";
					break;

					case "6":
						errorname = "- Strasse sind erforderliche Abgaben.";
					break;
				}                
            }
            else if ( error == "postcode" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Zip code is mandatory information.";
					break;

					case "2":
						errorname = "- Postinumero on pakollinen tieto.";
					break;

					case "4":
						errorname = "- Postnummer är obligatoriska uppgifter.";
					break;

					case "6":
						errorname = "- Postleitzahl sind erforderliche Abgaben.";
					break;
				}               
            }            
            else if ( error == "postaddress" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- City is mandatory information.";
					break;

					case "2":
						errorname = "- Postitoimipaikka on pakollinen tieto.";
					break;

					case "4":
						errorname = "- Postadress är obligatoriska uppgifter.";
					break;

					case "6":
						errorname = "- Ort sind erforderliche Abgaben.";
					break;
				}               
            }
            else if ( error == "EmailNotValid" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Check the email format.";
					break;

					case "2":
						errorname = "- Tarkista sähköpostiosoitteen muoto.";
					break;

					case "4":
						errorname = "- Kolla email form.";
					break;

					case "6":
						errorname = "- Überprüfen Sie das email Format.";
					break;
				}                
            } 
			else if ( error == "PostcodeNotValid" )
            {
				switch( lang_id )
				{
					case "1":
						errorname = "- Check the zip code format.";
					break;

					case "2":						
						errorname = "- Tarkista postinumeron muoto.";
					break;

					case "4":
						errorname = "- Kolla postnummer form.";
					break;

					case "6":
						errorname = "- Überprüfen Sie das postleitzahl Format.";
					break;
				}                
            }

            if( errorname != "" )
            {
               errstr = errstr + errorname + "\n";
            }            
         }
         alert( errstr );
         return false;
      } 

      function echeck( str ) 
      {
         var at="@"
         var dot="."
         var lat=str.indexOf( at )
         var lstr=str.length
         var ldot=str.indexOf( dot )
         if (str.indexOf(at)==-1) {
            return false
         }
         if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) {
            return false
         }
         if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) {
             return false
         }
         if (str.indexOf(at,(lat+1))!=-1) {
            return false
         }
         if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) {
            return false
         }
         if (str.indexOf(dot,(lat+2))==-1) {
            return false
         }
         if (str.indexOf(" ")!=-1) {
            return false
         }
         return true					
      }
   }

	function setShowResults( from, to )
	{
		var f = document.getElementById( 'productsearchF' );
		if( f )
		{
			f.show_results_from.value = from;
			f.show_results_to.value = to;
			f.submit();
		}
	}