var smileysArray = ["blink.gif","bored.gif","mellow.gif","001_rolleyes.gif","001_tongue.gif","huh.gif","crying.gif","001_unsure.gif","001_huh.gif","closedeyes.gif","cool.gif","001_cool.gif","mad.gif","blush.gif","angry.gif","ohmy.gif","laugh.gif","scared.gif","lol.gif","w00t.gif","wink.gif","sleep.gif","001_tt1.gif","sad.gif","glare.gif","sneaky2.gif","biggrin.gif","001_smile.gif","blushing.gif","001_tt2.gif","thumbup.gif","thumbup1.gif","thumbdown.gif","drool.gif","tongue_smilie.gif","001_wub.gif","confused1.gif","cursing.gif"];
var mbEditor;
var contentHeight = 0;
var linkWindowCoords = {'x': 0, 'y': 0};
var uploadConfig;

window.onload = function() {
	setConstants();
}

/*modal window*/
function mb_showModalWindow(config) {
	var date = new Date();
	var time = date.getTime();
	var title = typeof(config.title) != 'undefined' ? config.title : '';
	var width = typeof(config.width) != 'undefined' ? config.width : 200;
	var id = typeof(config.id) == 'undefined' ? 'win' + time  : config.id;
	var targetObj = $('floating_form');
	var pageDimensions = getPageSize();
	var scrPos = getScrollPosition();
	var top = config.top ? parseInt(scrPos.y + config.top) : parseInt(scrPos.y + 100);
	var left = config.left ? (scrPos.x + config.left) : parseInt(scrPos.x + (pageDimensions[2] - width) / 2);
	var formBox = create('div');
	formBox.id = id;
	var formBg = create('div');
	formBg.style.padding = '3px';	
	var boxHeader = create('div');
	boxHeader.className = 'mb_box_header';
	boxHeader.innerHTML = title;
	
	formBg.className = 'bg yui-skin-sam';
	formBg.style.paddingBottom = '15px';
	formBg.style.width = (width - 8) + 'px';
	formBox.className = 'mb_content_box';
	formBox.style.paddingBottom = '0px';	
	formBox.style.width = width + 'px';
	formBox.style.borderBottom = '#ddd 1px solid';
	formBox.style.position = 'absolute';
	formBox.style.top = top + 'px';
	formBox.style.left = left + 'px';
	formBox.style.backgroundColor = '#ddd';
	formBg.appendChild(boxHeader);
	var content = create('div');
	content.className = 'mb_box_content';
	formBg.appendChild(content);
	formBox.appendChild(formBg);	
	targetObj.appendChild(formBox);
	if (config.draggable) {
		boxHeader.style.cursor = 'move';
		Drag.init(boxHeader, formBox);		
	}
	return content;
} 
function mb_closeModalWindow(id)
{
	$(id).parentNode.removeChild($(id));
}
function mb_hideModalForm(targetObj)
{
	targetObj = targetObj ? targetObj : $('floating_form');
	while(targetObj.childNodes.length > 0){
        targetObj.removeChild(targetObj.firstChild);
    }
}
function mb_disableModalWindow(id, widthOffset) {
	widthOffset = widthOffset ? widthOffset : 0;
	var targetObj = $('floating_form');
	var win2dis = $(id);
	if (win2dis) {
	 	var overlay = create('div');
		overlay.id = 'overlay_' + id;
		overlay.className = 'overlay';
		overlay.style.zIndex = 1000;
		overlay.style.width = (win2dis.clientWidth + widthOffset) + 'px';
		overlay.style.height = (parseInt(win2dis.clientHeight)) + 'px';
		overlay.style.top = win2dis.style.top;
		overlay.style.left = win2dis.style.left;
		targetObj.appendChild(overlay);
		var loadImg = create('img');
		loadImg.src = '/images/ajax-loader-small.gif';
		loadImg.id = 'loading_' + id;
		loadImg.alt = 'loading...';
		loadImg.style.position = 'absolute';
		loadImg.style.zIndex = 1001;
		loadImg.style.top = (parseInt(win2dis.style.top) + (win2dis.clientHeight / 2)) + 'px';
		loadImg.style.left = (parseInt(win2dis.style.left) + (win2dis.clientWidth / 2 - 15)) + 'px';
		targetObj.appendChild(loadImg);
	}
	
}

function mb_enableModalWindow(id)
{
	targetObj = $('floating_form');
	if ($('overlay_' + id)) {
		targetObj.removeChild($('overlay_' + id));
		targetObj.removeChild($('loading_' + id));
	}
}

function mb_showAlertDialog(message, okFunc, params, zIndex)
{
	var date = new Date();
	var time = date.getTime();
	var alertId = 'alert_' + time;
	okFunc = okFunc ? okFunc : mb_closeModalWindow;
	params = params !== undefined ? params : alertId;
	var content = mb_showModalWindow({title: 'Obvestilo', width: 400, id: alertId});
	if (zIndex) {
		content.style.zIndex = zIndex;
	}
 	var messageP = create('p');
	messageP.innerHTML = message;
	messageP.style.marginTop = '15px';
	messageP.className = 'mb_ac_message';
	var buttonP  = create('p');
	buttonP.className = 'mb_buttons';
	buttonP.style.marginTop = '25px';
	var okBtn = create('input');
	okBtn.type = 'button';
	okBtn.value = 'OK';
	okBtn.id = 'alertOK';
	okBtn.className = 'form_button';
	okBtn.style.marginRight = '10px';
	okBtn.onclick = function(event) {
		okFunc(params);	
	}
	buttonP.appendChild(okBtn);
	content.appendChild(messageP);
	content.appendChild(buttonP);
	return alertId;
}

