function HideSysMsg() {
	$('SysMsgCenter').tween('opacity', 0);
	setTimeout(function() { $('SysMsgCenter').setStyle('display', 'none'); }, 900);
	$('SysMsgOverlay').tween('opacity', 0);
	setTimeout(function() { $('SysMsgOverlay').setStyle('display', 'none'); }, 900);
}



function ShowSysMsg(txt) {
	var posX = 0;
	var posY = 0;
	
	$('SysMsgCenter').setStyle('width','250px');
	$('SysMsgCenter').setStyle('height','50px');
	$('SysMsgNavigation').setStyle('margin-top','0px');
	$('SysMsgTxt').set('html', txt);

	$('SysMsgOverlay').setStyle('display', 'block');
	$('SysMsgOverlay').tween('opacity', 0.7);

	posY = window.getSize().y/2 + window.getScroll().y - 50/2;
	posX = window.getSize().x/2 + window.getScroll().x - 250/2;
	
	$('SysMsgCenter').setStyle('top', posY);
	$('SysMsgCenter').setStyle('left', posX);
	$('SysMsgCenter').setStyle('display', 'block');
	$('SysMsgCenter').tween('opacity', 1);
}



function SysMsgLoader() {
	var newElementVar = new Element('div', {'id': 'SysMsgOverlay'});
	newElementVar.set('opacity', '0');
	newElementVar.setStyle('display','none');
	newElementVar.setStyle('width', $(window).getScrollSize().x+$(window).getScroll().x);
	newElementVar.setStyle('height', $(window).getScrollSize().y+$(window).getScroll().y);
	newElementVar.setStyle('left', '0');
	newElementVar.setStyle('top', '0');
	newElementVar.inject($('lndlst'), 'after');
	newElementVar.addEvent('click', function() {
		HideSysMsg();
	});

	var centerDiv = new Element('div', {'id': 'SysMsgCenter'});
	centerDiv.set('opacity', '0');
	centerDiv.setStyle('display','none');
	centerDiv.setStyle('width','250px');
	centerDiv.setStyle('height','50px');
	centerDiv.inject(newElementVar, 'after');

	var msgtxt = new Element('div', {'id': 'SysMsgTxt'});
	msgtxt.setStyle('width','250px');
	msgtxt.setStyle('height','30px');
	msgtxt.setStyle('font-weight','bold');
	msgtxt.inject(centerDiv, 'top');

	var navdiv = new Element('div', {'id': 'SysMsgNavigation'});
	navdiv.inject(msgtxt, 'after');

	var closebtn = new Element('a',{'id': 'SysMsgCloseLink'});
	closebtn.set('html', ' ');
	closebtn.set('title', 'Close');
	closebtn.addEvent('click', function() {
		HideSysMsg();
		return false;
	});
	closebtn.inject(navdiv, 'bottom');

	MsgChecker();
}



