function trim(str){
	return str.replace(/^\s*|\s*$/g,"");
}

function validURL(url) {
	var v = new RegExp();
	v.compile("^[A-Za-z]+://[A-Za-z0-9-_]+\\.[A-Za-z0-9-_%&\?\/.=]+$");
	if (!v.test(url)) { return false;	}
	else { return true; }
}

/*new rating fx*/
function markRate(mark, id){
	for(i=1; i <= 5; i++){
		Element.removeClassName($('bRate'+i+"-"+id),'selected');
		Element.removeClassName($('bRate'+i+"-"+id),'selectedHalf');
	
		if(mark > 0){
			if(mark >= 1){
				$('bRate'+i+"-"+id).className = "selected";
			}else{
				if(mark >= .3 && mark <= .7){
					$('bRate'+i+"-"+id).className = "selectedHalf";
				}else if(mark > .7){
					$('bRate'+i+"-"+id).className = "selected";
				}
			}
		}
		
		mark--;
	}
}

function rateMe(id, rating){
	var showResponse = function (originalRequest) { $('bRateBox'+id).innerHTML = originalRequest.responseText; };
	var showProgress = function () { $('bRateBox'+id).innerHTML = 'processing...'; }

	var params = "id="+ id +"&rating="+ rating;
	url = publicdomain + "blogawards/objects/blogs/rate.xml.php";
	var myAjax = new Ajax.Request( url,{method: 'post', parameters: params, onComplete: showResponse, onLoading: showProgress});
	
	pageTracker._trackPageview(chnnl+"/rate/");
}

function submitBlogNomination(){
	var showResponse = function (originalRequest) { 
		Element.hide('Submit-Blog');
		$('bcomments').innerHTML = originalRequest.responseText;
	};

	var showProgress = function () { $('bcomments').innerHTML = "submitting your nomination..."; }
	
	var err = 0;
	if(trim($('title').value) == ''){	err++; Element.addClassName($('title').parentNode,'formError'); }
	else Element.removeClassName($('title').parentNode,'formError');
	if(((!validURL($('address').value))&&($('address').value != 'http://')) || ($('address').value == 'http://')){ err++; Element.addClassName($('address').parentNode,'formError'); }
	else Element.removeClassName($('address').parentNode,'formError');
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if(err != 0){
		alert('You have not filled out all the required fields correctly. \n\n Please submit the required information.');
	}else{
		$('submitnomination').disabled = true;		
		auth = $('nominator').value;
		authem = $('nominatoremail').value;
		title = $('title').value;
		em = $('email').value;
		url = $('address').value;
		isnominee = ($('is_nominee').checked?2:0);
		
		parameter = "auth="+auth+"&em="+em+"&url="+url+"&title="+title+"&authem="+authem+"&isnominee="+isnominee;
		
		var url = publicdomain+"blogawards/objects/blogs/addNomination.xml.php";
		var myAjax = new Ajax.Request( url,	{method: 'post', parameters: parameter, onComplete: showResponse, onLoading: showProgress});
	
		pageTracker._trackPageview("ajax"+chnnl+"/submitblog");
	}
}

function displaySticker(){
	var showResponse = function (originalRequest) { 
		$('main').innerHTML = originalRequest.responseText;
		$('getsticker').style.display = "none";
	};
	
	var showProgress = function () { $('bcomments').innerHTML = "&nbsp;<img src='http://www.candymag.com/blogawards/images/progress.gif' />&nbsp;verifying code & url..."; }
	
	var err = 0;
	
	if(trim($('code').value) == ''){	err++; Element.addClassName($('code').parentNode,'formError'); }
	else Element.removeClassName($('code').parentNode,'formError');
	
	if(((!validURL($('baddress').value))&&($('baddress').value != 'http://')) || ($('baddress').value == 'http://')){ err++; Element.addClassName($('baddress').parentNode,'formError'); }
	else Element.removeClassName($('baddress').parentNode,'formError');
	
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	
	if(err != 0){
		alert('You have not filled out all the fields correctly. \n\n Please submit the required information.');
	}else{
		$('getSticker').disabled = true;		
		blogger = $('uid').value;
		code = $('code').value;
		url = $('baddress').value;
		
	parameter = "blogger="+blogger+"&code="+code+"&url="+url;
	
	var url = publicdomain+"blogawards/objects/blogs/digitalSticker.xml.php";
	var myAjax = new Ajax.Request( url,	{method: 'post', parameters: parameter, onComplete: showResponse, onLoading: showProgress});
	
	pageTracker._trackPageview("ajax"+chnnl+"/displaysticker");
	}
}