function mb_showConfirmDialog(message, okFunc, params, cancelFunc, cancelParams, zIndex)
{
	var date = new Date();
	var time = date.getTime();
	var confirmId = 'confirm_' + time;
	cancelFunc = cancelFunc ? cancelFunc : mb_closeModalWindow;
	cancelParams = cancelParams !== undefined ? cancelParams : confirmId;
	var content = mb_showModalWindow({title: 'Obvestilo', width: 400, id: confirmId});
	if (zIndex) {
		content.style.zIndex = zIndex;
	}
 	var messageP = create('p');
	messageP.innerHTML = message;
	messageP.style.marginTop = '15px';
	messageP.className = 'mb_ac_message';
	var buttonP  = create('p');
	buttonP.className = 'mb_buttons';
	buttonP.style.marginTop = '25px';
	var okBtn = create('input');
	okBtn.type = 'button';
	okBtn.value = 'OK';
	okBtn.id = 'alertOK';
	okBtn.className = 'form_button';
	okBtn.style.marginRight = '10px';
	okBtn.onclick = function(event) {
		okFunc(params);	
	}
	var cancelBtn = create('input');
	cancelBtn.type = 'button';
	cancelBtn.value = 'prekliči';
	cancelBtn.id = 'confirmcancel';
	cancelBtn.className = 'form_button';
	cancelBtn.onclick = function(event) {
		cancelFunc(cancelParams);	
	}
	buttonP.appendChild(okBtn);
	buttonP.appendChild(cancelBtn);
	content.appendChild(messageP);
	content.appendChild(buttonP);
	return confirmId;
}

function showYuiEditor(targetTaId, taWidth, taHeight, myEditor, iconMenuId, focusatstartup, insertImage, insertLink, autoheight)
{
	//alert('jebisimater');
	iconMenuId = typeof(iconMenuId) == 'undefined' ? Math.ceil(100 * Math.random()) : iconMenuId;
	focusatstartup = typeof(focusatstartup) == 'undefined' ? false : focusatstartup;
	
	if (typeof(insertImage) == 'undefined') {
		insertImage = false;
	}
	insertLink = typeof(insertLink) == 'undefined' ? false : insertLink;
	autoheight = typeof(autoheight) == 'undefined' ? false : autoheight;
	
	(function() {
	    var myConfig = {
	        height: taHeight + 'px',
	        width: taWidth + 'px',
	        animate: true,
	        focusAtStart: focusatstartup,
	        autoHeight: autoheight,
	        toolbar: { 
	        buttons: [ 
	            { group: 'textstyle', 
	                buttons: [ 
	                    { type: 'push', label: 'Krepko', value: 'bold' }, 
	                    { type: 'push', label: 'Ležeče', value: 'italic' }, 
	                    { type: 'separator' }, 
	                    { type: 'color', label: 'Barva pisave', value: 'forecolor', disabled: true }
	                ]
	            },
	            {type: 'separator'},
	            { group: 'insertitem',
	               	buttons: []
	            } 
	        ] 
	    } 
	    };

	    myEditor = new YAHOO.widget.Editor(targetTaId, myConfig);

	    YAHOO.util.Event.onAvailable('iconMenu' + iconMenuId, function() {
	        YAHOO.util.Event.on('iconMenu' + iconMenuId, 'click', function(ev) {	            
	        	var tar = YAHOO.util.Event.getTarget(ev);
	            if (tar.tagName.toLowerCase() == 'img') {
	                var img = tar.getAttribute('src', 2);
	                var _button = this.toolbar.getButtonByValue('inserticon' );
	                _button._menu.hide();
	                this.toolbar.fireEvent('inserticonClick', { type: 'inserticonClick', icon: img });
	            }
	            YAHOO.util.Event.stopEvent(ev);
	        }, myEditor, true);
	    });

	    myEditor.on('toolbarLoaded', function() { 
	       
	        var imgConfig = {
	            type: 'push', label: 'vstavi smeška', value: 'inserticon' ,
	            menu: function() {
	                var menu = new YAHOO.widget.Overlay('iconMenu' + iconMenuId, {
	                    width: '238px',
	                    height: '125px',
	                    visible: false,
	                    zIndex: 500
	                });
	                var str = '';
	                for (var i = 0; i < smileysArray.length; i++) {
	                	str += '<div class="smiley left"><img src="/images/smiles/' + smileysArray[i] + '" alt="smiley" style="cursor: pointer;" /></div>';
	                }
	                //alert(str);
	                menu.setBody('<div>' + str + '</div>');
	                menu.beforeShowEvent.subscribe(function() {
	                    menu.cfg.setProperty('context', [
	                        myEditor.toolbar.getButtonByValue('inserticon').get('element'),
	                        'tl', 'bl'
	                    ]);
	                });            
	                menu.render(document.body);
	                menu.element.style.visibility = 'hidden';
	                menu.element.style.padding = '5px';
	                menu.element.style.backgroundColor= '#fff';
	                menu.element.style.border = '#ddd 1px solid';
	                return menu;
	            }()
	        };
	        myEditor.toolbar.addButtonToGroup(imgConfig, 'insertitem');
	        if (insertImage) {
	        	myEditor.toolbar.addButtonToGroup({ type: 'push', label: 'vstavi sliko', value: 'insertimage'}, 'insertitem');	        	
	        }
	        if (insertLink) {
	        	myEditor.toolbar.addButtonToGroup({ type: 'push', label: 'vstavi povezavo', value: 'createlink'}, 'insertitem');	        	
	        }
	        myEditor.toolbar.on('inserticonClick', function(ev) {
	            var icon = '';
	            this._focusWindow();
	            if (ev.icon) {
	                icon = ev.icon;
	            }
	            this.execCommand('inserthtml', '<img src="' + icon + '" style="display: inline;"/>');
	        }, myEditor, true);

	    }, myEditor, true);
	    myEditor.render();
	})();

	return myEditor;
}

