var myData = new Array();
myData['settings'] = new Array();
myData['usedSkin'] = 'default';
myData['voteLimit'] = -5;
myData['settings']['modalsOnly'] = true;

var frameOpen = '';
var frameClose = '';
var startUnixTime = Math.floor((new Date()).getTime()/1000);

function popupWindow(url, onCloseCallbackFunc) {
    Control.Modal.close();
    if (myData['settings']['modalsOnly']) {
        iframeModal(url, onCloseCallbackFunc);
    } else {
        var xsize = screen.width;
        var ysize = screen.height;
        var xpos = (xsize / 2) - 260;
        var ypos = (ysize / 2)- 300;

        myPopupWindow = window.open(url, 'popupWindow', "left=" + xpos + ",top=" + ypos + ",resize=no,top=2,left=2,location=no,width=520,height=550,status=yes,personalbar=no,toolbar=no,scrollbars=yes,history=no,scrolling=yes");
        myPopupWindow.blur();
        myPopupWindow.moveTo(xpos,ypos);
        myPopupWindow.focus();
    }
    return false;
}

function elkuld(mit) {
    return confirm(mit);
}

function fix(a) {
    a.href=a.href.replace(/NOS-PAM./g, "");
    return true;
}

function stat(a, b) {
    if (b) { window.status=a.href.replace(/NOS-PAM./g, ""); }
    else { window.status=""; }
}

function insertSmiley(whatToSend, whereToSend) {
    if (myData['settings']['modalsOnly'])
        var openerControl = window.parent.eval(whereToSend + 'Control');
    else
        var openerControl = window.opener.eval(whereToSend + 'Control');
    //	window.opener.document.inputForm.'whereToPut'.value += '[SMIL:' + uniqId + ']';
    //	objektum = eval('window.opener.document.inputForm.' + whereToPut);
    //	objektum.value += '[SMIL:' + uniqId + ']';
    openerControl.replaceSelection('[SMIL:' + whatToSend + ']');
    if (!myData['settings']['modalsOnly'])
        window.focus();
    //	window.close();
    return false;
}

function capturekey(form) {
    if (event.keyCode == 10) form.submit();
};

function resizePictures(maxWidth) {
    for (counter=0; counter < document.images.length; counter++) {
        if (document.images[counter].name == 'forumPicture') {
            width = document.images[counter].width;
            height = document.images[counter].height;
            if (width > maxWidth){
                multiplier = maxWidth / width;
                newWidth = Math.round(width * multiplier);
                newHeight = Math.round(height * multiplier);
                document.images[counter].width = newWidth;
                document.images[counter].height = newHeight;
            }
        }
    }
    return true;
}

function insertHyperLink(whereToPut) {
    var selectedText = eval(whereToPut + "Control").getSelection();
    if (selectedText == "") {
        var nameLink = prompt("A link neve:", "Ide írd be a link nevét");
    } else {
        var nameLink = selectedText;
    }
    var nameUrl = '';
    nameUrl = prompt("Az url:", "http://");
    if ( ( nameLink != null && nameLink != "Ide írd be a link nevét") && ( nameUrl != null && nameUrl != "http://" ) )
    {
        var re = new RegExp('[\n\r]','gi');
        var re2 = new RegExp(' ','gi');
        var NewnameUrl = nameUrl.replace(re,'');
        var NewnameUrl2 = NewnameUrl.replace(re2,'%20');
        var nameUrl = NewnameUrl2;
        //		alert('AAA:'+ nameUrl +':AAA');
        eval(whereToPut + "Control").replaceSelection("<a href=\"" + nameUrl + "\">" + nameLink + "</a>");
        $(whereToPut).focus();
    }
}

function insertPicture(whereToPut) {
    var selectedText = eval(whereToPut + "Control").getSelection();
    var picLink = '';
    if (selectedText == '') {
        picLink = prompt("A kép url-je:", "http://");
    } else {
        picLink = selectedText;
    }
    if ( picLink != null && picLink != "http://" && picLink != "" )
    {
        var re = new RegExp(' ','gi');
        var newpicLink = picLink.replace(re, '%20');
        var picLink = newpicLink;
        eval(whereToPut + "Control").replaceSelection("<img src=\"" + picLink + "\">\n");
        $(whereToPut).focus();
    }
}

function insertMusic(whereToPut) {
    var selectedText = eval(whereToPut + "Control").getSelection();
    var musicLink = '';
    if (selectedText == '') {
        musicLink = prompt("A zene url-je:", "http://");
    } else {
        musicLink = selectedText;
    }
    if ( musicLink != null && musicLink != "http://" && musicLink != "" )
    {
        var re = new RegExp(' ','gi');
        var newmusicLink = musicLink.replace(re,'%20');
        var musicLink = newmusicLink;
        eval(whereToPut + "Control").replaceSelection("<bgsound src=\"" + musicLink + "\">\n");
        $(whereToPut).focus();
    }
}

