(function($) {
  $(document).ready(function() {

    // Any input text box with a title attribute will automatically 'hint' it's title
    $('input[type=text][title], textarea[title]').attr('autocomplete', 'off').blur(function() {
      if($(this).val() == '') {
        $(this).addClass('hinting').val($(this).attr('title'));
        $(this).one('focus', function() {
          $(this).removeClass('hinting').val('');
        });
      }
    }).trigger('blur');
    
    // Any link inside a form with class 'submit' will actually be a submit button
    $('form a.submit').click(function() {
      if($(this).is(':not(.disabled)'))
        $(this).closest('form').submit();
      return false;
    });
    
    // Subscribe and Get In Touch forms
    $('form#subscribe, form#intouch').submit(function() {
      var form = $(this);
      form.find('a.submit').addClass('disabled');
      form.find(':input').attr('disabled', 'disabled');
      form.find('.error, .success').hide();
      $.ajax({
        url: form.attr('action'),
        type: "POST",
        data: form.find(':input:not(.hinting)'),
        success: function() {
          form.find('.success').show();
        },
        error: function() {
          form.find('.error').show();
          form.find('a.submit').removeClass('disabled');
          form.find(':input').removeAttr('disabled');
        }
      });
      return false;
    });
    
    // Introduction video
//    if($.flash.hasVersion(9)) {
      $('#introVideo').flash({
        swf: '/swf/intro2.swf',
        width: $('#introVideo').width(),
        height: $('#introVideo').height()
      });
//    }
    
$('#fancy_close').click(function() {
  window.location.href='http://www.springboardhp.com.au';
});


    // ROI Challenge
    $('#buttonChallenge').fancybox({
      hideOnContentClick: false,
      padding: 0,
      frameWidth: 600,
      frameHeight: 440,
      overlayShow: true,
      overlayOpacity: 0.3,
      callbackOnShow: function() {
//alert('home');  
$('#introVideo').remove();

      Cufon.refresh();
        
        // ROI Challenge videos
        if($.flash.hasVersion(9)) {
          $('#fancy_div #calc .flash').bind('calc1', function() {
            $(this).empty().flash({ swf: '/swf/calc1.swf', width: 205, height: 283 });
          }).bind('calc2', function() {
            $(this).empty().flash({ swf: '/swf/calc2.swf', width: 210, height: 290 });
          }).bind('calc3', function() {
            $(this).empty().flash({ swf: '/swf/calc3.swf', width: 208, height: 287 });
          }).bind('calc4', function() {
            $(this).empty().flash({ swf: '/swf/calc4.swf', width: 216, height: 288 });
          }).bind('calc5', function() {
            $(this).empty().flash({ swf: '/swf/calc5.swf', width: 208, height: 287 });
          }).trigger('calc1');
        }
        
        // Employees Slider
        $('#fancy_div .employees-slider .slider-inner').slider({
          min: 5, max: 2500, value: 10, step: 5,
          slide: function(event, ui) {
            $(this).closest('.slider').find('input').val(ui.value);
            $(this).closest('#calc').trigger('calculate');
          }
        });
        
        // Employees Input
        $('#fancy_div .employees-slider input').blur(function() {
          var num = parseInt($(this).val(), 10);
          if(isNaN(num)) num = 1;
          $(this).val(num);
          $(this).closest('#calc').trigger('calculate');
        });

        // Salary Slider
        $('#fancy_div .salary-slider .slider-inner').slider({
          min: 20000, max: 150000, value: 40000, step: 500,
          slide: function(event, ui) {
            $(this).closest('.slider').find('input').val(ui.value);
            $(this).closest('#calc').trigger('calculate');
          }
        });
        
        // Salary Input
        $('#fancy_div .salary-slider input').blur(function() {
          var num = parseInt($(this).val(), 10);
          if(isNaN(num)) num = 20000;
          $(this).val(num);
          $(this).closest('#calc').trigger('calculate');
        });

        // Sick Days Slider
        $('#fancy_div .sick-days-slider .slider-inner').slider({
          min: 0, max: 10, value: 4, step: 0.1,
          slide: function(event, ui) {
            $(this).closest('.slider').find('input').val(ui.value);
            $(this).closest('#calc').trigger('calculate');
          }
        });
        
        // Sick Days Input
        $('#fancy_div .sick-days-slider input').blur(function() {
          var num = parseFloat($(this).val());
          if(isNaN(num)) num = 0;
          $(this).val(num);
          $(this).closest('#calc').trigger('calculate');
        });

        // Calculations
        $('#fancy_div #calc').bind('calculate', function() {
          var employees = $(this).find('.employees-slider input').val();
          var salary = $(this).find('.salary-slider input').val();
          var sick_days = $(this).find('.sick-days-slider input').val();
          var normal_productivity = salary * 2.0;
          var high_health_risk_productivity = normal_productivity * 0.58; // 42% less productive
          var ideal_productivity = normal_productivity * employees;
          var actual_productivity = (normal_productivity * (employees * 0.7)) + (high_health_risk_productivity * (employees * 0.3));
          var net_productivity_loss = ideal_productivity - actual_productivity;
          var workday_salary = (salary / 48.0 ) / 5.0;
          var total_cost_of_absence = workday_salary * sick_days * employees;
          var cost_of_absence_high_health_risk = workday_salary * 8.8;
          var cost_of_absence_good_health = workday_salary * 2.8;
          var cost_of_poor_health = (cost_of_absence_high_health_risk - cost_of_absence_good_health) * (employees * 0.3);
          var total_cost_of_poor_health = (net_productivity_loss + cost_of_poor_health);
          
          var money = {format: '#,###', locale: 'au'};
          $(this).find('.highHealthRiskProductivity').text(high_health_risk_productivity).format(money);
          $(this).find('.normalProductivity').text(normal_productivity).format(money);
          $(this).find('.netProductivityLoss').text(net_productivity_loss).format(money);
          $(this).find('.totalCostOfAbsence').text(total_cost_of_absence).format(money);
          $(this).find('.costOfAbsenceDueToPoorHealth').text(cost_of_poor_health).format(money);
          $(this).find('.totalCostOfPoorHealth').text(total_cost_of_poor_health).format(money);
        }).trigger('calculate');

        // Steps (pages)
        $('#fancy_div .steps').bind('continue', function() {
          var current = $('#fancy_div .steps .step:visible').eq(0);
          var next = current.next('.step');
          current.fadeOut(200, function() {
            next.fadeIn(200);
            if(next.is('.calc2'))
              $('#fancy_div #calc .flash').trigger('calc2');
            else if(next.is('.calc3'))
              $('#fancy_div #calc .flash').trigger('calc3');
            else if(next.is('.calc4'))
              $('#fancy_div #calc .flash').trigger('calc4');
            else if(next.is('.calc5')) {
              $('#fancy_div #calc .flash').trigger('calc5');
              $('#fancy_div #calc #buttonContinue').hide();
              $('#fancy_div #calc #buttonSend').show();
            }
          });
        });
      }
    });
    
    // Continue Button
    $('#buttonContinue').live('click', function() {
      $(this).closest('#calc').find('.steps').trigger('continue');
      return false;
    });
    
    // Send Button
    $('#buttonSend').live('click', function() {
      var empty_pattern = new RegExp(/^\s*$/);
      $('#fancy_div #calc .challengeContact :input').each(function() {
        if(empty_pattern.test($(this).val())) {
          $(this).addClass('invalid');
        } else {
          $(this).removeClass('invalid');
        }
      });
      
      if($('#fancy_div #calc .challengeContact :input.invalid').length == 0) {
        $(this).addClass('disabled');
        $.ajax({
          url: "/get_in_touch.php",
          type: 'POST',
          data: $('#fancy_div #calc .challengeContact :input'),
          success: function() {
            $.fn.fancybox.close();
          }
        });
      }
      return false;
    });
    
    // Get Started Video
    $('#getStarted').fancybox({
      hideOnContentClick: false,
      padding: 0,
      frameWidth: 560,
      frameHeight: 315,
      overlayShow: true,
      overlayOpacity: 0.3,
      callbackOnShow: function() {
$('#introVideo').remove();
//        $('#introVideo').html('');
        $('#fancy_div .v').flash({swf: '/swf/get_started.swf', width: 560, height: 315});
      }
    });
  });
})(jQuery);

