// Java Script основа HeavyMusic.ru


// Проверка версии броузера и платформы для функций toSmall(), toBig(), bbcodestyle() и codestyle()

	var clientPC = navigator.userAgent.toLowerCase(); // Get client info
	var clientVer = parseInt(navigator.appVersion); // Get browser version
	var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1));
	var is_nav  = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1)&&(clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1)&&(clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1));
	var is_win   = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1));
	var is_mac    = (clientPC.indexOf("mac")!=-1);


// Подсказки для кнопок функции helpline()
	non_help = "";
	b_help = "Жирный текст: [b]текст[/b]";
	i_help = "Курсив: [i]текст[/i]";
	u_help = "Подчёркнутый текст: [u]текст[/u]";
	img_help = "Отображение рисунка: [img]http://...jpg[/img] MAX ширина - 450px!!!!!";
	small_help = "Переводит выделенный фрагмент в нижний регистр";
	big_help = "Переводит выделенный фрагмент в верхний регистр";
	center_help = "Центрирует выделенный фрагмент";
	h_help = "Делает заголовком выделенный фрагмент";
	quote_help = "Делает цитатой выделенный фрагмент";

	history_help = "Прописывает строку \"История\"";
	lineup_help = "Прописывает строку \"Состав\"";
	disco_help = "Прописывает строку \"Дискография\"";
	photos_help = "Прописывает строку \"Фотографии\"";
	pJustify_help = "Прописывает абзац, выравненный по ширине";
	discotable_help = "Прописывает главные теги таблицы";
	discotableCell_help = "Прописывает ячейку таблицы";

	photo1_help = "Вставляет в текст фотографию №1";
	photo2_help = "Вставляет в текст фотографию №2";
	photo3_help = "Вставляет в текст фотографию №3";
	photo4_help = "Вставляет в текст фотографию №4";
	photo5_help = "Вставляет в текст фотографию №5";

// Тэги для функции tag_to_text()
	photo1_tag = "<photo01>";
	photo2_tag = "<photo02>";
	photo3_tag = "<photo03>";
	photo4_tag = "<photo04>";
	photo5_tag = "<photo05>";
	tire_tag = "&#151;";

	history_tag = "<h3 align=\"center\">История</h3>";
	lineup_tag = "<h3 align=\"center\">Состав</h3>";
	disco_tag = "<h3 align=\"center\">Дискография</h3>";
	photos_tag = "<h3 align=\"center\">Фотографии</h3>";
	pJustify_tag = "<p align=\"justify\"> </p>";
	discotable_tag = "<table align=\"center\"> </table>";
	discotableCell_tag = "<tr><td></td><td></td></tr>";


// Тэги кода BB для функции bbcodestyle()
	bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[center]','[/center]', '[img]','[/img]', '[quote]','[/quote]');

// Тэги кода HTML для функции codestyle()
	tags = new Array('<b>','</b>','<i>','</i>','<u>','</u>','&laquo;','&raquo;','<h4>','</h4>');


// Функция отображения подсказок. Работает в поле helpbox

	function helpline(help) 
	{
		document.post.helpbox.value = eval(help + "_help");
	}


// Функция вставки кодов. Работает с выделенным текстом в любом поле
	function codestyle(codenumber) 
	{
		theSelection = false;

//		if ((clientVer >= 4) && is_ie && is_win)
			theSelection = document.selection.createRange().text; // Фиксируем выделенный текст

		if (theSelection) 
		{
			// Добавляем тэги вокруг выделенного объекта
			document.selection.createRange().text = tags[codenumber] + theSelection + tags[codenumber+1];
			theSelection = '';
			return;
		}
	}

// Функция вставки BB кодов. Работает с выделенным текстом в любом поле
	function bbcodestyle(codenumber) 
	{
		theSelection = false;

//		if ((clientVer >= 4) && is_ie && is_win)
			theSelection = document.selection.createRange().text; // Фиксируем выделенный текст

		if (theSelection) 
		{
			// Добавляем тэги вокруг выделенного объекта
			document.selection.createRange().text = bbtags[codenumber] + theSelection + bbtags[codenumber+1];
			theSelection = '';
			return;
		}
	}


// Функция добавления смайлов. Работает в поле message
	function addsmile (smile) 
	{
		if (document.post.message.createTextRange && document.post.message.caretPos) 
		{
			var caretPos = document.post.message.caretPos;
			caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? smile + ' ' : smile ;
			document.post.message.focus();
		} 
		else 
		{
			document.post.message.value  += smile;
			document.post.message.focus();
		}
	}


// Функция добавления цитат. Работает в поле message
	function addquote (user) 
	{
		theSelection = document.selection.createRange().text;
		if (theSelection) 
		{
//				window.alert("[quote][i][b]" + user + ":[/b][i] " + theSelection + "[/quote]");
//				quote = eval("[quote][i][b]" + user + ":[/b][i] " + theSelection + "[/quote]");
//				if (document.post.message.createTextRange && document.post.message.caretPos) 
//				{
//					var caretPos = document.post.message.caretPos;
//					caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?  quote + ' ' : quote ;
//					document.post.message.focus();
//				} 
//				else 
//				{
					document.post.message.value  += ("[quote][i][b]" + user + ":[/b][/i] " + theSelection + "[/quote]");
					document.post.message.focus();
//				}
			theSelection = '';
			return;
		}
	}

