
//--------------------------------------------
// Set up our simple tag open values
//--------------------------------------------
//
// Modified by Volker Puttrich to allow IE 4+
// on windows to use cursor position for inserting
// tags / smilies

var B_open = 0;
var I_open = 0;
var U_open = 0;
var QUOTE_open = 0;
var CODE_open = 0;
var SQL_open = 0;
var HTML_open = 0;

var bbtags   = new Array();

// Determine browser type and stuff.
// Borrowed from http://www.mozilla.org/docs/web-developer/sniffer/browser_type.html

var myAgent   = navigator.userAgent.toLowerCase();
var myVersion = parseInt(navigator.appVersion);

var is_ie   = ((myAgent.indexOf("msie") != -1)  && (myAgent.indexOf("opera") == -1));
var is_nav  = ((myAgent.indexOf('mozilla')!=-1) && (myAgent.indexOf('spoofer')==-1)
                && (myAgent.indexOf('compatible') == -1) && (myAgent.indexOf('opera')==-1)
                && (myAgent.indexOf('webtv') ==-1)       && (myAgent.indexOf('hotjava')==-1));

var is_win   =  ((myAgent.indexOf("win")!=-1) || (myAgent.indexOf("16bit")!=-1));
var is_mac    = (myAgent.indexOf("mac")!=-1);

// Set the initial radio button status based on cookies

var allcookies = document.cookie;
var pos = allcookies.indexOf("bbmode=");

prep_mode();

function prep_mode()
{

		// default to normal mode.
//		document.REPLIER.bbmode[1].checked = true;

}

function setmode(mVal)
{
	document.cookie = "bbmode="+mVal+"; path=/; expires=Wed, 1 Jan 2020 00:00:00 GMT;";
}

function get_easy_mode_state()
{

		return false;

}

//--------------------------------------------
// Set the help bar status
//--------------------------------------------

function hstat(msg)
{
	document.REPLIER.helpbox.value = eval( "help_" + msg );
}


//--------------------------------------------
// Get stack size
//--------------------------------------------

function stacksize(thearray)
{
	for (i = 0 ; i < thearray.length; i++ ) {
		if ( (thearray[i] == "") || (thearray[i] == null) || (thearray == 'undefined') ) {
			return i;
		}
	}

	return thearray.length;
}

//--------------------------------------------
// Push stack
//--------------------------------------------

function pushstack(thearray, newval)
{
	arraysize = stacksize(thearray);
	thearray[arraysize] = newval;
}

//--------------------------------------------
// Pop stack
//--------------------------------------------

function popstack(thearray)
{
	arraysize = stacksize(thearray);
	theval = thearray[arraysize - 1];
	delete thearray[arraysize - 1];
	return theval;
}



//--------------------------------------------
// ADD CODE
//--------------------------------------------

function add_code(NewCode)
{
    document.REPLIER.Post.value += NewCode;
    document.REPLIER.Post.focus();
}




//--------------------------------------------
// SIMPLE TAGS (such as B, I U, etc)
//--------------------------------------------

function simpletag(thetag)
{
	var tagOpen = eval(thetag + "_open");

	if ( get_easy_mode_state() )
	{
		inserttext = prompt(prompt_start + "\n[" + thetag + "]xxx[/" + thetag + "]");
		if ( (inserttext != null) && (inserttext != "") )
		{
			doInsert("[" + thetag + "]" + inserttext + "[/" + thetag + "] ", "", false);
		}
	}
	else {
		if (tagOpen == 0)
		{
			if(doInsert("[" + thetag + "]", "[/" + thetag + "]", true))
			{
				eval(thetag + "_open = 1");
				// Change the button status
				eval("document.REPLIER." + thetag + ".value += '*'");

				pushstack(bbtags, thetag);
				hstat('click_close');
			}
		}
		else {
			// Find the last occurance of the opened tag
			lastindex = 0;

			for (i = 0 ; i < bbtags.length; i++ )
			{
				if ( bbtags[i] == thetag )
				{
					lastindex = i;
				}
			}

			// Close all tags opened up to that tag was opened
			while (bbtags[lastindex])
			{
				tagRemove = popstack(bbtags);
				doInsert("[/" + tagRemove + "]", "", false)

				// Change the button status
				if ( (tagRemove != 'FONT') && (tagRemove != 'SIZE') && (tagRemove != 'COLOR') )
				{
					eval("document.REPLIER." + tagRemove + ".value = ' " + tagRemove + " '");
					eval(tagRemove + "_open = 0");
				}
			}

		}
	}
}




