function ContentStyleBar()
{
	document.getElementById("StyleBold").onclick = function() { addStyle("b"); };
	document.getElementById("StyleUnderline").onclick = function() { addStyle("u"); };
	document.getElementById("StyleItalic").onclick = function() { addStyle("i"); };
	document.getElementById("StyleStrike").onclick = function() { addStyle("s"); };
	document.getElementById("StyleAlignLeft").onclick = function() { addStyle("left"); };
	document.getElementById("StyleAlignRight").onclick = function() { addStyle("right"); };
	document.getElementById("StyleAlignCenter").onclick = function() { addStyle("center"); };
	document.getElementById("StyleAlignJustify").onclick = function() { addStyle("justify"); };
	document.getElementById("StyleAnchor").onclick = function() { addStyle("anchor"); };
	document.getElementById("StyleQuote").onclick = function() { addStyle("quote"); };
	document.getElementById("StyleCode").onclick = function() { addStyle("code"); };
	document.getElementById("StyleSub").onclick = function() { addStyle("sub"); };
	document.getElementById("StyleSup").onclick = function() { addStyle("sup"); };
	document.getElementById("StyleSize").onclick = function() { addStyle("size"); }; // UH?
	document.getElementById("StyleFont").onclick = function() { addStyle("font"); }; // UH?
	document.getElementById("StyleColor").onclick = function() { addStyle("color"); }; // UH?
	
	// С полем ввода
	document.getElementById("StyleURL").onclick = function() { PromptURL("url"); };
	document.getElementById("StyleImage").onclick = function() { PromptURL("img"); };
	document.getElementById("StyleEmail").onclick = function() { PromptEmail("email"); };
	document.getElementById("StyleList").onclick = function() { PromptList("list"); };
	document.getElementById("StyleNumberedList").onclick = function() { PromptList("numlist"); };
}

function addStyle(style)
{
	// # Добавляем стили в textarea по выделенному фрагменту
	var textfield = document.getElementById("textfield");
	
	if (textfield && textfield.caretPos)
	{
		// Вставка в позицию курсора (не работает, 2 иф делает всё за неё)
		textfield.caretPos.style=style;
	}
	else if (textfield && textfield.selectionStart+1 && textfield.selectionEnd+1)
	{
		// Сохраняем выделенный контент
		var selected_text = textfield.value.substring(textfield.selectionStart,textfield.selectionEnd);
		
		// Вставка вокруг выделенного фрагмента
		textfield.value = textfield.value.substring(0,textfield.selectionStart)+"["+style+"]"+selected_text+"[/"+style+"]"+textfield.value.substring(textfield.selectionEnd,textfield.value.length);
	}
	else if (textfield)
	{
		// Вставка без выделения
		textfield.value += style;
	}
}

function PromptURL(tag)
{
	var urlpath = prompt("Enter URL","http://");
	if (urlpath != null && urlpath != "" && urlpath != "http://")
	{
		var urltitle = prompt("Enter Title (empty field will copy URL address in title)","");

		if (urltitle == null || urltitle == "")
		{
			urltitle = urlpath;
		}

		document.getElementById("textfield").value += "["+ tag +"=\"" + urlpath + "\"]" + urltitle + "[/"+ tag +"]";
	}
}

function PromptEmail()
{
	var mailpath=prompt("Enter E-mail address","");
	if (mailpath != null && mailpath != "")
	{		
		document.getElementById("textfield").value += "[email=\"" + mailpath + "\"]" + mailpath + "[/email]";
	}
}

function PromptList()
{
	var listtitle=prompt("Enter title of the list","");
	var listitem=prompt("Enter a list item text","");
	var onlyitem;
	while (listitem != null & listitem != "")
	{
		// Введён заголовок
		if (listtitle != null && listtitle != "" && onlyitem != 1)
		{
			document.getElementById("textfield").value += "[list=\"1;"+ listtitle +"\"]\n[*]" + listitem + "\n[/list]\n";
			listtitle = "";
			onlyitem = 1;
		}
		// Заголовок уже находится в тектовой области
		else if (onlyitem == 1)
		{
			document.getElementById("textfield").value += "[*]" + listitem + "\n";
		}
		// Заголовка не надо
		else
		{
			document.getElementById("textfield").value += "[list]\n[*]" + listitem + "\n[/list]\n";
			onlyitem = 1;
		}
		
		listitem="";
		listitem=prompt("Enter next list item text (blank field will end a list)","");		
	}
}
