// JavaScript Document

function update_logo() 
{
        var forma = document.LayoutDadosGerais
        
        if (forma.path_logo.value!='')        
        {
            var image = 'file:///' + forma.path_logo.value;
            forma.new_logo.src = image;
        }
}

function cancel_logo(pasta,logo) 
{
        var forma = document.LayoutDadosGerais

        if (logo == '')        
            forma.new_logo.src = 'http://www.packholidays.com/photo_rentacar/no_photo.jpg';
        else                
            forma.new_logo.src = 'http://www.packholidays.com/photo_rentacar/'+pasta+'/'+logo;        
        forma.path_logo.outerHTML = '<input type=file name=path_logo class="text_objects" style="width:350px" value="">';
}

function update_new_foto() 
{
        var forma = document.LayoutGrupos
        
        if (forma.path_new_photo.value!='')        
        {
            var image = 'file:///' + forma.path_new_photo.value;
            forma.new_photo.src = image;
        }
}


function cancel_new_foto(path_foto,img_foto,hidden_foto) 
{
        var forma = document.LayoutGrupos
                
        forma.new_photo.src = 'http://www.packholidays.com/photo_rentacar/no_photo.jpg';        
        forma.path_new_photo.outerHTML = '<input type=file name=path_new_photo class="text_objects" style="width:270px" value="">';
}


function update_foto(path_foto,img_foto) 
{       
        var forma = document.LayoutGrupos        
        var image = 'file:///'+path_foto;    
     
        if (path_foto !='')                     
            document.images[img_foto].src=image;
}


function cancel_foto(path_foto,img_foto,hidden_foto) 
{
        var forma = document.LayoutGrupos
                
        if (hidden_foto == '')        
            var image = 'http://www.packholidays.com/photo_rentacar/no_photo.jpg';
        else
            var image = 'http://www.packholidays.com/photo_rentacar/'+forma.pasta.value+'/'+ hidden_foto;
        
        document.images[img_foto].src=image;                  
        document.getElementById(path_foto).outerHTML = '<input type=file name='+ path_foto + ' class="text_objects" style="width:270px" value="">';
}

 
function check_number_field(str) 
{ 
    var flag;
    var pattern;
 
    if (str!='')
    {
    pattern = /^([0-9])+$/; 
    flag = pattern.test(str); 
 
    if (!flag) 
        return false; 
    }
    return true;
 
} 


function valida_dados_gerais()
{
    var erros = '';
    if (LayoutDadosGerais.NomeComercial.value == '')
        erros+='  Empresa\n';

    if (LayoutDadosGerais.NomeNegocio.value == '')
        erros+='  Nome comercial\n';

    if (LayoutDadosGerais.Contribuinte.value == '')
        erros+='  Contribuinte\n';

    if (LayoutDadosGerais.Morada.value == '')
        erros+='  Morada\n';

    if (LayoutDadosGerais.Cidade.value == '')
        erros+='  Cidade\n';

    if (LayoutDadosGerais.CodigoPostal.value == '')
        erros+='  Código Postal\n';

    if (LayoutDadosGerais.Telefone.value == '')
        erros+='  Telefone\n';

    if (LayoutDadosGerais.Pais.value == '')
        erros+='  País\n';

    if (LayoutDadosGerais.RegiaoTuristica.value == 0)
        erros+='  Região Turístíca\n';

    if (LayoutDadosGerais.Fax.value == '')
        erros+='  Fax\n';

    if (LayoutDadosGerais.Email.value == '')
        erros+='  Email\n';

    if (LayoutDadosGerais.TelefoneReserva.value == '')
        erros+='  Telefone de Reserva\n';

    if (LayoutDadosGerais.EmailReserva.value == '')
        erros+='  Email de Reserva\n';

    if (LayoutDadosGerais.NomeContacto.value == '')
        erros+='  Nome do contacto\n';

    if (LayoutDadosGerais.EmailContacto.value == '')
        erros+='  Email do contacto\n';

    if (LayoutDadosGerais.TelefoneContacto.value == '')
        erros+='  Telefone do contacto\n';

    if (LayoutDadosGerais.FaxContacto.value == '')
        erros+='  Fax do contacto\n';
    
    erros+=check_email();

    if (erros!='')
    {
       erros='Por favor, preencha de forma correcta os seguintes campos. Obrigada.\n\n' + erros;
       alert (erros);
       return false;
    }
    return true;
}