function insertFlash(whereToPut) {
    var selectedText = eval(whereToPut + "Control").getSelection();
    var flashLink = '';
    if (selectedText == '') {
        flashLink = prompt("A flash url-je:", "http://");
    } else {
        flashLink = selectedText;
    }
    if (flashLink == null || flashLink == 'http://') {
        return false;
    }
    var flashWidth = prompt("A flash szélessége:", "400");
    if (flashWidth == null || flashWidth > 770 || flashWidth < 1) {
        alert("Nem megfelelő érték!");
        return false;
    }
    var flashHeight = prompt("A flash magassága:", Math.round(flashWidth / 4 * 3));
    if (flashHeight == null || flashHeight < 1) {
        alert("Nem megfelelő érték!");
        return false;
    }
    var re = new RegExp(' ','gi');
    var newFlashLink = flashLink.replace(re, '%20');
    eval(whereToPut + "Control").replaceSelection("[FLASH SRC=\"" + newFlashLink + "\" WIDTH=\"" + flashWidth + "\" HEIGHT=\"" + flashHeight + "\"]\n");
    $(whereToPut).focus();
}

function fontSize(whereToPut) {
    var selectedText = eval(whereToPut + "Control").getSelection();
    var Size = prompt("A betűtípus mérete (pixelben):","10");
    var text = '';
    if (selectedText == '') {
        text = prompt("A szöveg","Ide írd be a szöveget");
    } else {
        text = selectedText;
    }
    if ( ( Size != null && Size != "10") && ( text != null && text != "Ide írd be a szöveget" ) )
    {
        var re = new RegExp('[\n\r]','gi');
        var re2 = new RegExp(' ','gi');
        var NewSize = Size.replace(re,'');
        var Size = NewSize.replace(re2,'');
        eval(whereToPut + "Control").replaceSelection("<font style=\"FONT-SIZE:" + Size + "px\">" + text + "</font>");
        $(whereToPut).focus();
    }
}

function buttonMouseOver(elementObject, text) {
    elementObject.className = 'button_mouseover';
    return overlib(text, WIDTH, 100);
}

function buttonMouseOut(elementObject, mode) {
    if (mode == 1) {
        elementObject.className = 'button_mouseout_textarea';
    } else {
        elementObject.className = 'button_mouseout_smilies';
    }
    return nd();
}

var loadInitFunctions = new Array();

function pageLoadInit(maxWidth) {
    resizePictures(maxWidth);
    for (var arrayElement = 0; arrayElement < loadInitFunctions.length; arrayElement++)
        if (typeof(loadInitFunctions[arrayElement]) == 'function')
            loadInitFunctions[arrayElement]();
}

function textArea1WatchKeys() {
    //	document.onkeydown = register;
    //	document.onkeyup = register;
    var x = document.inputForm.textArea1;
    x.onkeydown = register;
    //	x.onkeyup = register;
}

function textArea2WatchKeys() {
    //	document.onkeydown = register;
    //	document.onkeyup = register;
    var x = document.inputForm.textArea2;
    x.onkeydown = register_editablak;
    //	x.onkeyup = register;
}

function register_editablak(e)
{
    if (!e) e = window.event;
    var keyInfo = String.fromCharCode(e.keyCode) + '\n';
    if ((e['ctrlKey']) && (e['keyCode'] == 13)) {
        submitComment();
    }
}

var submitInProgress = false;

function checkLinks() {
    function parseCheckLinksData(loadedData) {
        var continueSubmitting = true;
        if (loadedData.responseText != '-') {
            continueSubmitting = confirm('A következő elemek a hozzászólásban már előfordultak máshol:' + loadedData.responseText + '\n---\nMindenképp el akarod így küldeni?');
        }
        if (continueSubmitting) {
            // Submit even if links are existing
            document.inputForm.submit();
        } else {
            // Not submitting
            submitInProgress = false;
            refreshSeed();
            $('submitButton').value = '          Elküld (CTRL-Enter)         ';
            $('submitButton').disabled = false;
            $('textArea1').focus();
        }
    }
    var postData = $('textArea1').value;
    var url = 'checkLinksInComments.php?forumSessId2=' + $F("forumSessId2") + '&seed=' + $F('seed');
    var myAjax = new Ajax.Request(url, {method: 'post', postBody: '-' + postData + '-', onSuccess: parseCheckLinksData } );
}


function submitComment() {
    if ($F('textArea1') != '') {
        submitInProgress = true;
        $('submitButton').disabled = true;
        $('submitButton').value = '         Elküldés ... várj.         ';
        if ($F('checkLinks') == 'true') {
            checkLinks();
        } else {
            document.inputForm.submit();
        }
    } else {
        alertWindow('Nincs elküldhető szöveg!');
    }
}

function register(e)
{
    if (!e) e = window.event;
    var keyInfo = String.fromCharCode(e.keyCode) + '\n';
    if ((e['ctrlKey'] == true) && (e['keyCode'] == 13) && !submitInProgress) {
        submitComment();
    }
    if ((e['altKey'] == true) && (e['keyCode'] == 66)) {
        smilieWindow('smilies.php?whereToPut=textArea1&seed=' + $F('seed') + '&forumSessId2=' + $F('forumSessId2'));
    }
    if ((e['altKey'] == true) && (e['keyCode'] == 75)) {
        insertPicture('textArea1');
    }
    if ((e['altKey'] == true) && (e['keyCode'] == 76)) {
        insertHyperLink('textArea1');
    }
    if ((e['altKey'] == true) && (e['keyCode'] == 77)) {
        insertMusic('textArea1');
    }
    if ((e['altKey'] == true) && (e['keyCode'] == 71)) {
        insertFlash('textArea1');
    }
    //	keyInfo += 'Event: ' + e.type + '\n\n';
    //	keyInfo += 'You pressed: ' + String.fromCharCode(e['keyCode']) + ' [Decimal: ' + e['keyCode'] + ']\n';
    //	keyInfo += 'ALT: ' + e['altKey'] + '\n';
    //	keyInfo += 'CTRL: ' + e['ctrlKey'] + '\n';
    //	keyInfo += 'SHIFT: ' + e['shiftKey'] + '\n';
    //	keyInfo += 'REPEAT: ' + e['repeat'] + '\n';
    //	keyInfo += 'WHICH: ' + e['which'];
    //	alert(szeva);
    //	document.inputForm.szoveg2.value = keyInfo;
}

