String.prototype.trim = function(c, t){
    return c = "[" + (c == undefined ? " " : c.replace(/([\^\]\\-])/g, "\\\$1")) + "]+",
    this.replace(new RegExp((t != 2 ? "^" : "") + c + (t != 1 ? "|" + c + "$" : ""), "g"), "");
};

/**
* Returns the value of the selected radio button in the radio group, null if
* none are selected, and false if the button group doesn't exist
*
* @param {radio Object} or {radio id} el
* OR
* @param {form Object} or {form id} el
* @param {radio group name} radioGroup
*/
function $RF(el, radioGroup) {
    if($(el).type && $(el).type.toLowerCase() == 'radio') {
        var radioGroup = $(el).name;
        var el = $(el).form;
    } else if ($(el).tagName.toLowerCase() != 'form') {
        return false;
    }

    var checked = $(el).getInputs('radio', radioGroup).find(
        function(re) {return re.checked;}
    );
    return (checked) ? $F(checked) : null;
}

function crop(photoId)
{
	new Ajax.Request(PUBLIC_URL+'photos/crop-thumbnails', {
		method: 'post',
		postBody: $H({sqx1 :cropData.x1, sqx2 :cropData.x2, sqy1 :cropData.y1, sqy2 :cropData.y2, rtx1 :cropData2.x1, rtx2 :cropData2.x2, rty1 :cropData2.y1, rty2 :cropData2.y2, photoId: photoId}).toQueryString(),
		evalJS: 'force',
		onSuccess: function(transport) {
			window.location = transport.responseText;
		}
	});

}
function saveRotate(photoId) {
	new Ajax.Request(PUBLIC_URL+'photos/rotate/'+photoId, {
		method: 'post',
		postBody: $H({angle: finalAngle}).toQueryString(),
		evalJS: 'force',
		onSuccess: function(transport) {
			window.location = transport.responseText;
		}
	});
}
function saveRotateMultiPics(photoId, id) {
	new Ajax.Request(PUBLIC_URL+'photos/rotate/'+photoId, {
		method: 'post',
		postBody: $H({angle: finalAngle}).toQueryString(),
		evalJS: 'force',
		onSuccess: function(transport) {
			$(id).submit();
		}
	});
}
function setUiLanguage(languageId)
{
	new Ajax.Request(PUBLIC_URL+'ajax/set-language/',
			{
			method: 'post',
			postBody: 'languageId='+languageId,
			onSuccess: function(transport) {
				eval(transport.responseText);
			}
			});
}
function showHide2Object(obj1, obj2)
{
	$(obj1).toggle();
	$(obj2).toggle();
}
function voteUser(votedUser, voteType)
{
	$('setVote').innerHTML = '<img src="'+staticContentImages+'loading.gif" alt="" style="width: 16px; height: 16px; vertical-align: middle" />';
	new Ajax.Request(PUBLIC_URL+'ajax/rate-user/', {
			method: 'post',
			postBody: $H({ votedUser: votedUser, voteType: voteType }).toQueryString(),
			onSuccess: function(transport) {
				$('rateBlock').innerHTML = transport.responseText;
		//		new Effect.Appear('rateUser');
			}
	});
}
function sendRequest(userId,friendId,obj) {
	if(userId==0) {
		window.location = PUBLIC_URL+'signin';
	} else {
		sendFriendRequest(friendId);
		obj.removeClassName("friendBoxColor").addClassName("friendBoxGray");
		obj.setAttribute("cursor","");
		obj.setAttribute("onclick","");
		obj.innerHTML = $('hiddenAddFriendText').innerHTML;
	}
}
function sendFriendRequest(userId, from) {
	//default
	if (from == null) from = 'profile';
	new Ajax.Request(PUBLIC_URL+'ajax/send-friend-request/', {
			method: 'post',
			postBody: 'userId='+userId,
			onSuccess: function(transport) {
				eval(transport.responseText);

				switch(from) {
				case 'mail':
					$('friend_mail_cnt_' + userId).innerHTML = '<span class="msg_unfrnd">&nbsp;</span>';
					break;
				case 'search':
					$('addFriendLi'+userId).addClassName('fpl_passive');
					$('addFriendLi'+userId).innerHTML = $('addFriendLink'+userId).innerHTML;
					break;
				default:
					$('sendFR').innerHTML = '<img src="'+staticContentImages+'profile/people_gray.jpg" alt="" width="38" height="32" />';
					$('sendFRLinkCont').innerHTML = $('sendFRLink').innerHTML;
				}
			}
	});
}

function blockUser(userId, from, numberOfSubscribers)
{
	//default
	if (from == null) from = 'profile';
	new Ajax.Request(PUBLIC_URL+'ajax/block-user/', {
			method: 'post',
			postBody: 'userId='+userId,
			onSuccess: function(transport) {
				eval(transport.responseText);

				switch(from) {
				case 'mail':
					if (numberOfSubscribers > 2) {
						$('block_mail_cnt_' + userId).innerHTML = '<span class="msg_greybock">&nbsp;</span>';
					} else {
						setTimeout(window.location = PUBLIC_URL + 'mail/inbox', 5000);
					}
					break;
				default:
					$('sendBl').innerHTML = '<a href="javascript:void(0)" onclick="unblockUser('+ userId +')"><img src="'+staticContentImages+'profile/deblocked.jpg" alt="" width="38" height="32" /></a>';
					$('sendBlLinkCont').innerHTML = '<a href="javascript:void(0)" onclick="unblockUser('+ userId +')">' + this.imageLabelUnblock + '</a>';
				}
			}
	});
}

