document.observe('page:loaded', function() {
	$$('a[href]').each(function(el) {
		var href = el.readAttribute('href');
		if (href == '#') {
			el.observe('click', function(e) {
				Event.stop(e);
			});
		}
	});
});

function setCookie(c_name,value,expiredays) {
  var exdate=new Date();
  exdate.setDate(exdate.getDate()+expiredays);
  document.cookie=c_name+ "=" +escape(value)+
  ((expiredays==null) ? "" : ";expires="+exdate.toUTCString());
}

function getCookie(c_name) {
  if (document.cookie.length>0) {
    c_start=document.cookie.indexOf(c_name + "=");
    if (c_start!=-1) {
      c_start=c_start + c_name.length+1;
      c_end=document.cookie.indexOf(";",c_start);
      if (c_end==-1) c_end=document.cookie.length;
      return unescape(document.cookie.substring(c_start,c_end));
    }
  }
  return "";
}

function changeVideoList(section, handle) {
	setCookie('lastviewedlist', section, 30);
	$$('#vertscrollbar_content .container').each(function(el) { $(el).hide(); });
	$$('#videolists-nav .current').each(function(el) { $(el).removeClassName('current'); });
	$('videolists-'+section).show();
	$(handle).addClassName('current');
	vert_scroll.recalculateLayout();
}

function registerVideoRating(element, memo, video_id) {
	var rating = memo.rated;
	var video = video_id;
	
	new Ajax.Request(BASE_HREF+'ajax/rate-video', {
		method:'post',
		parameters: 'rating='+rating+'&video='+video,
		onSuccess: function(transport){
			 var response = transport.responseText;
			 if (response.length > 0) {
			 	$('video-avgrating').update(response);
			 }
		 }
	});
}