function check_email() 
{ 
    var flag; 
    var erros;
    var str;
    var pattern;
    
    erros = '';

    str = LayoutDadosGerais.Email.value;
    if (str!='')
    {
    pattern = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/; 
    flag = pattern.test(str); 
    if (!flag) 
        erros+= '   Email\n'; 
    }

    str = LayoutDadosGerais.EmailReserva.value; 
    if (str!='')
    {
    pattern = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/; 
    flag = pattern.test(str); 
    if (!flag) 
        erros+= '   Email de reserva\n'; 
    }

    str = LayoutDadosGerais.EmailContacto.value; 
    if (str!='')
    {
    pattern = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/; 
    flag = pattern.test(str); 
    if (!flag) 
        erros+= '   Email do contacto\n'; 
    }
    
    if (erros!='')
       erros='\nOs seguintes campos estão errados:\n' + erros;

    return erros; 
} 


function funcao_grupo()
{    
   LayoutGrupos.apagar.value = 0;   

   for (i=0;i<document.LayoutGrupos.elements.length;i++) 
   {            
      if (document.LayoutGrupos.elements[i].type == "select-one")          
      {
         if (document.LayoutGrupos.elements[i].value== -1)
             LayoutGrupos.apagar.value = eval(LayoutGrupos.apagar.value) + 1;   
      }
   } 
}

  
function valida_grupos()
{
    var erros   = '';
    var erros1  = '';
    var retorno = 1;
    
    if (LayoutGrupos.new_check.checked && LayoutGrupos.new_group_type.value == 0)
        erros+='   Categoria\n';
   
    if (LayoutGrupos.new_check.checked && LayoutGrupos.new_group_code.value == '')
        erros+='   Código do grupo\n';

    if (LayoutGrupos.new_check.checked && LayoutGrupos.new_desc_group.value == '')
        erros+='   EN - Desc\n';

    if (LayoutGrupos.new_check.checked && LayoutGrupos.new_desc_long_group.value == '')
        erros+='   EN - Desc Longa\n';

    if (erros!='')
       erros='Por favor, preencha de forma correcta os seguintes campos. Obrigada.\n\n' + erros;       
    else
    {
       if (eval(LayoutGrupos.apagar.value) > 0)
          erros1 = '\nAo apagar um grupo apagará todos os preços e extras asociados. Deseja continuar?\n';
    }
     
    if (erros!='' && erros1=='')
    {       
        alert (erros);
    }
    else
    {   
        if (erros1!='')
        {       
            retorno = confirm(erros+erros1);       
        }

        if (retorno == 1)
            document.LayoutGrupos.submit();
    }
}


function valida_extras()
{
    var erros   = '';
    var erros1  = '';
    var retorno = 1;
    
    if (LayoutExtras.new_check.checked && LayoutExtras.new_cod_extra.value == '')
        erros+='   Código do extra\n';

    if (LayoutExtras.new_check.checked && LayoutExtras.new_desc_extra.value == '')
        erros+='   Descrição\n';

    if (erros!='')
       erros='Por favor, preencha de forma correcta os seguintes campos. Obrigada.\n\n' + erros;       
    else
    {
       if (eval(LayoutExtras.apagar.value) > 0)
          erros1 = '\nAo apagar um extra apagará o valor do mesmo para cada grupo asociado. Deseja continuar?\n';
    }
     
    if (erros!='' && erros1=='')
    {       
        alert (erros);        
    }
    else
    {
        if (erros1!='')
        {       
            retorno = confirm(erros+erros1);       
        }

        if (retorno == 1)
            document.LayoutExtras.submit();
    }    
}


function apagar_extra(del_extra)
{  
    if (document.getElementById(del_extra).checked)
        LayoutExtras.apagar.value = eval(LayoutExtras.apagar.value) + 1;
    else
        LayoutExtras.apagar.value = eval(LayoutExtras.apagar.value) - 1;    
}