function unblockUser(userId, from)
{
	//default
	if (from == null) from = 'profile';
	new Ajax.Request(PUBLIC_URL+'ajax/unblock-user/', {
			method: 'post',
			postBody: 'userId='+userId,
			onSuccess: function(transport) {
				eval(transport.responseText);

				switch(from){
				case 'mail':
					$('block_mail_cnt_' + userId).innerHTML = '<span class="msg_greybock">&nbsp;</span>';
					break;
				default:
					$('sendBl').innerHTML = '<a href="javascript:void(0)" onclick="blockUser(' + userId + ')"><img src="'+staticContentImages+'profile/blocked_red.jpg" alt="" width="38" height="32" /></a>';
					$('sendBlLinkCont').innerHTML = '<a href="javascript:void(0)" onclick="blockUser('+ userId +')">' + this.imageLabelBlock + '</a>';
				}
			}
	});
}

/** Progress Dialog **/

var ProgressDialog = Class.create();

ProgressDialog.prototype = {
	/**
	 * default constructor
	 */
	initialize: function() {
	},

	show: function(elementId) {
		//$(elementId).setStyle({height: $(elementId).childNodes[5].getHeight() + 'px'});
		$(elementId).addClassName('loading_cnt');
	},

	hide: function(elementId) {
		$(elementId).removeClassName('loading_cnt');
	},

	set: function(message) {
		return;
	}
}

var progress = new ProgressDialog();
/** End of Progress Dialog **/

function emoticon(text,txtarea) {
 text = ' ' + text + ' ';
 if (txtarea.createTextRange && txtarea.caretPos) {
  var caretPos = txtarea.caretPos;
  caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
  txtarea.focus();
  txtarea.scrollTop = txtarea.scrollHeight;
 } else {
  txtarea.value  += text;
  txtarea.focus();
  txtarea.scrollTop = txtarea.scrollHeight;
 }
}
/*--------------------------------------------------------------------------------------------------------*/

var sms_type = 1;

function sms_change_content()
{
	var id = document.forms["imageform"].id.value;
	var value = document.forms["imageform"].message.value;
	var content = document.getElementById('sms_content');
	switch(sms_type)
	{
		case 1:
		case 2:
			content.innerHTML = '<strong class="f_red">F' + id + '</strong> ' + value;
			break;
	}
}

function hoverStars(starNumber) {
	for(i = 1; i <= starNumber; i++) {
		$('star'+i).src = $('star'+i).src.replace('star_grey.gif', 'star.gif');
	}

	for(i = starNumber+1; i <= 5; i++) {
		$('star'+i).src = $('star'+i).src.replace('star.gif', 'star_grey.gif');
	}
}

function ratePhoto(photoId, mark, userId) {
	$('starRate').innerHTML = '<img src="'+staticContentImages+'loading.gif" alt="" style="width: 16px; height: 16px; vertical-align: middle" />';
	new Ajax.Request(PUBLIC_URL+'ajax/rate-photo/', {
			method: 'post',
			postBody: $H({ photoId: photoId, mark: mark, uid: userId }).toQueryString(),
			onSuccess: function(transport) {
				eval(transport.responseText);
			}
	});
}

function rateGroupPhoto(photoId, mark, userId) {
	$('starRate').innerHTML = '<img src="'+staticContentImages+'loading.gif" alt="" style="width: 16px; height: 16px; vertical-align: middle" />';
	new Ajax.Request(PUBLIC_URL+'ajax/rate-group-photo/', {
			method: 'post',
			postBody: $H({ photoId: photoId, mark: mark, uid: userId }).toQueryString(),
			onSuccess: function(transport) {
				eval(transport.responseText);
			}
	});
}

function subscribeToParty(){
	new Ajax.Request(PUBLIC_URL+'ajax/subscribe-to-party/',{
	method: 'post',
	postBody: '',
	onSuccess: function(transport) {
		eval(transport.responseText);
	}
	});
}

function unsubscribeToParty(){
	new Ajax.Request(PUBLIC_URL+'ajax/unsubscribe-to-party/',{
	method: 'post',
	postBody: '',
	onSuccess: function(transport) {
		eval(transport.responseText);
	}
	});
}

function confirmParty(){
	new Ajax.Request(PUBLIC_URL+'ajax/confirm-party/',{
	method: 'post',
	postBody: '',
	onSuccess: function(transport) {
		eval(transport.responseText);
	}
	});

}