function editblog(){
	var err = 0;
	
	if(trim($('title').value) == ''){	err++; Element.addClassName($('title').parentNode,'formError'); }
	else Element.removeClassName($('title').parentNode,'formError');
	
	if(((!validURL($('url').value))&&($('url').value != 'http://')) || ($('url').value == 'http://')){ err++; Element.addClassName($('url').parentNode,'formError'); }
	else Element.removeClassName($('url').parentNode,'formError');
	
	if(trim($('description').value) == ''){	err++; Element.addClassName($('description').parentNode,'formError'); }
	else Element.removeClassName($('description').parentNode,'formError');
	
	/*if(trim($('fotoValidateIE').value) == 0){	err++; Element.addClassName($('logo').parentNode,'formError'); }
	else Element.removeClassName($('logo').parentNode,'formError');*/
	
	if(err == 0){ returnval = true; }
	else{
		alert('You have not filled out all the required fields correctly. \n\n Please submit the required information.');
		returnval = false;
	}
	return returnval;
}

function testFileType() {
	fileName = $('logo').value;
	fileTypes = new Array ('.gif', 'jpg', 'png', 'jpeg');
	if (!fileName) return;
	dots = fileName.split(".")
	fileType = "." + dots[dots.length-1];
	if(fileTypes.join(".").indexOf(fileType.toLowerCase()) != -1){ 
		$('previewFoto').innerHTML = ''; xxx='file://localhost/' + fileName; xxx=xxx.toLowerCase();
		
		if (xxx.substring(0,xxx.lastIndexOf('.png'))||xxx.substring(0,xxx.lastIndexOf('.jpg'))||xxx.substring(0,xxx.lastIndexOf('.jpeg'))||xxx.substring(0,xxx.lastIndexOf('.gif'))){
			var img=document.createElement('img'); img.setAttribute('src',xxx); img.setAttribute('width',150); img.setAttribute('height',150); //$('previewFoto').appendChild(img);
		}
		Element.removeClassName($('logo').parentNode,'formError');
		$('fotoValidateIE').value = '1';
	}else{
		$('logo').value = '';
		$('fotoValidateIE').value = '0';	
		Element.addClassName($('logo').parentNode,'formError');
		alert("Please only upload files that end in types: \n\n" + (fileTypes.join(" .")) + "\n\nPlease select a new file and try again.");
	}
}	

function submitBlogComment(){
	var showResponse = function (originalRequest) { 
		Element.hide('blogCommentForm');
		new Insertion.Bottom('blogComments', originalRequest.responseText);
		Element.hide('noComment');
	};
	var showProgress = function () { $('blogCommentForm').innerHTML = '&nbsp;<img src="'+publicdomaintpl+'images/loading.gif" alt="loading..." /> submitting your comment...'; }
	//$('blogCommentForm').innerHTML = '&nbsp;<img src="'+publicdomaintpl+'loading.gif" alt="loading..." /> submitting your comment...';	
	var err = 0;
	if(trim($('blogCommentAuthor').value) == ''){	err++; Element.addClassName($('blogCommentAuthor').parentNode,'formError'); }
	else Element.removeClassName($('blogCommentAuthor').parentNode,'formError');
	if(trim($('blogComment').value) == ''){	err++; Element.addClassName($('blogComment').parentNode,'formError'); }
	else Element.removeClassName($('blogComment').parentNode,'formError');
	if((!validURL($('blogCommentUrl').value))&&($('blogCommentUrl').value != 'http://')){ err++; Element.addClassName($('blogCommentUrl').parentNode,'formError'); }
	else Element.removeClassName($('blogCommentUrl').parentNode,'formError');
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if(err != 0){
		alert('You have not filled out all the required fields correctly. \n\n Please submit the required information.');
	}else{
		$('submitBlogComment').disabled = true;		
		auth = $('blogCommentAuthor').value;
		em = $('blogCommentEmail').value;
		url = $('blogCommentUrl').value;
		comment = $('blogComment').value;
		blog_id = $('comment-blog-id').value;
		parameter = "auth="+auth+"&em="+em+"&url="+url+"&comment="+comment+"&blog_id="+blog_id;
		var url = publicdomain+"blogawards/objects/blogs/addBlogComment.xml.php";
		var myAjax = new Ajax.Request( url,	{method: 'post', parameters: parameter, onComplete: showResponse, onLoading: showProgress});
		
		pageTracker._trackPageview("ajax"+chnnl+"/commentblog");
	}
}

