if (typeof(ADP) == 'undefined') ADP = {};



ADP.FormPlaceholder = $.klass({
	initialize: function(field){
		if (!field) return false;
		
		var original_value = field.val();

		field.focus(function() {
			if (this.value == original_value) this.value = '';
			$(this).addClass('selected');
		});

		field.blur(function() {
			if (this.value == '') this.value = original_value;
			$(this).removeClass('selected');
		});
	}
}); // ADP.FormPlaceholder



ADP.FormSubmitMessage = $.klass({
	initialize: function(form, messageText){
		var $this = this;
		var form = $(form);
		$this.message = form.find('p.submit small');
		$this.submitButton = form.find('p.submit .process');

		$(form).submit(function(event){
			event.preventDefault();
			$this.submitButton
				.attr('src', '/assets/images/submit_disabled.gif')
				.attr('disabled', 'disabled');

			$this.message.html(messageText);
			document.BillingForm.submit();
		});
	}
}); // ADP.FormSubmitMessage


ADP.Slides = $.klass({
	initialize: function(triggers, slides){
		var $this = this;

		$(triggers).click(function(event, trigger){
			event.preventDefault();
			var trigger = $(this);
			var li = trigger.parent('li');

			li.parent('ul').find('.selected').removeClass('selected');
			li.addClass('selected');

			var slidename = trigger.parent('li').attr('id').split('hn-')[1];
			$this.hide(slides.find('.selected'));
			$this.show($('#slide-' + slidename));
		});
	},
	
	show: function(slide){
		slide.fadeIn(400).addClass('selected');
	},
	
	hide: function(slide){
		slide.fadeOut(400).removeClass('selected');
	}
}); // ADP.Slides


ADP.Faq = $.klass({
	initialize: function(div, expandalltrigger){
		var $this = this;
		$this.headings = div.find('h4');
		$this.answers = div.find('.answer');

		div.addClass('initialized');

		$this.headings.click(function(event){
			var trigger = $(this);
			var answer = trigger.next('.answer');
			if (answer.hasClass('selected')) {
				trigger.removeClass('selected');
				answer
					.hide('normal')
					.removeClass('selected');
			} else {
				trigger.addClass('selected');
				answer
					.show('normal')
					.addClass('selected');
			}
		});
		
		expandalltrigger.click(function(event){
			event.preventDefault();
			var trigger = $(this);
			if (trigger.hasClass('collapse')) {
				$this.collapseAll();
				trigger
					.removeClass('collapse')
					.text('+ Expand All Questions');
			} else {
				$this.expandAll();	
				trigger
					.addClass('collapse')
					.text('- Collapse All Questions');
			}
		});
	},
	
	expandAll: function(){
		var $this = this;
		$this.headings.addClass('selected');
		$this.answers.show().addClass('selected');
	},
	
	collapseAll: function(){
		var $this = this;
		$this.headings.removeClass('selected');
		$this.answers.hide().removeClass('selected');		
	}
}); // ADP.Faq


$(document).ready(function(){

	// search
	try
	{
		new ADP.FormPlaceholder($('#search').find('input.text'));
	} catch (e) {}
	
	// newsletter form
	try
	{
		if ($('#newsletter').hasClass('entry')) {
  		new ADP.FormPlaceholder($('#newsletter').find('input.text'));		
		}
	} catch (e) {}
}); // document.ready