
function RequestAJAX(link, id, idelement)
{
	var obj = new sack();
	obj.method = "POST";
	obj.requestFile = link;
	obj.onFail = function(obj) { window.location.href = obj.requestFile; };
	obj.targetDiv = document.getElementById(idelement + '_' + id);
	obj.runAJAX();

	return false;
}

function AddToFavorites(article_id)
{
	var obj = new sack();
	obj.method = "POST";
	obj.requestFile = "/~profile/favorites/add/" + article_id + "/";
	obj.onCompletion = function(obj) { alert(obj.response); }
	obj.onFail = function(obj) { window.location.href = obj.requestFile; };
	obj.runAJAX();
}

function SubscribeToJournal(journal_domain)
{
	var obj = new sack();
	obj.method = "POST";
	obj.requestFile = "/~profile/subscribe/" + journal_domain + "/";
	obj.onCompletion = function(obj) { alert(obj.response); }
	obj.onFail = function(obj) { window.location.href = obj.requestFile; }
	obj.runAJAX();
}

function SearchAuthor(field_id, nick)
{
	var obj = new sack();
	obj.field_id = field_id;
	obj.method = "POST";
	obj.requestFile = "/~searchAuthor/" + nick + "/?noxslt=1";
	obj.onCompletion = function(obj)
		{
			if (obj.response == 'NOT_FOUND')
				alert(lang['NOTHING_FOUND']);
			else
			{
				var div = document.getElementById('searchResultWindow');
				
				div.style.display = '';
				found = obj.response.split(':');
				
				var text = '<table border="0" width="100%" style="border-collapse: collapse; border: 1px solid black" cellspacing="0" cellpadding="3">';
				for (var i = 0; i < found.length; i++)
				{
					text += '<tr><td id="searchResultXX_' + i + '" align="left" ' +
							'style="cursor: pointer; border-bottom: 1px solid black; border-top: 1px solid black" ' +
							'onmouseover="document.getElementById(\'searchResultXX_' + i + '\').style.backgroundColor = \'#808080\';" ' +
							'onmouseout="document.getElementById(\'searchResultXX_' + i + '\').style.backgroundColor = \'\';" ' +
							'onclick="document.getElementById(\'searchResultWindow\').style.display = \'none\'; document.getElementById(\'' + obj.field_id + '\').value = \'' + found[i] + '\'" >';
					text += found[i];
					text += '</td></tr>';
				}
				text += '</table>';				
				
				div.innerHTML = text;
			}
		}
	obj.onFail = obj.onError;
	obj.runAJAX();

	return false;
}

function SetValidationResult(id, flag)
{
	var r1 = document.getElementById(id + '_row');
	var r2 = document.getElementById(id + '_3rd');

	if (r1 && r2 && r1.style)
	{
		if (flag)
		{
			r2.innerHTML = '<img src=\"/~static/images/ok.gif\" alt=\"OK\" />';
			r1.style.backgroundColor = 'white';
		}
		else
		{
			r2.innerHTML = ' ';
			r1.style.backgroundColor = 'red';
		}
	}
}

function ValidateLogin()
{
	var login = document.getElementById('nick');

	if (!login || !login.value || !login.value.length)
		SetValidationResult('nick', false);
	else
	{
		var obj = new sack();
		obj.method = "POST";
		obj.requestFile = "/~validateLogin/" + encodeURIComponent(login.value) + "/?noxslt=1";
		obj.onCompletion = function(obj) { SetValidationResult('nick', obj.response == 'OK'); }
		obj.onFail = obj.onError;
		obj.runAJAX();
	}
}

function ValidateEmail()
{
	var mail = document.getElementById('mail');

	if (!mail || !mail.value || !mail.value.length)
		SetValidationResult('mail', false);
	else
	{
		var obj = new sack();
		obj.method = "POST";
		obj.requestFile = "/~validateEmail/" + encodeURIComponent(mail.value) + "/?noxslt=1";
		obj.onCompletion = function(obj) { SetValidationResult('mail', obj.response == 'OK'); }
		obj.onFail = obj.onError;
		obj.runAJAX();
	}
}

