/* images array */

var imgs = new Object();

/* preload some images (especially for hover) */

imgs.menu = new Image();
imgs.menu.src = "images/menu/bg_hover.gif";
imgs.archive_arrow = new Image();
imgs.archive_arrow.src = "components/archive/images/top/arrow_hover.png";
imgs.archive_submit = new Image();
imgs.archive_submit.src = "components/archive/images/top/bar_submit_hover.png";
imgs.pages_back = new Image();
imgs.pages_back.src = "components/archive/images/main/p_left_hover.png";
imgs.pages_forward = new Image();
imgs.pages_forward.src = "components/archive/images/main/p_right_hover.png";
imgs.radio_default = new Image();
imgs.radio_default.src = "modules/vote/images/radio_default.gif";
imgs.radio_checked = new Image();
imgs.radio_checked.src = "modules/vote/images/radio_selected.gif";
imgs.comment_submit = new Image();
imgs.comment_submit.src = "components/article/images/submit_hover.png";
imgs.select_right = new Image();
imgs.select_right.src = "images/select_light/right_selected.gif";


/* hover */
function hover(obj, h)
{
    var objClass = obj.className;

    if ( h == 0 )
    {
        var hoverPos = objClass.indexOf('_', -1);
        obj.className = objClass.substring(0, hoverPos);
    }

    else obj.className = objClass + "_hover";
}
/* rollover */
function rollOver(obj, h) {
	document.getElementById(obj+"img").src = img[obj][h].src;
}
/* latest refresh */
function latestRefresh(section) {
	requestSend("latest_refresh", "s="+section, "latest_news");
}
/* addfav */
function addFav(id) {
    var args = "id="+id;
	requestSend("fav", args, false, false)
}
/* select fav (today/alltime) */
function select_fav(intval, section)
{
    var args = "s="+section+"&f="+intval;
    requestSend("fav_select", args, "favorites", false);
}
/* article click */
function article_click(id)
{
    var args = "id=" + id;
    requestSend("fav_article", args, false, false);
}

function banner_hits(id)
{
    var args = "id=" + id;
    requestSend("banner_hits", args, false, false);
}
/* initscript */
function initScript(section) {
	setInterval("latestRefresh('"+section+"')", 60000);
}
/* add style */
function add_style(css_file)
{
    var new_css = document.createElement('link');
    new_css.setAttribute('rel', 'stylesheet');
    new_css.setAttribute('type', 'text/css');
    new_css.setAttribute('href', css_file);
    document.getElementsByTagName('head')[0].appendChild(new_css);
}
/* load component */
function load_component(com, args)
{
    var URL = "index.php?com=" + com;
    if (args) URL += "&" + args;
    window.location = URL;
}


/* ------------------------------------------------- SEARCH -------------------------------------------------- */

var search_focused = false;

function search_ffocus()
{
    if (!search_focused) document.getElementById("google_text").value = "";
    search_focused = true;
}

function search(google)
{
    if (!search_focused)
    {
        alert("Kérem írja be a keresendő szöveget!");
        return;
    }
    var q = document.getElementById("google_text").value;
    if (q.length < 5)
    {
        alert ("A keresendő szövegnek minimum 5 karakter hosszúnak kell lennie!");
        document.getElementById("google_text").focus();
        return;
    }
    if (!google) window.location.href = "index.php?com=search&q=" + document.getElementById("google_text").value;
    else
    {
        document.google_form.q.value = q;
        document.google_form.submit();
    }
}




/* ------------------------------------------------- VOTE -------------------------------------------------- */

/* variables */

var voteAnswer = null;

/* functions */

function voteSelect(answer)
{
	if (voteAnswer) document.getElementById("radio"+voteAnswer).src = imgs.radio_default.src;
	voteAnswer = answer;
	document.getElementById("radio"+answer).src = imgs.radio_checked.src;
}

function submitVote(start, section)
{
	if (voteAnswer) requestSend("vote", "s="+start+"&a="+voteAnswer, "vote", start);
    else alert("Szavazás előtt jelöljön be egy választ!");
}