function tag_url()
{
    var FoundErrors = '';
    var enterURL   = prompt(text_enter_url, "http://");
    var enterTITLE = prompt(text_enter_url_name, "My Webpage");

    if (!enterURL) {
        FoundErrors += " " + error_no_url;
    }
    if (!enterTITLE) {
        FoundErrors += " " + error_no_title;
    }

    if (FoundErrors) {
        alert("Error!"+FoundErrors);
        return;
    }

	doInsert("[URL="+enterURL+"]"+enterTITLE+"[/URL]", "", false);
}




//--------------------------------------------
// GENERAL INSERT FUNCTION
//--------------------------------------------
// ibTag: opening tag
// ibClsTag: closing tag, used if we have selected text
// isSingle: true if we do not close the tag right now
// return value: true if the tag needs to be closed later

//

function doInsert(ibTag, ibClsTag, isSingle)
{
	var isClose = false;
	var obj_ta = document.REPLIER.Post;

	if ( (myVersion >= 4) && is_ie && is_win) // Ensure it works for IE4up / Win only
	{
		if(obj_ta.isTextEdit){ // this doesn't work for NS, but it works for IE 4+ and compatible browsers
			obj_ta.focus();
			var sel = document.selection;
			var rng = sel.createRange();
			rng.colapse;
			if((sel.type == "Text" || sel.type == "None") && rng != null){
				if(ibClsTag != "" && rng.text.length > 0)
					ibTag += rng.text + ibClsTag;
				else if(isSingle)
					isClose = true;

				rng.text = ibTag;
			}
		}
		else{
			if(isSingle)
				isClose = true;

			obj_ta.value += ibTag;
		}
	}
	else
	{
		if(isSingle)
			isClose = true;

		obj_ta.value += ibTag;
	}

	obj_ta.focus();

	// clear multiple blanks
//	obj_ta.value = obj_ta.value.replace(/  /, " ");

	return isClose;
}
var MessageMax  = "";
var Override    = "";
MessageMax      = parseInt(MessageMax);

if ( MessageMax < 0 )
{
	MessageMax = 0;
}