function showAddCategoryForm(config) {
	showModalBackground();
	var content = mb_showModalWindow({'title': 'Dodaj kategorijo', 'width': 400, 'id': 'addCategory'});	
	var parentId = config.parentId === undefined ? 0 : config.parentId;
	var categoryId = config.categoryId === undefined ? 0 : config.categoryId;
	var categoryName = config.categoryName === undefined ? '' : config.categoryName;
	var categoryDescription = config.categoryDescription === undefined ? '' : config.categoryDescription;
	var mbId = config.mbId === undefined ? 1 : config.mbId;
	var topicCount = config.topicCount === undefined ? 0 : config.topicCount;
	var subCategoryCount = config.subCategoryCount === undefined ? 0 : config.subCategoryCount; 
	var parentLabel = create('div');
	parentLabel.className = 'left';
	parentLabel.style.marginTop = '3px';
	parentLabel.style.marginRight = '5px';
	parentLabel.innerHTML = 'Kategorija naj bo podkategorija:';
	var parentSelect = create('select');
	parentSelect.className = 'left';
	if (topicCount == 0){
		var nullOption = create('option');
		nullOption.text = 'nobeni';
		nullOption.value = 0;
		addSelectOption(parentSelect, nullOption, parentId);
	}
	var clear = create('div');
	clear.className = 'clear';
	var titleDiv = create('div');
	var titleLabel = create('div');
	titleLabel.className = 'mb_form_label';
	titleLabel.innerHTML = 'Ime kategorije:';
	var titleInput = create('input');
	titleInput.type = 'text';
	titleInput.value = categoryName;
	titleInput.style.width = '100%';
	var descriptionDiv = create('div');
	var descriptionLabel = create('div');
	descriptionLabel.className = 'mb_form_label';
	descriptionLabel.innerHTML = 'Opis kategorije';	
	var descriptionTa = create('textarea');
	descriptionTa.style.width = '100%';
	descriptionTa.value = categoryDescription;
	var buttonDiv = create('div');
	buttonDiv.style.marginTop = '10px';
	var okBtn = create('input');
	okBtn.type = 'button';
	okBtn.className = 'form_button';
	okBtn.value = 'shrani';	
	var cancelBtn = create('input');
	cancelBtn.type = 'button';
	cancelBtn.className = 'form_button';
	cancelBtn.value = 'prekliči';
	cancelBtn.onclick = function() {
		mb_hideModalForm();
	}
	buttonDiv.appendChild(okBtn);
	buttonDiv.appendChild(cancelBtn);
	
	var errorDiv = create('div');
	errorDiv.className = 'form_error';
	okBtn.onclick = function() {
		var categoryName = trim(titleInput.value);
		var categoryDescription = trim(descriptionTa.value);
		if (categoryName == '') {
			errorDiv.innerHTML = 'Vpišite ime kategorije';
			return;
		}
		saveCategory(categoryName, categoryDescription, parentSelect.options[parentSelect.selectedIndex].value, categoryId, mbId, errorDiv);
	}
	content.appendChild(parentLabel);
	content.appendChild(parentSelect);
	content.appendChild(clear);
	titleDiv.appendChild(titleLabel);
	titleDiv.appendChild(titleInput);
	content.appendChild(titleDiv);
	descriptionDiv.appendChild(descriptionLabel);
	descriptionDiv.appendChild(descriptionTa);
	content.appendChild(descriptionDiv);
	content.appendChild(buttonDiv);
	content.appendChild(errorDiv);
	if ((categoryId != 0 && parentId != 0) || categoryId == 0 || (categoryId != 0 && parentId == 0 && subCategoryCount == 0)) {
		mb_disableModalWindow('addCategory');
		if (categoryId != 0 && parentId == 0 && subCategoryCount == 0) {
			var exclude = categoryId;
		}
		loadTopLevelCategories(mbId, parentSelect, 'addCategory', parentId, errorDiv, okBtn, exclude);
	}
}

function loadTopLevelCategories(mbId, selectObj, overlayId, parentId, errorDiv, okBtn, exclude)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['noIdetity']) {
	    		location.replace(response['url']);
	    	}
	    	if (response['success']) {
	    		if (response['categories'].length > 0) {
	    			for (var i = 0; i < response['categories'].length; i++) {
	    				var option = create('option');
	    				option.text = response['categories'][i]['categoryName'];
	    				option.value = response['categories'][i]['mb_category_id'];
	    				addSelectOption(selectObj, option, parentId);
	    			}	    			
	    		}
	    		mb_enableModalWindow(overlayId);
	    	} else {
	    		mb_enableModalWindow(overlayId);
	    		errorDiv.innerHTML = response['message'];
	    		okBtn.onclick = function() {
	    			mb_hideModalForm();
	    		}
	    		
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'mbId=' + mbId + '&time=' + time;
    if (exclude !== undefined) {
    	postData += '&exclude=' + exclude;
    }
    xmlHttp.open("POST","/default/message-board/load-top-level-categories");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}
