function field_empty(str) {
for (var i = 0; i < str.length; i++)
     if (" " != str.charAt(i))
  return false;
     return true;
};

function checkForm(f) {
  var errMSG = "";
  for (var i = 0; i<f.elements.length; i++)
    if ( f.elements[i].getAttribute("required") )
	if (field_empty(f.elements[i].value)) // пустой
	    errMSG += " " + f.elements[i].title + "\n";
	if ("" != errMSG) {
	    alert("Не заполнены обязательные поля:\n" + errMSG);
	    return false;
	}
  return true;
};

function sendComment(f){
  if(!checkForm(f)) return false;
  var elems = Form.serialize(f);
  $('queryResult').innerHTML = 'Отправка данных...'; $('fComment').disable();
  var Req = new Ajax.Request( '/addComment', { method: 'post', parameters: elems, onComplete: afterSend} );
  return false; 
};

function afterSend(R){
 $('fComment').enable();
 try{
   var result = R.responseText.evalJSON();
   switch(result.code){
     case 0:
         $('queryResult').innerHTML = result.value;
         break;
     case 1:
         $('queryResult').innerHTML = result.value;
         Form.reset('fComment');
         break;
     case 2:
         Form.reset('fComment');
         $('queryResult').innerHTML = result.value;
         var reqText = '__ac_name='+result.user+'&__ac_password='+result.pwd;
         var Req = new Ajax.Request( '/memberme', { method: 'post', parameters: reqText, onComplete: shrinkForm} );
         break;
     case 3:
         $('queryResult').innerHTML = result.value;
         break;
     default:
       $('queryResult').innerHTML = 'Ошибка передачи данных';
   }
 }
 catch(e){ $('queryResult').innerHTML = 'Ошибка передачи данных';}
};

function shrinkForm(R){
 try{
   var result = R.responseText.evalJSON();
   if( result.code == 1) $$('#fComment dd[class=reg_data]').collect(function(e){e.remove()})}
 catch(e){}
};