var isGecko = false;
if(navigator){
    if(navigator.userAgent){
        if(navigator.userAgent.indexOf("Gecko/") != -1){
            isGecko = true;
        }
    }
}
function getSelectionRange(e) {
    var str;
    if (document.selection) {
    str = document.selection.createRange().text;
    }
    else if(isGecko){
    var start = e.selectionStart;
    var end = e.selectionEnd;
    str = e.value.substring(start, end);
    }
    else {
        str = '';
    }
    return str;
}

function setSelectionRange(e, v) {
    if(document.selection) {
    if(getSelectionRange(e))
        document.selection.createRange().text = v;
    else
        e.value = e.value + v;
    }
    else if(isGecko){
    var start = e.selectionStart;
    var end = e.selectionEnd;
    var len = e.textLength;
    var str = e.value.substring(start, end);
    var head = e.value.substring(0, start);
    var foot = e.value.substring(end, len);
    e.value = head + v + foot;
    }
    else {
        e.value = e.value + v;
    }
}

function tag(e, v, a, c) {
     var sv = a ? v + ' ' + a + '=' + '"' + c + '"' : v;
     var str = getSelectionRange(e);
     addtag(e, '<' + sv + '>' + str + '</' + v + '>');
}
function taghr(e, v) {
     var sv = '<' + v + ' />';
     var str = getSelectionRange(e);
     addtag(e, sv);
}
function tag_bl(e, v) {
     var sv = v;
     var str = getSelectionRange(e);
     addtag(e, '<' + sv + '><p>' + str + '</p></' + v + '>');
}
function tag2(e, v) {
     var sv = '&' + v + ';';
     var str = getSelectionRange(e);
     addtag(e, str + sv);
}
function tag3(e, v, a) {
     var sv = a ? v + " " + a : v;
     var str = getSelectionRange(e);
     addtag(e, '<' + sv + '>' + str + '</' + v + '>');
}
function linkPrompt(e) {
    var link = prompt('URL: ', '');
    if(link != null)
    setLink(e, link);
}

function setLink(e, url) {
    var attrs = 'href="' + url + '"';
    tag3(e, 'a', attrs);
}

function imgPrompt(e) {
    var img_u = prompt('IMAGE: ', '');
    if(img_u != null)
    setImg(e, img_u);
}


function setImg(e, img_u) {

    var str = getSelectionRange(e);
    setSelectionRange(e, '<img ' + img_u + ' />');

}
function tagcolor(e, v) {
     var str = getSelectionRange(e);
     addtag(e, '<span style=\"color:' + v + ';\">' + str + '</span>');
}
function openPanel(url,name,w,h) {

    var p = window.open(url, name, 'resizable=yes,scrollbars=yes,width=' + w + ',height=' + h);
    p.focus();
    return p;
}
function addtag(obj, item){
    var item = item;
    
    //IE
    if (document.selection) {
        obj.focus();
        sel = document.selection.createRange();
        sel.text = item;
    }
    
    //Mozilla
    else if (obj.selectionStart || obj.selectionStart == '0') {
        var startPos = obj.selectionStart;
        var endPos   = obj.selectionEnd;
        obj.value = obj.value.substring(0, startPos)
                      + item
                      + obj.value.substring(endPos, obj.value.length);
    //Other
    } else {
        obj.value += item;
    }
}
function addsub(obj, item)
{
    var item = '&' + item + ';';
    
    //IE
    if (document.selection) {
        obj.focus();
        sel = document.selection.createRange();
        sel.text = item;
    }
    
    //Mozilla
    else if (obj.selectionStart || obj.selectionStart == '0') {
        var startPos = obj.selectionStart;
        var endPos   = obj.selectionEnd;
        obj.value = obj.value.substring(0, startPos)
                      + item
                      + obj.value.substring(endPos, obj.value.length);
    //Other
    } else {
        obj.value += item;
    }
}
function addtop(obj, item)
{
    var item = '<p class=\"pagetop\"><a href=\"#header\">ページのTOPへ</a></p>';
    
    //IE
    if (document.selection) {
        obj.focus();
        sel = document.selection.createRange();
        sel.text = item;
    }
    
    //Mozilla
    else if (obj.selectionStart || obj.selectionStart == '0') {
        var startPos = obj.selectionStart;
        var endPos   = obj.selectionEnd;
        obj.value = obj.value.substring(0, startPos)
                      + item
                      + obj.value.substring(endPos, obj.value.length);
    //Other
    } else {
        obj.value += item;
    }
}


function new_check(){
    return confirm("作成します");
}

function hensyu_check(){
    return confirm("編集します");
}
function csv_check(){
    return confirm("CSVファイルを送信します");
}
function logout_check(){
    return confirm("ログアウトします");
}
