/* DEVELOPER RELATIONS FUNCTIONS */

/* Toggles the whole form on/off */

function toggle_form( id, token ) {
	
	// console.log('token='+token)//Logged for debugging. Should be removed from final
	
	// Toggle Disabled/Enabled
	var form = $( id );
	$$( '#'+id+' .field-list input' ).each( function(i){
	  i.disabled = '';
  })
  $$( '#'+id+' .field-list select' ).each( function(s){
	  s.disabled = '';
	  form_status = 'enabled';
  })
  $$( '#'+id+' .field-list textarea' ).each( function(t){
	  t.disabled = '';
  })
	
	// OLD Toggle Disabled/Enabled...nicer, but doesn't work in IE6
	// var form = $( id );
	// form[form.disabled ? 'disable' : 'enable']();
	// form.disabled = !form.disabled;

	// Change the "Edit/Revert" text and the visibility of rightCol
	var token = token;
	// if( form.disabled ) {
	if( form_status == 'enabled' ) {
		$('toggle_link').replace('<a href="javascript: location.reload(true);" id="toggle_link" class="minus2">'+labelcancel+'</a>');
		$('toggle_span').innerHTML;
		$('rightCol').hide();
	} else {
		$('toggle_link').replace('<a href="javascript: toggle_form('+id+');" id="toggle_link" class="add">'+labeledit+'</a>');
		$('toggle_span').innerHTML;
		$('rightCol').hide();
	} 

  //Changed to fix DLV. I have to check where this might be a problem.
	if($('companyNameForm')){
		$('companyNameForm').disable();
	}
	if($('same')){
		$('same').down('input').enable();
	}
	
	// Change the class of the submit button
	if( $('submit-button') ) {
		if( $('submit-button').style.display == 'none' ) {
			$('submit-button').show();
		} else {
			$('submit-button').hide();
		}
	}
	// Change the class of all the 'required' spans
	$$( '#'+id+' .field-list span.req-invisible' ).invoke('removeClassName', 'req-invisible').invoke('addClassName', 'req');
	
	/* OLD Change the class of all the 'required' spans
	var allFields = $( id ).getElementsByTagName('span');
	for ( var i = 0; i < allFields.length; i++ ) {
		if( allFields[i].hasClassName('req-invisible') ) {
		 	allFields[i].className = 'req';
		} else if( allFields[i].hasClassName('req') ) {
		 	allFields[i].className = 'req-invisible';
		}
	}*/
	// if certifcation text exists, display it
	if($('cert-text')){
		$('cert-text').style.display = 'block';
	} 
}
/* Expand/Collapsable sections such as billing and shipping address sections */
//Odd use of link var. It could cause problems.
function toggle_section( id ) {
	var link = id+'_link';
	var span = id+'_span';
	if( $(id).style.display == 'none' ) {
		Effect.toggle( $(id), 'slide' );
		$(link).replace('<a href="javascript: toggle_section(\''+id+'\');" id="'+link+'" class="minus2">'+labelcollapse+'</a>');
		$(span).innerHTML;
	} else {
		Effect.toggle( $(id), 'slide' );
		$(link).replace('<a href="javascript: toggle_section(\''+id+'\');" id="'+link+'" class="add">'+labelexpand+'</a>');
		$(span).innerHTML;
	}
}

/* Show/hide sections */

