var xmlHttp = null; 

function get_xmlHttp() {
   var xmlHttp = null;      
   try { // Firefox, Opera 8.0+, Safari
      xmlHttp=new XMLHttpRequest();
      if (xmlHttp.overrideMimeType) {
         xmlHttp.overrideMimeType('text/html');
      }
   }
   catch (e) { // Internet Explorer
      try {
         xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
      catch (e) {
         xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
   }
   return xmlHttp;
}        

function vis_elements(show) {
   var visibility = show ? 'visible' : 'hidden';
   var forms = document.forms;
   if (forms.length!=0) {
      for (var i=0 ; i<forms.length ; i++) {
         var form = document.forms[i];
         for (var j=0 ; j<form.elements.length ; j++) {
            if (form.elements[j].nodeName=='SELECT') {
               form.elements[j].style.visibility = visibility;   
            }
         }
      }
   }
}


function are_you_sure() {
   return confirm(msg_sure);
}

function put_mail(part1,part2) {
   document.write('<a h');
   document.write('ref="');
   document.write('mai');
   document.write('lt');
   document.write('o:');
   document.write(part1);   
   document.write('@');   
   document.write(part2);   
   document.write('">');   
   document.write(part1);   
   document.write('@');   
   document.write(part2);   
   document.write('</a>');
}


function show_pic(url,width,height) {
   width += 30;
   height += 30;
   var new_win = window.open(url,'','top=30,left=50,height='+height+',width='+width+',scrollbars=1,resizable=1');
   if(window.focus) {
      new_win.focus();   
   }
   return false;
}

function show_popup(url,width,height) {
   var new_win = window.open(url,'','top=30,left=50,height='+height+',width='+width+',scrollbars=1,resizable=1');
   if(window.focus) {
      new_win.focus();   
   }
}

function clear_form(form) {
   for (var i=0 ; i<form.elements.length ; i++) {
      var el = form.elements[i];
      switch (el.type) {
         case 'select-one':
            el.selectedIndex = 0;
         break;
         
         case 'checkbox':
         case 'radio':
            el.checked = false;
         break;
         
         case 'text':
         case 'password':
            el.value = '';
         break;
      }
   }
}

function check_form(form,dont_mark) {
   //return true;
   // Set colors 
   var color = check_color;
   var high_color = check_high_color;
   

   var error = false;
   var error_message = msg_fill_required;

   var first = -1;
   var to_color = new Array;
   var to_disable = new Array;   
   
   
   for (var i=0 ; i<form.elements.length ; i++) {
      var el = form.elements[i];
      if (el.type=='submit') {
         to_disable.push(el);      
      }
      else if (   el.getAttribute('required')=='true'   ||   ( el.getAttribute('required')=='visible' && el.style.display!='none' )   ){
         //alert(el.name+' ==> '+el.getAttribute('required'));
         var this_error = false;
         
         switch(el.type) {
            case 'checkbox':
            case 'radio':
               var this_name = el.name;
               var none_checked = true;
               for (var j=0; j<form.elements.length ; j++) {
                  if(form.elements[j].name==this_name && form.elements[j].checked) {
                     none_checked = false;
                  }
               }
               if (none_checked) {
                  this_error = true;
               }
            break;
               
            default:
               if (   el.value==''   ||   ( el.getAttribute('pattern') && !el.value.match(RegExp(el.getAttribute('pattern'),"i")) )   ){
                  this_error = true;
               }
         }
                                         
         var parent_node = el.parentNode;
         if(this_error) {
            error = true;
            if (first == -1) {
               first = i;
            }         
            if (!dont_mark) {
               to_color.push(parent_node);
            }
         }
         else {
            if (!dont_mark) {
               parent_node.style.background = color;         
            }
         }                
      }
   }
   var message_area = document.getElementById('message_area');
   if (error) {
      for (var i=0 ; i<to_color.length ; i++) {
         to_color[i].style.background = high_color;
      }
      if (message_area && !dont_mark) {
         message_area.innerHTML = error_message;
         message_area.style.display = 'block';
      }
      else {
         alert(error_message);
      }
      if (first > -1) {
         form.elements[first].focus();
      }
      return false;
   }
   else {
      for (var i=0 ; i<to_disable.length ; i++) {
         to_disable[i].disabled = true;
         if (to_disable[i].type=='submit') {
            to_disable[i].value = msg_wait;
         } 
      }
      return true;   
   }

}