function validateEnterStep1() {
	
	var surfer_name = $('surfer_name');
	var surfer_phone = $('surfer_phone');
	var surfer_email = $('surfer_email');
	var surfer_address1 = $('surfer_address1');
	var surfer_city = $('surfer_city');
	var surfer_state = $('surfer_state');
	var surfer_zip = $('surfer_zip');
	var surfer_country = $('surfer_country');
	var surfer_headshot = $('surfer_headshot');
	
	var filmer_name = $('filmer_name');
	var filmer_phone = $('filmer_phone');
	var filmer_email = $('filmer_email');
	var filmer_address1 = $('filmer_address1');
	var filmer_city = $('filmer_city');
	var filmer_state = $('filmer_state');
	var filmer_zip = $('filmer_zip');
	var filmer_country = $('filmer_country');
	
	var section_coverart = $('section_coverart');
	var section_description = $('section_description');
	
	var legal = $('legal');
	
	var _error = new Array();
	
	if (surfer_name.value == '') {
		_error.push('Please enter a Surfer Name.');
	} else if (surfer_name.length < 5) {
		_error.push('Please enter a valid Surfer Name.');
	}
	if (surfer_phone.value == '') {
		_error.push('Please enter a Surfer Phone.');
	} else if (surfer_name.length < 5) {
		_error.push('Please enter a valid Surfer Phone.');
	}
	if (surfer_email.value == '') {
		_error.push('Please enter a Surfer E-mail Address.');
	} else if (surfer_email.value.indexOf('@') < 0 || surfer_email.value.indexOf('.') < 0) {
		_error.push('Please enter a valid Surfer E-mail Address.');
	}
	if (surfer_address1.value == '') {
		_error.push('Please enter a Surfer Address.');
	} else if (surfer_address1.length < 5) {
		_error.push('Please enter a valid Surfer Address.');
	}
	if (surfer_city.value == '') {
		_error.push('Please enter a Surfer City.');
	} else if (surfer_address1.length < 3) {
		_error.push('Please enter a valid Surfer City.');
	}
	if (surfer_state.value == '') {
		_error.push('Please enter a Surfer State.');
	} else if (surfer_state.length < 2) {
		_error.push('Please enter a valid Surfer State.');
	}
	if (surfer_zip.value == '') {
		_error.push('Please enter a Surfer Zip.');
	} else if (surfer_zip.length < 3) {
		_error.push('Please enter a valid Surfer Zip.');
	}
	if ($F(surfer_country) == '') {
		_error.push('Please select a Surfer Country.');
	}
	if (surfer_headshot.value == '') {
		_error.push('Please select a Surfer Headshot.');
	} else {
		var ext = surfer_headshot.value.split('.');
		ext = ext[(ext.length-1)];
		ext = ext.toLowerCase();
		if (ext != 'jpg' && ext != 'jpeg') {
			_error.push('Please select a valid JPG for the Surfer Headshot.');
		}
	}
	
	if (filmer_name.value == '') {
		_error.push('Please enter a Filmer Name.');
	} else if (filmer_name.length < 5) {
		_error.push('Please enter a valid Filmer Name.');
	}
	if (filmer_phone.value == '') {
		_error.push('Please enter a Filmer Phone.');
	} else if (filmer_name.length < 5) {
		_error.push('Please enter a valid Filmer Phone.');
	}
	if (filmer_email.value == '') {
		_error.push('Please enter a Filmer E-mail Address.');
	} else if (filmer_email.value.indexOf('@') < 0 || filmer_email.value.indexOf('.') < 0) {
		_error.push('Please enter a valid Filmer E-mail Address.');
	}
	if (filmer_address1.value == '') {
		_error.push('Please enter a Filmer Address.');
	} else if (filmer_address1.length < 5) {
		_error.push('Please enter a valid Filmer Address.');
	}
	if (filmer_city.value == '') {
		_error.push('Please enter a Filmer City.');
	} else if (filmer_address1.length < 3) {
		_error.push('Please enter a valid Filmer City.');
	}
	if (filmer_state.value == '') {
		_error.push('Please enter a Filmer State.');
	} else if (filmer_state.length < 2) {
		_error.push('Please enter a valid Filmer State.');
	}
	if (filmer_zip.value == '') {
		_error.push('Please enter a Filmer Zip.');
	} else if (filmer_zip.length < 3) {
		_error.push('Please enter a valid Filmer Zip.');
	}
	if ($F(filmer_country) == '') {
		_error.push('Please select a Filmer Country.');
	}
	
	if (section_coverart.value == '') {
		_error.push('Please select a Section Cover Art.');
	} else {
		var ext = section_coverart.value.split('.');
		ext = ext[(ext.length-1)];
		ext = ext.toLowerCase();
		if (ext != 'jpg' && ext != 'jpeg') {
			_error.push('Please select a valid JPG for the Section Cover Art.');
		}
	}
	if (section_description.value == '') {
		_error.push('Please enter a Description for this Section.');
	}
	if (!legal.checked) {
		_error.push('Please agree to the Terms and Conditions of Submission.');
	}
	
	if (_error.length > 0) {
		/*$$('#error-container td')[0].update(_error.join('<br />'));
		$('error-container').show();
		$('enter-left').scrollTo();*/
		errorEnterStep1(_error.join('<br />'));
		return false;
	}
	$('error-container').hide();
	$$('#error-container td')[0].update('');
	return true;
}

function errorEnterStep1(error) {
	$$('#error-container td')[0].update(error);
	$('error-container').show();
	$('enter-left').scrollTo();
}

function form_checkOptional(el, type) {
	if (type == 'focus') {
		if (el.value == 'Optional') {
			el.value = '';
			el.removeClassName('optional');
		}
	} else {
		if (el.value == '') {
			el.addClassName('optional');
			el.value = 'Optional';
		}
	}
}

function keepAlive() {
	new Ajax.Request('/keep-alive');
}

