// LOAD UP GLOBAL VARIABLES
var siteRoot = 'http://www.biggolfdiscounts.com/';

//--> INVITE A FRIEND
function addFriend(ukey, div, num, loc){
	
	//--> SET UPDATE LOCATION
	element = div + '_' + num;
	var ele = eGet(element);

	//--> COLLECT DATA FROM FORM
	var name = eGet('name_AB').value;
	var email_address = eGet('email_address_AB').value;

	//--> VALIDATE FIELDS
	if(name.length == 0 || email_address.length == 0 || name == "Name" || email_address == "Email Address"){alert("Enter a name and email address"); return false;}

	//--> CREATE THE AJAX URL, START THE PROCESSING
	var ajax_url = siteRoot + '?nadt=&c=friends&m=add_friend&name='+name+'&email_address='+email_address+'&ukey='+ukey+'&num='+num+'&location='+loc;
	ele.innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-small.gif" />';
	var helloAjax = new ajaxObject(element, ajax_url);
	helloAjax.update('&nadth=');

}

//--> ADD A NEW CLUB IN ADMIN
function add_club(){

	//--> ONLY CONTINUE IF WE HAVEN'T HIT 50 YET
	if(eGet('add_current').innerHTML < 50){

		//--> FIND OUT LATEST ADD DIV NUMBER AND INCREMENT IT BY 1
		var num = parseInt(eGet('add_current').innerHTML) + 1;
		eGet('add_current').innerHTML = num;

		//--> VERIFY SOMETHING HAS BEEN ENTERED
		var name = eGet('add').value;
		if(name.length == 0){alert('You must enter a listing name!'); return false;}

		//--> SHOW THE NEW ADD DIV
		showDiv('add_'+num);

		//--> PASS TO CLASS TO INSERT NEW RECORD TO BE LOADED INTO NEXT DIV
		var ajax_url = siteRoot + '?nadt=&c=admin&m=add_club&name='+name;
		eGet('add_'+num).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('add_'+num, ajax_url);
		helloAjax.update('&nadth=');

	}else{

		alert('You have entered the max number of new listings in this session. Refresh the page to add more.');

	}

}

//--> ADD A NEW DEAL IN ADMIN
function add_deal(id){

	//--> ONLY CONTINUE IF WE HAVEN'T HIT 50 YET
	if(eGet('deal_add_'+id+'_current').innerHTML < 50){

		//--> FIND OUT LATEST ADD DIV NUMBER AND INCREMENT IT BY 1
		var num = parseInt(eGet('deal_add_'+id+'_current').innerHTML) + 1;
		eGet('deal_add_'+id+'_current').innerHTML = num;

		//--> VERIFY SOMETHING HAS BEEN ENTERED
		var sales_pitch = eGet('deal_add_'+id).value;
		if(sales_pitch.length == 0){alert('You must enter a sales pitch!'); return false;}

		//--> SHOW THE NEW ADD DIV
		showDiv('deal_add_'+id+'_'+num);

		//--> PASS TO CLASS TO INSERT NEW RECORD TO BE LOADED INTO NEXT DIV
		var ajax_url = siteRoot + '?nadt=&c=admin&m=add_deal&sales_pitch='+sales_pitch+'&club_id='+id;
		eGet('deal_add_'+id+'_'+num).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('deal_add_'+id+'_'+num, ajax_url);
		helloAjax.update('&nadth=');

	}else{

		alert('You have entered the max number of new deals in this session. Refresh the page to add more.');

	}

}

//--> CHANGE PAYMENT OPTION
function change_pay_option(){

	//--> FIND OUT CURRENT SELECTION
	var option = eGet('pay_option').options[eGet('pay_option').selectedIndex].value;

	//--> SWITCH THE TITLE OF THE NEXT SECTION AND CLEAR INPUT BOX
	if(option == 'paypal') eGet('pay_to_label').innerHTML = 'Paypal Email:'; else eGet('pay_to_label').innerHTML = 'Payable to:';
	eGet('pay_to').value = '';

}