function saveCategory(categoryName, categoryDescription, parentId, categoryId, mbId, errorDiv)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	
	    	if (response['success']) {
	    		location.replace('/forum');
	    	} else {
	    		errorDiv.innerHTML = response['message'];
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'mbId=' + mbId + '&categoryName=' + categoryName + '&categoryDescription=' + categoryDescription + '&categoryId=' + categoryId + '&parentId=' + parentId + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/save-category");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function showHideCategory(categoryId, hide) {
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    		location.reload();
	    	} else {
	    		
	    	}
	    }
	    	
    }
	var action = hide ? 'hide-category' : 'show-category';
	var date = new Date();
    var time = date.getTime();
    var postData = 'categoryId=' + categoryId + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/" + action);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function showRemoveCategoryForm(config) 
{
	var categoryName = config.categoryName === undefined ? '' : config.categoryName;
	var categoryId = config.categoryId === undefined ? 0 : config.categoryId;
	var subcategoryCount = config.subcategoryCount === undefined ? 0 : config.subcategoryCount;
	var topicCount = config.topicCount === undefined ? 0 : config.topicCount;
	showModalBackground();
	var message = 'Ali ste prepričani da želite izbrisati kategorijo "' + categoryName + '"?';	
	if (subcategoryCount > 0) {
		var subcategories = '';
		if (subcategoryCount == 1) {
			subcategories = 'podkategorijo';
		} else if (subcategoryCount == 2) {
			subcategories = 'podkategoriji';
		} else if (subcategoryCount > 2 && subcategoryCount < 5) {
			subcategories = 'podkategorije';
		} else {
			subcategories = 'podkategorij';
		}
		message += '<br />Kategorija vsebuje ' + subcategoryCount + ' ' + subcategories + '.';
	}
	if (topicCount > 0) {
		var topics = '';
		if (topicCount == 1) {
			topics = 'temo';
		} else if (topicCount == 2) {
			topics = 'temi';
		} else if (topicCount > 2 && topicCount < 4) {
			topics = 'teme';
		} else {
			topics = 'tem';
		}
		message += '<br />Kategorija vsebuje ' + topicCount + ' ' + topics + '.';
	}	
	mb_showConfirmDialog(message, removeCategory, categoryId, mb_hideModalForm, null);	
}

function removeCategory(categoryId)
{
	var targetObj = $('floating_form');
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    		if (response['message'] == '') {
	    			location.reload();
	    		} else {
	    			targetObj.removeChild(targetObj.lastChild);
		    		mb_showAlertDialog(response['message'], reloadPage, null);
	    		}
	    	} else {
	    		targetObj.removeChild(targetObj.lastChild);
	    		mb_showAlertDialog(response['message'],mb_hideModalForm);
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'categoryId=' + categoryId + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/remove-category");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function restoreCategory(paramsObj)
{
	var categoryId = paramsObj.categoryId;
	var parentId = paramsObj.parentId === undefined ? 0 : paramsObj.parentId;
	doRestoreCategory(categoryId, parentId);	
}

function doRestoreCategory(categoryId, parentId)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	//return;
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    		location.reload();
	    	} else {
	    		showModalBackground();
	    		mb_showAlertDialog(response['message'],mb_hideModalForm, null);
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'categoryId=' + categoryId + '&parentId=' + parentId + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/restore-category");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function lockUnlockTopic(topicId, lock)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    		location.reload();
	    	} else {
	    		
	    	}
	    }
	    	
    }
	var action = lock ? 'lock-topic' : 'unlock-topic';
	var date = new Date();
    var time = date.getTime();
    var postData = 'topicId=' + topicId + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/" + action);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function moveTopicForm(topicId, topicName, currentCategoryId) {
	showModalBackground();
	var content = mb_showModalWindow({'title': 'Premakni temo "' + topicName + '"', 'width': 400, 'id': 'moveTopic'});
	var selectDiv = create('div');
	selectDiv.style.textAlign = 'center';
	var categorySelect = create('select');	
	categorySelect.style.cssFloat = 'none';
	categorySelect.onmousedown = function() {removeZeroOption(this);}
	var descriptionOption = create('option');
	descriptionOption.text = 'Izberi kategorijo';
	descriptionOption.value = 0;
	addSelectOption(categorySelect, descriptionOption, 0);
	var buttonDiv = create('div');
	buttonDiv.className = 'mb_buttons';
	var okBtn = create('input');
	okBtn.type = 'button';
	okBtn.className = 'form_button';
	okBtn.value = 'OK';
	okBtn.style.marginRight = '5px';
	okBtn.onclick = function() {
		moveTopic(topicId, categorySelect.options[categorySelect.selectedIndex].value);
	}
	var cancelBtn = create('input');
	cancelBtn.type = 'button';
	cancelBtn.className = 'form_button';
	cancelBtn.onclick = function() {
		mb_hideModalForm();
	}
	cancelBtn.value = 'prekliči';
	var clear = create('div');
	clear.className = 'clear';
	var errorDiv = create('div');
	errorDiv.className = 'form_errors';
	selectDiv.appendChild(categorySelect);
	buttonDiv.appendChild(okBtn);
	buttonDiv.appendChild(cancelBtn);
	buttonDiv.appendChild(clear);
	content.appendChild(selectDiv);
	content.appendChild(buttonDiv);
	content.appendChild(errorDiv);
	mb_disableModalWindow('moveTopic');
	loadCategories(categorySelect, 'moveTopic', okBtn, errorDiv, currentCategoryId)
}

