// **********************************************************************
// Usage: check_sequence( sequence )
//
// This checks the passed sequence to make sure it is not DNA
// The form will be submitted only if this function returns true
//
function check_sequence( sequence )
{
  var i;
  var newline;
  var skipline;
  var percent;
  var seq;
  var clean_sequence = "";
  var bases = "ACGTNX";
  var letter = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  var bases_found = 0;
 
  // Clean sequence of non-letters and remove FASTA headers
  for( i = 0, newline = true, skipline = false; i < sequence.length; ++i )
  {
    // Check for end of line and skip this line if it was a FASTA header
    if( sequence.charAt(i) == "\n" )
    {
      newline = true;
      skipline = false;
      continue;
    }
    else if( skipline == true )
    {
      continue;
    }

    // Check if we should skip remaineder of this line as FASTA header
    if( newline == true && sequence.charAt(i) == ">" )
    {
      skipline = true;
      continue;
    }

    // Copy only uppercase letters to clean_sequence
    seq = sequence.charAt(i).toUpperCase();
    if( letter.indexOf(seq) >= 0 )
    {
      clean_sequence = clean_sequence.concat(seq);
      if( bases.indexOf(seq) >= 0 )
      {
        ++bases_found;
      }
    }

    // Calculate percentage
    percentage = bases_found * 100 / clean_sequence.length;
  }
 
  if( percentage >= 75 )
  {
    return window.confirm( "3D-JIGSAW requires an amino acid sequence.\nYour sequence looks like DNA.\nPlease click OK only if this IS an Amino Acid sequence." );
  }

  return( true );
}


