/* dmp1.js 3.23 Sun Apr 20 2008 22:08 */

function myXMLHttpRequest()
{
   var xmlreq = false;
   if (window.XMLHttpRequest)
   {
      xmlreq = new XMLHttpRequest();
      return xmlreq;
   }

   if (window.ActiveXObject)
   {
      try
      {
         xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
      }  catch (err)
         {
            xmlreq = false;
         }
   }
   return xmlreq;
} // end myXMLHttpRequest

function check_address()
{
	var email = document.getElementById("Email");
	if ( !email.value.match(/^[\d\w]+[\w\.\-]+@([\w\-]+\.)+[a-zA-Z]+$/) ) 
	{
		alert("Please enter a valid email address");
		email.focus();
		email.select();
		return false;
   }
   return true;
}

/* ------------------ */
function diane_check_form()
{
   var item, found;
   var fe = document.forms["dmail"]; /* var fe = document.forms[0]; */
   var prefix = "Please enter ";
   var blank = "--------------";
   var got = 0, agot = 0;
   var must =      new Array( 1, 0, 0, 0, 0, 1, 0, 1, 1, 1 );
   var alt_must =  new Array( 1, 1, 1, 1, 0, 0, 0, 1, 1, 1 );
   var min_len =   new Array( 3, 5, 3, 2, 5, 6, 3, 1, 1, 3 );
   var desc = new Array ( "name",            
                          "street address",  "city",
                          "state",           "zip",
                          "email address",   "subject",
                          "newsletter",      "comment" );

   if (fe == null)
   {
      return false;
   } /* end if */

   /* for (var i = 0; i < 9; i++) */
   for (var i = 0; i < must.length; i++)
   {
      item = fe.elements[i].value;
      found = item.indexOf(blank);
      if ( must[i] != 0 )
      {
         if ( (item != "") && (found == -1) )
         {
            if (item.length >= min_len[i])
            {
               ++got; 
            } /* end if */
         }
         else
         {
            if (i == 0)
            {
               got = -100;
            } /* end if */
         } /* end if */
      } /* end if */

      if ( alt_must[i] != 0 )
      {
         if ( (item != "") && (found == -1) )
         {
            if (item.length >= min_len[i])
            {
               ++agot; 
            } /* end if */
         }
         else
         {
            if (i == 0)
            {
               agot = -100;
            } /* end if */
         } /* end if */
      } /* end if */
   } /* end for */

   if ( (got > 3) || (agot > 5) )
   {
      return true;
   }
   else
   {
      return false;
   } // end if
} // end diane_check_form

/* ------------------ */

function diane_build_form()
{
   var fname = new Array( "ZA",    "ZB",    "ZC",     "ZD",    "ZE",
                          "ZF",    "ZG",    "ZH",     "ZI"  );
   var answer = "";
   var fe = document.forms["dmail"]; /* var fe = document.forms[0]; */
   var i, tmp, one, two, radio;
   for (i = 0; i < 7; i++)
   {
      tmp = fe.elements[fname[i]].value;
      answer += fname[i] + "=" + escape(tmp) + "&";
   }

   answer += "ZH=";
   var radio = fe.elements["ZH"];
   if (radio[0].checked)
      answer += "Yes&";
   else
      answer += "No&";

   tmp = "ZI=" + escape(fe.elements["ZI"].value) + "&";
   answer += tmp;
   answer += "ZZ=SEND";
   return answer;
} // end diane_build_form

function readPoll(p)
{
   var fe = document.forms["poll"];
   var answer = "ZH=";
   var radio = fe.elements["ZH"];
   if (radio[0].checked)
      answer += "Y" + p + "&";
   else
      answer += "N" + p + "&";

   answer += "ZZ=SEND";
   return ( sendPoll(answer) );
} // end readPoll

function sendPoll(msg)
{
   var l = '<', r = '>', s = '/', h = "h4", e = "Error Reading Data";
   var answer, command, elem, req, success = false;
   answer = l + h + r + e + l + s + h + r;
   elem = document.getElementById("presult");
   if (elem == null) return false;
   command = "/cgi-bin/setPoll.cgi"
   req = myXMLHttpRequest();
   if (req != null)
   {
      req.open("POST", command, false);
      req.send(msg);
      if (req.status == 200) 
      {
         answer = req.responseText;
         success = true;
      }
   }

   if (req.status != 204)
   {
      elem.innerHTML = answer;
   }

   return success;
} // end sendPoll

function getPoll(msg)
{
   var l = '<', r = '>', s = '/', b = "br";
   var br = l + b + s + r;
   var top = "Has the city";
   var middle = "done enough for"; 
   var bottom = "3rd District?";
   var answer, command, elem, req; /* success = false; */
   answer = top + br + middle + br + bottom;
   elem = document.getElementById("pquestion");
   if (elem == null)
   {
      return false;
   }
   command = "/cgi-bin/getPoll.cgi?" + msg;
   req = myXMLHttpRequest();
   if (req != null)
   {
      req.open("GET", command, false);
      req.send(msg);
      if (req.status == 200) 
      {
         answer = req.responseText; /* success = true; */
      }
   }

   if (req.status != 204)
   {
      elem.innerHTML = answer;
   }

   return true;
} // end getPoll

function sendMail(msg)
{
   var l = '<', r = '>', s = '/', h = "h1", e = "ERROR SENDING MESSAGE";
   var answer, command, elem, req;
   answer = l + h + r + e + l + s + h + r;
   elem = document.getElementById("special");
   if (elem == null)
   {
      return;
   }
   command = "/cgi-bin/dcontact.cgi"
   req = myXMLHttpRequest();
   if (req != null)
   {
      req.open("POST", command, false);
      req.send(msg);
      if ( (req.status == 200) || (req.status != 204) )
         answer = req.responseText; // does this ever return 204?
   }

   elem.innerHTML = answer;
} // end sendMail

function readMessage()
{
   var ok, your_msg;
   ok = diane_check_form();
   if (ok == true)
   {
      your_msg = diane_build_form();
      sendMail(your_msg);
   }
   else
   {
      alert("I need your name and address, or email, to reply");
   } // end if
   return ok;
}

function getStarted(place)
{
if (top != self) top.location.replace(self.location.href.toLowerCase());
window.defaultStatus = "Vote for Diane Lawless : Third District City Council : Lexington, KY"; 

getPoll(place);
return true;
} 

function sayVote()
{
if (top != self) top.location.replace(self.location.href.toLowerCase());
window.defaultStatus = "Vote for Diane Lawless : Third District City Council : Lexington, KY"; 
return true;
} 





