function toggle(name) {

    var rowLayer = document.getElementById(name+'_items');

    if (rowLayer.style.display == 'none') {
        document.getElementById(name+'_img').src = 'gfx/default/menu_on.gif';
    } else {
        document.getElementById(name+'_img').src = 'gfx/default/menu_off.gif';
    }

    newDisplay = rowLayer.style.display == 'none' ? 'block' : 'none';
    rowLayer.style.display = newDisplay;

}

function showModuleHint(name) {

    rowLayer = document.getElementById(name+'_text');
    newDisplay = rowLayer.style.display == 'none' ? 'block' : 'none';
    rowLayer.style.display = newDisplay;

    rowLayer = document.getElementById(name+'_info');
    newDisplay = rowLayer.style.display == 'none' ? 'block' : 'none';
    rowLayer.style.display = newDisplay;
}

function changeRowColor( o ) {
    if ( $(o).hasClass('alertRow') ) {
        $(o).toggleClass('highlightAlert');
    } else {
        $(o).toggleClass('highlight');
    }
}

function ConfirmDelMsg() 
{
  if (confirm('Figyelem: véglegesen akarja törölni a kijelölt tétel(eke)t.')) {
      return true;
  } else {
      return false;
  }
}

function ConfirmDelOne(url)
{
  if (ConfirmDelMsg()) {
    window.location = url;
  }
}

function ConfirmDel(form)
{
  var c = 0;

  if (!document.forms[form].elements['todelete[]']) {
    alert('Nincs kijelölhető / törölhető tétel!');
    return false;
  }

  for ( i=0; i<document.forms[form].elements['todelete[]'].length; i++)
    if (document.forms[form].elements['todelete[]'][i].checked)
      c++

  if (document.forms[form].elements['todelete[]'].checked)
    c++;

  if (c<1) {
    alert('Nincs kijelölt tétel!');
    return false;
  }

  return ConfirmDelMsg();
}

function openWindow(width, height, loc, name)
{
    newWin =  window.open (loc, name, "toolbar=no,width="+ width +",height="+ height +",top=100,left=100,directories=no,status=no,scrollbars=yes,resizable=yes,menubar=no");
}

function invertSelections(form)
{
  var len;

  if (!document.forms[form].elements['todelete[]']) {
    return;
  }

  len = document.forms[form].elements['todelete[]'].length;

  if ( len ) {
    for ( i=0; i<document.forms[form].elements['todelete[]'].length; i++)
      document.forms[form].elements['todelete[]'][i].checked = !document.forms[form].elements['todelete[]'][i].checked;
  } else {
      document.forms[form].elements['todelete[]'].checked = !document.forms[form].elements['todelete[]'].checked;
  }

}


var fieldSize = new Array ();

function incSize(field) {
    o = document.getElementById(field);

    if ( !fieldSize[field] ) {
        fieldSize[field] = o.offsetHeight;
    }

    o.style.height = o.offsetHeight + 50;
}

function decSize(field) {
    o = document.getElementById(field);

    if ( !fieldSize[field] ) {
        fieldSize[field] = o.offsetHeight;
    }

    if ( o.offsetHeight - 50 > fieldSize[field] ) {
        o.style.height = o.offsetHeight - 50;
    } else {
        o.style.height = fieldSize[field];
    }
}

function randomText(field, c) {
    chrs = new Array ('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','0','1','2','3','4','5','6','7','9','8');

    l = chrs.length - 1;

    text = '';
    for ( i=0; i<c; i++ ) {
        n = Math.round( Math.random() * l);
        text = text + chrs[n];
    }

    document.getElementById(field).value = text;
}


function help(id) {
    window.open('?base=help&id=' + id, 'help', 'screenX=100,left=100,screenY=100,top=100,status=no,scrollbars=yes,resizable=yes,width=300,height=200');
}

function textCounter(maxlimit, field, counterField) {
    field = document.getElementById(field);
    countfield = document.getElementById(counterField);

    if (field.value.length > maxlimit) {
        field.value = field.value.substring(0, maxlimit);
    } else { 
        countfield.value = maxlimit - field.value.length;
    }
}