function ratethisarticle(id,rating,slug) {
//	debugger;
	var showResponse = function (originalRequest) {$('ratesystem').innerHTML = originalRequest.responseText;};
	var showProgress = function () { $('ratesystem').innerHTML = '&nbsp;<img src=publicdomain+"templates/candydefault/images/loading.gif" alt="loading..." /> loading...'; }
	parameter = "id="+id+"&rating="+rating+"&slug="+slug;
	var url = publicdomain+"blogawards/objects/blogs/rateThisBlog.obj.php";
	new Effect.Highlight('ratesystem', {startcolor:'#FFFFFF', endcolor:'#FEF3FA'})	
	var myAjax = new Ajax.Request( url,	{method: 'get', parameters: parameter, onComplete: showResponse, onLoading: showProgress});
	
	pageTracker._trackPageview("ajax"+chnnl+"/rateblog");
}

function blogNomination(id) {
	var showResponse = function (originalRequest) { 
							if(originalRequest.responseText == "error1"){
								$('nResponse'+id).innerHTML = "You must log in to nominate a blog."; 	
							}else{
								$('nResponse'+id).innerHTML = "done!"; 
							}
						};
	var showProgress = function () { $('nResponse'+id).innerHTML = 'nominating...'; }
	parameter = "id="+id;
	var url = publicdomain+"blogawards/objects/blogs/nominate.xml.php";
	var myAjax = new Ajax.Request( url,	{method: 'post', parameters: parameter, onComplete: showResponse, onLoading: showProgress});
	
	//pageTracker._trackPageview("ajax"+chnnl+"/nominateblog");
}

function markRating(rating,flag,label) {
	$("ratinglabel").innerHTML = label;
	if(flag == 'on'){
		for(i = 1; i<=5; i++){
			if(i <= rating)	$("labelrating"+i).className = 'ratingOn';
			else{
				if($("rate"+i).checked == true) break;
				else $("labelrating"+i).className = 'ratingOff';
			}
		}
	}else{
		for(i = 5; i>=1; i--){
			if($("rate"+i).checked == true)	break;
			else $("labelrating"+i).className = 'ratingOff';
		}
	}
}

function submitBlogSearch(url){
//	debugger;
	var key = $F('search');
	key1 = key.replace(/ +/g, '+');
//	var tag = this.value.replace(/ +/g, '+')
  	location.href = url+'search/'+key1;
	return false;
}

function init(){
	if($("submitnomination")) Event.observe('submitnomination', 'click', submitBlogNomination, false);
	if($("registerMember")) Event.observe('registerMember', 'click', registerMember, false);
	if($("getSticker")) Event.observe('getSticker', 'click', displaySticker, false);
	if($("editblogbt")) Event.observe('editblogbt', 'click', editblog, false);
	if($("submitBlogComment"))Event.observe('submitBlogComment', 'click', submitBlogComment, false);
	if($("searchBox"))Event.observe('searchBox', 'submit', submitBlogSearch, false);
	/*if($("logo")) Event.observe('logo', 'change', testFileType, false);*/
	
	if($("scroll-list")) initscroll();
}

Event.observe(window, 'load', init);