
/***********************************************
 *                                             *
 *  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.itsecure.hu';

var IE = ((document.all)  && (navigator.appName == 'Microsoft Internet Explorer')) ? true : false;

var imgRoot = '/templates/images/';
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 queryString = new Array();
var email_regexp = /^[A-Za-z0-9_\-]{1,64}(\.[A-Za-z0-9_\-]{1,64})*@[A-Za-z0-9_\-]{1,64}(\.[A-Za-z0-9_\-]{1,64})*\.[a-zA-Z]{2,4}$/;

/* MSIE miatt kulonbozo stiluslapok, meg mielott
 * betoltene az oldalt. Sokaig eljenek ott Redmondban.
 */
var styl = document.createElement('link');
styl.setAttribute('rel','stylesheet');
styl.setAttribute('type','text/css');
if (IE) {
    styl.setAttribute('href','/templates/style/itsecure_msie.css');
} else {
    styl.setAttribute('href','/templates/style/itsecure_std.css');
}
document.getElementsByTagName('head')[0].appendChild(styl);

/* Ez az oldal betoltodese utan fut mar le
 */
function init() {
    preloadImg('ful_remote2.jpg','ful_silver2.jpg','ful_gold2.jpg','ful_premium2.jpg','ful_diamond2.jpg');
    parseQuery();
    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;
    
    if (window.getWebshopItems) {
        getWebshopItems();
    }

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

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 simpleMessage(msg,msecs) {
    if (!msecs) var msecs = 2500;
    if (document.documentElement && document.documentElement.scrollTop) yoffs = document.documentElement.scrollTop;
    else if (window.pageYOffset) yoffs = window.pageYOffset;
    else yoffs = document.body.scrollTop;

    var msgDiv = document.getElementById('msgdiv');

    if (!msgDiv) {
        var cmsg = '';
        msgDiv = document.createElement('div');
        msgDiv.id = 'msgdiv';
        msgDiv.style.position = 'absolute';
        msgDiv.style.top = parseInt(midpointY - 100 + yoffs) + 'px';
        msgDiv.style.left = parseInt(midpointX - 150) + 'px';
        msgDiv.style.width = '300px';
        msgDiv.style.height = '150px';

        msgDivIn = document.createElement('div');
        msgDivIn.style.padding = '20px';

        msgDivIn.innerHTML = msg;
        msgDiv.appendChild(msgDivIn);
        document.body.appendChild(msgDiv);
        setTimeout("closeSimpleMessage()",msecs);
        return true;
    } else {
        // Mar van egy hibaablak
        return false;
    }
}

function closeSimpleMessage() {
    var errDiv = document.getElementById('msgdiv');
    if (errDiv) document.body.removeChild(errDiv);
}

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) {
        // nemcsinalsemmit
    }
    return retval;
}

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

function normalizeText(t) {
    var w = 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 wt = 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<w.length; i++) t = t.replace(w[i],wt[i]);
    return t;
}

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.href = qstr;
}

function removeLoginFailed() {
    var lfdiv = getElement('login_failed');
    if (lfdiv) {
        lfdiv.parentNode.removeChild(lfdiv);
    }
}

function loginHandler(xmldata) {
    var rescode = xmldata.getElementsByTagName('resultcode')[0].firstChild.nodeValue;
    if (rescode == 1) window.location.reload(true);
    else {
        var ediv = document.createElement('div');
        ediv.id = 'login_failed';
        ediv.innerHTML = 'Hibás felhasználónév vagy jelszó';
        getElement('authbl').appendChild(ediv);
        getElement('username').style.borderColor = 'rgb(200,0,0)';
        getElement('password').style.borderColor = 'rgb(200,0,0)';
        setTimeout("removeLoginFailed();",2000);
    }
}

function logoutHandler(xmldata) {
    var rescode = xmldata.getElementsByTagName('resultcode')[0].firstChild.nodeValue;
    if (rescode == 1) window.location.reload();
}

function goLogin() {
    var qs = 'u=' + getElement('username').value
           + '&p=' + getElement('password').value;
    var req = new BWS_XMLRequest();
    req.setUrl('/xml/Login');
    req.setMethod('GET');
    req.setQueryString(qs);
    req.setProcessResponse(loginHandler);
    req.go();
}

function goLogout() {
    var req = new BWS_XMLRequest();
    req.setUrl('/xml/Logout');
    req.setMethod('GET');
    req.setQueryString('');
    req.setProcessResponse(logoutHandler);
    req.go();
}

function parseCity(xmldat) {
    var xmlc = xmldat.getElementsByTagName('citydata')[0];
    if (xmlc) {
        var kerregexp = /\ [IVX]*\.kerület/;
        ca = xmlc.getElementsByTagName('city');
        cf.value = (ca[0].getElementsByTagName('name')[0].firstChild) ? ca[0].getElementsByTagName('name')[0].firstChild.nodeValue.replace(kerregexp,'') : '';
        cf.focus();
    }
}

function setCity(inp,field) {
    cf = getElement(field);
    var xqs = 'pc=' + inp.value;
        
    if (inp.value.match(/^\d{4}$/)) {
        var rreq = new BWS_XMLRequest();
        rreq.setUrl('/xml/CityData');
        rreq.setMethod('GET');
        rreq.setQueryString(xqs);
        rreq.setProcessResponse(parseCity);
        rreq.go();
    }
}
