
/***********************************************
 *                                             *
 *  Copyright © BW Systems 2008.               *
 *                                             *
 *  Az oldal fejlesztoi joga a BW Systems Bt   *
 *  tulajdona. A szoftver felhasznalasa csak   *
 *  a BW Systems Bt. irasos engedelye birto-   *
 *  kaban, vagy a BW Systems Bt-vel kotott     *
 *  szerzodes alapjan lehetseges.              *
 *                                             *
 *  A szoftver engedely nelkuli felhasznalasa, *
 *  masolasa, modositasa, terjesztese vagy at- *
 *  adasa polgari es buntetojogi kovetkezme-   *
 *  nyekkel jarhat!                            *
 *                                             *
 *  BW Systems Bt. 2011 Budakalasz,            *
 *  Vasut sor 42.                              *
 *                                             *
 *  Cg.13-06-050782                            *
 *                                             *
 ***********************************************/

var defaulthost = 'www.civil.info.hu';
var pops;

var IE = (document.all) ? true : false;

var imgRoot = '/';
var screenWidth = false;
var screenHeight = false;
var midpointX = false;
var midpointY = false;
var scrollTop = false;
var scrollLeft = false;
var mouseX = false;
var mouseY = false;
var yoffs = 0;

var feedsToLoad = new Array();
var queryString = new Array();

function init() {
    parseQuery();
    preloadImg('/templates/images/wait.gif','/templates/images/btn60o.gif','/templates/images/btn90o.gif',
        '/templates/images/btn120o.gif','/templates/images/btn150o.gif','/templates/images/btn180o.gif');
    if (typeof(window.innerWidth) == 'number' ) {
        // FF
        //
        screenWidth = window.innerWidth;
        screenHeight = window.innerHeight;
    } else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
        // MSIE 6+
        //
        screenWidth = document.documentElement.clientWidth;
        screenHeight = document.documentElement.clientHeight;
    } else if (document.body && (document.body.clientWidth || document.body.clientHeight)) {
        // IE 4 kompatibilis
        //
        screenWidth = document.body.clientWidth;
        screenHeight = document.body.clientHeight;
    }
    midpointX = parseInt(screenWidth / 2);
    midpointY = parseInt(screenHeight / 2);
    scrollTop = document.body.scrollTop;
    scrollLeft = document.body.scrollLeft;

    document.onmousemove = getMousePos;
    pops = new Array();

    // Modul altal definialt init2() fuggveny futtatasa
    //
    if (window.init2) {
        init2();
    }

    // Betoltendo RSS feedek
    //
    for (var ii = 0; ii < feedsToLoad.length; ii++) {
        var feedurl = feedsToLoad[ii]['url'];
        var feedul = feedsToLoad[ii]['id'];

        var xfunc = new Function('a',"parseRssFeed(a,'"+feedul+"')");
        var req = new BWS_XMLRequest();
        req.setUrl('/xml/RSSProxy');
        req.setMethod('GET');
        req.setQueryString('url='+encodeURI(feedurl));
        req.setProcessResponse(xfunc);
        req.go();
    }
}

function parseRssFeed(feed, feedul) {
    var target_ul = getElement(feedul);
    var items = feed.getElementsByTagName('channel')[0].getElementsByTagName('item');

    for (var jj = 0; jj < items.length; jj++) {
        var item_url = (items[jj].getElementsByTagName('link')[0].firstChild)
            ? items[jj].getElementsByTagName('link')[0].firstChild.nodeValue : '/';
        var item_text = (items[jj].getElementsByTagName('title')[0].firstChild)
            ? items[jj].getElementsByTagName('title')[0].firstChild.nodeValue : '' ;
        
        var mylink = document.createElement('a');
        mylink.setAttribute('target','_blank');
        mylink.setAttribute('href', item_url);
        mylink.innerHTML = item_text;

        var myli = document.createElement('li');
        myli.appendChild(mylink);

        target_ul.appendChild(myli);
    }
}

function parseQuery() {
    var l = window.location;
    var q = l.toString().split('?')[1];
    if (q) {
        var parms = q.split('&');
        for (var i=0; i<parms.length; i++) {
            var qsp = parms[i].split('=');
            var qkey = qsp[0];
            var qval = qsp[1];
            queryString[qkey] = qval;
        }
    }
}

function getMousePos(e) {
    if (!e) var e = window.event || window.Event;
    if (IE) {
        mouseX = event.clientX + document.body.scrollLeft;
        mouseY = event.clientY + document.body.scrollTop;
    } else {
        if ('undefined' != typeof e.pageX) {
            mouseX = e.pageX;
            mouseY = e.pageY;
        } else {
            mouseX = event.clientX + document.body.scrollLeft;
            mouseY = event.clientY + document.body.scrollTop;
        }
    }
}