function initHTMLEditor() {
/*
    clear URL esetében az alábbi értékeket kell megadni
    convert_urls : true,
    document_base_url : "/"
*/
  tinyMCE.init({
        mode : "textareas",
        editor_selector : "mceEditor",
        theme : "advanced",
        language : "hu",
        width: "100%",
        height: "250",
        plugins : "save,advhr,preview,zoom,searchreplace,print,contextmenu,paste,directionality,fullscreen",
        theme_advanced_buttons1 : "bold,italic,underline,strikethrough,separator,forecolor,backcolor,removeformat,separator,bullist,numlist,outdent,indent,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,link,unlink,image,separator,undo,redo,separator,pastetext,pasteword,selectall,separator,code,fullscreen,help",
        theme_advanced_buttons2 : "",
        theme_advanced_buttons3 : "",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing_use_cookie : false,
        plugi2n_insertdate_dateFormat : "%Y-%m-%d",
        plugi2n_insertdate_timeFormat : "%H:%M:%S",
        paste_use_dialog : false,
        theme_advanced_resizing : true,
        theme_advanced_resize_horizontal : false,
        paste_create_paragraphs : true,
        paste_create_linebreaks : true,
        paste_use_dialog : true,
        paste_convert_middot_lists : false,
        paste_auto_cleanup_on_paste : true,
        paste_convert_headers_to_strong : true,
        paste_strip_class_attributes : "all",
        paste_remove_spans : true,
        paste_remove_styles : true,
        remove_script_host: false,
        relative_urls : false,
        convert_urls : true,
        entity_encoding : "raw",
        document_base_url : "/",
        oninit : "onInitHTMLEditor"
        });
}

function onInitHTMLEditor() {
    var fields = document.getElementsByTagName('SPAN');
    for (var i=0; i<fields.length; i++)
    {
        if (fields[i].className != 'mceEditorContainer') continue;
        var cl = $(fields[i].getAttribute('parent'));
        if (!cl) continue
        cl = cl.className.split(' ');
        for (var j=0; j<cl.length; j++)
        {
            var c = cl[j].split(':');
            if (c[0] != 'lang' ) continue;

            if (c[1] != language.def)
                fields[i].style.display = 'none';

            language.addHTMLfield(fields[i].getAttribute('parent'), fields[i]);

        }
    }
}

function findPosX(obj)
{
    var curleft = 0;
    if (obj.offsetParent)
    {
        while (obj.offsetParent)
        {
            curleft += obj.offsetLeft
            obj = obj.offsetParent;
        }
    }
    else if (obj.x)
        curleft += obj.x;
    return curleft;
}

function findPosY(obj)
{
    var curtop = 0;
    if (obj.offsetParent)
    {
        while (obj.offsetParent)
        {
            curtop += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (obj.y)
        curtop += obj.y;
    return curtop;
}

function pageDimension() {
    var w,h;
    var test1 = document.body.scrollHeight;
    var test2 = document.body.offsetHeight
    
    // all but Explorer Mac
    if (test1 > test2) 
    {
        w = document.body.scrollWidth;
        h = document.body.scrollHeight;

    // Explorer Mac; would also work in Explorer 6 Strict, Mozilla and Safari
    } else {
        w = document.body.offsetWidth;
        h = document.body.offsetHeight;
    }

    return {width: w, height: h};
}

function innerDimension() {
    var x,y;
    
    // all except Explorer
    if (self.innerHeight)
    {
        x = self.innerWidth;
        y = self.innerHeight;

    // Explorer 6 Strict Mode
    } else if (document.documentElement && document.documentElement.clientHeight) {
        x = document.documentElement.clientWidth;
        y = document.documentElement.clientHeight;
    
    // other Explorers
    } else if (document.body) {
        x = document.body.clientWidth;
        y = document.body.clientHeight;
    }

    return {width: x, height: y}
}

function offsetDimension() {
    var x,y;

    // all except Explorer
    if (self.pageYOffset)
    {
        x = self.pageXOffset;
        y = self.pageYOffset;

    // Explorer 6 Strict
    } else if (document.documentElement && document.documentElement.scrollTop) {
        x = document.documentElement.scrollLeft;
        y = document.documentElement.scrollTop;

    // all other Explorers
    } else if (document.body) {
        x = document.body.scrollLeft;
        y = document.body.scrollTop;
    }

    return {x: x, y: y}
}

function logout(auto) {

    if (auto) {
        if (!confirm('Figyelem: kilépéskor az automatikus belépés beállítás törlődni fog!')) {
            return false;
        }
    }

    window.location = '?action=logout';
}