function changeDays() {
	var currentDay = $('day').value;
	try {
		$('day30').remove();
		$('day31').remove();
	} catch(e){;}

	if($('month').value == '1' ||
	   $('month').value == '3' ||
	   $('month').value == '5' ||
	   $('month').value == '7' ||
	   $('month').value == '8' ||
	   $('month').value == '10' ||
	   $('month').value == '12') {
			try {
				if (!$('day29')) {
					$('day').insert({bottom: '<option id=day29 value=29>29</option>'});
				}
				$('day').insert({bottom: '<option id=day30 value=30>30</option>'});
				$('day').insert({bottom: '<option id=day31 value=31>31</option>'});
			} catch(e){;}
	} else if ($('month').value == '4' ||
		$('month').value == '6' ||
		$('month').value == '9' ||
		$('month').value == '11'){
			try {
				if (currentDay>30)
					currentDay = 0;
				if (!$('day29')) {
					$('day').insert({bottom: '<option id=day29 value=29>29</option>'});
				}
				$('day').insert({bottom: '<option id=day30 value=30>30</option>'});
			} catch(e){;}
	} else if ($('month').value == '2'){
		try {
				if (currentDay>29)
						currentDay = 0;
				if ($('year').value % 4 == 0 && !$('day29')) {
					$('day').insert({bottom: '<option id=day29 value=29>29</option>'});
				}
				else if ($('year').value % 4 != 0 && $('day29')) {
					if (currentDay>28)
						currentDay = 0;
					$('day29').remove();
				}
			} catch(e){;}
	}
	$('day').selectedIndex = currentDay;
}

function CreateBookmarkLink(opTitle, url)
{
	if (opTitle)
		title = document.title + ' - ' + opTitle;
	else
		title = document.title;
	if (!url)
		url = document.location.href;

	if (window.sidebar) { // Mozilla Firefox Bookmark
		window.sidebar.addPanel(title, url,"");
	} else if( window.external ) { // IE Favorite
		window.external.AddFavorite( url, title); }
	else if(window.opera && window.print) { // Opera Hotlist
		return true;
	}
}

function sendMailShare(id)
{
	var email = $('friendMail_'+id).value;
	var emailTest = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*(\s*[,]\s*\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)*/;
	var regex = new RegExp(emailTest);
	if (!regex.test(email)) {
		systemMessenger.set(this.lang['23440_shere_is_no_send'],  0);
		systemMessenger.display();
		return false;
   	}

	var lang = this.lang;
	new Ajax.Request(PUBLIC_URL+'ajax/send-mail-share/', {
			method: 'post',
				postBody: $H({ username: $('name_'+id).value, myMail: $('myMail_'+id).value,  friendMail:$('friendMail_'+id).value, message:$('message_'+id).value, link:$('link_'+id).value}).toQueryString(),
			onSuccess: function(transport) {
				systemMessenger.set(lang['23195_shere_is_send'], 1);
				systemMessenger.display();
				return false;
			}
	});
}

//---------------------------------------------------------------
function activationPopDisorder(objId){
	$('mod_descr').style.left = parseInt(findPosX(objId) - 170)+'px';
	$('mod_descr').style.top = parseInt(findPosY(objId) - 400)+'px';
	$('mod_descr').style.display = 'block';
}

function reportDisorder(){
			//ceck if selected
			var reportedUserId = arguments[0];
			var reportedContentId = arguments[1];
			var otherInfo = arguments[2];
			var disorderType = false;
			var disorderMsg = null;
			var contentType = $F('contentType');

			if($F('erotic_dis') == null && $F('advert_dis') == null && $F('negative_dis') == null && $F('copyright_dis') == null){
				systemMessenger.set(lang['23495_choose_reason_disorder'], 0);
				systemMessenger.display();
				return false;
			}else if ($F('copyright_dis') && $F('copyright_msg') == ''){
				systemMessenger.set(lang['23496_copyright_need_comment_disorder'], 0);
				systemMessenger.display();
				return false;
			}else {
				switch(true){
					case ($F('erotic_dis') != null): disorderType = $F('erotic_dis'); break;
					case ($F('advert_dis') != null): disorderType = $F('advert_dis'); break;
					case ($F('negative_dis') != null): disorderType = $F('negative_dis'); break;
					case ($F('copyright_dis') != null): disorderType = $F('copyright_dis'); disorderMsg = $F('copyright_msg'); break;
				}
				//return false;
//					$('loadingContent').style.display = 'block';
//					$('otherContent').style.display = 'none';
//					$('loadingContent').innerHTML = '<img src="'+staticContentImages+'loading.gif" alt="" style="width: 20px; height: 20px; vertical-align: middle" />';
					new Ajax.Request(PUBLIC_URL+'ajax/signal-disorder/', {
							method: 'post',
							postBody: $H({ disorderType: disorderType, comment: disorderMsg, reportedUserId: reportedUserId, contentId: reportedContentId, contentType: contentType, otherInfo: otherInfo}).toQueryString(),
							onSuccess: function(transport) {
//								$('disorderLink').innerHTML = (transport.responseText);
//								$('mod_descr').style.display = 'none';
								systemMessenger.set(lang['23497_thanks_for_report_disorder'], 1);
								systemMessenger.display();
							}
					});

				}
			}

function copyrightActBlock(flag){
	if(flag == true ){
		$('copyright_dis_msg').style.display = 'block'
	}else {
		$('copyright_dis_msg').style.display = 'none'
	}
}

