function onAnswerLinkClicked(questionId)
{
  el = 'answer-'+questionId.toString();
  $(el).innerHTML = '\
<div class="answer-block">\
  <p class="answer-author"></p>\
  <div class="answer-text">\
    <form id="form-'+questionId+'" action="/question/answer.php/'+questionId+'" method="post" onsubmit="return onAnswerSave(this,'+questionId+');">\
      <textarea name="answer_text" rows="3" cols="30" wrap></textarea>\
      <input type="submit" value="Save"/>\
      <input type="reset" value="Cancel"/>\
    </form>\
  </div>\
</div>\
';
  el = 'form-'+questionId.toString();
  $(el)["answer_text"].focus();
  return false;
}

function onAnswerSave(form,questionId)
{
  el = 'answer-'+questionId.toString();
  var ajax = new Ajax.Updater(
	      el,
              '/questions/answer.php/'+questionId.toString(),
              {
                 parameters:Form.serialize(form),
                 onComplete: onAnswerSaved
              }
           );
  return false;
}

function onAnswerSaved(req)
{
}


function validateEmail(str) {
  var at="@"
  var dot="."
  var lat=str.indexOf(at)
  var lstr=str.length
  var ldot=str.indexOf(dot)
  if (str.indexOf(at)==-1){
    return false;
  }
  if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
    return false;
  }
  if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
    return false;
  }
  if (str.indexOf(at,(lat+1))!=-1){
    return false;
  }
  if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
    return false;
  }
  if (str.indexOf(dot,(lat+2))==-1){
    return false;
  }
  if (str.indexOf(" ")!=-1){
    return false;
  }
  return true;
}

function validateQuestionForm(form) {
  var e = form.email_text;
  if ((e.value==null) || (e.value=="")) {
    return true;
  }
  if (validateEmail(e.value) == false) {
    alert("That email address doesn't look right.\n\nIf you'd prefer not be notified when your question is answered, just leave the email field blank.");
    e.focus();
    return false;
  }
  return true;
}

