$(document).ready(function() {
  $('#contactForm').submit( function() {
    var params = {
      name: $('#name').val(),
      email: $('#email').val()
    };

    if(validate(params)) {
      $('body').css({ cursor: 'wait' });
      $.ajax({ url: this.action,
               type: 'POST',
               data: params,
               success: submit_return,
               dataType: 'json' });
    }
    return(false);
  });

  $('input:text').focus(function() { $(this).toggleClass('focus') })
                 .blur(function() { $(this).toggleClass('focus') });
  
  $('#activate_wc').submit( function() {
    $('#activate_wc_err').hide();
    var params = {
      _output: 'json',
      country: 'TW',
      rep_id: $('#rep_id').val()
    };

    $.ajax({ url: this.action,
             type: 'POST',
             data: params,
             success: activate_wc_return,
             dataType: 'json' });
    return(false);
  });
  
});

function validate(params) {
  $('span.required, span.invalid').css({ display: 'none' });
  var valid = true;
  $.each(['name', 'email'], function(i, n) {
    if(!params[n]) {
      $('#' + n + '_content span.required').css({ display: 'inline' });
      $('#' + n).addClass('error').removeClass('good');
      valid = false;
    }
    else {
      $('#' + n).addClass('good').removeClass('error');
    }

  });

  if(valid) {
    var rx = /^[\w\.-]+@[\w\.-]+\.\w+$/i;
    if(!rx.test(params['email'])) {
      $('#email_content span.invalid').css({ display: 'inline' });
      $('#email').addClass('error').removeClass('good');
      valid = false;
    }
    else {
      $('#email').addClass('good').removeClass('error');
    }
  }
  
  return(valid);
}

function submit_return(json) {
  if(json.success == 1) {
    alert("感謝您對美安香港公司網路中心的興趣");
    location.href = '/';
  }
  else {
    alert("有一個錯誤提交表格。請再嘗試稍後");
  }
}

function activate_wc_return(json) {
  if(json.errors) {
    $.each(json.errors, function(i, n) {
      if(n.field == 'rep_id') {
        $('#activate_wc_err').text(n.message).show();
      }
    });
    if(json.link) {
      var $link = $('<span>' + json.link.string + '</span>').click(function() { location.href = json.link.href }).css({ cursor: 'pointer', padding: '0 0 0 10px' });
      $('#activate_wc_err').append($link);
    }
  }
  else {
    var uri = json.success_uri.replace('http://www', 'http://w');
    var form = jQuery('#action_form').attr({ action: uri });
    jQuery.each(json.params, function(key, val) {
      form.append('<input type="hidden" name="' + key + '" value="' + val + '"/>');
    });
    form.submit();
  }
}

