var PricingDiscount = {
  table: null,
  
  init: function() {
    PricingDiscount.table = $('pricing_discounts');
    if (PricingDiscount.table) {
      PricingDiscount.table.hide();
      $('pricing_discounts_link').observe('click', PricingDiscount.onClick);
    }
  },
  
  onClick: function(e) {
    e.stop();
    PricingDiscount.table.toggle();
  }
}

var SmsPricing = {
  table: null,
  
  init: function() {
    SmsPricing.table = $('sms_pricing');
    if (SmsPricing.table) {
      SmsPricing.table.hide();
      $('sms_pricing_link').observe('click', SmsPricing.onClick);
    }
  },
  
  onClick: function(e) {
    e.stop();
    SmsPricing.table.toggle();
  }
}

var LoginForm = {
  init: function() {
    LoginForm.form = $('login_form');
    if (LoginForm.form) {
      LoginForm.form.observe('submit', LoginForm.onSubmit);
    }
  },
  
  onSubmit: function(e) {
    e.stop();
    var subdomain = $F('company');
    subdomain = subdomain.toLowerCase().strip();
    subdomain = subdomain.gsub(/[^A-Za-z0-9-]/, '');
    window.location = 'http://' + subdomain + '.dealerflow.com';
  }
}

var SignupForm = {
  init: function() {
    SignupForm.submit = $('signup_submit');
    SignupForm.terms = $('signup_terms_of_service');
    
    if (SignupForm.terms) {
      SignupForm.observeTermsChange();
      new Form.Element.Observer(SignupForm.terms, 0.5, SignupForm.observeTermsChange)
    }
  },
  
  observeTermsChange: function() {
    var terms = $F(SignupForm.terms);
    
    if (terms == 1) {
      SignupForm.submit.enable();
    } else {
      SignupForm.submit.disable();
    }
  }
}

document.observe('dom:loaded', function() {
  PricingDiscount.init();
  SmsPricing.init();
  jQuery("a.screenshot").fancyZoom({directory: '/images'});
  LoginForm.init();
  SignupForm.init();
  if (window.location.hash.length > 0) {
    jQuery('a[href='+window.location.hash+']').trigger('click');
  }
});