function watchKeypressPopupWindow() {
    document.onkeydown = registerKeysPopupWindow;
}

function registerKeysPopupWindow(e)
{
    if (!e) e = window.event;
    if (e['keyCode'] == 27)
        popupCloseCallback();
}
function closeOnEsc() {
    watchKeypressPopupWindow();
}

function chatablaknyit(mit) {
    var xsize = screen.width;
    var ysize = screen.height;
    var xpos = xsize / 2 - 400 ;
    var ypos = ysize / 2 - 300;

    myPopupWindow = window.open(mit, 'chat', "left=" + xpos + ",top=" + ypos + ",resizable=no,top=2,left=2,location=no,width=800,height=600,statusbar=no,personalbar=no,toolbar=no,scrollbars=no,history=no,scrolling=no");
    myPopupWindow.blur();
    myPopupWindow.moveTo(xpos,ypos);
    myPopupWindow.focus();
}

function alertWindow(innerText, onCloseCallbackFunc) {
    if (myData['settings']['modalsOnly'])
        new modalWindow(innerText, onCloseCallbackFunc);
    else {
        alert(innerText);
        if (typeof(onCloseCallbackFunc) == 'function')
            onCloseCallbackFunc();
    }
}

function showProfileWindow(id, seed, forumSessId2) {
    if (id != 0) {
        if (!seed) seed = $F('seed');
        if (!forumSessId2) forumSessId2 = $F('forumSessId2');
        if (myData['settings']['modalsOnly']) iframeModal('profile.php?userId=' + id + '&seed=' + seed + (forumSessId2 != '' ? '&forumSessId2=' + forumSessId2 : ''));
            else popupWindow('profile.php?userId=' + id + '&seed=' + seed + (forumSessId2 != '' ? '&forumSessId2=' + forumSessId2 : ''));
    } else {
        alertWindow('Nem jelöltél ki felhasználót!');
    }
    return false;
}

function getUserComments(id, seed, forumSessId2) {
    if (id != 0) {
        if (!seed) seed = $F('seed');
        if (!forumSessId2) forumSessId2 = $F('forumSessId2');
        document.location.href='showComments.php?userId=' + id + '&seed=' + seed + (forumSessId2 != '' ? '&forumSessId2=' + forumSessId2 : '');
    } else {
        alertWindow("Nem jelöltél ki felhasználót!");
    }
    return false;
}

function refreshCloseButton(value) {
    for (counter = 0 ; counter < document.getElementsByName("closeButton").length ; counter++)
        document.getElementsByName("closeButton")[counter].value='          Bezárás (Esc) ... ' + value + '         ';
}

var x = 0;
var timerId = null;

function startCloseButton(seconds, secondsPassed, callbackFunc) {
    refreshCloseButton(seconds, secondsPassed);
    if (secondsPassed >= seconds) {
        refreshCloseButton(seconds - secondsPassed);
        callbackFunc();
    } else {
        refreshCloseButton(seconds - secondsPassed);
        secondsPassed += 1;
        setTimeout("startCloseButton(" + seconds + ", " + secondsPassed + ", " + callbackFunc + ")", 1000);
    }
}

function refreshAdminButton(value) {
    for (counter=0 ; counter < document.getElementsByName("retryButton").length ; counter++) {
        document.getElementsByName("retryButton")[counter].value='Újrapróbálkozás ... ' + value;
    }
}

function startAdminReloadButton(value, callbackFunc) {
    refreshAdminButton(value - x);
    if (value - x > 0) {
        setTimeout("startAdminReloadButton(" + value + ", " + callbackFunc + ")", 1000);
        x = x + 1;
    } else callbackFunc();
}

function commentMouseOver(trObj) {
    trObj.className = 'aktszin';
}

function commentMouseOut(trObj, hszid) {
    checkbox_obj = $(hszid);
    if (checkbox_obj.checked) {
        trObj.className = 'kijeloltsor_v';
    } else {
        trObj.className = 'hszhatter';
    }
}

function reverseOneMessageChecking(messageId, originalClass, classOfChecking) {
    var checkBox = document.getElementById(messageId);
    if (checkBox.checked == true) {
        checkBox.checked = false;
        document.getElementById("messageRow_" + messageId).className = originalClass;
    } else {
        checkBox.checked = true;
        document.getElementById("messageRow_" + messageId).className = classOfChecking;
    }
}

function messageMouseOver(trObj) {
    trObj.className = 'aktszin';
}

