
function insertLink(input, absolute) {
    if (absolute == null) {
        absolute = false;
    }
    var selectedText = getSelection(input);
    if (selectedText == '') {
        alert('Proszę zaznaczyć fragment tekstu który ma być linkiem.')
    } else {
        var url = prompt('Proszę podać URL:', '');
        if (url != null && url != '') {
            // global var site_base_url
            if (!absolute) {
                if (url.indexOf(site_base_url) == 0) {
                    // url wewnętrzny, obetnij
                    url = url.substr(site_base_url.length);
                } else if  (url.indexOf(site_base_url_www) == 0) {
                    // url wewnętrzny, obetnij
                    url = url.substr(site_base_url_www.length);
                }
            }
            if (url.length > 0) {
                replaceSelection(input, '[url href="' + url + '"]' + selectedText + '[/url]');
            }
        }
    }
}


function insertHeader(input, header_class) {
    var text = prompt('Proszę podać tekst nagłówka:', '');
    if (text != null && text != '') {
        replaceSelection(input, '[' + header_class + ' ' + text + ']');
    }
}


function insertInlineImage(input, id) {
    replaceSelection(input, '[img id="' + id + '"]');
}


function getSelection(input) {
	//IE support
	if (document.selection) {
		input.focus();
	    sel = document.selection.createRange();
		return sel.text;
	}
	//MOZILLA/NETSCAPE support
	else if (input.selectionStart || input.selectionStart == '0') {
		var startPos = input.selectionStart;
		var endPos = input.selectionEnd;
		var cursorPos = endPos;
		return input.value.substring(startPos, endPos);
	}
	return '';
}


function replaceSelection(input, replacement) {
	//IE support
	if (document.selection) {
		input.focus();
	    sel = document.selection.createRange();
		sel.text = replacement;
		input.focus();
	}
	//MOZILLA/NETSCAPE support
	else if (input.selectionStart || input.selectionStart == '0') {
		var startPos = input.selectionStart;
		var endPos = input.selectionEnd;
		var cursorPos = endPos;
		input.value = input.value.substring(0, startPos)
		              + replacement
		              + input.value.substring(endPos, input.value.length);
		cursorPos += replacement.length;
		input.focus();
		input.selectionStart = startPos;
		input.selectionEnd = cursorPos;
	}
} 



function openWindow(url, name, parameters) {
    var defaults = {
        'width' : 400,
        'height' : 300,
        'resizable' : 1,
        'scrollbars' : 1,
        'toolbar' : 0,
        'location' : 0,
        'directories' : 0,
        'status' : 0,
        'menubar' : 0,
        'copyhistory' : 0
    };
    for (var p in parameters) {
        defaults[p] = parameters[p];
    }
    if (!defaults['left']) {
        defaults['left'] = (screen.width - defaults['width']) / 2;
    }
    if (!defaults['top']) {
        defaults['top'] = (screen.height - defaults['height']) / 2;
    }
    defaults['screenX'] = defaults['left'];
    defaults['screenY'] = defaults['top'];

    var param_string = '';
    for (var p in defaults) {
        param_string += p + '=' + defaults[p] + ',';
    }
    var w = window.open(url, name, param_string);
    w.focus();
}


function is_enter(e) {
    var keycode;
    if (window.event) keycode = window.event.keyCode;
    else if (e) keycode = e.which;
    else return false;

    if (keycode == 13) {
       return true;
   } else {
       return false;
   }
}

function submit_on_enter(myfield, e) {
    var keycode;
    if (window.event) keycode = window.event.keyCode;
    else if (e) keycode = e.which;
    else return true;

    if (keycode == 13) {
       myfield.form.submit();
       return false;
   } else {
       return true;
   }
}