//--> CHECK CONTACT US FORM
function check_contact_us(){

	var name = eGet('name').value;
	var subject = eGet('subject').value;
	var email = eGet('email').value;
	var message = eGet('message').value;
	var err = new Array();

	if(name.length < 2) err.push('- Name must be at least 2 letters\n');
	if(subject.length < 2) err.push('- Subject must be at least 2 letters\n');
	if(email.length == 0) err.push('- You must enter an email address\n');
	if(message.length < 3) err.push('- Your message must be at least 3 characters\n');

	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(email) == false && email.length > 0) err.push('- Please enter a valid email address!\n');

	if(err.length > 0){
		var error = ''
		for(i = 0; i < err.length; i++){error += err[i];}
		alert(error);
		return false;
	}else{
		return true;
	}

}

//--> CHECK JOIN INPUT
function check_join_input(){

	var first_name = eGet('first_name').value;
	var last_name = eGet('last_name').value;
	var email = eGet('email').value;
	var user_name = eGet('user_name').value;
	var password = eGet('password').value;
	var password_confirm = eGet('password_confirm').value;
	var err = new Array();

	if(first_name.length < 2) err.push('- First name must be at least 2 letters\n');
	if(last_name.length < 2) err.push('- Last name must be at least 2 letters\n');
	if(email.length == 0) err.push('- You must enter an email address\n');
	if(user_name.length < 3) err.push('- Username must be at least 3 characters\n');
	if(password.length < 3) err.push('- Password must be at least 3 characters\n');
	if(password_confirm.length == 0) err.push('- You must confirm your password\n');
	if(user_name.length > 0 && password.length > 0 && password != password_confirm) err.push('- Passwords do not match!\n');
	if(user_name.length > 0 && password.length > 0 && user_name == password) err.push('- Username and password cannot match!\n');
	if(eGet('terms').checked == false) err.push('- You must agree to the Terms and Conditions');

	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(email) == false && email.length > 0) err.push('- Please enter a valid email address!\n');

	if(err.length > 0){
		var error = ''
		for(i = 0; i < err.length; i++){error += err[i];}
		alert(error);
		return false;
	}else{
		return true;
	}

}

//--> CHECK GIFT PROGRAM INPUT
function check_gift_input(){

	var sender_first_name = eGet('sender_first_name').value;
	var sender_last_name = eGet('sender_last_name').value;
	var sender_email = eGet('sender_email_address').value;
	var recip_first_name = eGet('recip_first_name').value;
	var recip_last_name = eGet('recip_last_name').value;
	var recip_email = eGet('recip_email_address').value;
	var month = eGet('month').value;
	var day = eGet('day').value;
	var year = eGet('year').value;
	var err = new Array();

	if(sender_first_name.length < 1) err.push('You must enter your first name (Sender)\n');
	if(sender_last_name.length < 1) err.push('You must enter your last name (Sender)\n');
	if(sender_email.length == 0) err.push('You must enter your email address (Sender)\n');
	if(recip_first_name.length < 1) err.push('You must enter the first name of the recipient\n');
	if(recip_last_name.length < 1) err.push('You must enter the last name of the recipient\n');
	if(recip_email.length == 0) err.push('You must enter the email address of the recipient\n');
	if(eGet('terms').checked == false) err.push('You must agree to the Terms and Conditions\n');

	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(sender_email) == false && sender_email.length > 0) err.push('Your email address is not valid (Sender)!\n');
	if(reg.test(recip_email) == false && recip_email.length > 0) err.push('The recipient email address is not valid!\n');

	if(day.length == 0 || month.length == 0 || year.length == 0 || day == 0 || month == 0 || year == 0){
		err.push('Fix the delivery date to continue\n');
	}
	if(month > 12 || day > 31 || (month == '2' && day > 29) || ( (month == '11' || month == '4' || month == '6' || month == '9') && day > 30) ){
		err.push('The delivery date is not valid\n');
	}

	if(err.length > 0){
		var error = ''
		for(i = 0; i < err.length; i++){error += err[i];}
		alert(error);
		return false;
	}else{
		return true;
	}

}

//--> CHECK GIFT PROGRAM REDEMPTION
function check_gift_redemption(){

	var username = eGet('username').value;
	var password = eGet('password').value;
	var password_confirm = eGet('password_confirm').value;
	var email = eGet('email_address').value;
	var err = new Array();

	if(username.length < 2) err.push('Username must be at least 2 characters\n');
	if(password.length < 2) err.push('Password must be at least 2 characters\n');
	if(password_confirm.length < 2) err.push('You must confirm your password\n');
	if(username.length > 0 && password.length > 0 && password != password_confirm) err.push('Passwords do not match!\n');
	if(username.length > 0 && password.length > 0 && username == password) err.push('Username and password cannot match!\n');
	if(email.length == 0) err.push('You must enter an email address\n');
	if(eGet('terms').checked == false) err.push('You must agree to the Terms and Conditions');

	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(email) == false && email.length > 0) err.push('Please enter a valid email address!\n');

	if(err.length > 0){
		var error = ''
		for(i = 0; i < err.length; i++){error += err[i];}
		alert(error);
		return false;
	}else{
		return true;
	}

}

