String.prototype.trim = function () 
{
	return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

function move_postform(prevElement)
{
	var parent = document.getElementById(prevElement);
	var node = document.getElementById('postdiv');
	parent.appendChild(node);
}
function addLabel(label)
{
	var str = document.article_add.labels.value;
	if(str.indexOf(label) < 0)
	{
		if(str.length > 0)
			str += (', '+label);
		else
			str = label;

		document.article_add.labels.value = str;
	}
}
function delLabel(label)
{
	var str = document.article_add.labels.value;
	var arr = str.split(',');
	str = '';
	for(i = 0; i < arr.length; i++)
	{
		arr[i] = arr[i].trim();
		if(arr[i] != label)
		{
			if(str.length > 0)
				str += ', '+arr[i];
			else
				str = arr[i];
		}
	}
	document.article_add.labels.value = str;
}

function mySetForm(action, id)
{
	var form = eval("document._list_form");

	form._act.value = action;
	form._id.value = id;

	var url = window.location.href;

	// remove 'add' and 'edit' and 'del'
	var del_reg2 = new RegExp("\/add", "i");
	url = url.replace(del_reg2, '');

	var del_reg3 = new RegExp("\/edit/[0-9]+", "i");
	url = url.replace(del_reg3, '');

	var del_reg4 = new RegExp("\/del/[0-9]+", "i");
	url = url.replace(del_reg4, '');

	form.action = url;
	form.submit();
};

function mySetFormSimple(action, id)
{
	var form = eval("document._list_form");

	form._act.value = action;
	form._id.value = id;

	form.submit();
};

function addFile(prefix, counter)
{
	counter++;
	var elem = document.getElementById(prefix+counter);
	if(elem != null)
		elem.style.display = '';
}
function checkAll(opt, val)
{
	var sel = '';
	for(i = 0; i < opt.length; i++) 
		opt[i].checked = val;
}
function processAll(opt, act)
{
	var sel = '';
	for(i = 0; i < opt.length; i++) 
	{
		if(opt[i].checked)
		{
			if(sel.length > 0)
				sel += ', ';
			sel += opt[i].id;
		}
	}
	return mySetForm(act, sel);
}

function myModifyURL2(prefix, value, del_prefix)
{
	var url = window.location.href;

	url = url.replace(/([\w\/]+)\/$/, '$1');	// remove slash from end of URL

	var reg = new RegExp(prefix+"[\\w]+", "i");
	var url2 = url.replace(reg, prefix+"_"+value);

	if(url == url2)	// if no replacement occured, just add parameter to URL
		url += '/'+prefix+"_"+value;
	else
		url = url2;

	if(del_prefix != '')
	{
		var del_reg = new RegExp("\/"+del_prefix+"[\\w]+", "i");
		url = url.replace(del_reg, '');
	}

	// remove 'add' and 'edit' 
	var del_reg2 = new RegExp("\/add", "i");
	url = url.replace(del_reg2, '');

	var del_reg3 = new RegExp("\/edit/[0-9]+", "i");
	url = url.replace(del_reg3, '');

	window.location.href = url;
};
function checkDocAddForm()
{
	if(document.file_add.docname.value.length <= 0)				{ alert("Введите название документа"); return false; }
	if(	document.file_add.type_id.selectedIndex < 0 && 
		document.file_add.new_type.value.length <= 0)			{ alert("Выберите тип документа или введите новый тип"); return false; }
	return true;
}
function checkUserAddForm()
{
	if(document.user_add.login.value.length <= 0)		{ alert("Не заполнено поле 'Логин'"); return false; }
	if(document.user_add.pass.value.length <= 0)		{ alert("Не заполнено поле 'Пароль'"); return false; }
	if(document.user_add.pass2.value.length <= 0)		{ alert("Не заполнено поле 'Введите пароль и второй раз'"); return false; }
	if(document.user_add.surname.value.length <= 0)		{ alert("Не заполнено поле 'Фамилия'"); return false; }
	if(document.user_add.name.value.length <= 0)		{ alert("Не заполнено поле 'Имя'"); return false; }
	return true;
}
function checkCitiesAddForm()
{
	if(document.city_add.name.value.length <= 0)		{ alert("Не заполнено поле 'Название'"); return false; }
	if(document.city_add.x.value.length <= 0)			{ alert("Не заполнено поле 'X'"); return false; }
	if(document.city_add.y.value.length <= 0)			{ alert("Не заполнено поле 'Y'"); return false; }
	return true;
}
function checkNewsAddForm()
{
	if(document.news_add.news_header.value.length <= 0)	{ alert("Не заполнено поле 'Заголовок'"); return false; }
	if(document.news_add.news_body.value.length <= 0)	{ alert("Не заполнено поле 'Текст'"); return false; }
	return true;
}
function checkDistrNewsAddForm()
{
	if(document.news_add.header.value.length <= 0)		{ alert("Не заполнено поле 'Заголовок'"); return false; }
	if(document.news_add.body.value.length <= 0)		{ alert("Не заполнено поле 'Текст'"); return false; }
	return true;
}
function checkAdvAddForm()
{
	if(document.adv_add.name.value.length <= 0)			{ alert("Не заполнено поле 'Название'"); return false; }
	if(document.adv_add.url.value.length <= 0)			{ alert("Не заполнено поле 'Ссылка'"); return false; }
	if(document.adv_add.text.value.length <= 0)			{ alert("Не заполнено поле 'Текст'"); return false; }
	return true;
}
function checkJobsAddForm()
{
	if(document.jobs_add.name.value.length <= 0)		{ alert("Не заполнено поле 'Название'"); return false; }
	if(document.jobs_add.descr.value.length <= 0)		{ alert("Не заполнено поле 'Описание'"); return false; }
	return true;
}
function checkStaticAddForm()
{
	if(document.static_add.name.value.length <= 0)		{ alert("Не заполнено поле 'Название'"); return false; }
	if(document.static_add.url.value.length <= 0)		{ alert("Не заполнено поле 'URL'"); return false; }
	var sel = document.static_add.parent;
	if(sel.options[sel.selectedIndex].value < 0)		{ alert("Не заполнено поле 'В разделе'"); return false; }
	return true;
}

function getPosition(obj) 
{
	var x = 0, y = 0;
	while(obj) 
	{
		x += obj.offsetLeft;
		y += obj.offsetTop;
		obj = obj.offsetParent;
	}
	return {x: x, y:y};
};
function myOpenCalendar(form_name, field_name, cal_img)
{
	dateField = eval("document." + form_name + "." + field_name);
	var c = getPosition(document.getElementById(cal_img));
	var win = window.open(base_href+"include/calendar.php", "calendar", "width=200,height=200,left="+c["x"]+",top="+c["y"]+",status=no,resizable=no");
};
function tag(elem, tagLeft, tagRight)
{
	document.getElementById(elem).focus();
	document.selection.createRange().text = tagLeft+document.selection.createRange().text+tagRight;
}