function set_type(selectObject) {
	editBusiness_collapse();
 	var ind = selectObject.options.selectedIndex; 
	var selectId = selectObject.options[ind].id;
	if (ind > 0) { 
	 
	 if( token == 'addBusiness' ) { // do not load ajax if in "add" mode
  		if( selectId == 'option-consultant' ) {
  			$('consultant', 'submit-button-consultant').invoke('addClassName','show'); 
  		} else if( selectId == 'option-trainer' ) {
  			$('trainer', 'submit-button-trainer').invoke('addClassName','show');
  		} else if( selectId == 'option-solution' ) {
  			$('solution', 'submit-button-solution').invoke('addClassName','show');
  		} else if( selectId == 'option-hosting' ) {
  			$('hosting', 'submit-button-hosting').invoke('addClassName','show');
  		}
   } else {
  		if( selectId == 'option-consultant' ) {
  			$('consultant', 'locations', 'submit-app-consultant', 'submit-button-consultant').invoke('addClassName','show');
  			reloadLocations();
  		} else if( selectId == 'option-trainer' ) {
  			$('trainer', 'locations', 'classes', 'submit-app-trainer', 'submit-button-trainer').invoke('addClassName', 'show'); 
  			reloadTrainers();
  		} else if( selectId == 'option-solution' ) {
  			$('solution', 'solutions', 'submit-app-solution', 'submit-button-solution').invoke('addClassName', 'show');
  		} else if( selectId == 'option-hosting' ) {
  			$('hosting', 'locations', 'submit-app-hosting','submit-button-hosting').invoke('addClassName', 'show'); 
  			reloadLocations();
  		}
    }
	}
	var businessSetup = selectId;
	if( token == 'addBusiness' ) {
		if( businessSetup == 'option-consultant' ) {
			$('submit-button-consultant').style.display = 'block';
			$('submit-non-app-consultant').style.display = 'block';
		} else if( businessSetup == 'option-trainer' ) {
			$('submit-button-trainer').style.display = 'block';	
			$('submit-non-app-trainer').style.display = 'block';
		} else if( businessSetup == 'option-solution' ) {
			$('submit-button-solution').style.display = 'block';
			$('submit-non-app-solution').style.display = 'block';
		} else if( businessSetup == 'option-hosting' ) {
			$('submit-button-hosting').style.display = 'block';
			$('submit-non-app-hosting').style.display = 'block';
		}
	}
}
function toggle_form_section( businessSetup ) { // when "edit" is cliked on the edit_business page
	if( $('upload') ) { $('upload').style.display = 'none'; }
	var buinessSetup = businessSetup;
	if( businessSetup == 'option-consultant' ) {
		Form.enable( $('billingForm_consultant') );
		// make_required( 'billingForm_consultant' ); // make ALL fields with "req" class required
		$('submit-button-consultant').style.display = 'block';
	} else if( businessSetup == 'option-trainer' ) {
		Form.enable( $('billingForm_trainer') );
		make_required( 'billingForm_trainer' );
		$('submit-button-trainer').style.display = 'block';
	} else if( businessSetup == 'option-solution' ) {
		Form.enable( $('billingForm_solution') );
		make_required( 'billingForm_solution' );
		$('submit-button-solution').style.display = 'block';
	} else if( businessSetup == 'option-hosting' ) {
		Form.enable( $('billingForm_hosting') );
		make_required( 'billingForm_hosting' );
		$('submit-button-hosting').style.display = 'block';
	}
	//added to allow toggled link to change w/o running toggle_form(). This may cause problems on application. Check further.
	if( application == 'hide' ) {
		$('toggle_link').replace('<a href="javascript: location.reload(true);" class="minus2">'+labelcancel+'</a>');
	}
	$('rightCol').style.display = 'none';
}
function editBusiness_collapse() {
	$('consultant').className = 'hide';
	$('trainer').className = 'hide';
	$('solution').className = 'hide';
	$('hosting').className = 'hide';
	$('locations').className = 'hide';
	$('solutions').className = 'hide';
	$('classes').className = 'hide'; 
}

/* Quick Add (General) */

function toggle_add_form( id ) {
	if( id == 'employee' ) { // for employee add button
	
		var form = 'add-form-' + id;
		if( $(form).style.display == 'none' ) {
			new Effect.SlideDown( $(form) );
			$('toggle_span_add').update('<a href="javascript: toggle_add_form(\''+id+'\');" class="minus2">'+labelcancel+'</a>');
			$('toggle_span_add').innerHTML;
		} else {
			new Effect.SlideUp( $(form) );
			$('toggle_span_add').update('<a href="javascript: toggle_add_form(\''+ id +'\');" class="add">'+labeladd+'</a>');
			$('toggle_span_add').innerHTML;
		}
		
	} else { // for location and class add buttons
	
		if( businessID ) { // if a business has been created
			var form = 'add-form-' + id;
			if( $(form).style.display == 'none' ) {
				new Effect.SlideDown( $(form) );
				$('toggle_span_add_'+id).update('<a href="javascript: toggle_add_form(\''+id+'\')" class="minus2">'+labelcancel+'</a>');
				$('toggle_span_add_'+id).innerHTML;
			} else {
				new Effect.SlideUp( $(form) );
				$('toggle_span_add_'+id).update('<a href="javascript: toggle_add_form(\''+ id +'\');" class="add">'+labeladd+'</a>');
				$('toggle_span_add_'+id).innerHTML;
			}
		} else {
			alert( 'Please save your business before adding a '+id );
		}
		
	}
}