function findPosX(obj) {
	var curleft = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curleft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	} else if (obj.x) curleft += obj.x;
	return curleft;
}

function findPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	} else if (obj.y) curtop += obj.y;
	return curtop;
}

//	tracker function
function ifr_add(ifr_src,obj) {
	var urlstat_ifr=document.createElement("iframe");
	urlstat_ifr.style.width="0px";
	urlstat_ifr.style.height="0px";
	urlstat_ifr.style.margin="0px";
	urlstat_ifr.style.display="none";
	urlstat_ifr.src=ifr_src;
	obj.parentNode.appendChild(urlstat_ifr);
	return;
}
function trackThis(idurl,obj) {
	if(arguments[2]) {//poate sa fie un al treilea parametru,care restrictioneaza trackerul pentru o singura tara
		if(parseInt(arguments[2])==parseInt(1)) {
			ifr_add("http://url.neogen.ro/index/increment/" + idurl + "/" + escape(REMOTE_ADDR) + "/" + escape(DOMAIN_NAME + '/'),obj);
		}
	}
	else {
		ifr_add("http://url.neogen.ro/index/increment/" + idurl + "/" + escape(REMOTE_ADDR) + "/" + escape(DOMAIN_NAME + '/'),obj);
	}
}
//	end tracker function

function getSmiles(toContent, textArea)
{
	new Ajax.Request(PUBLIC_URL+'ajax/get-smiles/', {
			method: 'get',
			parameters: $H({textArea: textArea}).toQueryString(),
			onSuccess: function(transport) {
				$(toContent).innerHTML = transport.responseText;
			}
	});
}

function togglePopupBox(id, fixposition) {
	var scroll = 0; tmp = 0; boxHeight = 100;

	if ($('popupBox_'+id).style.display != 'block') {
		if (arguments[1] && arguments[1] > 0) {
			boxHeight = parseInt(parseInt(arguments[1])/2);
		}

		scroll = getScrollXY();
		height = (typeof window.innerHeight != 'undefined' ? window.innerHeight : document.documentElement.offsetHeight);
		tmp = parseInt(height/2)-boxHeight + scroll['y'];

		if (id == 'Gifts') {
			tmp = parseInt(height/2)-250 + scroll['y'];
		}


		if ( (id == '102' || id == '103') && tmp < 470) {
			tmp = 470;
		}

		if (tmp < 220) {
			tmp = 220;
		}

		$('popupBox_'+id).style.top = tmp + 'px';

		if (fixposition == 'fixposition') {
			$('popupBox_'+id).style.left = '300px';
			$('popupBox_'+id).style.top = '-100px';
		}

		$('popupBox_'+id).style.display = 'block';
	} else {
		$('popupBox_'+id).style.display = 'none';
	}
}

function toggleSpecialGiftsPopupBox(visibility, filename, fixposition) {

	var scroll = 0; tmp = 0; boxHeight = 100;

	if (visibility == '0') {

		new Ajax.Request(PUBLIC_URL+'ajax/get-special-gifts/', {
			method: 'post',
			postBody: 'filename='+filename,
			onSuccess: function(transport) {
				var myDiv = document.createElement('div');
				myDiv.id = 'specialGiftsPopup';
				myDiv.className = 'popup_transp';
				myDiv.innerHTML = transport.responseText;
				document.body.appendChild (myDiv);

				scroll = getScrollXY();
				height = (typeof window.innerHeight != 'undefined' ? window.innerHeight : document.documentElement.offsetHeight);
				tmp = parseInt(height/2)-boxHeight + scroll['y'];

				if (fixposition == '1') {
					tmp = tmp - 100;
				}

				if (tmp < 220) {
					tmp = 220;
				}

				$('specialGiftsPopup').style.top = tmp + 'px';
				$('specialGiftsPopup').style.display = 'block';
			}
		});

	} else {
		$('specialGiftsPopup').remove();
	}
}

function getScrollXY() {
	  var scrOfX = 0, scrOfY = 0; result = new Array();

	  if( typeof( window.pageYOffset ) == 'number' ) {
	    //Netscape compliant
	    scrOfY = window.pageYOffset;
	    scrOfX = window.pageXOffset;
	  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
	    //DOM compliant
	    scrOfY = document.body.scrollTop;
	    scrOfX = document.body.scrollLeft;
	  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
	    //IE6 standards compliant mode
	    scrOfY = document.documentElement.scrollTop;
	    scrOfX = document.documentElement.scrollLeft;
	  }

	  result['x'] = scrOfX;
	  result['y'] = scrOfY;

	  return result;
}

function f5captcha(id,src)
{
	$(id).src=src+'&'+Math.random();
}