function messageMouseOut(trObj, styleName, messageId, classOfChecking) {
    if (document.getElementById(messageId).checked) {
        // Is checked
        trObj.className = classOfChecking;
    } else {
        // Not checked
        trObj.className = styleName;
    }
}

function checkAllMessages() {
    var success = false;
    for (counter=0 ; counter < document.getElementsByName("messageUniqIdArray[]").length ; counter++) {
        entity = document.getElementsByName("messageUniqIdArray[]")[counter];
        if (!entity.checked) {
            // Nincs bejelolve, bejeloljuk
            success = true;
            var trClass = document.getElementById("messageRow_" + entity.id).className
                reverseOneMessageChecking(entity.id, trClass, (trClass == 'vilagos' ? 'kijeloltsor_v' : 'kijeloltsor'));
        }
    }
    if (success)
        alertWindow('Sikeresen kijelöltem minden üzenetet.');
    else
        alertWindow('Minden üzenet ki van jelölve!');
}

function unCheckAllMessages() {
    var success = false;
    for (counter=0 ; counter < document.getElementsByName("messageUniqIdArray[]").length ; counter++) {
        var entity = document.getElementsByName("messageUniqIdArray[]")[counter];
        if (entity.checked) {
            success = true;
            // Bejelolve, kivesszuk a bejelölést
            var trClass = document.getElementById("messageRow_" + entity.id).className
                reverseOneMessageChecking(entity.id, (trClass == 'kijeloltsor_v' ? 'vilagos' : 'sotet'), (trClass == 'kijeloltsor_v' ? 'kijeloltsor_v' : 'kijeloltsor'));
        }
    }
    if (success)
        alertWindow('Sikeresen megszüntettem minden üzenet kijelölését.');
    else
        alertWindow('Minden üzenet jelöletlen!');
}

function reverseAllMessageChecking() {
    for (counter=0 ; counter < document.getElementsByName("messageUniqIdArray[]").length ; counter++) {
        var entity = document.getElementsByName("messageUniqIdArray[]")[counter];
        reverseOneMessageInternal(entity);
    }
    alertWindow('Üzenetek kijelölése megfordítva.');
}

function reverseOneMessageInternal(entity) {
    if (entity.checked) {
        // Uncheck it
        var trClass = document.getElementById("messageRow_" + entity.id).className
            reverseOneMessageChecking(entity.id, (trClass == 'kijeloltsor_v' ? 'vilagos' : 'sotet'), (trClass == 'kijeloltsor_v' ? 'kijeloltsor_v' : 'kijeloltsor'));
    } else {
        // Check it
        var trClass = document.getElementById("messageRow_" + entity.id).className
            reverseOneMessageChecking(entity.id, trClass, (trClass == 'vilagos' ? 'kijeloltsor_v' : 'kijeloltsor'));
    }
}

function checkMessagesByUserID(selectList) {
    var userId = selectList.options[selectList.selectedIndex].value;
    var userName = selectList.options[selectList.selectedIndex].innerHTML;
    for (counter=0 ; counter < document.getElementsByName("userId_" + userId).length ; counter++) {
        var messageId = document.getElementsByName("userId_" + userId)[counter].id.substr(8);
        var checkBox = document.getElementById(messageId);
        reverseOneMessageInternal(checkBox);
    }
    selectList.options[0].selected = true;
    alertWindow(userName + " üzeneteinek kijelölése sikeresen megfordítva.");
}

function deleteSelectedMessages(formName) {
    // Collect items checked for deletion
    var numberOfChecked = 0;
    for (counter = 0; counter < document.getElementsByName("messageUniqIdArray[]").length; counter++) {
        var entity = document.getElementsByName("messageUniqIdArray[]")[counter];
        if (entity.checked) numberOfChecked++;
    }
    if (numberOfChecked > 0) {
        var question = confirm("Biztos, hogy törölni akarod a kijelölt " + numberOfChecked + " üzenetet?");
        if (question)
            formName.submit();
    } else {
        alertWindow('Nincs törlésre kijelölt üzenet!');
    }
}

function famListMouseOver(trObj) {
    trObj.className = 'aktszin';
}

function famListMouseOut(trObj, styleName, userId) {
    var checkbox_checked = document.getElementById(userId).checked;
    if (checkbox_checked) {
        trObj.className = (styleName == 'vilagos' ? 'kijeloltsor_v' : 'kijeloltsor');
    } else {
        trObj.className = styleName;
    }
}

function famListClick(trObj, userId, styleName) {
    famListReverseOneChecking(trObj,document.getElementById(userId),styleName);
}

function famListReverseOneChecking(trObj, checkbox_obj, styleName) {
    if (checkbox_obj.checked) {
        famListUnCheckOne(trObj, checkbox_obj, styleName);
    } else {
        famListCheckOne(trObj, checkbox_obj, styleName);
    }
}

function famListCheckOne(trObj, checkbox_obj, styleName) {
    checkbox_obj.checked = true;
    if (styleName == 'vilagos') {
        trObj.className = 'kijeloltsor_v';
    } else {
        trObj.className = 'kijeloltsor';
    }
}

function famListUnCheckOne(trObj, checkbox_obj, styleName) {
    checkbox_obj.checked = false;
    if (styleName == 'vilagos' || styleName == 'kijeloltsor_v') {
        trObj.className='vilagos';
    } else {
        trObj.className='sotet';
    }
}