/* ----------------------------------------------- NEWSBOX ------------------------------------------------- */

var current_sizeradio = 1;
var current_colorradio = 1;
var currentW = 160;
var currentH = 200;
var currentSection = "all";
var preview = false;
var code = false;

function nbSizeRadio(id)
{
    if (current_sizeradio == id) return;
    document.getElementById("size_"+current_sizeradio).src = imgs.radio_default.src;
    document.getElementById("size_select_"+current_sizeradio).style.display = "none";
    current_sizeradio = id;
    if (current_sizeradio == 1)
    {
        document.getElementById("size_w").value = currentW;
        document.getElementById("size_h").value = currentH;
    }
    document.getElementById("size_"+current_sizeradio).src = imgs.radio_checked.src;
    document.getElementById("size_select_"+current_sizeradio).style.display = "block";
}

function nbColorRadio(id)
{
    if (current_colorradio == id) return;
    document.getElementById("color_"+current_colorradio).src = imgs.radio_default.src;
    current_colorradio = id;
    document.getElementById("color_"+current_colorradio).src = imgs.radio_checked.src;
}

function nbSizeSelect(w, h, show)
{
    if (show)
    {
        if ( document.getElementById("section_select_list").style.display == "block" ) document.getElementById("section_select_list").style.display = "none";
        if (document.getElementById("size_select_list").style.display == "none" || !document.getElementById("size_select_list").style.display)
        {
            document.getElementById("size_select_list").style.display = "block";
        }
        else
        {
            document.getElementById("size_select_list").style.display = "none";
        }
    }
    else
    {
        document.getElementById("size_select_text").innerHTML = w + " x " + h;
        currentW = w;
        currentH = h;
        document.getElementById("size_w").value = w;
        document.getElementById("size_h").value = h;
        document.getElementById("size_select_list").style.display = "none";
    }
}

function nbSectionSelect(section, section_name, show)
{
    if (show)
    {
        if ( document.getElementById("size_select_list").style.display == "block" ) document.getElementById("size_select_list").style.display = "none";
        document.getElementById("section_select_list").style.display = (document.getElementById("section_select_list").style.display == "none" || !document.getElementById("section_select_list").style.display) ? "block" : "none";
    }
    else
    {
        document.getElementById("section_select_text").innerHTML = section_name;
        document.getElementById("section_select_list").style.display = "none";
        currentSection = section;
    }
}

function validateBox(preview)
{
    var valid = true;
    var ahp_width;
    var ahp_height;
    var ahp_boxcolor;
    var ahp_section;
    var ahp_uid = document.getElementById("uid").value;

    if (current_sizeradio == 2)
    {
        if (document.getElementById("size_w").value < 160)
        {
            alert("Minimum szélesség: 160 pixel!");
            return;
        }
        else ahp_width = document.getElementById("size_w").value;

        if (document.getElementById("size_h").value < 140)
        {
            alert("Minimum magasság: 140 pixel!");
            return;
        }
        else ahp_height = document.getElementById("size_h").value;
    }
    else
    {
        ahp_width = document.getElementById("size_w").value;
        ahp_height = document.getElementById("size_h").value;
    }
    ahp_boxcolor = (current_colorradio == 1) ? "light" : "dark";
    ahp_section = currentSection;
    if (preview) generateBoxPreview(ahp_width, ahp_height, ahp_boxcolor, ahp_section);
    else generateBoxCode(ahp_width, ahp_height, ahp_boxcolor, ahp_section, ahp_uid);
}