function MsgChecker() {
	var from = 0;
	if ($('messages_from_id_user')) {
		if (parseInt($('go_to_page').getProperty('value')) == 1) {
			var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
				if (response.newmessages) {
					ShowSysMsg('You have new <a href="/cabinet/messages/">private messages</a>');
				}
				if (response.msgtext) {
					var msgtable = new Element('table', {'width': '490', 'border': '0', 'cellspacing': '0', 'cellpadding': '0'});
					msgtable.inject($('msgsDiv'), 'top');
					var msgtrHeadTr = new Element('tr');
					msgtrHeadTr.inject(msgtable, 'top');
					var msgtrHeadTd = new Element('td', {'height': '32', 'valign': 'middle', 'background': '/images/table_top.gif'});
					msgtrHeadTd.inject(msgtrHeadTr, 'top');
					var msgIntable = new Element('table', {'width': '97%', 'border': '0', 'align': 'center', 'cellpadding': '0', 'cellspacing': '0'});
					msgIntable.inject(msgtrHeadTd, 'top');
					var msgIntableTr = new Element('tr');
					msgIntableTr.inject(msgIntable, 'top');
					var msgIntableTd = new Element('td', {'width': '100%', 'align': 'left'});
					msgIntableTd.inject(msgIntableTr, 'top');
					var msgH3 = new Element('h3', {'class': 'c_title'});
					msgH3.inject(msgIntableTd, 'top');
					msgH3.set('html', response.msgto+' &rarr; You');
					var msgIntableTh = new Element('th', {'nowrap': 'nowrap', 'class': 'padd'});
					msgIntableTh.inject(msgIntableTr, 'bottom');
					msgIntableTh.set('html', '<nobr><h3>'+response.msgdate+'</h3></nobr>');
						
					var msgtr = new Element('tr');
					msgtr.inject(msgtrHeadTr, 'after');
					var msgtrTd = new Element('td', {'bgcolor': '#FFFFCC', 'class': 'brds'});
					msgtrTd.inject(msgtr, 'top');
					var msgtrTdTable = new Element('table', {'width': '95%', 'border': '0', 'align': 'center', 'cellpadding': '1', 'cellspacing': '1'});
					msgtrTdTable.inject(msgtrTd, 'top');
					var msgtrTdTableTr = new Element('tr');
					msgtrTdTableTr.inject(msgtrTdTable, 'top');
					var msgtrTdTableTd = new Element('td', {'width': '100%', 'align': 'left'});
					msgtrTdTableTd.inject(msgtrTdTableTr, 'top');
					msgtrTdTableTd.set('html', response.msgtext);
	
					var msgtrFoot = new Element('tr');
					msgtrFoot.inject(msgtr, 'after');
					var msgtrFootTd = new Element('td');
					msgtrFootTd.inject(msgtrFoot, 'top');
					msgtrFootTd.set('html', '<img src="/images/tabel_bottom.gif" width="490" height="5" />');
	
					var msgtrFoot2 = new Element('tr');
					msgtrFoot2.inject(msgtrFoot, 'after');
					var msgtrFoot2Td = new Element('td', {'align': 'right'});
					msgtrFoot2Td.inject(msgtrFoot2, 'top');
					msgtrFoot2Td.set('html', '&nbsp;');
				}
			}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'ChkNewMessages', 'from': $('messages_from_id_user').getProperty('value').trim()});
		} else {
			var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
				if (response.newmessages) {
					ShowSysMsg('You have a new <a href="/cabinet/messages/">message</a>');
				}
			}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'ChkNewMessages'});
		}
	} else {
		var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
			if (response.newmessages) {
				ShowSysMsg('You have a new <a href="/cabinet/messages/">message</a>');
			}
		}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'ChkNewMessages'});
	}

	setTimeout("MsgChecker()", 200000);
}



function Star(id) {
	id = id.toString();

	var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
		if (!response.error) {
			if (response.star == 1) {
				$('star'+id).set('src', '/images/star_y.gif');
				$('starLnk'+id).set('html', 'remove');
			} else {
				$('star'+id).set('src', '/images/star_r.gif');
				$('starLnk'+id).set('html', 'save');
			}
		} else {
			ShowSysMsg('You should <a href=\'/cabinet/registration/\'>Register</a> or <a href=\'/cabinet/\'>Sign In</a> first');
		}
	}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'ChkStar', 'id': id});
}



function Comments(id) {
	id = id.toString();

	var posX = 0;
	var posY = 0;
	
	$('SysMsgCenter').setStyle('width','250px');
	$('SysMsgCenter').setStyle('height','120px');
	$('SysMsgTxt').set('html', '');
	$('SysMsgNavigation').setStyle('margin-top','70px');
	
	var txtcom = new Element('textarea',{'id': 'commentstext'+id});
	txtcom.set('disabled', true);
	txtcom.setStyle('width','246px');
	txtcom.setStyle('height','90px');
	txtcom.addEvent('keyup', function() {
		var comment = $('commentstext'+id).getProperty('value').trim();
		var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
			if (response.havecomment) {
				$('comments'+id).removeClass('inactive');
			} else {
				$('comments'+id).addClass('inactive');
			}
		}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'addComments', 'id': id, 'comment': comment});
	});
	txtcom.inject($('SysMsgTxt'), 'top');

	var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
		$('commentstext'+id).set('disabled', false);
		if (response.comment) {
			$('commentstext'+id).set('html', response.comment);
			$('comments'+id).removeClass('inactive');
		}
	}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'GetComments', 'id': id});

	$('SysMsgOverlay').setStyle('display', 'block');
	$('SysMsgOverlay').tween('opacity', 0.7);

	posY = window.getSize().y/2 + window.getScroll().y - 120/2;
	posX = window.getSize().x/2 + window.getScroll().x - 250/2;
	
	$('SysMsgCenter').setStyle('top', posY);
	$('SysMsgCenter').setStyle('left', posX);
	$('SysMsgCenter').setStyle('display', 'block');
	$('SysMsgCenter').tween('opacity', 1);
}



