// methods to show/hide "AJAX" form divs. assumes you have _form, _busy, and _link divs
function show_busy_div(name) {
	if($(name+'_form')) { Element.hide(name+'_form'); };
	if($(name+'_link')) { Element.hide(name+'_link'); };
	if($(name+'_busy')) { Element.show(name+'_busy'); };
}
function show_form_div(name) {
	if($(name+'_link')) { Element.hide(name+'_link'); };
	if($(name+'_busy')) { Element.hide(name+'_busy'); };
	if($(name+'_form')) { Element.show(name+'_form'); };
}
function show_link_div(name) {
	if($(name+'_busy')) { Element.hide(name+'_busy'); };
	if($(name+'_form')) { Element.hide(name+'_form'); };
	if($(name+'_link')) { Element.show(name+'_link'); };
}
function clear_form_div(name) {
	if($(name+'_form')) { $(name+'_form').innerHTML = ''; }
	if($(name+'_form')) { Element.hide(name+'_form'); };
	if($(name+'_busy')) { Element.hide(name+'_busy'); };
	if($(name+'_link')) { Element.show(name+'_link'); };
}
// methods to show/hide "AJAX" form spans in table rows.
function show_busy_row(name,id) {
	if($('tr_'+name+'_link_'+id)) { Element.hide('tr_'+name+'_link_'+id); };
	if($('tr_'+name+'_busy_'+id)) { Element.show('tr_'+name+'_busy_'+id); };
}
function show_link_row(name,id) {
	if($('tr_'+name+'_busy_'+id)) { Element.hide('tr_'+name+'_busy_'+id); };
	if($('tr_'+name+'_link_'+id)) { Element.show('tr_'+name+'_link_'+id); };
}
// methods to show/hide busy widgets
function show_busy_widget(name) {
	if($(name)) { Element.show(name); };
} 
function hide_busy_widget(name) {
	if($(name)) { Element.hide(name); };
}
// -------------------------------------------------------


function dynamic_login(){
  new Ajax.Request('/default/dynamic_login', {asynchronous:true, evalScripts:true}); return false;
}

function dynamic_issue_links(id){
  new Ajax.Request('/online_editions/issue_links?id='+id, {asynchronous:true, evalScripts:true}); return false;
}


function toggle_recipient_box() {
	if($('gift_option_me') && $('gift_option_me').checked) {
		$('recipient_info_box').hide();
	}
	else {
		$('recipient_info_box').show();
	}
}

// DATE VALIDATION FUNCTION FOR CALENDAR
function validate_date(element,which_date) {
	var date_str = $F(element);
	if(date_str.length==0) { return true; }
	var pieces = date_str.split('/');
	var mon = -1;
	var day = -1;
	var year = -1;
	if(pieces.length == 3) {
		mon = Number(pieces[0]);
		day = Number(pieces[1]);
		year = Number(pieces[2]);
	} else {
		pieces = date_str.split('-');
		if(pieces.length == 3) {
			if(pieces[0]>'1900') {
				mon = Number(pieces[1]);
				day = Number(pieces[2]);
				year = Number(pieces[0]);
			} else {
				mon = Number(pieces[0]);
				day = Number(pieces[1]);
				year = Number(pieces[2]);
			}
		}
	}
	if((mon>=1&&mon<=12)&&(day>=1&&day<=31)&&(year>=1900)) {
		return true;
	}
	alert(which_date+' is invalid. Please enter date in MM/DD/YYYY format.');
	return false;
}

function populate_delivery_address(){
	x=$('delivery_same_as_billing').checked
	if(x==true){
		$('user_delivery_address').value = $('address').value;
		$('user_delivery_city').value = $('city').value;
		$('user_delivery_state').value = $('state').value;
		$('user_delivery_zip').value = $('zip').value;
		
	}
	else{
		$('user_delivery_address').value = '';				
		$('user_delivery_city').value = '';
		$('user_delivery_state').value = '';
		$('user_delivery_zip').value = '';
	}
}

// -------------------------------------------------------
function manage_link_add_category(center_id) {
	var ajax_url = 	'/manage/links/add_link_category?name=' +
					escape($F('new_link_category_name'));
	new Ajax.Updater('link_category_select',ajax_url,{asynchronous:true, evalScripts:true});
	$('new_link_category_name').value = '';
	show_busy_div('add_link_category');
	return false;
}

function flash_talk(parms){
	//parms.replace(/\|/g,'=').replace(/\:/g,'&')
	new Ajax.Request('/manage/public_galleries/upload_complete?upload_session_id=' + parms, {asynchronous:true, evalScripts:true}); return false;
}

function apply_tags(){
	var tags = $F('batch_tags');
	var form_inputs = Form.getInputs('batch_form');
	
	for(var i=0; i<form_inputs.length; i++){
		if(form_inputs[i].name.match("tags")){
			if( form_inputs[i].value.length > 0 ){
				if(tags.length > 0) {
					form_inputs[i].value = form_inputs[i].value + ", " + tags;
				}
			} else {
				form_inputs[i].value = tags;
			}
		}
	}
	
	// clear out the field
	Field.clear('batch_tags');
}

function update_subscriber_box() {
	if($('user_is_limited_admin').checked || $('user_is_admin').checked) { Element.hide('subscriber_info'); }
	else { Element.show('subscriber_info'); }
}

function toggle_newsletter_options() {
  if($('issue_section')) { Element.toggle('issue_section'); }
  if($('news_section')) { Element.toggle('news_section'); }
  if($('multimedia_section')) { Element.toggle('multimedia_section'); }
  if($('events_section')) { Element.toggle('events_section'); }
}