      // let's start the jQuery while I wait.
      // step 1: onload - capture the submit event on the form.
      $(function() { // onload...do
        $("#form").corner();
        $("#formContainer").corner();        
        $('#urlForm').submit(function() {
          // now we're going to capture *all* the fields in the
          // form and submit it via ajax.

          // :input is a macro that grabs all input types, select boxes
          // textarea, etc.  Then I'm using the context of the form from
          // the initial '#urlForm' to narrow down our selector
          var inputs = [];
          $(":input", this).each(function() {
            // this.type != 'checkbox' ? inputs.push(this.name + '=' + escape(this.value)) : '';
            this.type != 'checkbox' ? inputs.push(this.name + '=' + this.value) : '';
            this.checked == true ? inputs.push(this.name + '=' + escape(this.value)) : '';
         })

           if(!$('#url').attr('value')) {
             $('#checkResults').attr('innerHTML', '<H3 class="error">Please type in URL to check!</H3>');
             return false;
           } else if($('#url').attr('value').length < 6) {
             $('#checkResults').attr('innerHTML', '<H3 class="error">Too short URL!</H3>');
             return false;
           }

          $('#urlGo').attr({disabled:'true'});
          $('#urlImage').attr({src:'loading_red.gif'});
          // now if I join our inputs using '&' we'll have a query string
          jQuery.ajax({
            data: inputs.join('&'),
            type: "POST",
            url: this.action,
            timeout: 15000,
            error: function() {
              $('#checkResults').attr('innerHTML', '<H3 class="error">Connection error!</H3>' + '<BR>' + $('#checkResults').attr('innerHTML'));
              $('#urlGo').attr({disabled:false});
              $('#urlImage').attr({src:'pixel.gif'});
           },
            success: function(r) {
              var chunks = r.split('|||');
              var string = '';
              if(chunks[0] < 0) {
                  string = '<H3 class="error">Error: ' + chunks[1] + '</H3>';
              } else if(chunks[0] > 0) {
                  var errorsAlts = chunks[1].split(' ');
                  var errorsTexts = chunks[2].split(' ');

                      var totalErrors = 0;
                      string = '';

                      if(errorsAlts[0].length > 0) {
                          totalErrors = totalErrors + errorsAlts.length;
                          string = string + '<P>' + errorsAlts.length + ' unknown ';
                          if(errorsAlts[1]) {
                              string = string + 'words';
                          } else {
                              string = string + 'word';
                          }
                          string = string + ' found <em>in meta description, alt, title tags and attributes</em>:</B></P><OL><LI class="red">' + errorsAlts.join('</LI> <LI>') + '</LI></OL>';
                      }
                      if(errorsTexts[0].length > 0) {
                          totalErrors = totalErrors + errorsTexts.length;
                          string = string + '<P>' + errorsTexts.length + ' unknown ';
                          if(errorsTexts[1]) {
                              string = string + 'words';
                          } else {
                              string = string + 'word';
                          }
                          string = string + ' found <em>in texts</em>:</B></P><OL><LI class="red">' + errorsTexts.join('</LI> <LI>') + '</LI></OL>';
                      }
                      $('#url').attr('value').slice(0,7) != 'http://' ? new_url =  'http://' + $('#url').attr('value') :  new_url =  $('#url').attr('value');
                      string = '<P><B>' + chunks[0] + ' words checked on page<BR><A href="' + new_url + '" target="_blank">' + $('#url').attr('value') + '</A><BR/>' + totalErrors + ' possible errors found.</B></P>' + string;
                      totalErrors == '0' ? string = string + '<P>This page written in perfect English. Congratulations!</P>' : '';
              } else if(chunks[0] = '0') {
                  string = '<H3 class="error">There are no English words on your site. Thus no errors found.</H3>';
              } else {
                  string = '<H3 class="error">Server returned unrecognized answer. Try again in few seconds.</H3>';
              }

              // long results form
              // !$('#checkResults').attr('innerHTML') ? $('#checkResults').attr('innerHTML', string) : $('#checkResults').attr('innerHTML', string + '<BR>' + $('#checkResults').attr('innerHTML'));
              // this is shorter results version
              $('#checkResults').attr('innerHTML', string);
              $('#urlGo').attr({disabled:false});
              $('#urlImage').attr({src:'pixel.gif'});
            }
          }) // checkout http://jquery.com/api for more syntax and options on this method.
          // by default - we'll always return false so it doesn't redirect the user.
          return false;
        })
      })