function Message(id) {
	id = id.toString();

	var posX = 0;
	var posY = 0;
	var enable_message = false;
	
	$('SysMsgCenter').setStyle('width','250px');
	$('SysMsgCenter').setStyle('height','150px');
	$('SysMsgTxt').set('html', '');
	$('SysMsgNavigation').setStyle('margin-top','100px');
	
	var txtcom = new Element('textarea',{'id': 'messagetext'+id});
	txtcom.setStyle('width','246px');
	txtcom.setStyle('height','90px');
	txtcom.inject($('SysMsgTxt'), 'top');
	txtcom.set('disabled', true);

	var btn_div = new Element('div',{'id': 'btnsdiv'+id});
	btn_div.setStyle('text-align','center');
	btn_div.inject(txtcom, 'after');

	var post_btn = new Element('input',{'type': 'button', 'class': 'submit', 'value': 'Send'});
	post_btn.setStyle('margin','2px');
	post_btn.inject(btn_div, 'top');
	post_btn.addEvent('click', function() {
		var comment = $('messagetext'+id).getProperty('value').trim();
		if (enable_message) {
			var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
				HideSysMsg();
				
				if ($('messages_from_id_user') && response.msgtext) {
					var msgtable = new Element('table', {'width': '490', 'border': '0', 'cellspacing': '0', 'cellpadding': '0'});
					msgtable.inject($('msgsDiv'), 'top');
					var msgtrHeadTr = new Element('tr');
					msgtrHeadTr.inject(msgtable, 'top');
					var msgtrHeadTd = new Element('td', {'height': '32', 'valign': 'middle', 'background': '/images/table_top.gif'});
					msgtrHeadTd.inject(msgtrHeadTr, 'top');
					var msgIntable = new Element('table', {'width': '97%', 'border': '0', 'align': 'center', 'cellpadding': '0', 'cellspacing': '0'});
					msgIntable.inject(msgtrHeadTd, 'top');
					var msgIntableTr = new Element('tr');
					msgIntableTr.inject(msgIntable, 'top');
					var msgIntableTd = new Element('td', {'width': '100%', 'align': 'left'});
					msgIntableTd.inject(msgIntableTr, 'top');
					var msgH3 = new Element('h3', {'class': 'c_title'});
					msgH3.inject(msgIntableTd, 'top');
					msgH3.set('html', 'You &rarr; '+response.msgto);
					var msgIntableTh = new Element('th', {'nowrap': 'nowrap', 'class': 'padd'});
					msgIntableTh.inject(msgIntableTr, 'bottom');
					msgIntableTh.set('html', '<nobr><h3>'+response.msgdate+'</h3></nobr>');
					
					var msgtr = new Element('tr');
					msgtr.inject(msgtrHeadTr, 'after');
					var msgtrTd = new Element('td', {'bgcolor': '#FFFFFF', 'class': 'brds'});
					msgtrTd.inject(msgtr, 'top');
					var msgtrTdTable = new Element('table', {'width': '95%', 'border': '0', 'align': 'center', 'cellpadding': '1', 'cellspacing': '1'});
					msgtrTdTable.inject(msgtrTd, 'top');
					var msgtrTdTableTr = new Element('tr');
					msgtrTdTableTr.inject(msgtrTdTable, 'top');
					var msgtrTdTableTd = new Element('td', {'width': '100%', 'align': 'left'});
					msgtrTdTableTd.inject(msgtrTdTableTr, 'top');
					msgtrTdTableTd.set('html', response.msgtext);

					var msgtrFoot = new Element('tr');
					msgtrFoot.inject(msgtr, 'after');
					var msgtrFootTd = new Element('td');
					msgtrFootTd.inject(msgtrFoot, 'top');
					msgtrFootTd.set('html', '<img src="/images/tabel_bottom.gif" width="490" height="5" />');

					var msgtrFoot2 = new Element('tr');
					msgtrFoot2.inject(msgtrFoot, 'after');
					var msgtrFoot2Td = new Element('td', {'align': 'right'});
					msgtrFoot2Td.inject(msgtrFoot2, 'top');
					msgtrFoot2Td.set('html', '&nbsp;');

				}
			}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'addMessage', 'id': id, 'comment': comment});
		}
	});

	var clear_btn = new Element('input',{'type': 'button', 'class': 'submit', 'value': 'Clear'});
	clear_btn.setStyle('margin','2px');
	clear_btn.inject(btn_div, 'bottom');
	clear_btn.addEvent('click', function() {
		if (enable_message) {
			$('messagetext'+id).set('value', '');
		}
	});

	var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
		if (response.limits == 0) {
			if (response.spamblock == 1) {
				$('messagetext'+id).set('value', 'You have been blocked by selected user');
			} else {
				$('messagetext'+id).set('disabled', false);
				enable_message = true;
			}
		} else {
			$('messagetext'+id).set('value', 'You have reached day limit for private messages. Try later.');
		}
	}}).post({'sesid': $('sesid').getProperty('value').trim(), 'method': 'GetMsgLimits', 'user': id});

	$('SysMsgOverlay').setStyle('display', 'block');
	$('SysMsgOverlay').tween('opacity', 0.7);

	posY = window.getSize().y/2 + window.getScroll().y - 150/2;
	posX = window.getSize().x/2 + window.getScroll().x - 250/2;
	
	$('SysMsgCenter').setStyle('top', posY);
	$('SysMsgCenter').setStyle('left', posX);
	$('SysMsgCenter').setStyle('display', 'block');
	$('SysMsgCenter').tween('opacity', 1);
}