function toggle_employee() {
	var form = 'add-employee-form';
	container='add-form-employee'
	id='employee'
	if( $(container).style.display == 'none' ) {
		// console.log('opening add section---')
		new Effect.SlideDown( $(container) );
		$('toggle_link_add_emp').replace('<a href="javascript: getHtml( \'/profile/location/\', \'locationContainer\', displayResp );" id="toggle_link_add" class="minus2">'+labelcancel+'</a>');
		$('toggle_span_add_emp').innerHTML;
	} else {
		// console.log('closing add section---')
		new Effect.SlideUp( $(container) );
		$('toggle_link_add_emp').replace('<a href="javascript: toggle_add_form(\''+ id +'\');" id="toggle_link_add" class="add">'+labeladd+'</a>');
		$('toggle_span_add_emp').innerHTML;
	}
}
function toggle_shipping() {
	if( $( 'shipping-fields' ).style.display == 'none' ) {
		new Effect.SlideDown( $('shipping-fields') ); 
	} else {
		new Effect.SlideUp( $('shipping-fields') );
	}
}

// In the add an employee form, check the number of biztalk members against any available
function check_biztalk(BTtotal) { 
	// alert(BTtotal);
	if( $('biztalk-checkbox').checked == true ) {
		$('biztalk-checkbox').checked == false;
		if( BTtotal >= 5 ) {
			alert(labelbiztalk_maximum);
			/* alert( 'You have already reached the limit of '+BTtotal+' number of BizTalk subscriptions allowed.' ); */
			$('biztalk-checkbox').checked = false;
		} else {
			$('biztalk-checkbox').checked = true;
		}
	} else {
		$('biztalk-checkbox').checked = false;	
	}
}
function action(form,a){
//this function changes the action value to either continue or submit
$(form).progress.value=a
//console.log("1: "+$(form).progress.value)
$(form).submit()
}

// Business page. submit values from both fields at once, work in progress

function doSubmit(form,a) {
	//console.log(form)
	//console.log($('type')[$('type').selectedIndex].value)
	//console.log("1: "+$('passedBusType_trainer').value)
	//alert( 'Value of selected item in Business Type dropdown: '+$('type')[$('type').selectedIndex].value );
	if(form  == 'billingForm_consultant' ) {
		//console.log('hi')
		//$('passedBusType_consultant').value = $('type')[$('type').selectedIndex].value;
		//console.log('Consultant: '+$('passedBusType_consultant').value)
		action('billingForm_consultant',a);
	} 
	if( form  ==  'billingForm_trainer' ) {
		//console.log('hi trainer')
		//$('passedBusType_trainer').value = $('type')[$('type').selectedIndex].value;
		action('billingForm_trainer',a);
	} 
	if( form == 'billingForm_solution' ) {
		//$('passedBusType_solution').value = $('type')[$('type').selectedIndex].value;
		//alert( 'Value of Business Type passed from the first form to the second as a hidden field: '+$('passedBusType_solution').value );
		action('billingForm_solution',a);
	} 
	if( form == 'billingForm_hosting' ) {
		//$('passedBusType_hosting').value = $('type')[$('type').selectedIndex].value;
		action('billingForm_hosting',a);
	}
}

function doSubmitOLD(form,a) {
	// console.log(form)
	// console.log($('type')[$('type').selectedIndex].value)
	//alert( 'Value of selected item in Business Type dropdown: '+$('type')[$('type').selectedIndex].value );
	if(form  == 'billingForm_consultant' ) {
		// console.log('hi')
		$('passedBusType_consultant').value = $('type')[$('type').selectedIndex].value;
		action('billingForm_consultant',a);
	} else if( businessSetup == 'option-trainer' ) {
		// console.log('hi trainer')
		$('passedBusType_trainer').value = $('type')[$('type').selectedIndex].value;
		action('billingForm_trainer',a);
	} else if( businessSetup == 'option-solution' ) {
		$('passedBusType_solution').value = $('type')[$('type').selectedIndex].value;
		// alert( 'Value of Business Type passed from the first form to the second as a hidden field: '+$('passedBusType_solution').value );
		action('billingForm_solution',a);
	} else if( businessSetup == 'option-hosting' ) {
		$('passedBusType_hosting').value = $('type')[$('type').selectedIndex].value;
		action('billingForm_hosting',a);
	}
}

// Give "required" fields the required style
function make_required( billing_form ) {
  $$('#'+billing_form+' span.req-invisible').invoke('removeClassName', 'req-invisible').invoke('addClassName', 'req');
}

//Safari back button 
function P7_fixSafariBB(){ //v1.1 by PVII
if(AC.Detector.isWebKit()){
var jj=onload;if(jj){if(onunload==null){
document.body.setAttribute('onunload',jj);}}}
}

Event.observe(window, 'load',P7_fixSafariBB);
//Event.observe(window, 'load', function() {
//	console.log('hi')
//	if(navigator.userAgent.indexOf("Safari")>-1){
//	var jj=onload;if(jj){if(onunload==null){
//	document.body.setAttribute('onunload',jj);}}}
//});
//-->