function setPossibleFriend(userId,status,location,type) {

	var div1 = '';
	var div2 = '';
	var span1 = '';

	if(!type) {
		div1 = 'mightKnow';
		div2 = 'mightKnow2';
		span1 = 'countFriends';
		type=0;
	}else {
		div1 = 'mightKnow4';
		div2 = 'mightKnow3';
		span1 = 'countColegi';
	}

	var dur = 0.2;
	new Ajax.Request(PUBLIC_URL+'ajax/set-possible-friend/', {
			method: 'post',
			postBody: 'userId='+userId+'&status='+status+'&type='+type ,
			onSuccess: function(transport) {
				if (transport.responseText=='removed' || transport.responseText =='added'){
					switch (location) {
						case 'suggestion':
							function callbackA() {
								    $('user_'+userId).remove();
									var childrenLeft = $('left').childElements();
									if (childrenLeft.length == 0){
										$('left').remove();
										$('no_porpose').show();
									}
									var numberFriends = $(span1).innerHTML;
									$(span1).innerHTML = parseInt(numberFriends)-1;
							}
							new Effect.SlideUp('user_'+userId, {duration: dur, delay: 0, afterFinish: callbackA});
							break;
						case 'feeds':
							function callbackB() {
								$('user_'+userId).remove();
								var childrens = $(div1).childElements();
								if (childrens.length==1){
									$(div2).hide();
									//new Effect.SlideDown('inviteContent', {duration:  dur});
								}else {
									var numberFriends = $(span1).innerHTML;
									$(span1).innerHTML = parseInt(numberFriends)-1;
									if (childrens.length >= 3){
										var childShow = parseInt(numberFriends) - (parseInt(numberFriends) - 2);

										new Effect.SlideDown(childrens[childShow], {duration:  dur});
									}
								}
							}
							new Effect.SlideUp('user_'+userId, {duration: dur, delay: 0, afterFinish: callbackB });
							break;
						default:
							break;
					}
				}else{
					eval(transport.responseText);
				}
			}
	});
}

function bindButton(idButton,idBox,toShow , htmlButtonShow, htmlButtonHide )
{
		controlVisibilityFunction(idButton,idBox,false,toShow, htmlButtonShow, htmlButtonHide);
		$(idButton).onclick = controlVisibilityFunction.bind($(idButton),idButton,idBox,true,((toShow)?0:1), htmlButtonShow, htmlButtonHide );
}

function controlVisibilityFunction(idButton, idBox, animation, show, htmlButtonShow, htmlButtonHide )
{
	var dur = 0.2;
	if (animation){
		if (show){
			new Ajax.Request(PUBLIC_URL+'ajax/set-box-cookie/', {
				method: 'post',
				postBody: 'flag='+1+'&boxName='+idBox,
				onSuccess: function(transport) {
				new Effect.SlideDown(idBox, {duration: dur, delay: 0.2, afterFinish: function(){
								$(idButton).onclick = controlVisibilityFunction.bind($(idButton),idButton,idBox,true,0,htmlButtonShow, htmlButtonHide);
								$(idButton).innerHTML = htmlButtonHide;
							}
						});
				}
			});
		}else{
			new Ajax.Request(PUBLIC_URL+'ajax/set-box-cookie/', {
				method: 'post',
				postBody: 'flag='+0+'&boxName='+idBox,
				onSuccess: function(transport) {
					new Effect.SlideUp(idBox, {duration: dur, delay: 0.2, afterFinish: function(){
									$(idButton).onclick = controlVisibilityFunction.bind($(idButton),idButton,idBox,true,1,htmlButtonShow, htmlButtonHide);
									$(idButton).innerHTML = htmlButtonShow;
								}});
				}
			});
		}

	}else{
		if (show){
			$(idBox).style.display='block';
			$(idButton).innerHTML = htmlButtonHide;
		}else{
			$(idBox).style.display='none';
			$(idButton).innerHTML = htmlButtonShow;
		}
	}
}

function updateEmail(id) {
	if ($(id).value == 'yahoo.com' || $(id).value == 'gmail.com' || $(id).value == 'mail.ru' || $(id).value == 'abv.bg') {
		$('email_autocomplete').innerHTML = '@'+$(id).value;
	} else {
		$('email_autocomplete').innerHTML = '';
	}
}

function displayEmailErrorMessage(errorMessage) {
	var lang = this.lang;
    systemMessenger.set(errorMessage, 0);
	systemMessenger.display();
}