function valida_tarifas()
{
    var erros   = '';
    var erros1  = '';
    var retorno = 1;
    
    if (LayoutTarifas.new_check.checked && LayoutTarifas.new_description.value == '')
        erros+='   Descrição\n';

    if (LayoutTarifas.new_check.checked && LayoutTarifas.new_tolerancia.value == '')
        erros+='   Tolerancia\n';

    if (LayoutTarifas.new_check.checked && LayoutTarifas.new_date_from.value == '')
        erros+='   Data desde\n';

    if (LayoutTarifas.new_check.checked && LayoutTarifas.new_date_to.value == '')
        erros+='   Data até\n';

    if (!check_price(LayoutTarifas.new_tolerancia.value))
        erros+='   A tolerancia deve de ser numérica.\n';

    if (erros!='')
       erros='Por favor, preencha de forma correcta os seguintes campos. Obrigada.\n' + erros;       
    else
    {
       if (eval(LayoutTarifas.apagar.value) > 0)
          erros1 = '\nAo apagar uma tarifa apagará os preços dos grupos e extras asociados. Deseja continuar?\n';
    }
     
    if (erros!='' && erros1=='')
    {       
        alert (erros);        
    }

    else
    {
        if (erros1!='')
        {       
            retorno = confirm(erros+erros1);       
        }

        if (retorno == 1)
            document.LayoutTarifas.submit();
    }
}


function apagar_tarifa(del_tarifa)
{  
    if (document.getElementById(del_tarifa).checked)
        LayoutTarifas.apagar.value = eval(LayoutTarifas.apagar.value) + 1;
    else
        LayoutTarifas.apagar.value = eval(LayoutTarifas.apagar.value) - 1;    
}