//--> CHECK JOIN INPUT AFFILIATES PAGE
function check_join_input_affiliates(){

	var company = eGet('company').value;
	var first_name = eGet('first_name').value;
	var last_name = eGet('last_name').value;
	var email = eGet('email').value;
	var email_confirm = eGet('email_confirm').value;
	var website = eGet('website').value;
	var user_name = eGet('user_name').value;
	var password = eGet('password').value;
	var password_confirm = eGet('password_confirm').value;
	var address1 = eGet('address1').value;
	var address2 = eGet('address2').value;
	var city = eGet('city').value;
	var state = eGet('state').value;
	var zip = eGet('zip').value;
	var phone = eGet('phone').value;
	var fax = eGet('fax').value;
	var pay_to = eGet('pay_to').value;
	var tax_id = eGet('tax_id').value;
	var err = new Array();

	if(tax_id.length < 2) err.push('- You must enter your Tax ID or SSN\n');
	if(address1.length < 2) err.push('- You must enter a street address\n');
	if(city.length < 2) err.push('- You must enter a city\n');
	if(state.length < 2) err.push('- You must enter a state\n');
	if(zip.length < 2) err.push('- You must enter a zip code\n');
	if(phone.length < 2) err.push('- You must enter a phone number\n');
	if(pay_to.length < 2) err.push('- You must specify who to pay\n');
	if(first_name.length < 2) err.push('- First name must be at least 2 letters\n');
	if(last_name.length < 2) err.push('- Last name must be at least 2 letters\n');
	if(email.length == 0) err.push('- You must enter an email address\n');
	if(user_name.length < 3) err.push('- Username must be at least 3 characters\n');
	if(password.length < 3) err.push('- Password must be at least 3 characters\n');
	if(password_confirm.length == 0) err.push('- You must confirm your password\n');
	if(user_name.length > 0 && password.length > 0 && password != password_confirm) err.push('- Passwords do not match!\n');
	if(user_name.length > 0 && password.length > 0 && user_name == password) err.push('- Username and password cannot match!\n');
	if(email.length > 0 && email_confirm.length > 0 && email != email_confirm) err.push('- Emails do not match!\n');
	try{if(eGet('terms').checked == false) err.push('- You must agree to the Terms and Conditions');}catch(e){}

	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(email) == false && email.length > 0) err.push('- Please enter a valid email address!\n');

	if(err.length > 0){
		var error = ''
		for(i = 0; i < err.length; i++){error += err[i];}
		alert(error);
		return false;
	}else{
		return true;
	}

}

//--> CHECK REDEEM CERTIFICATE FORM
function check_redeem_cert(){

	var address = eGet('address').value;
	var city = eGet('city').value;
	var state = eGet('state').value;
	var zip = eGet('zip').value;
	var err = new Array();

	if(address.length == 0) err.push('You must enter your address\n');
	if(city.length == 0) err.push('You must enter your city\n');
	if(state.length == 0) err.push('You must enter your state\n');
	if(zip.length == 0) err.push('You must enter your zip code\n');

	if(err.length > 0){
		var error = ''
		for(i = 0; i < err.length; i++){error += err[i];}
		alert(error);
		return false;
	}else{
		return true;
	}

}


//--> CLEAR AN INPUT BOX
function clear_input_box(ele, txt, focus_blur){

	//--> ON FOCUS
	if(focus_blur == 'focus' && ele.value == txt) ele.value = '';
	if(focus_blur == 'blur' && ele.value == '') ele.value = txt;
	
}