function validateEmailAddresses(errorMessage) {
	emails = $('emails').value.replace(/^\s+|\s+$/g,"");

	if (emails == '') {
		displayEmailErrorMessage(errorMessage);
		return false;
	}

	emails = emails.split(',');
	if (emails.length == 0) {
		displayEmailErrorMessage(errorMessage);
		return false;
	}

	filter = /^([\w-]+(?:\.[\w-\+]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	valid = true;
	emails.each(function (email) {
		if (!filter.test(email.replace(/^\s+|\s+$/g,""))) {
			displayEmailErrorMessage(errorMessage);
			valid = false;
		}
	});

	return valid;
}

/**
 * Clears email input on click if the value is default
 */
clearEmailInput = function() {
	emails = $('emails').value;
	initEmails = $('initEmails').value;

	if (emails == initEmails) {
		$('emails').value = '';
	}
};

/**
 * If emails box is empty than we put the default value
 */
putDefaultValue = function() {
	emails = $('emails').value;

	if (emails == '') {
		$('emails').value = $('initEmails').value;
	}
};

/**
 * Send email invitation
 */
mailInvite = function(errorMessage) {
	if (!validateEmailAddresses(errorMessage)) {
		return false;
	}

	emails = $('emails').value;

	new Ajax.Request(PUBLIC_URL+'ajax/send-mail-invite/', {
		method: 'post',
		postBody: Object.toQueryString({ emails: emails }),
		onSuccess: function(transport) {
			if (transport.responseText == '') {
				return false;
			}

			response = eval('(' + transport.responseText + ')');
			if (response == null || response.message == null || response.messageType == null) {
				return false;
			}

			$('emails').clear();
		    systemMessenger.set(response.message, response.messageType);
			systemMessenger.display();
		}
	});
};

/* Gifts */
selectGift = function(giftId) {
	$('selectedGiftId').value = $('gift_' + giftId).value;
	$('gift_' + giftId).checked = true;
};

var initGifts = null;
showGiftsBox = function(toUserId, messageId) {
	if (messageId == undefined) {
		messageId = 1;
	}

	new Ajax.Request(PUBLIC_URL+'gifts/active-list/', {
		method: 'post',
		postBody: Object.toQueryString({ toUserId: toUserId, messageId: messageId}),
		onSuccess: function(transport) {
			if (transport.responseText == '') {
				return false;
			}

			$('popupBox_Gifts').innerHTML = transport.responseText;
			initGifts = $('giftList').innerHTML;
            togglePopupBox('Gifts');
		}
	});
};

showSettingsBox = function() {
	new Ajax.Request(PUBLIC_URL+'ajax/new-users-settings', {
		method: 'post',
		evalScripts: 'true',
		onSuccess: function(transport) {
			if (transport.responseText == '') {
				return false;
			}

			$('popupBox_usersSettings').innerHTML = transport.responseText;
            if ($('popupBox_usersSettings').getStyle('display') == 'none') {
                togglePopupBox('usersSettings');
            }
		}
	});
};

verifyFriendCaptcha = function() {
	new Ajax.Request(PUBLIC_URL+'ajax/send-friend-request/', {
		method: 'post',
		evalJS: 'force',
		parameters: $('captchaForm').serialize(true)
	});
};


messageChanged = function() {
	messageType = $('message').value;

	if (messageType == '1') {
		$('messageBody').clear();
		$('messageBodyContainer').show();
		return;
	}

	if (messageType == '0') {
		$('messageBodyContainer').hide();
		$('messageBody').clear();
		return;
	}

	$('messageBody').value = $('message').options[$('message').selectedIndex].text;
	$('messageBodyContainer').hide();
};

function isValidGiftMessage() {
	var messageBody = $('messageBody').value.replace(/^\s+|\s+$/g,"");

	if (messageBody == '') {
	    systemMessenger.set($('29082_gifts_fill_message').innerHTML, 0);
		systemMessenger.display();
		return false;
	}

	return true;
}

function saveGift(toUserId) {
/*	var messageType = $('message').value.replace(/^\s+|\s+$/g,"");
	if (messageType != 0 && !isValidGiftMessage()) {
		return false;
	}
*/
	var message = $('messageBody').value;
	var giftId = $('selectedGiftId').value;
	var isAnonymous = $('isAnonymous').checked ? 1:0;
	var isPublic = $('isPublic').checked ? 1:0;
	var isPrivate = $('isPrivate').checked ? 1:0;

	new Ajax.Request(PUBLIC_URL+'gifts/save/', {
		method: 'post',
		evalScripts: true,
		postBody: Object.toQueryString({ giftId: giftId, toUserId: toUserId, message: message, isAnonymous: isAnonymous, isPublic: isPublic, isPrivate: isPrivate}),
		onSuccess: function(transport) {
			data = transport.responseJSON;
			if (data.result == 'success') {
				if (data.wallet) {
					jQuery('#popupBox_Gifts').hide();
					jQuery('body').append(data.html);
					jQuery.walletAtachControl();
					jQuery('#popupBoxWalletPay').show();
				} else {
					$('popupBox_Gifts').update (data.html);
				}
			}
		}
	});

    return true;
}

function sendGift (giftId, giftCode) {
	new Ajax.Request(PUBLIC_URL+'gifts/send', {
		method: 'post',
		evalJS: 'force',
		postBody: Object.toQueryString({ giftId: giftId, giftCode: giftCode}),
		onSuccess: function(transport) {
			togglePopupBox ('Gifts');
		}
	});

    return true;
}

giftMessageLimit = function(id, limit) {
	if (id.value.length + 1 > limit) {
		id.value = id.value.substring(0, limit);
		return false;
	}

	return true;
};

toggleGiftMessage = function(id) {
	if ($('giftMessage' + id).style.display == 'none') {
		$('giftMessage' + id).show();
		$('giftMessageSummary' + id).hide();
		return;
	}

	$('giftMessageSummary' + id).show();
	$('giftMessage' + id).hide();
};

hideAllGifts = function() {
	$$('#giftList div').each(function(name){
		$(name).hide();
	});
};

getAllGifts = function() {
	var gifts = new Array();
	var i = 0;

	$$('#giftList div').each(function(name) {
		if ($(name).hasClassName('jsonGift') || getGiftObject($(name)) == undefined) {
			return false;
		}
		gifts[i] = $(name);
		i++;
	});

	return gifts;
};

sortGiftsByPrice = function(gifts, order) {
	for(var i = 0; i < gifts.length - 1; i++) {
		for(var j = i + 1; j < gifts.length; j++) {
			var gift1 = getGiftObject(gifts[i]);
			var gift2 = getGiftObject(gifts[j]);

			var swap = (gift1.price > gift2.price);
			if (order == 1) {
				swap = gift1.price < gift2.price;
			}

			if (swap) {
				var aux = gifts[i].innerHTML;
				gifts[i].innerHTML = gifts[j].innerHTML;
				gifts[j].innerHTML = aux;
			}
		}
	}

	return gifts;
};

showGifts = function(gifts) {
	var i = 0;
	for(i = 0; i < gifts.length; i++) {
		gifts[i].show();

		if (i == 0) {
			checkGift(gifts[i]);
		}
	}
};

inArray = function(needle, haystack) {
	var i = 0;
	for(i = 0; i < haystack.length; i++) {
		if (haystack[i] == needle) {
			return true;
		}
	}

	return false;
};

checkGift = function(gift) {
	gift.select('[name="gift"]').each(function(name) {
		$(name).checked = true;
		$('selectedGiftId').value = $(name).value;
	});
};

getGiftObject = function(giftContainer) {
	var jsonGift = '';
	giftContainer.select('.jsonGift').each(function(name){
		jsonGift = $(name).innerHTML;
	});

	return eval(jsonGift.strip());
};

filterGiftsByCategory = function(categoryId, gifts) {
	var filteredGifts = new Array();
	var index = 0;

	for(var i = 0; i < gifts.length; i++) {
		var gift = getGiftObject(gifts[i]);
		if (inArray(categoryId, gift.categories)) {
			filteredGifts[index] = gifts[i];
			index++;
		}
	}

	return filteredGifts;
};

filterChanged = function() {
	var categoryId = $('category').value.strip();
	var order = $('orderByPrice').value.strip();
	$('giftList').innerHTML = initGifts;
	var gifts = getAllGifts();

	if (categoryId == 0) {
		if (order > 0) {
			gifts = sortGiftsByPrice(gifts, order);
			showGifts(gifts);
		}
		return true;
	}

	hideAllGifts();
	gifts = filterGiftsByCategory(categoryId, gifts);
	if (order > 0) {
		gifts = sortGiftsByPrice(gifts, order);
	}

	var isFirst = true;
	var i = 0;
	for(i = 0; i < gifts.length; i++) {
		gifts[i].show();
		if (isFirst) {
			isFirst = false;
			checkGift(gifts[i]);
		}
	}
};

var startEffect = false;
function changeSmsNumber(smsHead, smsNumber, fieldEffect) {
	function callback()	{
		startEffect = false;
	}

	$('smsHead').value = smsHead;
	$('shortNumber').value = smsNumber;

	if (startEffect == false) {
		startEffect = true;
		new Effect.Highlight(fieldEffect, { startcolor: '#DD343C',endcolor: '#ffffff',duration: 0.5, afterFinish: callback});
	}
}

function showCardDiv(url)
{
	$('cardUrl').href = url;
	$('smsInfo').style.display = 'none';
	$('cardInfo').style.display = 'block';
}

function hideCardDiv()
{
	$('smsInfo').style.display = 'block';
	$('cardInfo').style.display = 'none';
}

/* manage cookies */

function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    cookieVal = name+"="+value+expires+"; path=/";
    try {
        if (BASE_DOMAIN!=null && BASE_DOMAIN!='')
        cookieVal += "; domain="+BASE_DOMAIN;
    } catch(e){;}
    document.cookie = cookieVal;
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name,"",-1);
}