function generateBoxPreview(ahp_width, ahp_height, ahp_boxcolor, ahp_section)
{
        if (preview || code) return;
        preview = true;
        document.getElementById("box_preview_code").style.width = ahp_width + "px";
        document.getElementById("box_preview_code").style.height = ahp_height + "px";
        document.getElementById("box_preview").style.top = "40px";
        var left = 298 - ( ( ( ahp_width * 1 ) + 40 ) / 2 );
        document.getElementById("box_preview").style.left = left.toString() + "px";
        document.getElementById("box_preview_code").innerHTML = '<link href="http://althir.org/public/newsbox/newsbox_' + ahp_boxcolor + '.css" type="text/css" rel="stylesheet" />\n<form name="ahp_form" action="http://althir.org/index.php" method="get" target="_blank">\n<input type="hidden" name="s" value="' + ahp_section + '" />\n<input type="hidden" name="uid" value="preview" /></form>\n<div id="ahp_container" style="width: ' + ahp_width + 'px; height: ' + ahp_height + 'px">\n<div id="ahp_header" style="width: ' + ahp_width + 'px" onclick="document.ahp_form.submit();">\n<div id="ahp_header_right" style="left: ' + (ahp_width - 5) + 'px"></div>\n<div id="ahp_header_center" style="width: ' + (ahp_width - 10) + 'px">\n<div id="ahp_header_title" style="width: ' + (ahp_width - 10) + 'px"></div></div></div>\n<div id="ahp_data_container" style="width: ' + (ahp_width - 10) + 'px; height: ' + (ahp_height - 51) + 'px">\n<iframe id="ahp_data" src="http://althir.org/public/newsbox/newsbox.php?section=' + ahp_section + "&width=" + ahp_width + "&height=" + ahp_height + '&uid=preview" frameborder="0" height="' + (ahp_height - 51) + '" width="'  + (ahp_width - 20) + '" scrolling="no"></iframe></div>\n<div id="ahp_bottom" style="width: ' + (ahp_width - 10) + 'px" onclick="document.ahp_form.submit();"><div id="ahp_bottom_title" style="width: ' + (ahp_width - 10) + 'px"></div></div></div>\n';
        document.getElementById("box_preview").style.display = "block";
}

function generateBoxCode(ahp_width, ahp_height, ahp_boxcolor, ahp_section, ahp_uid)
{
    if (code || preview) return;
    code = true;
    document.getElementById("box_code_code").innerHTML = '&lt;script type=&quot;text/javascript&quot;&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;ahp_width = '+ahp_width+';<br />&nbsp;&nbsp;&nbsp;&nbsp;ahp_height = '+ahp_height+';<br />&nbsp;&nbsp;&nbsp;&nbsp;ahp_section = &quot;'+ahp_section+'&quot;;<br />&nbsp;&nbsp;&nbsp;&nbsp;ahp_boxcolor = &quot;'+ahp_boxcolor+'&quot;;<br />&nbsp;&nbsp;&nbsp;&nbsp;ahp_uid = &quot;'+ahp_uid+'&quot;;<br />&lt;/script&gt;<br />&lt;script type=&quot;text/javascript&quot; src=&quot;http://althir.org/public/newsbox/ahp_newsbox.js&quot;&gt;&lt;/script&gt;';
    document.getElementById("box_code").style.display = "block";
}

function nbClose(closeall)
{
    if (closeall) window.location = "http://althir.org";
    else
    {
        document.getElementById("box_preview").style.display = "none";
        document.getElementById("box_code").style.display = "none";
        preview = code = false;
    }
}

/* ----------------------------------------------- ARCHIVE ------------------------------------------------- */

var currentCategory = null;
var args_name = new Array("section", "site", "year", "month", "day", "offset");


/* SELECT NEW ITEM IN A CATEGORY / SUBMIT NEW SEARCH */