function famListCheckAll() {
    var question = confirm("Eltarthat egy kis ideig. Biztos ezt akarod?");
    if (question) {
        var numberOfChecked = 0;
        var famListLength = document.getElementsByName("familiarArray[]").length;
        alert(famListLength);
        for (var counter = 0; counter < famListLength; counter++) {
            var checkBox = document.getElementsByName("familiarArray[]")[counter];
            // Megkeressuk hozza a tr-t is
            if (!checkBox.checked) {
                numberOfChecked++;
                var trObj = document.getElementById('tr_' + checkBox.value);
                var styleName = document.getElementById('tr_' + checkBox.value).className;
                famListCheckOne(trObj, checkBox, styleName);
            }
        }
        if (numberOfChecked > 0) {
            alert('Bejelöltem ' + numberOfChecked + ' felhasználót.\nHa így megfelel, most kattints a módosítás gombra.');
        } else {
            alert('Már minden felhasználó be van jelölve!');
        }
    }
}

function famListUnCheckAll() {
    var question = confirm("Eltarthat egy kis ideig. Biztos ezt akarod?");
    if (question) {
        var numberOfChecked = 0;
        var famListLength = document.getElementsByName("familiarArray[]").length;
        for (var counter = 0; counter < famListLength ; counter++) {
            var checkBox = document.getElementsByName("familiarArray[]")[counter];
            // Megkeressuk hozza a tr-t is
            if (checkBox.checked) {
                numberOfChecked++;
                var trObj = document.getElementById('tr_' + checkBox.value);
                var styleName = document.getElementById('tr_' + checkBox.value).className;
                famListUnCheckOne(trObj, checkBox, styleName);
            }
        }
        if (numberOfChecked > 0) {
            alert('Megszüntettem ' + numberOfChecked + ' felhasználó ismertnek jelöltségét.\nHa így megfelel, most kattints a módosítás gombra.');
        } else {
            alert('Már minden felhasználó jelölése meg van szüntetve!');
        }
    }
}

function famListReverseChecking() {
    var question = confirm("Eltarthat egy kis ideig. Biztos ezt akarod?");
    if (question) {
        var famListLength = document.getElementsByName("familiarArray[]").length
        for (var counter = 0; counter < famListLength ; counter++) {
            var checkBox = document.getElementsByName("familiarArray[]")[counter];
            // Megkeressuk hozza a tr-t is
            var trObj = document.getElementById('tr_' + checkBox.value);
            var styleName = document.getElementById('tr_' + checkBox.value).className;
            famListReverseOneChecking(trObj, checkBox, styleName);
        }
        alert('A kijelölést megfordítottam.\nHa így megfelel, most kattints a módosítás gombra.');
    }
}

function refreshSeed() {
    $('seed').value = Math.floor((Math.random()*100000000));
}

function calcTime(secs) {
    var minutes = Math.floor(secs / 60);
    var seconds = secs % 60;
    return (minutes > 0 ? minutes + ' perc ' : '') + seconds + ' másodperc'
}


function getDescription(descName) {
    switch(descName) {
        case 'oneCommentsRead':
            return 'Azok a könyvjelzők ezen az oldalon, amelyeknél csak egyetlen hozzászólás van az olvasás óta, eme gomb megnyomására olvasottá válnak.<br><br>Bizony.<br><br>Ez azért jó, mert ha könyjelzőt használsz, ez a gomb megspórolja neked hogy egy hozzászólás kedvéért meg kelljen nyitnod a témát.';
            break;
        case 'allBookmarksRead':
            return 'Ez a gomb minden könyvjelződet a legfrissebb hozzászólásra fogja állítani, mintha minden hozzászólást elolvastál volna.';
            break;
        case 'showFreshTopics':
            return 'Ez a gomb olyan, mintha megnyomnád a frissítést, azaz frissül az oldal.<br><br>Én a helyedben mégis inkább ezt nyomkodnám a frissítés helyett, mivel a frissítés megnyomása rosszabb esetben az oldal scriptjeit is újratölti, ami sokkal lassabb betöltést eredményezhet. Nem beszélve arról, hogy arra Neked nincs is szükséged.';
            break;
        case 'showCommentVotes':
            return 'Ide kattintva megtudhatod, ki milyen szavazatot adott a hozzászólásodra.';
            break;
        default:
            return '';
            break
    }
}

function setOneCommentsAsRead() {
    unReadComments = document.getElementsByName('unRead');
    unReadLength = unReadComments.length;
    var counter = 0;
    var topicIdStrToSend = '';
    for(counter = 0; counter < unReadLength ; counter++) {
        unReadValue = unReadComments[counter].value;
        if (unReadValue.substr(unReadValue.length - 2, 2) == '_1') topicIdStrToSend += unReadValue.split('_')[0] + '|';
    }
    if (topicIdStrToSend != '') {
        topicIdStrToSend = topicIdStrToSend.substr(0, topicIdStrToSend.length - 1);
        document.location.href='?action=readOneComments&topicId=' + topicIdStrToSend + '&forumSessId2=' + $F('forumSessId2') + '&seed=' + $F('seed');
    } else {
        alertWindow('Nincs 1 olvasatlan hozzászólásos téma (legalábbis ezen az oldalon).\n\nDe az is lehet, hogy nem használsz könyvjelzőt.');
    }
}