function ChkContFrm(frm) {
	var re_email = /^[-a-z0-9_\.]+@{1}[-a-z0-9_\.]+\.{1}[-a-z0-9_\.]+$/i;
	var re_ccode = /[0-9]{6}/i;
	var msg = '';

	var cnt_name = $('cnt_name').getProperty('value').trim();
	var cnt_email = $('cnt_email').getProperty('value').trim();
	var cnt_message = $('cnt_message').getProperty('value').trim();
	var cnt_ccode = $('cnt_ccode').getProperty('value').trim();
	var myVerticalSlide = new Fx.Slide('errbox');

	$('cnt_name').removeClass('txon');
	$('cnt_email').removeClass('txon');
	$('cnt_message').removeClass('txon');
	$('cnt_ccode').removeClass('txon');
	$('errbox').setStyle('display', '');
	myVerticalSlide.hide();

	if (!cnt_name && !msg) {
		msg = 'Please enter your name';
		$('cnt_name').addClass('txon');
	}

	if (!cnt_email.test(re_email) && !msg) {
		msg = 'Please enter valid e-mail address';
		$('cnt_email').addClass('txon');
	}

	if (!cnt_message && !msg) {
		msg = 'Please enter message';
		$('cnt_message').addClass('txon');
	}

	if (!cnt_ccode.test(re_ccode) && !msg) {
		msg = 'Please enter 6 digits from the picture';
		$('cnt_ccode').addClass('txon');
	}

	if (!msg) {
		var jsonRequest = new Request.JSON({url: "/json/", onSuccess: function(response){
			if (response.error == 0) {
				$('cont_frm').submit();
			} else {
				if (response.error == 1) {
					msg = 'Internal error, please reload the page';
					$('errbox').set('html', msg);
					myVerticalSlide.slideIn();
				} else {
					msg = 'Incorrect confirmation code';
					$('errbox').set('html', msg);
					myVerticalSlide.slideIn();
					$('cnt_ccode').addClass('txon');
				}
			}
		}}).post({'sesid': $('sesid').getProperty('value').trim(), 'ccode': $('cnt_ccode').getProperty('value').trim(), 'method': 'ChkCntCcode'});
	}

	if (msg) {
		$('errbox').set('html', msg);
		myVerticalSlide.slideIn();
	} 

}
