/* step 1, show steps 2-6 when selection made */

function hostdom(){
	document.getElementById('s1host').className = "s1selected";
	document.getElementById('s1reg').className = "s1button";
	$('domonlyfield').innerHTML = '<input type="hidden" name="domonly" id="domonly" value="0" />';
	$('configuretext').innerHTML = 'I already own a domain, but I want to <em>host it</em> with you and transfer the <em>registration</em> for free!';
	$('domaintext').innerHTML = 'Pick First Domain to Host:';

	/* show proper step numbering */ 
	document.getElementById('popout1').style.backgroundPosition = "0px 0px"
	document.getElementById('popout5').style.backgroundPosition = "0px 0px"
	document.getElementById('popout6').style.backgroundPosition = "0px 0px"
	document.getElementById('popout7').style.backgroundPosition = "0px 0px"


 /* if this is the first time it's clicked, let's show the prepay options for hosting before showing it all */
	if (document.getElementById('s1expand').style.display == "none"){
		document.getElementById('prepayexpand').style.display = "block";
		document.getElementById('vpsexpand').style.display = "block";
		document.getElementById('addonsexpand').style.display = "block";
		Effect.toggle('s1expand', 'appear',{afterFinish:function(){window.location="#step2";} });
	}

 /* if switching from register only to host, change states of elements */
	if (document.getElementById('prepayexpand').style.display == "none") {

		new Effect.toggle('s4transfer', 'appear');
		new Effect.toggle('s4sub_domain', 'appear');
		new Effect.toggle('s4username', 'appear');

		new Effect.BlindDown('prepayexpand');
		new Effect.BlindDown('vpsexpand');
		new Effect.BlindDown('addonsexpand');

/* if google apps is ever allowed on domreg, this looks better than one big show-all:
		new Effect.toggle('s3ip', 'appear');
		new Effect.toggle('s3callbacks', 'appear');
		new Effect.toggle('s3vpn', 'appear');
		new Effect.toggle('s3ssl', 'appear');
		new Effect.toggle('s3gmail', 'appear');
*/
	}

}

function regdom(){

	document.getElementById('s1reg').className = "s1selected";
	document.getElementById('s1host').className = "s1button";
	$('domonlyfield').innerHTML = '<input type="hidden" name="domonly" id="domonly" value="1" />';
	$('configuretext').innerHTML = 'I already own a domain, but I want to transfer the registration to DreamHost.';
	$('domaintext').innerHTML = 'Domain To Register/Transfer:';

	/* show proper step numbering */ 
	document.getElementById('popout1').style.backgroundPosition = "0px -41px"
	document.getElementById('popout5').style.backgroundPosition = "0px -41px"
	document.getElementById('popout6').style.backgroundPosition = "0px -41px"
	document.getElementById('popout7').style.backgroundPosition = "0px -41px"

 /* if this is the first time it's clicked, let's set states of things before showing it all */
	if (document.getElementById('s1expand').style.display == "none"){
		document.getElementById('s4transfer').style.display = "none";
		document.getElementById('s4sub_domain').style.display = "none";
		document.getElementById('s4username').style.display = "none";
		Effect.toggle('s1expand', 'appear',{afterFinish:function(){window.location="#step2";} });
	}
	
 /* if switching from hostonly to register, change states of elements */
	if ((document.getElementById('prepayexpand').style.display == "block") || (document.getElementById('prepayexpand').style.display == "")) {
		new Effect.BlindUp('prepayexpand');
		new Effect.BlindUp('vpsexpand');
		new Effect.BlindUp('addonsexpand');

		/* let's save these values when toggling back and forth, so comment out this clearing stuff...

		var or = document.getElementsByName('plan');
		for (var i = 0; i < or.length; i++) {
			or[i].checked = false;
		};

		if (document.getElementById('ip').checked){checktoggler('s3','ip',false);}
		if (document.getElementById('callbacks').checked){checktoggler('s3','callbacks',false);}
		if (document.getElementById('vpn').checked){checktoggler('s3','vpn',false);}
		if (document.getElementById('ssl').checked){checktoggler('s3','ssl',false);}
		if (document.getElementById('gmail').checked){checktoggler('s3','gmail',false);}
		document.getElementById('machine_user').value = "";

		*/
		
		if (document.getElementById('transfer').checked){radiotoggler('s4','register',false);}
		new Effect.toggle('s4transfer', 'appear');
		if (document.getElementById('sub_domain').checked){radiotoggler('s4','register',false);}
		new Effect.toggle('s4sub_domain', 'appear');
		new Effect.toggle('s4username', 'appear');
		
		save20();

	}

}

/* click the big save20 image */
function save20button(){
		if (!document.getElementById('peon').checked){checktoggler('vps','peon',false);}
		if (!document.getElementById('mysql').checked){checktoggler('vps','mysql',false);}
		document.getElementById('save20').style.cursor='default';
		save20();	
}

function save20(){

/* if both vpses selected, grant and show 20% discount */

	if ( document.getElementById('peon').checked && document.getElementById('mysql').checked )
		{
			document.getElementById('save20').style.backgroundPosition = "0px -66px"
			document.getElementById('save20').style.cursor='default';
			$('save20').innerHTML = 'By getting both, you\'ll save $' + formatCurrency(peondiscount+mysqldiscount) + ' <em>every month</em>!';
			$('peonprice').innerHTML = '<strike>$' + peonprice + '/month</strike> $' + formatCurrency(peondiscounted) + '/month';
			$('mysqlprice').innerHTML = '<strike>$' + mysqlprice + '/month</strike> $' + formatCurrency(mysqldiscounted) + '/month';
			
		}
/* if both are not selected, un-grant and don't show 20% discount*/
	else if (!document.getElementById('peon').checked || !document.getElementById('mysql').checked)
		{
			document.getElementById('save20').style.backgroundPosition = "0px 0px"
			document.getElementById('save20').style.cursor='pointer';
			$('save20').innerHTML = '';
			$('peonprice').innerHTML = '$' + peonprice + '/month';
			$('mysqlprice').innerHTML = '$' + mysqlprice + '/month';
		}


};
	