function CheckLength() {
	MessageLength  = document.REPLIER.Post.value.length;
	message  = "";
		if (MessageMax > 0) {
			message = "Сообщение: Максимально допустимая длина " + MessageMax + " символов.";
		} else {
			message = "";
		}
		alert(message + "      Вами использовано " + MessageLength + " символов.");
}
function ValidateBan(){
		MessageLength = document.REPLIER.Post.value.length;
         if(MessageLength > 90){alert('текст сообщения превышает 90 символов'); return false;}
}
	function ValidateForm(isMsg) {
    	if(isMsg){
       		if(isValidEmailAddress(document.REPLIER.EmailAddressField.value)==false){	return false;}
        }
		MessageLength  = document.REPLIER.Post.value.length;
		errors = "";


		if (MessageLength < 2) {
			 errors = "Вы должны ввести текст сообщения!";
		}
		if (MessageMax !=0) {
			if (MessageLength > MessageMax) {
				errors = "Максимально допустимая длина " + MessageMax + " символов. Текущие символы: " + MessageLength;
			}
		}
		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.REPLIER.submit.disabled = true;
			return true;
		}
	}
	function ValidateFormMuz(isMsg) {

		MessageLength  = document.REPLIER.Post.value.length;
		errors = "";
   		if(document.REPLIER.p_name.value==""){errors = "Вы должны ввести имя мужа!"; }

		if (MessageLength < 2) {
			 errors = "Вы должны ввести описание мужа!";
		}

		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.REPLIER.submit.disabled = true;
			return true;
		}
	}
    	function ValidateFormVid(isMsg) {

		MessageLength  = document.REPLIER.Post.value.length;
		errors = "";
   		if(document.REPLIER.v_name.value==""){errors = "Вы дожны ввести название вида работы!"; }

		if (MessageLength < 2) {
			 errors = "Вы должны ввести описание вида работы!";
		}

		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.REPLIER.submit.disabled = true;
			return true;
		}
	}
    	function ValidateFormPrice(isMsg) {

		MessageLength  = document.REPLIER.Post.value.length;
		errors = "";
   		if(document.REPLIER.v_name.value==""){errors = "Вы дожны ввести название услуги!"; }

		if (MessageLength < 2) {
			 errors = "Вы должны ввести информацию о цене на услугу!";
		}

		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.REPLIER.submit.disabled = true;
			return true;
		}
	}
        	function ValidateFormPar(isMsg) {

		MessageLength  = document.REPLIER.Post.value.length;
		errors = "";
   		if(document.REPLIER.v_name.value==""){errors = "Вы дожны ввести наименование партнера!"; }

		if (MessageLength < 2) {
			 errors = "Вы должны ввести информацию о партнере!";
		}

		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.REPLIER.submit.disabled = true;
			return true;
		}
	}
    function ValidateFormForms(isMsg) {
		errors = "";
   		if(document.sendemail.sender_name.value==""){errors = "Вы не указали своё имя!"; }
   		if(document.sendemail.adress.value==""){errors = "Вы не указали адрес!"; }
   		if(document.sendemail.phone.value==""){errors = "Вы не указали телефон!"; }
   		if(document.sendemail.message.value==""){errors = "Вы не описали проблему!"; }

		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.sendemail.submit.disabled = true;
			return true;
		}
	}
        function ValidateFormQ(isMsg) {
		errors = "";
   		if(document.REPLIER.news_date.value==""){errors = "Вы не ввели вопрос!"; }
   		if(document.REPLIER.Post.value==""){errors = "Вы не ввели ответ!"; }

		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.REPLIER.submit.disabled = true;
			return true;
		}
	}
    function ValidateFormQues(isMsg) {
		errors = "";
   		if(document.sendemail.sender_name.value==""){errors = "Вы не указали своё имя!"; }
   		if(document.sendemail.question.value==""){errors = "Вы не задали вопрос!"; }

		if (errors != "" && Override == "") {
			alert(errors);
			return false;
		} else {
			document.sendemail.submit.disabled = true;
			return true;
		}
	}

	// IBC Code stuff
	var text_enter_url      = "Введите полный URL ссылки";
	var text_enter_url_name = "Введите название сайта";
	var error_no_url        = "Вы должны ввести URL";
	var error_no_title      = "Вы должны ввести название";

	var help_bold           = "Жирный текст (alt + b)";

	var help_url            = "Ввод гиперссылки (alt+ h)";
	var help_click_close    = "Нажмите на кнопку для закрытия";


function checkradio(pp,count){
	document.newslist.d.value="";
    var max=pp;
    if(pp>count){max=count;}
	for(i=1;i<=max;i++){
    	temp="id"+i;
//        alert(document.getElementById(temp).checked  );
//    	document.getElementById(temp).value
	    if(document.getElementById(temp).checked){
	     document.newslist.d.value="true";
	     return;
	    }
	}
    alert('Необходимо отметить галочкой удаляемые сообщения!');
//document.location.href="index.php?r=1";
}
function isValidEmailAddress ( str )  {
//   проверяет  не осталось ли поле пустым
if (str == "") {
alert ("Введите адрес электронной почты, пожалуйста.")
return false
}
//   проверяет наличи  '@'
else if ( str. indexOf ( "@" , 3) == -1 ) {
alert("Error: Вы внесли  " + str + ". Ваш электронный адрес не содержит в себе '@' ." ) ;
return false
}
 //  проверяет наличие 'точки'
else if ( str. indexOf ( "." , 7) == -1 ) {
alert("Error:  Вы внесли " + str + ". Ваш электронный адрес не содержит в себе '.' ." ) ;
return false
}
return true
}