function archive_sc(category, is_submit, operation)
{
    if (category == "offset")
    {
        category = false;
        operation = false;
    }

    if (operation)
    {
    	if (currentCategory) document.getElementById("dd_" + currentCategory).style.display = "none";
    	if (currentCategory != category)
        {
    		currentCategory = category;
    		document.getElementById("dd_" + currentCategory).style.display = "block";
    	}
    	else currentCategory = null;
    }

    if (is_submit)
    {
        if (category)
        {
            module = "archive_top";
            div_object = "bar_container";
        }
        else
        {
            module = "archive";
            div_object = "content_main";
        }

        var args = "";

        for (i=0; args_name[i]; i++)
        {
            if (i>0) args += "&";
            args += args_name[i] + "=" + document.getElementById("args_" + args_name[i]).value;
        }

        if (category)
        {
            args += "&ch=" + category;
            document.getElementById(div_object).innerHTML = "<div id=\"left\"><div class=\"bartext\" id=\"selected_section\"><span>BETÖLTÉS...</span></div>";
        }
        else
        {
            document.getElementById("pages").innerHTML = "BETÖLTÉS...";
        }


        requestSend(module, args, div_object, false);
    }
}

/* SELECT CATEGORY VALUE from DD */

function archive_sv(category, val)
{
    if (val === false || val === null) val = "mind";
    document.getElementById("args_" + category).value = val;
    archive_sc(category, true, true);
}



/* ----------------------------------------------- ARTICLES/COMMENTS ------------------------------------------------- */

function answer_comment(id, name)
{
    document.getElementById("comment_content").value = "Válasz " + name + ", " + id + ". hozzászólására:\n\n";
    window.location.href = "#newcomment";
    document.getElementById("comment_content").focus();
}

function comment_order(orderby)
{
    var args = "id=" + document.getElementById("article_id").value + "&order=" + orderby;
    requestSend("comment_order", args, "comments", false);
}

function comment_handler()
{
    if (xmlHttp.readyState == 4)
    {
    	if (xmlHttp.responseText)
    	{
		    if (xmlHttp.responseText.substring(0, 1) == ":") alert(xmlHttp.responseText.substring(1));
		    else
            {
                document.getElementById("comment_content").value = "";
                document.getElementById("comment_name").value = "";

                var separator = xmlHttp.responseText.indexOf("#");
                var url = xmlHttp.responseText.substring(0, separator);
                document.getElementById("comments").innerHTML = xmlHttp.responseText.substring(separator+1);
                window.location.href = "#"+url;
            }
    	}
    }
}

function send_request_post(ctype)
{
    xmlHttp = xmlHttpCheck();
    if (xmlHttp == null) {
        alert ("Az Ön böngészője nem támogatja az AJAX technológiát!");
        return;
    }

    var args = "type="+ctype+"&name="+encodeURI(document.getElementById("comment_name").value)+"&comment="+encodeURI(document.getElementById("comment_content").value) + "&id=" + encodeURI(document.getElementById("article_id").value);

    xmlHttp.onreadystatechange = comment_handler;
    xmlHttp.open("POST", "modules/engine/comment_submit.php", true);
    xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");
    xmlHttp.setRequestHeader("Content-length", args.length);
    xmlHttp.setRequestHeader("Connection", "close");
    xmlHttp.send(args);
}

function comment_submit(ctype)
{
    var is_submittable = true;

    if ( document.getElementById("comment_name").value == "" )
    {
        is_submittable = false;
        alert("Kérem írja be nevét/becenevét!");
        document.getElementById("comment_name").focus();
        return;
    }

    if ( document.getElementById("comment_content").value == "" )
    {
        is_submittable = false;
        alert("Kérem írja be hozzászólását!");
        document.getElementById("comment_content").focus();
        return;
    }

    if ( is_submittable ) send_request_post(ctype);
}

function chkReg() {
	var valid = true;
	if (document.getElementById('email-ip').value == '') {
		valid = false;
		alert('E-mail cím megadása kötelező!');
	}
	if (document.getElementById('pass-ip').value == '') {
		valid = false;
		alert('Jelszó megadása kötelező!');
	}
	if (document.getElementById('pass-ip').value != document.getElementById('pass2-ip').value) {
		valid = false;
		alert('A két jelszó nem egyezik!');
	}
	if (document.getElementById('name-ip').value == '') {
		valid = false;
		alert('Név/becenév megadása kötelező!');
	}
	return valid;
}
