function addErrorBox( element, errorMessage ) {
  
  var errorBox = $( '<div class="errorbox"><div class="errorLeft"></div><div class="errorContent"></div><div class="errorRight"></div></div>' )
  errorBox.find('.errorContent').html( errorMessage );
  
  $('body').append(errorBox);
  
  element.focusin(function(){
    errorBox.fadeOut( 250, function(){ $('body').remove(errorBox); } );
  });
  $(window).resize(function(){
    errorBox.css( {'top':element.offset().top-errorBox.outerHeight()+10, 'left':element.offset().left} )
  });
  
  errorBox.css( {"opacity":0} );
  errorBox.delay(250).animate( {"opacity":1}, 500 );
  
  return errorBox;
  
}

function clearUneditedForms(){
  
  $('input[type="text"]').each(function(){
    
    if ( $(this).data('edited') == "NO" ) {
      $(this).val('');
    };
    
  });
  
}

function defaultInput( inputElement, defaultVal, defaultColor ) {
  
  if (inputElement.val() == ""){
    inputElement.data( 'edited', "NO" );
    
    var resetColor = inputElement.css( 'color' );
    inputElement.css( 'color', defaultColor );
    inputElement.val( defaultVal );
    
    inputElement.focusin(function(e){
      if ( inputElement.val() == defaultVal ) {
        inputElement.css( 'color', resetColor );
        inputElement.val( "" );
      }
    });
    
    inputElement.blur(function(e){
      
      if ( inputElement.val() == "" ) {
        inputElement.val( defaultVal );
        inputElement.css( 'color', defaultColor );
      } else {
        inputElement.data( 'edited', "YES" );
        inputElement.unbind( 'focusin' );
        inputElement.unbind( 'blur' );
      }
    });
  } else {
      inputElement.data( 'edited', "YES" );
  }
       
}

function getTitles ( gender ){
  
  var titles = "";
  
  titles += "<option>Dr.</option><option>Prof.</option>><option>A/Prof.</option>";
  
  if ( gender == "3" ) {
    titles += "<option>Mr.</option>";
  } else {
    titles += "<option>Ms.</option><option>Mrs.</option>";
  }
  
  
  //if ( gender == "2" ) {    
  //  titles += "<option>Sir.</option>";
  //} else {
  //  titles += "<option>Dame</option>";
  //}
  
  return titles;
    
}

function buildDateOfBirthSelector() {
  
  var day = '<select id="dayOB" name="dayOB">';
  for (var i=1; i < 31; i++) {
    var dayString = i.toString();
    if ( dayString.length != 2 ) {
      dayString = '0' + dayString;
    };
    day += '<option>' + dayString + '</option>';
  };
  day += '</select>';  
  
  var month = '<select id="monthOB" name="monthOB">';
  month += '<option>January</option>';
  month += '<option>February</option>';
  month += '<option>March</option>';
  month += '<option>April</option>';
  month += '<option>May</option>';
  month += '<option>June</option>';
  month += '<option>August</option>';
  month += '<option>September</option>';
  month += '<option>October</option>';
  month += '<option>November</option>';
  month += '<option>December</option>';
  month += '</select>';
  
  var year = '<select id="yearOB" name="yearOB">';
  for (var i=0; i < 100; i++) {
    var yearDate = 2000 - i;
    year += '<option>' + yearDate + '</option>';
  };
  year += '</select>';
  
  return day + month + year;
  
}