/* end manage cookies */


/* manage Birthday Gift Notification Box on the feeds page*/
function hideBirthdayGiftNotification(){
    createCookie('hideBirthdayGiftNotification', 'hide', 100);
   $('birthdayGiftNotification').style.display = 'none';
}
/* end manage Birthday Gift Notification Box on the feeds page*/

/* to be used later for dating application
function datingSearch(URL){

       new Ajax.Updater('searchResultsContainer', URL, {
            asynchronous:true,
            evalScripts:true,
            parameters:Form.serialize($('findForm'))
            }
        )

}
*/

closeFansNotifyBox = function(userId) {
  	var expDate = new Date();
	expDate.setDate(expDate.getDate() + 365);
    $('fansNotifyBoxContainer').hide();
	document.cookie = 'fansNotifyBox=' + userId + ';expires=' + expDate.toGMTString()+"; path=/";
}

positionFansNotifyBox = function(notifyBoxId) {
    var position = $('fansMenuItem').cumulativeOffset();
    var top = position.top;
    var left = position.left;

    top = top - Math.ceil(170 / 2) + 6;
    left = left + 80;
    $(notifyBoxId).setStyle({top: top + 'px', left: left + 'px'});
}

function fixPNG(myImage)
{	//alert(myImage.src);
    if ((document.body.filters))
    {

	   var imgID = (myImage.id) ? "id='" + myImage.id + "' " : ""
	   var imgClass = (myImage.className) ? "class='" + myImage.className + "' " : ""
	   var imgTitle = (myImage.title) ?
		             "title='" + myImage.title  + "' " : "title='" + myImage.alt + "' "
	   var imgStyle = "display:inline-block;" + myImage.style.cssText
	   var strNewHTML = "<span " + imgID + imgClass + imgTitle
                  + " style=\"" + "width:" + myImage.width
                  + "px; height:" + myImage.height
                  + "px;" + imgStyle + ";"
                  + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
                  + "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>"
	   			myImage.outerHTML = strNewHTML
                 // myImage.outerHTML = myImage.src
    }
}

