  function URLencode(string) {
    string = string.replace(/\r\n/g,"\\n");
    var utftext = "";

    for (var n = 0; n < string.length; n++) {
      var c = string.charCodeAt(n);
      
      if (c < 128) {
        utftext += String.fromCharCode(c);
      }
      else if((c > 127) && (c < 2048)) {
        utftext += String.fromCharCode((c >> 6) | 192);
        utftext += String.fromCharCode((c & 63) | 128);
      }
      else {
        utftext += String.fromCharCode((c >> 12) | 224);
        utftext += String.fromCharCode(((c >> 6) & 63) | 128);
        utftext += String.fromCharCode((c & 63) | 128);
      }
    }
    return escape(utftext).
      replace(/\+/g, "%2B").
      replace(/\"/g,"%22").
      replace(/\\\'/g, "%27").
      replace(/\//g,"%2F");
  }
  
  function sendFormByUrl(Form) {
    var Entries = Form.elements;
    var URL = Form.action;
    if (URL.indexOf("?") == -1) { var sep = "?"; }
    else { var sep = "&"; }
    var c = 0;
    for (var k = 0; k < Entries.length; k++) {
      if (Entries[k].disabled) continue;
      if (Entries[k].type && (Entries[k].type == "checkbox")) {
        if (Entries[k].checked) {
          URL += sep + Entries[k].name + "=on";
          c++;
          sep = "&";
        }
      }
      else if (Entries[k].type && (Entries[k].type == "radio")) {
        if (Entries[k].checked) {
          var v = Entries[k].value;
          var s = URLencode(v);
          URL += sep + Entries[k].name + "=" + s;
          c++;
          sep = "&";
        }
      }
      else if (Entries[k].type && (Entries[k].type != "button") && (Entries[k].type != "submit") && (Entries[k].type != "reset")) {
        var v = Entries[k].value;
        var s = URLencode(v);
        if ( s && (s.length > 0) && (s != "") && (s != '') ) {
          URL += sep + Entries[k].name + "=" + s;
          c++;
          sep = "&";
        }
      }
    }
    window.location = URL;
    return false;
  }