function getElement(elementname) {
    if ((document.getElementById) && (document.getElementById(elementname))) {
        return document.getElementById(elementname);
    } else if ((document.all) && (document.all.item(elementname))) {
        var el = document.all.item(elementname);
        if (el.length != null) return document.all.item(elementname)[0];
        else return document.all.item(elementname);
    } else {
        return false;
    }
}

function errorMessage(msg) {
    alert(msg);
}

function swap(img,newsrc) {
    img.src = imgRoot + newsrc;
}

function preloadImg() {
    var preloadedImages = new Array();
    for (var i = 0; i < arguments.length; i++) {
        img = new Image();
        img.src = imgRoot + arguments[i];
        preloadedImages[i] = img;
    }
}

function getSourceOfEvent(ev) {
    var retval = false;
    if (ev.srcElement) retval = ev.srcElement;
    else if (ev.target) retval = ev.target;
    
    try {
        if ((retval.nodeType) && (retval.nodeType==3)) retval = retval.parentNode;
    } catch(err) {
        // do nothing
    }
    return retval;
}

function trim(text) {
    return text.replace(/^\s*/,'').replace(/\s*$/,'').replace(/(\s)\s*/,'$1');
}

function toggleTag(aname,tag) {
    var rem = false;
    var newTags = new Array();
    var area = getElement(aname);
    if (area) {
        var tags = area.value.split(/\ +/);
        
        for (i=0;i<tags.length;i++) {
            if (tags[i] == tag) rem = true;
            else newTags.push(tags[i]);
        }
    
        if (newTags[0] == '') newTags.shift();
        if (!rem) newTags.push(tag);
        area.value = newTags.toString().replace(/,/g,' ');
    }
}

function normalizeText(inp) {
    var mit = new Array(/Á/g,/á/g,/É/g,/é/g,/Í/g,/í/g,/Ó/g,/ó/g,/Ö/g,/ö/g,/Ő/g,/ő/g,/Ú/g,/ú/g,/Ü/g,/ü/g,/Ű/g,/ű/g,/\ /g,/\-/g,/[^A-Za-z0-9_]/g);
    var mire = new Array('A','a','E','e','I','i','O','o','O','o','O','o','U','u','U','u','U','u','_','_','');
    for (var i=0; i<mit.length; i++) inp = inp.replace(mit[i],mire[i]);
    return inp;
}

function gotopage(pnr) {
    var loc = window.location;
    var myuri = loc.toString().split('?')[0];
    var qstr = myuri + '?';
    var done = false;
    for (var key in queryString) {
        if (key == 'p') {
            qstr += 'p=' + pnr + '&';
            done = true;
        } else qstr += key + '=' + queryString[key] + '&';
    }
    if (!done) qstr += 'p=' + pnr;
    qstr = qstr.replace(/\&$/,'');
    window.location = qstr;
}

function goPrint() {
    var wopts = 'resizable=1,scrollbars=1,menubar=1,width=900,height=600,innerWidth=900,innerHeight=600,top=100,left=100';
    var loc = window.location;
    var myuri = loc.toString().split('?')[0];
    var qstr = myuri + '?';
    var done = false;
    for (var key in queryString) {
        if (key == 'template') {
            qstr += 'template=print&';
            done = true;
        } else qstr += key + '=' + queryString[key] + '&';
    }
    if (!done) qstr += 'template=print';
    var nwind = window.open(qstr,'_PRINTWINDOW',wopts);
    return;
}

function goSearch(strel,retel) {
    getElement('searcherror').style.visibility = 'hidden';
    var searchel = getElement(strel);
    var retardel = getElement(retel);
    if ((searchel) && (retardel)) {
        if (trim(searchel.value).length > 2) {
            var qs = queryString['search'];
            if (retardel.checked) qs += '%20' + searchel.value;
            else qs = searchel.value;
            window.location = '/modules/Search?search=' + qs;
        } else {
            getElement('searcherror').style.visibility = 'visible';
        }
    }
}

function ekopStart() {
    var theurl = '/static/ekop.html';
    var width = 802;
    var height = 602;
    return openPopup(theurl,width,height);
}

function openPopup(url,w,h) {
    pops.push(url);
    var pid = pops.length;
    var wid = 'w' + pid;
    var wfin = 10 + w;
    var hfin = 10 + h;
    var params = 'directories=no,'
                + 'location=no,'
                + 'resizable=no,'
                + 'menubar=no,'
                + 'toolbar=no,'
                + 'scrollbars=no,'
                + 'status=no';
    window.open(url,wid,'width='+wfin+',height='+hfin+',' + params);
    return true;
}

function openNew(url) {
    pops.push(url);
    var pid = pops.length;
    var wid = 'w' + pid;
    return window.open(url,wid,'');
}