function setAllBookmarksAsRead() {
    unReadComments = document.getElementsByName('unRead');
    unReadLength = unReadComments.length;
    var counter = 0;
    var topicIdStrToSend = '';
    for(counter = 0; counter < unReadLength ; counter++) {
        unReadValue = unReadComments[counter].value;
        topicIdStrToSend += unReadValue.split('_')[0] + '|';
    }
    if (topicIdStrToSend != '') {
        topicIdStrToSend = topicIdStrToSend.substr(0, topicIdStrToSend.length - 1);
        document.location.href='?action=allCommentsRead&topicId=' + topicIdStrToSend + '&forumSessId2=' + $F('forumSessId2') + '&seed=' + $F('seed');
    } else {
        alertWindow('Nincs olvasatlan hozzászólásos téma (legalábbis ezen az oldalon).\n\nDe az is lehet, hogy nem használsz könyvjelzőt.');
    }
}

modalWindow = Class.create();
modalWindow.prototype = {
    close: function() {
        if (Control.Modal.current) {
            this.modalWindow.close();
        }
    },
    delayedClose: function(timeOut) {
        setTimeout('Control.Modal.close()', timeOut);
    },
//    effectFunction: function() {
//        new Effect.Opacity('modal_container', {from:0, to:1, duration:1});
//    },
    updateText: function(windowText) {
        if (Control.Modal.current) {
            this.modalWindow.update(frameOpen + windowText + frameClose);
        }
    },
    initialize: function (windowText, onCloseCallbackFunc, timeOut) {
        if (!onCloseCallbackFunc)
            onCloseCallbackFunc = Prototype.emptyFunction;
//        this.updateText(windowText);
        this.modalWindow = new Control.Modal(false, {
//            overlayCloseOnClick: false,
            containeropacity: 0.75,
            opacity: 0.5,
            fade: true,
            contents: function () {return frameOpen + windowText + frameClose},
            afterClose: onCloseCallbackFunc
        }),
        this.modalWindow.open();
//        new Draggable('modal_container', {onStart: this.effectFunction()});
        new Draggable('modal_container');

        if (timeOut) setTimeout('Control.Modal.close()', timeOut);
    }
};

function askDelete(url)
{
    var myModalWindow = new modalWindow('Biztos, hogy törölni akarod?<br><br><input type="button" class="input" value="Igen" onclick="document.location.href=\'' + url + '\'; Control.Modal.close()"><input type="button" class="input" value="Nem" onclick="Control.Modal.close()">');
    return false;
}

function confirmAction(callbackFunc) {
    if (myData['settings']['modalsOnly'])
        var myModalWindow = new modalWindow('Biztos, hogy ezt szeretnéd?<br><br><input type="button" class="input" value="Igen" onclick="' + callbackFunc + '; Control.Modal.close()"><input type="button" class="input" value="Nem" onclick="Control.Modal.close()">');
    else {
        var question = confirm("Biztos, hogy ezt szeretnéd?");
        if (question)
            eval(callbackFunc);
    }
    return false;
}

function confirmPopupAction(url, onCancelCallbackFunc) {
    if (!onCancelCallbackFunc) onCancelCallbackFunc = Prototype.emptyFunction;
    if (myData['settings']['modalsOnly']) {
        var innerText = 'Biztos, hogy ezt szeretnéd?<br><br><input type="button" class="input" value="Igen" onclick="popupWindow(\'' + url + '\', refreshNeededCallback)"><input type="button" class="input" value="Nem" onclick="Control.Modal.close()">';
//        alertWindow(innerText);
        var myModalWindow = new modalWindow(innerText, onCancelCallbackFunc);
    } else {
        var question = confirm('Biztos, hogy ezt szeretnéd?');
        if (question) popupWindow(url, refreshNeededCallback);
        onCancelCallbackFunc();
    }
    return false;
}

iframeModalObj = Class.create();
iframeModalObj.prototype = {
    updateText: function(url) {
        if (Control.Modal.current) {
            this.modalWindow.update(frameOpen + '<iframe src="' + url + '" width="540" height="500" frameborder="0" id="modal_iframe"></iframe>' + frameClose);
        }
    },
    initialize: function (url, onCloseCallbackFunc, timeOut) {
        if (!onCloseCallbackFunc) onCloseCallbackFunc = Prototype.emptyFunction;
        $('modal_container').innerHTML = '';
        this.updateText(url);
        this.modalWindow = new Control.Modal(false, {
//            overlayCloseOnClick: false,
            containeropacity: 0.9,
            opacity: 0.5,
            fade: true,
            iframe: true,
            width: 590,
            height: 550,
            afterClose: onCloseCallbackFunc,
            contents: function () {return frameOpen + '<iframe src="' + url + '" width="540" height="500" frameborder="0" id="modal_iframe"></iframe>' + frameClose}
        });
        this.modalWindow.open();
        new Draggable('modal_container');

        if (timeOut) setTimeout('Control.Modal.close()', timeOut);
    }
}

function iframeModal(url, onCloseCallbackFunc) {
    new iframeModalObj(url, onCloseCallbackFunc);
    return false;
}