function valida_tarifa_grupos()
{
    var erros   = '';
    var erros1  = '';
    
    if ((LayoutTarifasGrupos.new_check1.checked || LayoutTarifasGrupos.new_check2.checked || LayoutTarifasGrupos.new_check3.checked || LayoutTarifasGrupos.new_check4.checked || LayoutTarifasGrupos.new_check5.checked || LayoutTarifasGrupos.new_check6.checked || LayoutTarifasGrupos.new_check7.checked || LayoutTarifasGrupos.new_check8.checked || LayoutTarifasGrupos.new_check9.checked || LayoutTarifasGrupos.new_check10.checked) && LayoutTarifasGrupos.new_tarifa.value == 0)
        erros+='   Tarifa\n';

    if (LayoutTarifasGrupos.new_check1.checked && LayoutTarifasGrupos.new_grupo1.value == 0)
        erros+='   Linha 1 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check1.checked && LayoutTarifasGrupos.new_day_from1.value == '')
        erros+='   Linha 1 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check1.checked && LayoutTarifasGrupos.new_day_to1.value == '')
        erros+='   Linha 1 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check1.checked && LayoutTarifasGrupos.new_preco1.value == '')
        erros+='   Linha 1 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from1.value))
        erros1+='Linha 1 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to1.value))
        erros1+='Linha 1 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from1.value) && check_price(LayoutTarifasGrupos.new_day_to1.value) && eval(LayoutTarifasGrupos.new_day_from1.value) > eval(LayoutTarifasGrupos.new_day_to1.value))
        erros1+='Linha 1 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco1.value))
        erros1+='Linha 1 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check2.checked && LayoutTarifasGrupos.new_grupo2.value == 0)
        erros+='   Linha 2 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check2.checked && LayoutTarifasGrupos.new_day_from2.value == '')
        erros+='   Linha 2 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check2.checked && LayoutTarifasGrupos.new_day_to2.value == '')
        erros+='   Linha 2 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check2.checked && LayoutTarifasGrupos.new_preco2.value == '')
        erros+='   Linha 2 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from2.value))
        erros1+='Linha 2 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to2.value))
        erros1+='Linha 2 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from2.value) && check_price(LayoutTarifasGrupos.new_day_to2.value) && eval(LayoutTarifasGrupos.new_day_from2.value) > eval(LayoutTarifasGrupos.new_day_to2.value))
        erros1+='Linha 2 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco2.value))
        erros1+='Linha 2 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check3.checked && LayoutTarifasGrupos.new_grupo3.value == 0)
        erros+='   Linha 3 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check3.checked && LayoutTarifasGrupos.new_day_from3.value == '')
        erros+='   Linha 3 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check3.checked && LayoutTarifasGrupos.new_day_to3.value == '')
        erros+='   Linha 3 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check3.checked && LayoutTarifasGrupos.new_preco3.value == '')
        erros+='   Linha 3 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from3.value))
        erros1+='Linha 3 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to3.value))
        erros1+='Linha 3 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from3.value) && check_price(LayoutTarifasGrupos.new_day_to3.value) && eval(LayoutTarifasGrupos.new_day_from3.value) > eval(LayoutTarifasGrupos.new_day_to3.value))
        erros1+='Linha 3 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco3.value))
        erros1+='Linha 3 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check4.checked && LayoutTarifasGrupos.new_grupo4.value == 0)
        erros+='   Linha 4 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check4.checked && LayoutTarifasGrupos.new_day_from4.value == '')
        erros+='   Linha 4 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check4.checked && LayoutTarifasGrupos.new_day_to4.value == '')
        erros+='   Linha 4 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check4.checked && LayoutTarifasGrupos.new_preco4.value == '')
        erros+='   Linha 4 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from4.value))
        erros1+='Linha 4 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to4.value))
        erros1+='Linha 4 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from4.value) && check_price(LayoutTarifasGrupos.new_day_to4.value) && eval(LayoutTarifasGrupos.new_day_from4.value) > eval(LayoutTarifasGrupos.new_day_to4.value))
        erros1+='Linha 4 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco4.value))
        erros1+='Linha 4 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check5.checked && LayoutTarifasGrupos.new_grupo5.value == 0)
        erros+='   Linha 5 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check5.checked && LayoutTarifasGrupos.new_day_from5.value == '')
        erros+='   Linha 5 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check5.checked && LayoutTarifasGrupos.new_day_to5.value == '')
        erros+='   Linha 5 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check5.checked && LayoutTarifasGrupos.new_preco5.value == '')
        erros+='   Linha 5 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from5.value))
        erros1+='Linha 5 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to5.value))
        erros1+='Linha 5 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from5.value) && check_price(LayoutTarifasGrupos.new_day_to5.value) && eval(LayoutTarifasGrupos.new_day_from5.value) > eval(LayoutTarifasGrupos.new_day_to5.value))
        erros1+='Linha 5 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco5.value))
        erros1+='Linha 5 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check6.checked && LayoutTarifasGrupos.new_grupo6.value == 0)
        erros+='   Linha 6 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check6.checked && LayoutTarifasGrupos.new_day_from6.value == '')
        erros+='   Linha 6 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check6.checked && LayoutTarifasGrupos.new_day_to6.value == '')
        erros+='   Linha 6 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check6.checked && LayoutTarifasGrupos.new_preco6.value == '')
        erros+='   Linha 6 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from6.value))
        erros1+='Linha 6 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to6.value))
        erros1+='Linha 6 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from6.value) && check_price(LayoutTarifasGrupos.new_day_to6.value) && eval(LayoutTarifasGrupos.new_day_from6.value) > eval(LayoutTarifasGrupos.new_day_to6.value))
        erros1+='Linha 6 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco6.value))
        erros1+='Linha 6 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check7.checked && LayoutTarifasGrupos.new_grupo7.value == 0)
        erros+='   Linha 7 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check7.checked && LayoutTarifasGrupos.new_day_from7.value == '')
        erros+='   Linha 7 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check7.checked && LayoutTarifasGrupos.new_day_to7.value == '')
        erros+='   Linha 7 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check7.checked && LayoutTarifasGrupos.new_preco7.value == '')
        erros+='   Linha 7 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from7.value))
        erros1+='Linha 7 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to7.value))
        erros1+='Linha 7 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from7.value) && check_price(LayoutTarifasGrupos.new_day_to7.value) && eval(LayoutTarifasGrupos.new_day_from7.value) > eval(LayoutTarifasGrupos.new_day_to7.value))
        erros1+='Linha 7 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco7.value))
        erros1+='Linha 7 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check8.checked && LayoutTarifasGrupos.new_grupo8.value == 0)
        erros+='   Linha 8 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check8.checked && LayoutTarifasGrupos.new_day_from8.value == '')
        erros+='   Linha 8 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check8.checked && LayoutTarifasGrupos.new_day_to8.value == '')
        erros+='   Linha 8 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check8.checked && LayoutTarifasGrupos.new_preco8.value == '')
        erros+='   Linha 8 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from8.value))
        erros1+='Linha 8 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to8.value))
        erros1+='Linha 8 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from8.value) && check_price(LayoutTarifasGrupos.new_day_to8.value) && eval(LayoutTarifasGrupos.new_day_from8.value) > eval(LayoutTarifasGrupos.new_day_to8.value))
        erros1+='Linha 8 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco8.value))
        erros1+='Linha 8 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check9.checked && LayoutTarifasGrupos.new_grupo9.value == 0)
        erros+='   Linha 9 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check9.checked && LayoutTarifasGrupos.new_day_from9.value == '')
        erros+='   Linha 9 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check9.checked && LayoutTarifasGrupos.new_day_to9.value == '')
        erros+='   Linha 9 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check9.checked && LayoutTarifasGrupos.new_preco9.value == '')
        erros+='   Linha 9 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from9.value))
        erros1+='Linha 9 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to9.value))
        erros1+='Linha 9 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from9.value) && check_price(LayoutTarifasGrupos.new_day_to9.value) && eval(LayoutTarifasGrupos.new_day_from9.value) > eval(LayoutTarifasGrupos.new_day_to9.value))
        erros1+='Linha 9 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco9.value))
        erros1+='Linha 9 - O preço deve ser numérico\n';


    if (LayoutTarifasGrupos.new_check10.checked && LayoutTarifasGrupos.new_grupo10.value == 0)
        erros+='   Linha 10 - Grupo\n';
   
    if (LayoutTarifasGrupos.new_check10.checked && LayoutTarifasGrupos.new_day_from10.value == '')
        erros+='   Linha 10 - Valor inicial do número de dias\n';

    if (LayoutTarifasGrupos.new_check10.checked && LayoutTarifasGrupos.new_day_to10.value == '')
        erros+='   Linha 10 - Valor final do número de dias\n';

    if (LayoutTarifasGrupos.new_check10.checked && LayoutTarifasGrupos.new_preco10.value == '')
        erros+='   Linha 10 - Preço\n';

    if (!check_price(LayoutTarifasGrupos.new_day_from10.value))
        erros1+='Linha 10 - O valor inicial do número de dias deve ser numérico\n';

    if (!check_price(LayoutTarifasGrupos.new_day_to10.value))
        erros1+='Linha 10 - O valor final do número de dias deve ser numérico\n';

    if (check_price(LayoutTarifasGrupos.new_day_from10.value) && check_price(LayoutTarifasGrupos.new_day_to10.value) && eval(LayoutTarifasGrupos.new_day_from10.value) > eval(LayoutTarifasGrupos.new_day_to10.value))
        erros1+='Linha 10 - O valor inicial do número de dias deve ser menor ou igual ao valor final\n';

    if (!check_price(LayoutTarifasGrupos.new_preco10.value))
        erros1+='Linha 10 - O preço deve ser numérico\n';
    if (erros!='')
       erros='Por favor, preencha os seguintes campos. Obrigada.\n' + erros;

    if (erros1!='')
       erros1='\n' + erros1;    
       
    erros = erros + erros1;
     
    if (erros!='')
        alert (erros);       
    else
        document.LayoutTarifasGrupos.submit();
}