// функция добавления тегов HTML в текст. Работает в поле text
	function tag_to_text (name) 
	{
		name = eval(" " + name + "_tag");

		if (document.post.text.createTextRange && document.post.text.caretPos) 
		{
			var caretPos = document.post.text.caretPos;
			caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? name + ' ' : name ;
			document.post.text.focus();
		} 
		else 
		{
			document.post.text.value  += name;
			document.post.text.focus();
		}
	}


// функция делает выделенный фрагмент текста ПРОПИСНЫМ. Работает с выделенным текстом в любом поле
	function toBig() 
	{
		theSelection = false;
//		if ((clientVer >= 4) && is_ie && is_win)
			theSelection = document.selection.createRange().text; // Фиксируем выделенный текст

		if (theSelection) 
		{
			// Изменяем регистр выделенного текста
			document.selection.createRange().text = theSelection.toUpperCase();
			theSelection = '';
			return;
		}
	}


// функция делает выделенный фрагмент текста строчным. Работает с выделенным текстом в любом поле
	function toSmall() 
	{
		theSelection = false;
//		if ((clientVer >= 4) && is_ie && is_win)
			theSelection = document.selection.createRange().text; // Фиксируем выделенный текст

		if (theSelection) 
		{
			// Изменяем регистр выделенного текста
			document.selection.createRange().text = theSelection.toLowerCase();
			theSelection = '';
			return;
		}
	}

// функция фиксирования курсора. Работает в любом поле
	function storeCaret(textEl) 
	{
		if (textEl.createTextRange) 
			textEl.caretPos = document.selection.createRange().duplicate();
	}


// Функция изменения цвета фона ячейки при наведени курсора мыши на ячейку в главном меню
	function Hower (f)
	{
		f.style.backgroundColor='#ecf1f5';
//		f.style.cursor='hand';
		f.style.color='#9D9DCE';
	}

// Функция изменения цвета фона ячейки при наведени курсора мыши на ячейку вне главного меню
	function Hower2 (f)
	{
		f.style.backgroundColor='#ffffff';
//		f.style.cursor='hand';
		f.style.color='#9D9DCE';
	}

// Функции восстановления цвета фона ячейки при снятии наведения курсора мыши
	function ower (f)
	{
		f.style.backgroundColor='';
	}

	function CheckAll(name)
	{
		thisCheckBoxes = document.getElementsByTagName('input');
		for (i=1; i<thisCheckBoxes.length; i++) 
		{
			if (thisCheckBoxes[i].id == 'delcheck')	thisCheckBoxes[i].checked = name.checked;
		}
	}
	

// Функции оценки
	function rate (num) 
	{
		switch (num)
		{
		case 1: 
			document.spot1.src='design/spot-black.png';
			break;
		case 2: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			break;
		case 3: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			break;
		case 4: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			document.spot4.src='design/spot-black.png';
			break;
		case 5: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			document.spot4.src='design/spot-black.png';
			document.spot5.src='design/spot-black.png';
			break;
		case 6: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			document.spot4.src='design/spot-black.png';
			document.spot5.src='design/spot-black.png';
			document.spot6.src='design/spot-black.png';
			break;
		case 7: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			document.spot4.src='design/spot-black.png';
			document.spot5.src='design/spot-black.png';
			document.spot6.src='design/spot-black.png';
			document.spot7.src='design/spot-black.png';
			break;
		case 8: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			document.spot4.src='design/spot-black.png';
			document.spot5.src='design/spot-black.png';
			document.spot6.src='design/spot-black.png';
			document.spot7.src='design/spot-black.png';
			document.spot8.src='design/spot-black.png';
			break;
		case 9: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			document.spot4.src='design/spot-black.png';
			document.spot5.src='design/spot-black.png';
			document.spot6.src='design/spot-black.png';
			document.spot7.src='design/spot-black.png';
			document.spot8.src='design/spot-black.png';
			document.spot9.src='design/spot-black.png';
			break;
		case 10: 
			document.spot1.src='design/spot-black.png';
			document.spot2.src='design/spot-black.png';
			document.spot3.src='design/spot-black.png';
			document.spot4.src='design/spot-black.png';
			document.spot5.src='design/spot-black.png';
			document.spot6.src='design/spot-black.png';
			document.spot7.src='design/spot-black.png';
			document.spot8.src='design/spot-black.png';
			document.spot9.src='design/spot-black.png';
			document.spot10.src='design/spot-black.png';
			break;
		}
	}

	function unrate ()
	{
		document.spot1.src='design/spot-white.png';
		document.spot2.src='design/spot-white.png';
		document.spot3.src='design/spot-white.png';
		document.spot4.src='design/spot-white.png';
		document.spot5.src='design/spot-white.png';
		document.spot6.src='design/spot-white.png';
		document.spot7.src='design/spot-white.png';
		document.spot8.src='design/spot-white.png';
		document.spot9.src='design/spot-white.png';
		document.spot10.src='design/spot-white.png';
	}


// (c) 2005 John Sinterson & Power Studio. All rights reserved!