function refreshNeededCallback() {
    if (myData['settings']['modalsOnly'])
        parentWindow = window.parent;
    else
        parentWindow = window.opener;

    var url = parentWindow.location.href.substr(0, parentWindow.location.href.indexOf('?'));

    if (parentWindow.location.href.indexOf("#") != -1)
        anchor = parentWindow.location.href.substring(parentWindow.location.href.indexOf("#"));
    else
        anchor = '';

    if (parentWindow.location.href.indexOf("?") != -1)
        if (anchor != '')
            search = parentWindow.location.href.substring(parentWindow.location.href.indexOf("?") + 1, parentWindow.location.href.indexOf("#"));
        else
            search = parentWindow.location.href.substring(parentWindow.location.href.indexOf("?") + 1);
    else
        search = '';

    if (search == '')
        newSearch = 'seed=' + Math.floor((Math.random() * 100000000));
    else {
        var searchArray = search.split('&');
        if (searchArray.length > 1) {
            var newSearchArray = new Array();
            for(counter = 0; counter < searchArray.length; counter++)
                if (searchArray[counter].substr(0, 5) == 'seed=')
                    newSearchArray.push('seed=' + Math.floor((Math.random() * 100000000)));
                else
                    newSearchArray.push(searchArray[counter]);
            newSearch = newSearchArray.join('&');
        } else {
            newSearch = '';
            if (searchArray[0].substr(0, 5) == 'seed=')
                newSearch += 'seed=' + Math.floor((Math.random() * 100000000));
        }
    }
    newUrl = url + "?" + newSearch + anchor;
    setTimeout('parentWindow.location.href=\'' + newUrl + '\'', 1);
}

// This is for closeButton()
function popupCloseCallback(modalsOnly) {
    if (!modalsOnly)
        modalsOnly = myData['settings']['modalsOnly'];
    if (modalsOnly)
        window.parent.Control.Modal.close();
    else
        window.close();
}

// Used for login form
function doLogin() {
    $('toPage').value = document.location.href;
    return true;
}

function trMouseOverWithText(trObj, helpText, newClass) {
    if (!newClass) newClass = 'vilagos';
    trObj.className = newClass;
    return overlib(helpText);
}

function trMouseOutWithText(trObj, originalClass) {
    if (!originalClass) originalClass = ''
    trObj.className = originalClass;
    return nd();
}

function updateEditCounters() {
    setTimeout('updateEditCounters()', 1000);
    var serverTime = Math.floor((new Date()).getTime()/1000) + timeDifference;
    for (elementCount = 0; elementCount < document.getElementsByName('editUniqId').length; elementCount++) {
        var commentUniqId = document.getElementsByName('editUniqId')[elementCount].value;
        var editUntil = $('editUntil_' + commentUniqId).value;
        if (serverTime <= editUntil) {
            $('edittime_' + commentUniqId).innerHTML = calcTime(editUntil - serverTime);
        } else {
            var trObj = $('trEdit_' + commentUniqId);
            var holderObj = $(trObj.parentNode);
            holderObj.removeChild(trObj);
        }
    }
}

function checkThis(tr_obj, hszid) {
    if ($(hszid).checked) {
        // Uncheck
        tr_obj.className = 'aktszin';
        $(hszid).checked = false;
    } else {
        // Check
        tr_obj.className = 'kijeloltsor_v';
        $(hszid).checked = true;
    }
}

loadInitFunctions.push(updateEditCounters);

function votingSubmit() {
    function votingSubmitCallback() {
        $('votingHolderDiv').innerHTML = "Sikeresen szavaztál.<br><br><input type='button' class='input' value='Szavazási eredmények' onclick=\"popupWindow('votingResults.php?seed=" + $F('seed') + "&votingId=" + votingId + "&forumSessId2=" + $F('forumSessId2') + "')\">";
    }
    function parseSubmitVote(loadedData) {
        var resultArray = eval( '(' + loadedData.responseText + ')' );
        if (resultArray['resultCode'] == -1)
            alertWindow('Hiba a szavazás elküldése során! Próbáld később.', function() {votingSubmitCallback()});
        else
            alertWindow('Sikeres szavazás.', function() {votingSubmitCallback()});
    }
    var answerIdArray = document.getElementsByName('answerId');
    var answerIdLength = answerIdArray.length;
    var answerId = -1;
    var votingId = $F('votingId');
    for (var element = 0; element < answerIdLength; element++)
        if (answerIdArray[element].checked)
            answerId = answerIdArray[element].value;
    if (answerId != -1) {
        var myAjax = new Ajax.Request('submitVote.php', {method: 'get', parameters: 'action=submitVote&forumSessId2=' + $F('forumSessId2') + '&seed=' + $F('seed') + '&votingId=' + votingId + '&answerId=' + answerId, onSuccess: parseSubmitVote } );
    } else
        alertWindow('Nem jelöltél ki választ!');
    return false;
}

var thumbsDownCheck = new Image();
var thumbsUpCheck = new Image();
var ajaxLoaderSmall = new Image();
var ajaxLoader = new Image();

function loadCommentVoteImages() {
    thumbsDownCheck.src = '/skins/' + myData['usedSkin'] + '/images/thumbsDownCheck.gif';
    thumbsUpCheck.src = '/skins/' + myData['usedSkin'] + '/images/thumbsUpCheck.gif';
    ajaxLoaderSmall.src = '/skins/' + myData['usedSkin'] + '/images/ajax-loader-small.gif';
    ajaxLoader.src = '/skins/' + myData['usedSkin'] + '/images/ajax-loader.gif';
}