function valida_grupos_extras()
{
    var erros  = '';
    var erros1 = '';
    
    if (LayoutGruposExtras.new_check1.checked && LayoutGruposExtras.new_tarifa1.value == 0)
        erros+='   Linha 1 - Tarifa\n';

    if (LayoutGruposExtras.new_check1.checked && LayoutGruposExtras.new_grupo1.value == 0)
        erros+='   Linha 1 - Grupo\n';
   
    if (LayoutGruposExtras.new_check1.checked && LayoutGruposExtras.new_extra1.value == 0)
        erros+='   Linha 1 - Extra\n';

    if (LayoutGruposExtras.new_check1.checked && LayoutGruposExtras.new_preco1.value == '')
        erros+='   Linha 1 - Preço\n';

    if (!check_price(LayoutGruposExtras.new_preco1.value))
        erros1+='Linha 1 - O preço deve de ser numérico\n';


    if (LayoutGruposExtras.new_check2.checked && LayoutGruposExtras.new_tarifa2.value == 0)
        erros+='   Linha 2 - Tarifa\n';

    if (LayoutGruposExtras.new_check2.checked && LayoutGruposExtras.new_grupo2.value == 0)
        erros+='   Linha 2 - Grupo\n';
   
    if (LayoutGruposExtras.new_check2.checked && LayoutGruposExtras.new_extra2.value == 0)
        erros+='   Linha 2 - Extra\n';

    if (LayoutGruposExtras.new_check2.checked && LayoutGruposExtras.new_preco2.value == '')
        erros+='   Linha 2 - Preço\n';

    if (!check_price(LayoutGruposExtras.new_preco2.value))
        erros1+='Linha 2 - O preço deve de ser numérico\n';


    if (LayoutGruposExtras.new_check3.checked && LayoutGruposExtras.new_tarifa3.value == 0)
        erros+='   Linha 3 - Tarifa\n';

    if (LayoutGruposExtras.new_check3.checked && LayoutGruposExtras.new_grupo3.value == 0)
        erros+='   Linha 3 - Grupo\n';
   
    if (LayoutGruposExtras.new_check3.checked && LayoutGruposExtras.new_extra3.value == 0)
        erros+='   Linha 3 - Extra\n';

    if (LayoutGruposExtras.new_check3.checked && LayoutGruposExtras.new_preco3.value == '')
        erros+='   Linha 3 - Preço\n';

    if (!check_price(LayoutGruposExtras.new_preco3.value))
        erros1+='Linha 3 - O preço deve de ser numérico\n';


    if (LayoutGruposExtras.new_check4.checked && LayoutGruposExtras.new_tarifa4.value == 0)
        erros+='   Linha 4 - Tarifa\n';

    if (LayoutGruposExtras.new_check4.checked && LayoutGruposExtras.new_grupo4.value == 0)
        erros+='   Linha 4 - Grupo\n';
   
    if (LayoutGruposExtras.new_check4.checked && LayoutGruposExtras.new_extra4.value == 0)
        erros+='   Linha 4 - Extra\n';

    if (LayoutGruposExtras.new_check4.checked && LayoutGruposExtras.new_preco4.value == '')
        erros+='   Linha 4 - Preço\n';

    if (!check_price(LayoutGruposExtras.new_preco4.value))
        erros1+='Linha 4 - O preço deve de ser numérico\n';


    if (LayoutGruposExtras.new_check5.checked && LayoutGruposExtras.new_tarifa5.value == 0)
        erros+='   Linha 5 - Tarifa\n';

    if (LayoutGruposExtras.new_check5.checked && LayoutGruposExtras.new_grupo5.value == 0)
        erros+='   Linha 5 - Grupo\n';
   
    if (LayoutGruposExtras.new_check5.checked && LayoutGruposExtras.new_extra5.value == 0)
        erros+='   Linha 5 - Extra\n';

    if (LayoutGruposExtras.new_check5.checked && LayoutGruposExtras.new_preco5.value == '')
        erros+='   Linha 5 - Preço\n';

    if (!check_price(LayoutGruposExtras.new_preco5.value))
        erros1+='Linha 5 - O preço deve de ser numérico\n';


    if (LayoutGruposExtras.new_check6.checked && LayoutGruposExtras.new_tarifa6.value == 0)
        erros+='   Linha 6 - Tarifa\n';

    if (LayoutGruposExtras.new_check6.checked && LayoutGruposExtras.new_grupo6.value == 0)
        erros+='   Linha 6 - Grupo\n';
   
    if (LayoutGruposExtras.new_check6.checked && LayoutGruposExtras.new_extra6.value == 0)
        erros+='   Linha 6 - Extra\n';

    if (LayoutGruposExtras.new_check6.checked && LayoutGruposExtras.new_preco6.value == '')
        erros+='   Linha 6 - Preço\n';

    if (!check_price(LayoutGruposExtras.new_preco6.value))
        erros1+='Linha 6 - O preço deve de ser numérico\n';

    if (erros!='')
       erros='Por favor, preencha os seguintes campos. Obrigada.\n' + erros;

    if (erros1!='')
       erros1='\n' + erros1;    
       
    erros = erros + erros1;
     
    if (erros!='')
        alert (erros);
    else
        document.LayoutGruposExtras.submit();
}