function openGiftTargetUrl(url) {
    window.open(url,'target','width=800,height=600,toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,copyhistory=yes,resizable=yes');
}

positionNotifyBox = function(notifyBoxId, targetId) {
    var position = $(targetId).cumulativeOffset();
    var top = position.top;

    top = top - 40;
    $(notifyBoxId).setStyle({top: top + 'px'});
}

function toggleProfileVoteBox (action, uid, pack, pPack, mode) {
	switch (action) {
		case 'packages': var params = {userId: uid}; break;
		case 'order': var params = {userId: uid, pack: pack}; break;
		default: $('smsVoteBox').remove (); return false;
	}
	new Ajax.Request(PUBLIC_URL+'apps/sms-voting/'+ uid +'/'+ action, {
		method: 'post',
		postBody: $H(params).toQueryString(),
		onSuccess: function(transport) {
			if (transport.responseJSON != null) {
				jQuery('#smsVoteBox').remove ();
				jQuery('body').append(transport.responseJSON.html);
				jQuery.walletAtachControl();
				jQuery('#popupBoxWalletPay').show();
				return;
			}
			var myDiv;
			if (!(myDiv = $('smsVoteBox'))) {
				var scroll = getScrollXY();
				var height = (typeof window.innerHeight != 'undefined' ? window.innerHeight : document.documentElement.offsetHeight);
				var tmp = parseInt(height/2)-150 + scroll['y'];
				if (tmp < 20) tmp = 20;

				myDiv = new Element ('div', {id: 'smsVoteBox'});
				myDiv.className = 'popuptrans_container';
				myDiv.setStyle ({display: 'block', top: tmp +'px', marginLeft: '-307px'});
				document.body.appendChild (myDiv);
			}

			myDiv.update (transport.responseText);
		}
	});
}

function saveProfileVote (uid, pack) {
	var params = {userId: uid, pack: pack};
	new Ajax.Request(PUBLIC_URL+'apps/sms-voting/save', {
		method: 'post',
		postBody: $H(params).toQueryString(),
		evalJS: 'force',
		onSuccess: function(transport) {
			$('smsVoteBox').remove ();
		}
	});
}

function showUploadHelper(type, useAjax) {
	if(['no', 'photo', 'audio', 'video', 'bizz'].indexOf(type) == -1 )
		return false;
	if(!useAjax) {
		if(type == 'no')
			return false;
		if(!$('uploadHelper') || !$('uploadHelper').innerHTML)
			return false;

		var parentPosition = $(type + '-upload-cnt').positionedOffset();
		$('uploadHelper').setStyle({
			'left' : (parentPosition.left - 173) + 'px'
			});
		if(Prototype.Browser.IE && parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5)) == 6) {
			$('uploadHelper').setStyle({
				'width' : 285 + 'px'
				});
		}
		$('uploadHelper').show();
		return false;
	}

	if(type == 'no' && $('uploadHelper') && !$('uploadHelper').innerHTML) {
		$('uploadHelper').hide();
		$('uploadHelper').innerHTML = '';
		return false;
	}
	new Ajax.Request(PUBLIC_URL+'ajax-feed/show-upload-helper', {
		method: 'post',
		postBody: $H({type : type}).toQueryString(),
		onSuccess: function(transport) {

			if(!$('uploadHelper')) {
				window.location = PUBLIC_URL + 'feeds';
				return false;
			}

			if(type == 'no') {
				$('uploadHelper').hide();
				$('uploadHelper').innerHTML = '';
				return false;
			}

			var parentPosition = $(type + '-upload-cnt').positionedOffset();
			$('uploadHelper').innerHTML = transport.responseText;
			$('uploadHelper').setStyle({
				'left' : (parentPosition.left - 173) + 'px'
				});
			if(Prototype.Browser.IE && parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5)) == 6) {
				$('uploadHelper').setStyle({
					'width' : 285 + 'px'
					});
			}
			$('uploadHelper').show();
		}
	});
}

function setSkin()
{
	new Ajax.Request(PUBLIC_URL+'ajax/set-skin/',
	{
		method: 'post',
		postBody: '',
		onSuccess: function(transport) {
			document.getElementById('rowentaButton').style.display = 'none';
		}
	});
}

function votePhoto(ownerId, photoId)
{
	new Ajax.Request(PUBLIC_URL+'ajax/vote-photo/',
	{
		method: 'post',
		postBody: $H({ ownerId: ownerId, photoId: photoId }).toQueryString(),
		onSuccess: function(transport) {
			$('vote_button').remove();
			systemMessenger.set(lang['33690_vote_ok'], 1);
			systemMessenger.display();
			return false;
	}
	});
}