function commentVoteMouseAct(imgObj, mouseAct, thumbType) {
    if (mouseAct == 'over') {
        if (thumbType == 'down') {
            imgObj.src = thumbsDownCheck.src;
            return overlib('Kattintásra a hozzászólás <span class="commentNegativeVal">negatív</span> értékelése');
        } else if (thumbType == 'up') {
            imgObj.src = thumbsUpCheck.src;
            return overlib('Kattintásra a hozzászólás <span class="commentPositiveVal">pozitív</span> értékelése');
        }
    } else if (mouseAct == 'out') {
        if (thumbType == 'down')
            imgObj.src = '/skins/' + myData['usedSkin'] + '/images/thumbsDown.gif';
        else if (thumbType == 'up')
            imgObj.src = '/skins/' + myData['usedSkin'] + '/images/thumbsUp.gif';
        return nd();
    }
}

function commentVote(topicId, commentUniqId, value) {
    function parseCommentVote(loadedData) {
        var resultArray = eval( '(' + loadedData.responseText + ')' );
        if (resultArray['resultCode'] == -1) {
            alertWindow('Hiba történt a szavazás során! Visszaviszlek a főoldalra.', function() {document.location.href="/?seed=" + $F('seed') + '&forumSessId2=' + $F('forumSessId2')});
        } else if (resultArray['resultCode'] == -2) {
            // User already voted
            $('commentVote_' + commentUniqId).innerHTML = resultArray['responseHtml'];
            alertWindow('Te már szavaztál erre a hozzászólásra!');
            updateCommentVisibility(topicId, commentUniqId, resultArray['votingValue']);
        } else if (resultArray['resultCode'] == -3) {
            // Comment does not exist
            $('commentVote_' + commentUniqId).innerHTML = resultArray['responseHtml'];
            alertWindow('Ez a hozzászólás itt itt már nem létezik! Vagy áthelyezték, vagy törölték.');
            updateCommentVisibility(topicId, commentUniqId, resultArray['votingValue']);
        } else if (resultArray['resultCode'] == -4) {
            // User wants to vote for his own comment
            $('commentVote_' + commentUniqId).innerHTML = resultArray['responseHtml'];
            alertWindow('A saját hozzászólásodra nem szavazhatsz!');
            updateCommentVisibility(topicId, commentUniqId, resultArray['votingValue']);
        } else if (resultArray['resultCode'] == -5) {
            // User wants to vote on illegal comment
            $('commentVote_' + commentUniqId).innerHTML = resultArray['responseHtml'];
            alertWindow('Erre a hozzászólásra a tartalma miatt pozitívan nem szavazhatsz!');
            updateCommentVisibility(topicId, commentUniqId, resultArray['votingValue']);
        } else if (resultArray['resultCode'] == -6) {
            // User wants to vote in not voteable topic
            $('commentVote_' + commentUniqId).innerHTML = resultArray['responseHtml'];
            alertWindow('Ebben a témában nem lehet hozzászólásra pozitívan szavazni!');
            updateCommentVisibility(topicId, commentUniqId, resultArray['votingValue']);
        } else if (resultArray['resultCode'] == 1) {
            // Everything's okay
            $('commentVote_' + commentUniqId).innerHTML = resultArray['responseHtml'];
            updateCommentVisibility(topicId, commentUniqId, resultArray['votingValue']);
        }
        refreshSeed();
    }
    nd();
    if ((value == 1 || value == -1) && commentUniqId && topicId) {
        $('commentVote_' + commentUniqId).innerHTML = "<img src='" + ajaxLoaderSmall.src + "'>";
        var myAjax = new Ajax.Request('commentVote.php', {method: 'get', parameters: 'action=sendVote&forumSessId2=' + $F('forumSessId2') + '&seed=' + $F('seed') + '&commentUniqId=' + commentUniqId + '&topicId=' + topicId + '&value=' + value, onSuccess: parseCommentVote } );
    } else
        alertWindow('Hibás paraméter-átadás!');
}

function updateCommentVisibility(topicId, commentUniqId, votingValue) {
    if (votingValue <= myData['voteLimit']) {
        $('commentText_' + topicId + '-' + commentUniqId).hide();
        $('showHideText_' + commentUniqId).innerHTML = 'mutat';
    } else {
        $('commentText_' + topicId + '-' + commentUniqId).show();
        $('showHideText_' + commentUniqId).innerHTML = 'rejt';
    }
}

function toggleCommentVisibility(topicId, commentUniqId) {
    $('commentText_' + topicId + '-' + commentUniqId).toggle();
    if ($('commentText_' + topicId + '-' + commentUniqId).visible()) {
        $('showHideText_' + commentUniqId).innerHTML = 'rejt';
    } else {
        $('showHideText_' + commentUniqId).innerHTML = 'mutat';
    }
    return false;
}

function getCommentVotes(commentUniqId) {
    refreshSeed();
    return popupWindow('showCommentVotes.php?commentUniqId=' + commentUniqId + '&forumSessId2=' + $F('forumSessId2') + '&seed=' + $F('seed'));
}

// vim: enc=utf-8
