function wOpen(pURL, pName, w, h, scroll, text, specialSettings){
	xLeft=(screen.width)?(screen.width-w)/2:0;
	xTop=(screen.height)?(screen.height-h)/2:0;
	xSettings = 'height='+h+',width='+w+',top='+xTop+',left='+xLeft+',scrollbars='+scroll+specialSettings

	loginHwnd = window.open(pURL,pName,xSettings);
	if(loginHwnd.window.focus){loginHwnd.window.focus();}
	if(text != "") {
		loginHwnd.document.write(text);
		loginHwnd.document.close();
	}
	return loginHwnd;
}

function login(reviewID,vote){
	if (existHash){
		voteReview(reviewID,vote);
		return;
	}
	if(loginHwnd && !loginHwnd.closed){
		loginHwnd.focus();
		return;
	}
	loginHwnd = wOpen("http://"+window.location.host+"/jm/loginDwr?urlFrom=http://"+window.location.host+"/jm/loginDwr?function=refreshFooter("+reviewID+","+vote+");//", "", 640, 360, "no", "");
}

function setFooter() {
	var txtFooter;
	for (i = 0; i<reviewIDs.length ; i++){	
		if (existHash){
			txtFooter =  $('votacion').innerHTML;
		}else{
			txtFooter =  $('notReg').innerHTML;
		}
		txtFooter = txtFooter.replace(/##REVIEW_ID##/g,reviewIDs[i]);
		DWRUtil.setValue('footerReview' + reviewIDs[i], txtFooter);
	}
}

function setReviewers() {
	ReviewsDwr.getReviewerProfile(reviewersIDs,
	  		{callback:function(dataFromServer) 
				{processProfile(dataFromServer, reviewersIDs,false)}});		
}

function processProfile(dataFromServer, spanId, isCataloguer) {
	if(isCataloguer){
	   	DWRUtil.setValue('profileCataloguer'+spanId, dataFromServer);	
    } else {
		for (var i = 0; i < reviewersIDs.length ; i++){
			DWRUtil.setValue('profile'+reviewersIDs[i], dataFromServer[i]);	
		}
    }	
}

function changeFooter (html, reviewID) {
	DWRUtil.setValue('footerReview'+reviewID, html);
}

function changeVote (data) {
	ReviewsDwr.getPoints(data,{callback:function(dataFromServer) {refreshPoints(dataFromServer, true)}});
}

function refreshPoints (data, isNewVote) {
	var label = '';
	var totalVote = data.pointsPos + data.pointsNeg;
	if (totalVote != null && totalVote != 0) {
		label = labelVotos.replace (/##VOTE_POSITIVE##/, data.pointsPos);
		label = label.replace (/##TOTAL_VOTE##/, totalVote);
		DWRUtil.setValue('votos'+data.reviewID, label);
		
		if (isNewVote) {
			label = $('tks').innerHTML;
			label = label.replace (/##VOTE_POSITIVE##/, data.pointsPos);
			label = label.replace (/##TOTAL_VOTE##/, totalVote);
			changeFooter(label,data.reviewID);		
		}
	}
	
}
var reviewVoting;
function voteReview (reviewID, vote) {
    reviewVoting = reviewID;
	if (hasHash()) {
		$('votacion'+reviewID).style.display = 'none';
		DWRUtil.setValue('footerReview'+reviewID, $('procesando').innerHTML);
		ReviewsDwr.voteReview (reviewID, vote, changeVote);		
	} else {
		login(reviewID, vote);		
	}
}

function refreshFooter (reviewID,vote) {
	existHash = hasHash();
	if(loginHwnd && !loginHwnd.closed){
		window.setTimeout('voteReview('+reviewID+','+vote+')', 0);
	}
	loginHwnd.close();
}

function handlerVcp (errorString, exception) {
	if (reviewVoting != null){
		DWRUtil.setValue('footerReview'+reviewVoting , $(error).innerHTML.replace(/<!--##MSJ_ERROR##-->/, errorString));
	} else {
		
	}
	reviewVoting = null;
}

function hasHash() {
	ck = getCookieValue("orguserid"); 
	return !(ck==null||ck.length < 4);
}


function submitSearch(){
	document.getElementById('words').value = trim(document.getElementById('words').value);
	return true;
}

function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