function valida_dispon()
{
    var erros  = '';

    if (LayoutStopSales.new_check1.checked && LayoutStopSales.new_group1.value == 0)
        erros+='   Linha 1 - Grupo\n';
   
    if (LayoutStopSales.new_check1.checked && LayoutStopSales.new_date_from1.value == '')
        erros+='   Linha 1 - Data Desde\n';

    if (LayoutStopSales.new_check1.checked && LayoutStopSales.new_date_to1.value == '')
        erros+='   Linha 1 - Data Até\n';


    if (LayoutStopSales.new_check2.checked && LayoutStopSales.new_group2.value == 0)
        erros+='   Linha 2 - Grupo\n';
   
    if (LayoutStopSales.new_check2.checked && LayoutStopSales.new_date_from2.value == '')
        erros+='   Linha 2 - Data Desde\n';

    if (LayoutStopSales.new_check2.checked && LayoutStopSales.new_date_to2.value == '')
        erros+='   Linha 2 - Data Até\n';


    if (LayoutStopSales.new_check3.checked && LayoutStopSales.new_group3.value == 0)
        erros+='   Linha 3 - Grupo\n';
   
    if (LayoutStopSales.new_check3.checked && LayoutStopSales.new_date_from3.value == '')
        erros+='   Linha 3 - Data Desde\n';

    if (LayoutStopSales.new_check3.checked && LayoutStopSales.new_date_to3.value == '')
        erros+='   Linha 3 - Data Até\n';


    if (LayoutStopSales.new_check4.checked && LayoutStopSales.new_group4.value == 0)
        erros+='   Linha 4 - Grupo\n';
   
    if (LayoutStopSales.new_check4.checked && LayoutStopSales.new_date_from4.value == '')
        erros+='   Linha 4 - Data Desde\n';

    if (LayoutStopSales.new_check4.checked && LayoutStopSales.new_date_to4.value == '')
        erros+='   Linha 4 - Data Até\n';


    if (LayoutStopSales.new_check5.checked && LayoutStopSales.new_group5.value == 0)
        erros+='   Linha 5 - Grupo\n';
   
    if (LayoutStopSales.new_check5.checked && LayoutStopSales.new_date_from5.value == '')
        erros+='   Linha 5 - Data Desde\n';

    if (LayoutStopSales.new_check5.checked && LayoutStopSales.new_date_to5.value == '')
        erros+='   Linha 5 - Data Até\n';


    if (LayoutStopSales.new_check6.checked && LayoutStopSales.new_group6.value == 0)
        erros+='   Linha 6 - Grupo\n';
   
    if (LayoutStopSales.new_check6.checked && LayoutStopSales.new_date_from6.value == '')
        erros+='   Linha 6 - Data Desde\n';

    if (LayoutStopSales.new_check6.checked && LayoutStopSales.new_date_to6.value == '')
        erros+='   Linha 6 - Data Até\n';


    if (LayoutStopSales.new_check7.checked && LayoutStopSales.new_group7.value == 0)
        erros+='   Linha 7 - Grupo\n';
   
    if (LayoutStopSales.new_check7.checked && LayoutStopSales.new_date_from7.value == '')
        erros+='   Linha 7 - Data Desde\n';

    if (LayoutStopSales.new_check7.checked && LayoutStopSales.new_date_to7.value == '')
        erros+='   Linha 7 - Data Até\n';


    if (LayoutStopSales.new_check8.checked && LayoutStopSales.new_group8.value == 0)
        erros+='   Linha 8 - Grupo\n';
   
    if (LayoutStopSales.new_check8.checked && LayoutStopSales.new_date_from8.value == '')
        erros+='   Linha 8 - Data Desde\n';

    if (LayoutStopSales.new_check8.checked && LayoutStopSales.new_date_to8.value == '')
        erros+='   Linha 8 - Data Até\n';


    if (LayoutStopSales.new_check9.checked && LayoutStopSales.new_group9.value == 0)
        erros+='   Linha 9 - Grupo\n';
   
    if (LayoutStopSales.new_check9.checked && LayoutStopSales.new_date_from9.value == '')
        erros+='   Linha 9 - Data Desde\n';

    if (LayoutStopSales.new_check9.checked && LayoutStopSales.new_date_to9.value == '')
        erros+='   Linha 9 - Data Até\n';


    if (LayoutStopSales.new_check10.checked && LayoutStopSales.new_group10.value == 0)
        erros+='   Linha 10 - Grupo\n';
   
    if (LayoutStopSales.new_check10.checked && LayoutStopSales.new_date_from10.value == '')
        erros+='   Linha 10 - Data Desde\n';

    if (LayoutStopSales.new_check10.checked && LayoutStopSales.new_date_to10.value == '')
        erros+='   Linha 10 - Data Até\n';


    if (erros!='')
       erros='Por favor, preencha de forma correcta os seguintes campos. Obrigada.\n\n' + erros;
     
    if (erros!='')
        alert (erros);
    else
        document.LayoutStopSales.submit();
}


function check_price(str) 
{ 
    var flag;
    var pattern;
 
    if (str!='')
    {
    pattern = /^([0-9.])+$/; 
    flag = pattern.test(str); 
 
    if (!flag) 
        return false; 
    }
    return true;
 
} 