/* step 3, fade divs in and out */
function checktoggler(step,id,ischeck){
	var checkstate = document.getElementById(id).checked;
	var container = step+id;
	
	if (ischeck == true){
		if (checkstate == true){
			document.getElementById(container).style.border = "1px solid #d7ecf4";
			new Effect.Highlight(container, { startcolor: '#ffff99', endcolor: '#f9f8dd', restorecolor: '#f9f8dd'});
		}
		else{
			new Effect.Highlight(container, { startcolor: '#f9f8dd', endcolor: '#ffffff', restorecolor: '#ffffff'});
			document.getElementById(container).style.border = "1px solid #ffffff";
		}
	}

	else{
		if (checkstate == true){
			document.getElementById(id).checked = false;
			new Effect.Highlight(container, { startcolor: '#f9f8dd', endcolor: '#ffffff', restorecolor: '#ffffff'});
			document.getElementById(container).style.border = "1px solid #ffffff";
			
		}
		else{
			document.getElementById(id).checked = true;
			document.getElementById(container).style.border = "1px solid #d7ecf4";
			new Effect.Highlight(container, { startcolor: '#ffff99', endcolor: '#f9f8dd', restorecolor: '#f9f8dd'});
		}
			
	}

}

/* step 3, enforce rules for clicking the IP box */
function rulesip(){
	if (!document.getElementById('ip').checked && document.getElementById('ssl').checked){
			checktoggler('s3','ssl',false);
	}
}

/* step 3, enforce rules for clicking the SSL box */
function rulesssl(){
	if (document.getElementById('ssl').checked && !document.getElementById('ip').checked){
			checktoggler('s3','ip',false);
	}
}


/* step4, fade divs in and out */
var s4previous;

function radiotoggler(step,id,ischeck){
	var container = step+id;

	if (id != s4previous){
		document.getElementById(id).checked = true;
		document.getElementById(container).style.border = "1px solid #d7ecf4";
		new Effect.Highlight(container, { startcolor: '#ffff99', endcolor: '#f9f8dd', restorecolor: '#f9f8dd'});
		
		if (container=='s4reg_transfer'){
			document.getElementById('authcodeexpand').style.display = "block";
		}

		if (s4previous=='register'){
					new Effect.Highlight('s4register', { startcolor: '#f9f8dd', endcolor: '#ffffff', restorecolor: '#ffffff'});
					document.getElementById('s4register').style.border = "1px solid #ffffff";
		}

		if (s4previous=='transfer'){
					new Effect.Highlight('s4transfer', { startcolor: '#f9f8dd', endcolor: '#ffffff', restorecolor: '#ffffff'});
					document.getElementById('s4transfer').style.border = "1px solid #ffffff";
		}

		if (s4previous=='reg_transfer'){
					new Effect.Highlight('s4reg_transfer', { startcolor: '#f9f8dd', endcolor: '#ffffff', restorecolor: '#ffffff'});
					document.getElementById('s4reg_transfer').style.border = "1px solid #ffffff";
					document.getElementById('authcodeexpand').style.display = "none";
		}

		if (s4previous=='sub_domain'){
					new Effect.Highlight('s4sub_domain', { startcolor: '#f9f8dd', endcolor: '#ffffff', restorecolor: '#ffffff'});
					document.getElementById('s4sub_domain').style.border = "1px solid #ffffff";
		}
		s4previous = id;

	}
	
	if (id == 'sub_domain'){
		document.getElementById('fqdn').value = "mycoolsubdomain.dreamhosters.com";
	} else {
		document.getElementById('fqdn').value = mydomain;
	}


}

/* once the page has finished loading, check states of checks and radios.  colorize where needed */

function pageloaded(){

	if (document.getElementById('peon').checked == true){ checktoggler('vps','peon',true); }
	if (document.getElementById('mysql').checked == true){ checktoggler('vps','mysql',true); }

	if (document.getElementById('ip').checked == true){ checktoggler('s3','ip',true); }
	if (document.getElementById('callbacks').checked == true){ checktoggler('s3','callbacks',true); }
	if (document.getElementById('vpn').checked == true){ checktoggler('s3','vpn',true); }
	if (document.getElementById('ssl').checked == true){ checktoggler('s3','ssl',true); }
	if (document.getElementById('gmail').checked == true){ checktoggler('s3','gmail',true); }

	if (document.getElementById('register').checked == true){ radiotoggler('s4','register',true); }
	if (document.getElementById('transfer').checked == true){ radiotoggler('s4','transfer',true); }
	if (document.getElementById('reg_transfer').checked == true){ radiotoggler('s4','reg_transfer',true); }
	if (document.getElementById('sub_domain').checked == true){ radiotoggler('s4','sub_domain',true); }

	save20();

}

/* if there are errors, return with the proper elements expanded */
function pageloadedwitherrors(){

	if (document.getElementById('domonly').value == 1){
		regdom();
	}
	else {
		hostdom();
	}

}