//--> DELETE CLUB
function del_club(id){

	//--> VERIFY DELETION
	if(confirm('This will delete ALL courses and deals for this listing. Are you sure you want to delete?')){

		//--> PASS TO CLASS
		var ajax_url = siteRoot + '?nadt=&c=admin&m=del_club&id='+id;
		eGet('details_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('details_'+id, ajax_url);
		helloAjax.update('&nadth=');
		setTimeout('Effect.BlindUp(\'club_'+id+'\')', 2000);

	}

}

//--> DELETE DEAL
function del_deal(id){

	//--> VERIFY DELETION
	if(confirm('This will delete ALL restrictions and valid days for this deal. Are you sure you want to delete?')){

		//--> PASS TO CLASS
		var ajax_url = siteRoot + '?nadt=&c=admin&m=del_deal&id='+id;
		eGet('deal_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('deal_'+id, ajax_url);
		helloAjax.update('&nadth=');
		Effect.BlindUp('deal_'+id);

	}

}


//--> EDIT CLUB LOAD
function edit_club_load(id){

	//--> PASS TO CLASS
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_club_load&id='+id;
	eGet('club_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
	var helloAjax = new ajaxObject('club_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> EDIT CLUB DO
function edit_club_do(id){

	//--> COLLECT DATA
	var name = eGet('name_'+id).value;
	var name_line2 = eGet('name_line2_'+id).value;
	var type = eGet('type_'+id).options[eGet('type_'+id).selectedIndex].value;
	var address1 = eGet('address1_'+id).value;
	var address2 = eGet('address2_'+id).value;
	var city = eGet('city_'+id).value;
	var state = eGet('state_'+id).value;
	var zip = eGet('zip_'+id).value;
	var county = eGet('county_'+id).value;
	var country = eGet('country_'+id).value;
	var website = eGet('website_'+id).value;
	var contact_name = eGet('contact_name_'+id).value;
	var contact_title = eGet('contact_title_'+id).value;
	var contact_email = eGet('contact_email_'+id).value;
	var phone = eGet('phone_'+id).value;
	var fax = eGet('fax_'+id).value;

	//--> VERIFY DATA
	if(name.length == 0){
		alert('You must enter a name for the listing!');
		return false;
	}

	//--> PASS TO CLASS
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_club_do&id='+id+'&name='+name+'&name_line2='+name_line2+'&type='+type+'&address1='+address1+'&address2='+address2+'&city='+city+'&state='+state+'&zip='+zip+'&county='+county+'&country='+country+'&website='+website+'&contact_name='+contact_name+'&contact_title='+contact_title+'&contact_email='+contact_email+'&phone='+phone+'&fax='+fax;
	eGet('club_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
	var helloAjax = new ajaxObject('club_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> CANCEL EDIT CLUB
function edit_club_cancel(id){

	//--> PASS TO CLASS
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_club_do&id='+id+'&cancel=yes';
	eGet('club_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
	var helloAjax = new ajaxObject('club_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> SHOW COURSES FOR A CLUB
function edit_club_show_courses(id){

	if(eGet('courses_'+id).style.display == 'block'){

		//--> CLOSE THE TAB AND RESET THE BUTTONS
		hideDiv('deals_'+id); hideDiv('courses_'+id);
		eGet('deals_button_'+id).className = 'inactive_button point';
		eGet('courses_button_'+id).className = 'inactive_button point';

	}else{
		//--> CONTINUE
		//--> HIDE DEALS
		hideDiv('deals_'+id);

		//--> SHOW COURSE DIV
		showDiv('courses_'+id);

		//--> CHANGE TAB STYLING
		eGet('courses_button_'+id).className = 'active_button point';
		eGet('deals_button_'+id).className = 'inactive_button point';

		//--> LOAD COURSES
		var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_club_load_courses&id='+id;
		eGet('deals_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('deals_'+id, ajax_url);
		helloAjax.update('&nadth=');

	}

}

//--> SHOW DEALS FOR A CLUB
function edit_club_show_deals(id){

	if(eGet('deals_'+id).style.display == 'block'){

		//--> CLOSE THE TAB AND RESET THE BUTTONS
		hideDiv('deals_'+id); hideDiv('courses_'+id);
		eGet('deals_button_'+id).className = 'inactive_button point';
		eGet('courses_button_'+id).className = 'inactive_button point';

	}else{
		//--> CONTINUE
		//--> HIDE COURSES
		hideDiv('courses_'+id);

		//--> SHOW DEALS DIV
		showDiv('deals_'+id);

		//--> CHANGE TAB STYLING
		eGet('deals_button_'+id).className = 'active_button point';
		eGet('courses_button_'+id).className = 'inactive_button point';

		//--> LOAD DEALS
		var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_club_load_deals&id='+id;
		eGet('deals_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('deals_'+id, ajax_url);
		helloAjax.update('&nadth=');

	}

}

//--> EDIT DEAL LOAD
function edit_deal_load(id){

	//--> PASS TO CLASS
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_deal_load&id='+id;
	eGet('deal_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
	var helloAjax = new ajaxObject('deal_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> EDIT DEAL DO
function edit_deal_do(id){

	//--> COLLECT DATA
	var sales_pitch = eGet('sales_pitch_'+id).value;
	var description = eGet('description_'+id).value;
	var exp = eGet('exp_'+id).value;
	var you_save = eGet('you_save_'+id).value;
	var radioObj = document.getElementsByName('you_save_meas_'+id);
	var radioLength = radioObj.length;
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			var you_save_meas = radioObj[i].value;
		}
	}
	var you_save_prefix = (eGet('you_save_prefix_'+id).checked == true) ? 'y':'n';

	//--> VERIFY DATA
	if(sales_pitch.length == 0){
		alert('You must enter a sales pitch for the deal!');
		return false;
	}
	if(description.length == 0){
		alert('You must enter a description for the deal!');
		return false;
	}
	if(you_save.length == 0){
		alert('You must enter a savings amount for the deal!');
		return false;
	}

	//--> PASS TO CLASS
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_deal_do&id='+id+'&sales_pitch='+sales_pitch+'&description='+description+'&you_save='+you_save+'&you_save_meas='+you_save_meas+'&you_save_prefix='+you_save_prefix+'&exp='+exp;
	eGet('deal_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
	var helloAjax = new ajaxObject('deal_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> CANCEL EDIT DEAL
function edit_deal_cancel(id){

	//--> PASS TO CLASS
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_deal_do&id='+id+'&cancel=yes';
	eGet('deal_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
	var helloAjax = new ajaxObject('deal_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> SHOW RESTRICTIONS FOR A DEAL
function edit_deal_show_rest(id){

	//--> HIDE RESTRICTIONS IF ALREADY SHOWN
	if(eGet('rest_'+id).style.display == 'block'){

		//--> HIDE THE DIV AND CHANGE TAB STYLING
		hideDiv('rest_'+id); hideDiv('days_'+id);
		eGet('rest_button_'+id).className = 'inactive_button point';
		eGet('days_button_'+id).className = 'inactive_button point';

	}else{

		//--> HIDE VALID DAYS
		hideDiv('days_'+id);

		//--> SHOW RESTRICTIONS
		showDiv('rest_'+id);

		//--> CHANGE TAB STYLING
		eGet('rest_button_'+id).className = 'active_button point';
		eGet('days_button_'+id).className = 'inactive_button point';

		//--> LOAD RESTRICTIONS
		var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_deal_load_rest&id='+id;
		eGet('rest_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('rest_'+id, ajax_url);
		helloAjax.update('&nadth=');

	}

}

//--> SHOW VALID DAYS FOR A DEAL
function edit_deal_show_days(id){

	//--> HIDE RESTRICTIONS IF ALREADY SHOWN
	if(eGet('days_'+id).style.display == 'block'){

		//--> HIDE THE DIV AND CHANGE TAB STYLING
		hideDiv('rest_'+id); hideDiv('days_'+id);
		eGet('rest_button_'+id).className = 'inactive_button point';
		eGet('days_button_'+id).className = 'inactive_button point';

	}else{

		//--> HIDE RESTRICTIONS
		hideDiv('rest_'+id);

		//--> SHOW VALID DAYS
		showDiv('days_'+id);

		//--> CHANGE TAB STYLING
		eGet('days_button_'+id).className = 'active_button point';
		eGet('rest_button_'+id).className = 'inactive_button point';

		//--> LOAD VALID DAYS
		var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_deal_load_days&id='+id;
		eGet('days_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-large.gif" /> Loading...';
		var helloAjax = new ajaxObject('days_'+id, ajax_url);
		helloAjax.update('&nadth=');

	}

}

//--> UPDATE RESTRICTIONS
function edit_deal_update_rest(id){

	//--> START REST VAR
	var rest = '';

	//--> COLLECT RESTRICTIONS
	for(var i = 1; i <= 6; i++){
		rest += '&rest_'+i+'='+eGet('rest_'+id+'_'+i).value;
	}

	//--> PASS TO CLASS TO UPDATE
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_deal_update_rest&id='+id+rest;
	eGet('rest_update_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-small-large.gif" /> Updating...';
	var helloAjax = new ajaxObject('rest_update_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> UPDATE VALID DAYS
function edit_deal_update_days(id){

	//--> START DAYS VAR
	var days = '';

	//--> COLLECT DATES AND TIMES
	for(i = 1; i < 8; i++){

		if(eGet('day_'+i+'_'+id).checked == true){
			days += '&day_'+i+'=set&day_'+i+'_from='+eGet('from_'+i+'_'+id).options[eGet('from_'+i+'_'+id).selectedIndex].value+'&day_'+i+'_to='+eGet('to_'+i+'_'+id).options[eGet('to_'+i+'_'+id).selectedIndex].value;
		}

	}

	//--> PASS TO CLASS TO UPDATE
	var ajax_url = siteRoot + '?nadt=&c=admin&m=edit_deal_update_days&id='+id+days;
	eGet('days_update_'+id).innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-small-large.gif" /> Updating...';
	var helloAjax = new ajaxObject('days_update_'+id, ajax_url);
	helloAjax.update('&nadth=');

}


//--> SWAP GIFT IMAGE
function gift_image_change(image){

	eGet('gift_image').src = siteRoot + 'images/gift/' + image;

}

//--> RESEND GIFT EMAIL
function gift_resend(id){

	//--> PASS TO CLASS TO UPDATE
	var ajax_url = siteRoot + '?nadt=&c=gift&m=gift_resend&id='+id;
	eGet('resend_'+id).innerHTML = 'sending...';
	var helloAjax = new ajaxObject('resend_'+id, ajax_url);
	helloAjax.update('&nadth=');

}

//--> IMPORT FRIENDS
function importContacts(step, service, element, loader, extra){

	//--> SETUP THE AJAX URL
	var ajax_url = siteRoot + '?nadt=&c=friends&m=import_contacts&step='+step+'&service='+service;

	//--> PROCEED TO THE CORRECT STEP
	switch(step){

		//--> COLLECT USERNAME AND PASSWORD AND LOAD UP LIST OF CONTACTS
		case "getList":

			//--> COLLECT THE DATA
			var username = eGet('username_'+service).value;
			var password = eGet('password_'+service).value;

			//--> APPEND TO THE AJAX URL
			ajax_url += '&username='+username+'&password='+password;
	
			//--> ALERT THE USER WHAT IS HAPPENING
			eGet(element).innerHTML = 'Collecting your contacts from '+service+'<br /><img src="'+siteRoot+'design/ajax-loader-'+loader+'.gif" />';

		break;

		//--> PROCESS THE INVITATION
		case "invite":

			//--> COLLECT EMAIL ADDRESS AND NAME
			var name = eGet(service+'_name_'+extra).value;
			var email = eGet(service+'_email_'+extra).innerHTML;

			//--> APPEND TO THE AJAX URL
			ajax_url += '&name='+name+'&email='+email;

			//--> MAKE SURE A NAME HAS BEEN ENTERED
			if(name.length == 0){alert('Enter a name for '+email); return false;}

			//--> SHOW THE PROCESS OVERLAY
			showDiv(service+'_overlay_'+extra);

			//--> ALERT THE USER WHAT IS HAPPENING
			eGet(service+'_overlay_'+extra).innerHTML = '&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-'+loader+'.gif" /> processing...';

		break;
	}

	//--> CREATE THE AJAX URL, START THE PROCESSING
	var helloAjax = new ajaxObject(element, ajax_url);
	helloAjax.update('&nadth=');

}

//-------------------------------------------------------------------------------------------------------->
// CONTROLS THE TEXT IN SUBMIT BOXES (CLEARS OUT THE DEFAULT TEXT)
//-------------------------------------------------------------------------------------------------------->
function inputFocus(ele,focusblur,text){
	//--> DETERMINE IF THIS IS A FOCUS OR BLUR REQUEST
	if(focusblur == 'focus'){
		//--> FOCUS: IF ITS SAME, BLANK IT, OTHERWISE LEAVE IT
		if(ele.value == text) ele.value = '';
	}else{
		//--> BLUR: IT ITS EMPTY, PUT DEFAULT VALUE BACK
		if(ele.value == '') ele.value = text;
	}
}

//-------------------------------------------------------------------------------------------------------->
// ONLY ALLOWS NUMBERS TO BE ENTERED
//-------------------------------------------------------------------------------------------------------->
function isNumberKey(evt)
{
 var charCode = (evt.which) ? evt.which : event.keyCode;
 if (charCode > 31 && (charCode < 48 || charCode > 57))
	return false;

 return true;
}

//-------------------------------------------------------------------------------------------------------->
// BEFORE JOIN PAYMENT SUBMISSION
//-------------------------------------------------------------------------------------------------------->
function join_do(){

	var radioObj = document.getElementsByName('method');
	var radioLength = radioObj.length;
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			var meth = radioObj[i].value;
		}
	}
	//--> CHANGE FORM TO MATCH SELECTED METHOD
	if(meth == 'cc'){
		//--> CHANGE ACTION TO GO TO AUTHORIZE NET
		document.join_form.action = 'https://secure.authorize.net/gateway/transact.dll';
		//--> CHANGE FINGERPRINT ID, DESCRIPTION, AND AMOUNT BASED ON PLAN SELECTED
		var radioObj = radios = document.getElementsByName('plan');
		var radioLength = radioObj.length;
		for(var i = 0; i < radioLength; i++) {
			if(radioObj[i].checked) {
				var val = radioObj[i].value;
			}
		}
		switch(val){
			case "0":
				eGet('fid').value = eGet('f0').innerHTML;
				eGet('desc').value = "ONE-YEAR MEMBERSHIP - Unlimited Access for One Year. Full-time Florida residents enjoy the best resource for golf discounts and specials ALL YEAR LONG!";
				eGet('amt').value = "19.95";
			break;
			case "1":
				eGet('fid').value = eGet('f1').innerHTML;
				eGet('desc').value = "6-MONTH MEMBERSHIP - Unlimited Access for Six Months. Specially designed for our part-time and winter residents.";
				eGet('amt').value = "10.95";
			break;
			case "2":
				eGet('fid').value = eGet('f2').innerHTML;
				eGet('desc').value = "ONE-MONTH TRIAL MEMBERSHIP - Unlimited Access For One Month. Perfect for short-term vacation golfers, or if you’d like to take us for a test drive.";
				eGet('amt').value = "4.95";
			break;
		}
	}else{

	}

}

//--> LOAD RESTRICTIONS
function load_restrictions(deal_id){

	var ele = eGet('rest_'+deal_id);

	showDiv('rest_'+deal_id);

	if(ele.innerHTML == ''){

		//--> CREATE THE AJAX URL, START THE PROCESSING
		var ajax_url = siteRoot + '?nadt=&c=coupons&m=list_restrictions&deal_id='+deal_id;
		ele.innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;<img src="'+siteRoot+'design/ajax-loader-medium.gif" />';
		var helloAjax = new ajaxObject('rest_'+deal_id, ajax_url);
		helloAjax.update('&nadth=');
	}

}

//--> POP THE OLD ONE
function marquis(num){

	var newnum = num+1

	//--> PUFF THE FRAME
	new Effect.DropOut('marquis');

	//--> PULL UP THE NEXT FRAME AFTER A WAIT
	setTimeout('marquis_next(\''+num+'\')', 500);

}

//--> LOAD THE NEW ONE
function marquis_next(num){

	//--> CLEAR OUT MARQUIS
	eGet('marquis').innerHTML = '';

	//--> CREATE THE AJAX URL, START THE PROCESSING
	var ajax_url = siteRoot + '?nadt=&c=site&m=marquis&num='+num;
	var helloAjax = new ajaxObject('marquis', ajax_url);
	helloAjax.update('&nadth=');

}

//--> FADE IN THE MARQUIS
function marquis_show(){

	//--> RESET DISPLAY AND HEIGHT FOR MARQUIS
	//eGet('marquis').style.display = 'block';
	//eGet('marquis').style.height = '';

	//--> MAKE IT APPEAR
	new Effect.Appear('marquis');

}

var login_box_open = 'no';
var login_box_to = 0;
//--> SLIDE DOWN LOGIN BOX
function LoginBox(action){
	if(action == 'ini'){
		if(login_box_open != 'yes')hideDiv('login_box_inner');
		showDiv('login_box');
	}else if(action == 'show'){
		if(login_box_open != 'yes'){
			Effect.SlideDown('login_box_inner')
			login_box_open='yes';
		}
	}else if(action == 'hide'){
		Effect.Fade('login_box_inner');
		login_box_open = 'no';
		setTimeout('hideDiv(\'login_box\')',1000);
	}
}

//--> OPEN THE PRINT WINDOW
function wopen(url, name, w, h)
{
// Fudge factors for window decoration space.
 // In my tests these work well on all platforms & browsers.
w += 32;
h += 96;
 var win = window.open(url,
  name,
  'width=' + w + ', height=' + h + ', ' +
  'location=no, menubar=no, ' +
  'status=no, toolbar=no, scrollbars=no, resizable=no');
 win.resizeTo(w, h);
 win.focus();
}

//-------------------------------------------------------------------------------------------------------->
// USE THIS INSTEAD OF HAVING TO TYPE OUT DOCUMENT.GETELEMENTBYID EVERYTIME
//-------------------------------------------------------------------------------------------------------->
function eGet(element){return document.getElementById(element);}

//-------------------------------------------------------------------------------------------------------->
// PRIMARY AJAX ENGINE
//-------------------------------------------------------------------------------------------------------->
function ajaxObject(layer, url) {	                                 // This is the object constructor
   var that=this;                                                    // A workaround for some javascript idiosyncrocies
   var updating = false;                                             // Set to true if this object is already working on a request
   this.callback = function() {}                                     // A post-processing call -- a stub you overwrite.

   this.update = function(passData) {                                // Initiates the server call.
      if (updating==true) { return false; }                          // Abort if we're already processing a call.
      updating=true;                                                 // Set the updating flag.
      var AJAX = null;                                               // Initialize the AJAX variable.
      if (window.XMLHttpRequest) {                                   // Are we working with mozilla?
         AJAX=new XMLHttpRequest();                                  //  Yes -- this is mozilla.
      } else {                                                       // Not Mozilla, must be IE
         AJAX=new ActiveXObject("Microsoft.XMLHTTP");                //  Wheee, ActiveX, how do we format c: again?
      }                                                              // End setup Ajax.
      if (AJAX==null) {                                              // If we couldn't initialize Ajax...
         alert("Your browser doesn't support AJAX.");                // Sorry msg.                                              
         return false                                                // Return false (WARNING - SAME AS ALREADY PROCESSING!)
      } else {
         AJAX.onreadystatechange = function() {                      // When the browser has the request info..
            if (AJAX.readyState==4 || AJAX.readyState=="complete") { //   see if the complete flag is set.
               LayerID.innerHTML=AJAX.responseText;                  //   It is, so put the new data in the object's layer
               delete AJAX;                                          //   delete the AJAX object since it's done.
               updating=false;                                       //   Set the updating flag to false so we can do a new request
               that.callback();                                      //   Call the post-processing function.
            }                                                        // End Ajax readystate check.
         }                                                           // End create post-process fucntion block.
         var timestamp = new Date();                                 // Get a new date (this will make the url unique)
         var uri=urlCall+passData+'&timestamp='+(timestamp*1);   // Append date to url (so the browser doesn't cache the call)
         AJAX.open("GET", uri, true);                                // Open the url this object was set-up with.
         AJAX.send(null);                                            // Send the request.
         return true;                                                // Everything went a-ok.
      }                                                              // End Ajax setup aok if/else block                 
   }
      
   // This area set up on constructor calls.
   var LayerID = eGet(layer);                     // Remember the layer associated with this object.
   var urlCall = url;                                                // Remember the url associated with this object.
}                                                                    // End AjaxObject

//-------------------------------------------------------------------------------------------------------->
// PAUSE THE SCRIPT
//-------------------------------------------------------------------------------------------------------->
function pause(millis)
{
	var date = new Date();
	var curDate = null;

	do { curDate = new Date(); }
	while(curDate-date < millis);
}

//-------------------------------------------------------------------------------------------------------->
// SHOW A DIV ELEMENT (OPENS IT ESSENTIALLY)
//-------------------------------------------------------------------------------------------------------->
function showDiv(element){
	//--> USE DISPLAY NONE TO HIDE THE DIV
	try{eGet(element).style.display = 'block';}catch(e){}
}

//-------------------------------------------------------------------------------------------------------->
// HIDE A DIV ELEMENT (CLOSES IT ESSENTIALLY)
//-------------------------------------------------------------------------------------------------------->
function hideDiv(element,delay){
	//--> USE DISPLAY NONE TO HIDE THE DIV
	if(delay > 0){
		setTimeout('try{eGet(\''+element+'\').style.display = \'none\';}catch (e) {}',delay);
	}else{
		try{eGet(element).style.display = 'none';}catch (e) {}
	}
}
