
/** copy from http://www.khspu.ru/~Board/viewtopic.php?t=210 */

var clientPC  = navigator.userAgent.toLowerCase();
var clientVer = parseInt(navigator.appVersion);

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_moz = 0;

var is_win = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1));
var is_mac = (clientPC.indexOf("mac")!=-1);

function mozillaWr(textarea, open, close)
{
    var selLength = textarea.textLength;
    var selStart = textarea.selectionStart;
    var selEnd = textarea.selectionEnd;
    if (selEnd == 1 || selEnd == 2){    
         selEnd = selLength;
    }
    var s1 = (textarea.value).substring(0,selStart);
    var s2 = (textarea.value).substring(selStart, selEnd)
    var s3 = (textarea.value).substring(selEnd, selLength);
    textarea.value = s1 + open + s2 + close + s3;
    
    textarea.selectionEnd = 0;
    textarea.selectionStart = selEnd + open.length + close.length;
    return;
}

function insertText(text, textarea)
{
    //var textarea = document.post.message;
    if (textarea.createTextRange && textarea.caretPos){
        var caretPos = textarea.caretPos;
        caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
    }
    else {
        if (is_nav && document.getElementById){
            mozillaWr(textarea, '', text);
        }
        else {
            textarea.value  += text;
        }
    }
    textarea.focus();
}

function copySelection()
{
    if      (window.getSelection)   { selection = window.getSelection().toString();      }
    else if (document.getSelection) { selection = document.getSelection();               }
    else if (document.selection)      { selection = document.selection.createRange().text; }
}

function storeCaret(textEl)
{
    if (textEl.createTextRange) textEl.caretPos = document.selection.createRange().duplicate();
} 

function _trim(str)
{
    return str.replace(/(^\s+|\s+$)/g,'');
}

function checkForm()
{
    var errors = [];
    
    if (_trim( document.getElementById('author').value ) == '' || _trim( document.getElementById('author').value ).length > 50){
        errors.push('Некорректное имя автора!');
    }
    if (_trim( document.getElementById('email').value ) != '' && !/^[\._a-zA-Z0-9-]+@[\.a-zA-Z0-9-]+\.[a-z]{2,6}$/.test( document.getElementById('email').value ) ){
        errors.push('Неправильный e-mail адрес!');
    }
    if (_trim( document.getElementById('textarea').value ) == '' || _trim( document.getElementById('text').value ).length < 5 || _trim( document.getElementById('text').value ).length > 2000){
        errors.push('Некорректный комментарий!');
    }
    
    if (errors.length){
        document.getElementById('errors-box').innerHTML = errors.join('<br/>');
        return false;
    }
    else{
        return true;
    }
}

function openSmiley(box,img,prepath)
{
    if (box.style.display == 'block'){
        box.style.display = 'none';
        img.src = prepath + 'open.gif';
    }
    else{
        box.style.display = 'block';
        img.src = prepath + 'close.gif';
    }
}

function getCaptcha(captha_url)
{
    var d = new Date();
	document.getElementById('captchaImage').setAttribute('src', captha_url + '?r='+ d.getTime());
}