function loadCategories(selectObj, overlayId, okBtn, errorDiv, exclude)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    		var categories = response['categories'];
	    		
	    		
	    			for (i in categories) {
	    				
	    				if (categories[i].subcategories.length > 0) {
	    					var topOption = create('option');
	    					topOption.text = categories[i].name;
	    					topOption.value = -1;
	    					topOption.disabled = true;
	    					addSelectOption(selectObj, topOption, 0);
	    					var subcategories = categories[i].subcategories;	    					
	    					for (var j = 0; j < subcategories.length; j++) {
	    						var categoryOption = create('option');
	    						categoryOption.text = subcategories[j].categoryName;
	    						categoryOption.value = subcategories[j].mb_category_id;
	    						categoryOption.style.paddingLeft = '10px';
	    						addSelectOption(selectObj, categoryOption, 0);
	    					}
	    				}
	    			}	    			
	    		
	    		mb_enableModalWindow(overlayId);
	    	} else {
	    		mb_enableModalWindow(overlayId);
	    		errorDiv.innerHTML = response['message'];
	    		okBtn.onclick = function() {
	    			mb_hideModalForm();
	    		}
	    		
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'time=' + time;
    if (exclude !== undefined) {
    	postData += '&exclude=' + exclude;
    }
    xmlHttp.open("POST","/default/message-board/load-categories");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function moveTopic(topicId, categoryId)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    		location.reload();
	    	} else {
	    		showModalBackground();
	    		mb_showAlertDialog(response['message'], mb_hideModalForm, null);
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'topicId=' + topicId + '&categoryId=' + categoryId +  '&time=' + time;
    xmlHttp.open("POST","/default/message-board/move-topic");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function removeRestoreTopic(config) {
	if (config.remove && !config.removeConfirmed) {
		var topicTitle = config.topicTitle ? config.topicTitle : ''; 
		var message = 'Ali ste prepričani, da želite odstraniti temo "' + topicTitle + '"?';
		config.removeConfirmed = true;
		mb_showConfirmDialog(message, removeRestoreTopic, config, mb_hideModalForm, null);
		return;
	}
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    		location.reload();
	    	} else {
	    		showModalBackground();
	    		mb_showAlertDialog(response['message'], mb_hideModalForm);
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var action = config.remove ? 'remove-topic' : 'restore-topic';
    var postData = 'topicId=' + config.topicId  + '&categoryId=' + config.categoryId  + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/" + action);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function waitMessage(message)
{
	var waitDiv = create('div');
	waitDiv.style.paddingTop = '100px';
	waitDiv.style.textAlign = 'center';
	var indicator = create('img');
	indicator.className = 'center';
	indicator.src = '/images/pl-loader.gif';
	indicator.alt= 'loading...';	
	waitMsg = create('div');
	waitMsg.style.paddingTop = '10px';
	waitMsg.innerHTML = message;
	waitDiv.appendChild(indicator);
	waitDiv.appendChild(waitMsg);
	return waitDiv;
}

function showPictureLibrary(top, left, targetObj, width, height, draggable)
{	if ($('pictureLibrary')) {
		return;
	}
	var content = mb_showModalWindow({title: 'Vsatvi sliko', width: 420, id: 'pictureLibrary', draggable: true});
	
	var menu = create('div');
	menu.className = 'form_menu';
	var imgUrlDiv = create('div');
	var imgUrlLabel = create('div');
	imgUrlLabel.className = 'mb_form_label';
	imgUrlLabel.style.marginLeft = '10px';
	imgUrlLabel.innerHTML = 'Vpiši url naslov slike: ';	
	imgUrl = create('input');
	imgUrl.type = 'text';
	imgUrl.style.width = '400px';
	imgUrl.style.cssFloat = 'none';
	imgUrl.value = 'http://';
	var insertImgUrlBtn = create('input');
	insertImgUrlBtn.type = 'button';
	insertImgUrlBtn.className = 'form_button';
	insertImgUrlBtn.value = 'vstavi';
	insertImgUrlBtn.onclick = function() {
		checkAndAddToPost(imgUrl);
	}
	var cancelBtn = create('input');
	cancelBtn.type = 'button';
	cancelBtn.value = 'prekliči';
	cancelBtn.className = 'form_button';
	cancelBtn.onclick = function() {
		mb_closeModalWindow('pictureLibrary');
	}
	var iubDiv = create('div');
	iubDiv.style.margin = '5px 10px 5px 0px';
	iubDiv.style.textAlign = 'right';
	iubDiv.appendChild(insertImgUrlBtn);
	iubDiv.appendChild(cancelBtn);
	imgUrlDiv.appendChild(imgUrlLabel);
	imgUrlDiv.appendChild(imgUrl);
	imgUrlDiv.appendChild(iubDiv);
	
	content.appendChild(imgUrlDiv);	
	imgUrl.select();	
}



function addEditPost(config)
{
	contentHeight = 0;
	var categoryId = config.categoryId;
	var parentId = config.parentId === undefined ? 0 : config.parentId;
	var postId = config.postId ? config.postId : 0;
	var quote = config.quote ? 1 : 0;
	var edit = config.edit ? 1 : 0;
	if (!edit && !quote && postId) {
		postId = 0;
	}
	var postTitle = (postId || parentId) ? '' : 'Nova tema';
	var editorFocus = (quote || edit) ? true : false;	
	showModalBackground();
	var content = mb_showModalWindow({'title': 'Dodaj/uredi sporočilo', 'width': 760, 'id': 'addPost'});
	var titleDiv = create('div');
	var titleLabel = create('div');
	titleLabel.className = 'mb_mb_form_label';
	titleLabel.style.textAlign = 'left';
	titleLabel.innerHTML = 'Naslov';
	var titleInput = create('input');
	titleInput.type = 'text';
	titleInput.style.cssFloat = 'none';
	titleInput.style.width = '720px';
	titleInput.value = postTitle;
	titleDiv.appendChild(titleLabel);
	titleDiv.appendChild(titleInput);
	var postContentDiv = create('div');
	postContentDiv.style.marginTop = '10px';
	var postContentLabel = create('div');
	postContentLabel.className = 'mb_form_label';
	postContentLabel.innerHTML = 'Vsebina';
	postContentTa = create('textarea');
	postContentTa.id = 'pcta';
	postContentTa.style.width = '730px';
	postContentTa.style.height = '150px';
	postContentDiv.appendChild(postContentLabel);
	postContentDiv.appendChild(postContentTa);
	var previewDiv = create('div');
	previewDiv.style.marginTop = '10px';
	var previewLabel = create('div');
	previewLabel.className = 'mb_form_label';
	previewLabel.style.textAlign = 'left';
	previewLabel.innerHTML = 'Predogled';
	var preview = create('table');
	preview.className = 'mb_posts_table';
	var row = preview.insertRow(0);
	var cell = row.insertCell(0);
	cell.className = 'mb_odd';
	var previewTitle = create('div');
	previewTitle.className = 'mb_post_title';
	previewTitle.innerHTML = postTitle.toUpperCase();
	cell.appendChild(previewTitle);
	cell.style.width = '730px';
	cell.style.textAlign = 'left';
	var previewContent = create('div');
	previewContent.className = 'mb_post_content';
	//previewContent.innerHTML = postContent;
	cell.appendChild(previewContent);
	previewDiv.appendChild(previewLabel);
	previewDiv.appendChild(preview);
	var buttonDiv = create('div');
	buttonDiv.style.marginTop = '10px';
	var refreshBtn = create('input');
	refreshBtn.type = 'button';
	refreshBtn.className = 'form_button left';
	refreshBtn.style.marginRight = '10px';
	refreshBtn.value = 'osveži predogled';
	refreshBtn.disabled = true;
	var okBtn = create('input');
	okBtn.type = 'button';
	okBtn.className = 'form_button left';
	okBtn.style.marginRight = '10px';
	okBtn.value = 'shrani';
	okBtn.disabled = true;
	okBtn.onclick = function() {
		mbEditor.cleanHTML();
		mbEditor.saveHTML();
		var postValue = postContentTa.value;
		var postTitle = titleInput.value;
		if (postValue == '' || postTitle == '') {
			return;
		}
		mb_disableModalWindow('addPost');
		if (!edit) {
			postId = 0;
		}
		savePost(categoryId, postId, parentId, postValue, postTitle);
	}
	var cancelBtn = create('input');
	cancelBtn.type = 'button';
	cancelBtn.className = 'form_button left';
	cancelBtn.value = 'prekliči';
	cancelBtn.onclick = function () {mb_hideModalForm();}
	var clear = create('div');
	clear.className = 'clear';
	buttonDiv.appendChild(refreshBtn);
	buttonDiv.appendChild(okBtn);
	buttonDiv.appendChild(cancelBtn);
	buttonDiv.appendChild(clear);
	content.appendChild(titleDiv);
	content.appendChild(postContentDiv);
	content.appendChild(previewDiv);
	content.appendChild(buttonDiv);	
	var editor;
	mbEditor = showYuiEditor('pcta', 730, 150, editor, 'mbPost', editorFocus, true, true, true);
	mbEditor.cmd_createlink = function(value) {
        var el = this._getSelectedElement(), _a = null;
        if (this._hasParent(el, 'a')) {
            this.currentElement[0] = this._hasParent(el, 'a');
        } else if (!this._isElement(el, 'a')) {
            this._createCurrentElement('a');
            if (this._isElement(el, 'img')) {
            	this.currentElement[0].appendChild(el);
            	_a = this.currentElement[0];
            } else {
            	_a = this._swapEl(this.currentElement[0], 'a');
            }
            this.currentElement[0] = _a;
        } else {
            this.currentElement[0] = el;
        }
        return [false];
    }
	mbEditor.on('toolbarLoaded', function(){
		this.toolbar.on('insertimageClick', function(){
			var scrPos = getScrollPosition();
			showPictureLibrary((scrPos.y + 100), 100, $('floating_form'), 430, 500, true);
    		return false;
    	}, mbEditor, true);
		this.toolbar.on('createlinkClick', function(){
			mbEditor.execCommand('createlink');
    		showCreateLink();    		
    		return false;
    	}, mbEditor, true);
		
	});
	mb_disableModalWindow('addPost');
	mbEditor.on('afterRender', function() {
		
		if (edit || quote || parentId) {
			$('overlay_addPost').style.height = ($('addPost').clientHeight + 10) + 'px';
			getPostData({parentId: parentId, postId: postId, edit: edit, quote: quote, previewTitle:previewTitle, previewContent: previewContent, editorTitle: titleInput});
		} else {
			mb_enableModalWindow('addPost');
		}
		refreshBtn.disabled = false;
		okBtn.disabled = false;
		contentHeight = $('addPost').clientHeight;
		refreshBtn.onclick = function() {
			mbEditor.saveHTML();
			previewTitle.innerHTML = trim(titleInput.value.toUpperCase());
			previewContent.innerHTML = trim(postContentTa.value);
			var pageSize = getPageSize();
		}
		this.on('editorMouseUp', function(ev){
			linkWindowCoords.x = ev.ev.screenX;
			linkWindowCoords.y = (ev.ev.screenY - 220); 
			
		});
	});
	titleInput.select();
	
}

function getPostData(params)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);	    	
	    	if (response['success']) {
	    		mb_enableModalWindow('addPost');
	    		var postTitle = stripSlashes(response['postTitle']);
	    		var postContent = stripSlashes(response['postContent']);
	    		params.editorTitle.value = postTitle;
	    		mbEditor.setEditorHTML(postContent); 
	    		params.previewTitle.innerHTML = postTitle.toUpperCase();
	    		params.previewContent.innerHTML = postContent;
	    	} else {
	    		
	    		mb_showAlertDialog(response['message'], mb_hideModalForm, null);
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'postId=' + params.postId + '&parentId=' + params.parentId +  '&edit=' + params.edit + '&quote=' + params.quote +'&time=' + time;
    xmlHttp.open("POST","/default/message-board/get-post-data");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}



function checkAndAddToPost(imgUrl, type, ext)
{
	type = type === undefined ? 'image' : type;
	ext = ext === undefined ? 0 : ext;
	imgUrlValue = trim(imgUrl.value);
	mb_disableModalWindow('pictureLibrary');
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	mb_enableModalWindow('pictureLibrary');
	    	if (response['success']) {	    		
	    		mbEditor._focusWindow();
	    		mbEditor.execCommand('insertimage', imgUrlValue);
	    		mbEditor.currentElement[0].setAttribute('style', 'margin-top: 5px; margin-bottom: 5px; display: block;');
	    		mb_closeModalWindow('pictureLibrary');
	    	} else {
	    		mb_showAlertDialog(response['message']);
	    		imgUrl.select();
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'fileUrl=' + imgUrlValue + '&type=' + type + '&ext=' + ext + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/check-file");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function showCreateLink()
{
	if ($('createLink')) {
		return;
	}	
	var content = mb_showModalWindow({'title': 'Vstavi/uredi povezavo', 'width': 400, 'id': 'createLink', 'draggable': true, 'top': (linkWindowCoords.y + 10), 'left': linkWindowCoords.x})
	//return;
	var urlDiv = create('div');
	var urlLabel = create('div');
	urlLabel.innerHTML = 'Vpišite url naslov povezave:';
	urlLabel.className = 'mb_form_label';
	var urlInput = create('input');
	urlInput.style.cssFloat = 'none';
	urlInput.type = 'text';
	urlInput.style.width = '360px';
	urlInput.value = 'http://';
	var el = mbEditor.currentElement[0];	
	if (el) {
		if (el.getAttribute('href', 2)) {
            urlInput.value = el.getAttribute('href', 2);
		} else {
			urlInput.value = 'http://';
		}
	}                                 
	urlDiv.appendChild(urlLabel);
	urlDiv.appendChild(urlInput);
	urlDiv.style.marginBottom = '10px';
	var btnDiv = create('div');
	var okBtn = create('input');
	okBtn.type = 'button';
	okBtn.className = 'form_button';
	okBtn.style.marginRight = '10px';
	okBtn.value = 'vstavi';
	okBtn.onclick = function() {
		if (urlInput.value == 'http://' || urlInput.value == '') {
			if (!el.getAttribute('href', 2)) {
				mbEditor.execCommand('unlink');
			}
			$('floating_form').removeChild($('createLink'));
			return;
		}
		if (urlInput.value.indexOf('http') != 0) {
			urlInput.value = 'http://' + urlInput.value;
		}
		el.setAttribute('href', urlInput.value);
		el.setAttribute('target', '_blank');
		$('floating_form').removeChild($('createLink'));
	}
	var removeBtn = create('input');
	removeBtn.type = 'button';
	removeBtn.className = 'form_button';
	removeBtn.style.marginRight = '10px';
	removeBtn.value = 'odstrani';
	removeBtn.onclick = function() {
		if (el.getAttribute('href', 2)) {
			el.removeAttribute('href');
			el.removeAttribute('target');
		}
		mbEditor.execCommand('unlink');
		$('floating_form').removeChild($('createLink'));		
	}
	var cancelBtn = create('input');
	cancelBtn.type = 'button';
	cancelBtn.className = 'form_button';
	cancelBtn.value = 'prekliči';
	cancelBtn.onclick = function() {
		if (!el.getAttribute('href', 2)) {
			mbEditor.execCommand('unlink');
		}
		$('floating_form').removeChild($('createLink'));
	}
	
	btnDiv.appendChild(okBtn);
	btnDiv.appendChild(removeBtn);
	btnDiv.appendChild(cancelBtn);
	content.appendChild(urlDiv);
	content.appendChild(btnDiv);
	urlInput.focus();
}

function savePost(categoryId, postId, parentId, postContent, postTitle)
{
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    			//return;
	    			mb_hideModalForm();
	    			var baseUrl = stripSlashes(response['baseUrl'])
	    			var pathname = stripSlashes(response['pathname']);
	    			var hash = stripSlashes(response['hash']);
	    			if (pathname != location.pathname) {
	    				location.href = baseUrl + pathname + hash;
	    			} else {
	    				location.hash = hash;
	    				location.reload();	    				
	    			}
	    			
	    		} else {
	    			mb_enableModalWindow('addPost');		    		
	    			mb_showAlertDialog(response['message']);
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'categoryId=' + categoryId + '&postId=' + postId + '&parentId=' + parentId + '&postContent=' + postContent + '&postTitle=' + postTitle + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/save-post");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function showDeletePostDialog(postTitle, postAuthor, postDate, postId)
{
	showModalBackground();
	var params = postId;
	mb_showConfirmDialog('Ali ste prepričani da želite izbrisati sporočilo "' + postTitle + '" avtorja ' + postAuthor + ' poslanega ' + postDate + '?', deletePost, params, mb_hideModalForm, null);
}

function deletePost(postId) {
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	hideConfirmDialog($('floating_form'));
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	if (response['success']) {
	    			location.reload();
	    		} else {
	    			mb_showAlertDialog(response['message']);
	    	}
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'postId=' + postId + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/delete-post");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function showMessageBoardUsers()
{
	if ($('userAdministration')) {
		return;
	}	
	var content = mb_showModalWindow({'title': 'Administracija uporabnikov foruma', 'width': 400, 'id': 'userAdministration', 'draggable': true});
	content.id = 'uaInner';
	getMessageBoardUsers(1);
	
}

function getMessageBoardUsers(page) {
	var targetElement = $('uaInner');
	mb_disableModalWindow('userAdministration');
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	mb_enableModalWindow('userAdministration');
	    	targetElement.innerHTML = xmlHttp.responseText;
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'page=' + page + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/get-users");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function editUserPrivileges(memberId, memberName)
{
	if ($('editPrivileges')) {
		return;
	}
	var content = mb_showModalWindow({'title': 'Pravice ' + memberName, 'width': 400, 'id': 'editPrivileges', 'draggable': true});
	content.id = 'epInner';
	getMessageBoardUser(memberId);
		
}

function getMessageBoardUser(memberId)
{
	var targetElement = $('epInner');
	mb_disableModalWindow('editPrivileges');
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	mb_enableModalWindow('editPrivileges');
	    	targetElement.innerHTML = xmlHttp.responseText;
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'memberId=' + memberId + '&time=' + time;
    xmlHttp.open("POST","/default/message-board/get-user-privileges");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
}

function enDisRoleLevel(thisSelect)
{
	if (thisSelect.options[thisSelect.selectedIndex].text == 'administrator') {
		$('mbRoleLevelSelect').disabled = false;
	} else {
		$('mbRoleLevelSelect').disabled = true;
	}
}

function updateUserPrivileges(memberId, oldRole, oldRoleId, oldRoleLevel)
{
	var mbRoleSelect = $('mbRolesSelect');
	var newRoleId = mbRoleSelect.options[mbRoleSelect.selectedIndex].value;
	var newRole = mbRoleSelect.options[mbRoleSelect.selectedIndex].text;
	if (newRole == 'administrator') {
		var newRoleLevel = $('mbRoleLevelSelect').options[$('mbRoleLevelSelect').selectedIndex].value;
	}
	if (oldRoleId == newRoleId) {
		if (newRole == 'administrator') {
			if (newRoleLevel == oldRoleLevel) {
				mb_closeModalWindow('editPrivileges');
				return;				
			}
 		} else {
			mb_closeModalWindow('editPrivileges');
			return;
		}
	}
	mb_disableModalWindow('editPrivileges');
	var xmlHttp = setXmlHttpObject();
	xmlHttp.onreadystatechange = function(){
	    if(xmlHttp.readyState == 4){
	    	var response = YAHOO.lang.JSON.parse(xmlHttp.responseText);
	    	mb_enableModalWindow('editPrivileges');
	    	if (response['success']) {
	    		mb_closeModalWindow('editPrivileges');
	    		var roleElements = document.getElementsByName('mbRole_' + memberId);
	    		for (var i = 0; i < roleElements.length; i++) {
	    			roleElements[i].innerHTML = newRole;
	    		}
	    		if ($('userAdministration')) {
	    			if (oldRole == 'administrator') {
	    				var levelElement = $('mbRoleLevel_' + memberId);
	    				//alert(levelElement.innerHTML);
	    				if (newRole != 'administrator') {
	    					levelElement.parentNode.removeChild(levelElement);
	    				} else {
	    					levelElement.innerHTML = 'nivo: ' + newRoleLevel;
	    				}
	    			} else if (newRole == 'administrator') {
	    				var levelElement = create('span');
	    				levelElement.name = 'mbRoleLevel_' + memberId;
	    				levelElement.id = 'mbRoleLevel_' + memberId;
	    				levelElement.innerHTML = 'nivo: ' + newRoleLevel;
	    				var roleElement = $('mbRole_' + memberId);
	    				roleElement.parentNode.insertBefore(levelElement, roleElement.parentNode.lastChild);
	    			}
	    		}
    			
    		} else {
    					    		
    			mb_showAlertDialog(response['message']);
	    	} 
	    }
	    	
    }
	var date = new Date();
    var time = date.getTime();
    var postData = 'memberId=' + memberId + '&oldRole=' + oldRole + '&oldRoleId=' + oldRoleId + '&newRole=' + newRole + '&newRoleId=' + newRoleId + '&time=' + time;
    if (newRoleLevel !== undefined) {
    	postData += '&newRoleLevel=' + newRoleLevel;
    }
    xmlHttp.open("POST","/default/message-board/update-user-privileges");
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(postData);
	
}

function jumpToCategory(categorySelect, currentCategoryId)
{
	var categoryId = categorySelect.options[categorySelect.selectedIndex].value;
	if (currentCategoryId == categoryId || categoryId == 0) {
		return;
	}
	var hostname = location.hostname;
	//alert(hostname);
	location.replace('http://' + hostname + '/forum/category/' + categoryId);
}