insertAtCursor = function (container, myValue)
{
    myField = document.getElementById(container);
    if (document.selection)
    {
        myField.focus();
        var sel = document.selection.createRange();
        switch (myValue)
        {
            case "[url]":
            case "[img]":
            case "[b]":
            case "[u]":
            case "[i]":
            case "[s]":
                var tagstart = myValue; 
                var str_len = myValue.length;
                var tagend = myValue.substring(0,1) + '/' + myValue.substring(1,str_len);
                sel.text = tagstart + sel.text + tagend;
            break;
            default:
                sel.text = myValue;
            break;
        }
    }
    else if (myField.selectionStart || myField.selectionStart == '0')
    {
        var startPos = myField.selectionStart;
        var endPos = myField.selectionEnd;
        switch (myValue)
        {
            case "[url]":
            case "[img]":
            case "[b]":
            case "[u]":
            case "[i]":
            case "[s]":
                var tagstart = myValue;
                var str_len = myValue.length;
                var tagend = myValue.substring(0,1) + '/' + myValue.substring(1,str_len);
                myField.value = myField.value.substring(0, startPos) + tagstart + myField.value.substring(startPos, endPos) + tagend + myField.value.substring(endPos, myField.value.length);
            break;
            default:
                myField.value = myField.value.substring(0, startPos) + myValue + myField.value.substring(endPos, myField.value.length);
            break;
        }
    }
    else
    {
        myField.value += myValue;
    }
}