function ValidateDomain()
{
	var url = document.getElementById('url');

	if (!url || !url.value || !url.value.length)
		SetValidationResult('url', false);
	else
	{
		var obj = new sack();
		obj.method = "POST";
		obj.requestFile = "/~validateDomain/" + encodeURIComponent(url.value) + "/?noxslt=1";
		obj.onCompletion = function(obj) { SetValidationResult('url', obj.response == 'OK'); }
		obj.onFail = obj.onError;
		obj.runAJAX();
	}
}

function ValidatePassword(num)
{
	var pwd1 = document.getElementById('pwd1');
	var pwd2 = document.getElementById('pwd2');

	switch (num)
	{
	case 1:
		SetValidationResult('pwd1', pwd1 && pwd1.value && pwd1.value.length > 3);
		break;
	case 2:
		SetValidationResult('pwd2', pwd2 && pwd2.value && pwd2.value == pwd1.value);
		break;
	}
}

function SetRating(articleID, rating, radiobox)
{
	var rb = radiobox;

	var obj = new sack();
	obj.method = "POST";
	obj.requestFile = "?rating=" + encodeURIComponent(articleID + ":" + rating);
	obj.onCompletion = function(obj)
		{
			var f = document.getElementById('ratingForm');
			var r = document.getElementById('rating_article_' + articleID);

			if (obj.response == "FAIL")
			{
				alert(lang['CANT_ADD_RATING']);
				rb.checked = false;
			}
			else
			{
				var arr = obj.response.substr(3).split('*');
				var rating = arr[0];
				var count = arr[1];

				if (f)
					f.style.display = 'none';
				if (r)
					r.innerHTML = obj.response;

				alert(lang['YOUR_RATING_ADDED']);
			}
		}
	obj.onFail = function(obj) { window.location.href = obj.requestFile; };
	obj.runAJAX();
}

function AddToTematic()
{
	var temt = document.getElementById('temt');
	var tem2 = document.getElementById('tem2');
	var tmtl = document.getElementById('tmtl');

	if (temt && tmtl)
		tmtl.disabled = !temt.checked;
	if (temt && tem2)
		tem2.disabled = temt.checked;
}

function RecommendToTematic()
{
	var temt = document.getElementById('temt');
	var tem2 = document.getElementById('tem2');
	var tm2l = document.getElementById('tm2l');

	if (tem2 && tm2l)
		tm2l.disabled = !tem2.checked;
	if (temt && tem2)
		temt.disabled = tem2.checked;
}

function fixPNG(element)
{
	if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
	{
		var src;

		if (element.tagName=='IMG')
		{
			if (/\.png$/.test(element.src))
			{
				src = element.src;
				element.src = "/~static/images/dummy.gif";
			}
		}
		else
		{
			src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)
			if (src)
			{
				src = src[1];
				element.runtimeStyle.backgroundImage = "none";
			}
		}

		if (src)
		{
			element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" +
				src + "',sizingMethod='scale')";
		}
	}
}

function SetGroupType(val)
{
	var c_open = document.getElementById('open');
	var c_clos = document.getElementById('clos');
	
	c_open.checked = (val == 0);
	c_clos.checked = (val == 1);
}

function SetBannerType(type)
{
	var c_url = document.getElementById('curl_row');
	var c_alt = document.getElementById('altm_row');

	c_url.style.display = type == 'image' ? '' : 'none';
	c_alt.style.display = type == 'image' ? '' : 'none';
}

function TogglePlacementEnables()
{
	var lshw = document.getElementById('lshw');
	var nshw = document.getElementById('nshw');
	var ltim = document.getElementById('ltim');
	var ntid = document.getElementById('time_day');
	var ntim = document.getElementById('time_month');
	var ntiy = document.getElementById('time_year');

	nshw.disabled = !lshw.checked;
	ntid.disabled = !ltim.checked;
	ntim.disabled = !ltim.checked;
	ntiy.disabled = !ltim.checked;
}

function ChoosePaymentSystem(rad)
{
	var yamn = document.getElementById('yamn');
	var wmnr = document.getElementById('wmnr');
	var wmnz = document.getElementById('wmnz');
	
	yamn.checked = rad == yamn;
	wmnr.checked = rad == wmnr;
	wmnz.checked = rad == wmnz;
}