function validateEnterStep2() {
	
	var section_video = $('section-video');
	
	var _error = new Array();
	
	if (section_video.value == '') {
		_error.push('Please choose your Section Video.');
	} else {
		var ext = section_video.value.split('.');
		ext = ext[(ext.length-1)];
		ext = ext.toLowerCase();
		if (ext != 'avi' && ext != 'flv' && ext != 'm4v' && ext != 'mp4' && ext != 'mov' && ext != '3gp' && ext != 'wmv' && ext != 'mp3') {
			_error.push('Please select a valid Format (avi, flv, m4v, mp4, mov, 3gp, wmv, mp3) for your Section Video.');
		}
	}
	
	if (_error.length > 0) {
		$$('#error-container td')[0].update(_error.join('<br />'));
		$('error-container').show();
		$('enter-left').scrollTo();
		return false;
	}
	$('error-container').hide();
	$$('#error-container td')[0].update('');
	$('progressbar-container').show();
	return true;
	
}

function videoShowComments(handle) {
	
	$$('#commentbox-nav a').invoke('removeClassName', 'current');
	$(handle).addClassName('current');
	
	$('addcomment-container').hide();
	$('vertscrollbar2_container').show();
	
	return false;
	
}
function videoShowAddComment(handle) {
	
	$$('#commentbox-nav a').invoke('removeClassName', 'current');
	$(handle).addClassName('current');
	
	$('vertscrollbar2_container').hide();
	$('addcomment-container').show();

	return false;
	
}

function limitText(limitField, limitNum) {
	if (limitField.value.length > limitNum) {
		limitField.value = limitField.value.substring(0, limitNum);
	}
}

function countDownTime(seconds_start,days,hours,minutes) {
	
	var elements = new Array();
	elements[0] = days;
	elements[1] = hours;
	elements[2] = minutes;

	var timings = new Array();
	timings[0] = 86400;
	timings[1] = 3600;
	timings[2] = 60;

	var this_value;
	for(i=0;i<elements.length;i++) {
		this_value = parseInt(seconds_start/timings[i]);
		seconds_start = (seconds_start % timings[i]);
		$(elements[i]).update(this_value);
	}
	
}

function doCountDown(seconds_start,days,hours,minutes,callback) {

	////
	// Give 60 seconds of padding, just incase
	var updated_seconds = (seconds_start+60);
	countDownTime(updated_seconds,days,hours,minutes);
	
	new PeriodicalExecuter(function() {
		updated_seconds = updated_seconds - 60;
		if (updated_seconds <= 0) {
			callback();
			return;
		}
		countDownTime(updated_seconds,days,hours,minutes);
	}, 60);
	
}

function confirmVideoOrder() {
	
	new Ajax.Request(BASE_HREF+'ajax/confirm-video-order', {
		method: "post",
		parameters: { data: Sortable.serialize("final10_sortable") },
		onSuccess: function() {
			window.location.reload();
		}
	});
	
}

function postComment() {
	var video_id = null;
	var news_id = null;
	var home_flag = null;
	
	if ($$('#video_id').length > 0) {
		video_id = $F('video_id');
	} else if ($$('#news_id').length > 0) {
		news_id = $F('news_id');
	} else if ($$('#home_flag').length > 0) {
		home_flag = true;
	}
	var comment = $F('comment');
	
	if (comment == '') return false;
	if (video_id == null && news_id == null && home_flag == null) return false;
		
	new Ajax.Request(BASE_HREF+'ajax/post-comment', {
		method: "post",
		parameters: { video_id: video_id, news_id: news_id, home_flag: home_flag, comment: comment },
		onSuccess: function(transport) {
			$('vertscrollbar2_content').update(transport.responseText);
			$('comment').value = '';
			videoShowComments($('viewcomments-handle'));
			vert_scroll2.recalculateLayout();
		},
		onFailure: function() {
			$('comment').value = '';
			alert('There has been a problem.');
		}
	});
		
	return false;
}
