function addEvent(obj, evType, fn, useCapture) {
	if (obj.addEventListener) {
		obj.addEventListener(evType,fn,useCapture);
		return true;
	} else if(obj.attachEvent){
		return obj.attachEvent("on"+evType,fn);
	} else {
		return false;
	}
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if (node == null) node = document;
	if (tag == null) tag = '*';
	var elems = node.getElementsByTagName(tag);
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	var i = 0;
	for (var j = 0; j < elems.length; j++) {
		if ( pattern.test(elems[j].className) ) {
			classElements[i++] = elems[j];
		}
	}
	return classElements;
}

function showTexts(id) {
	var clicktext = document.getElementById('clicktext'+id);
	var text = getElementsByClass('hidden'+id,null);

	if ( text.length == 0 ) var text = getElementsByClass('show'+id,null);
	if ( text.length == 0 ) return false;

    for(i in text) {
        if ( text[i].className == 'hidden'+id ) {
            text[i].style.display = 'inline';
            text[i].className = 'show'+id;
        } else {
            text[i].style.display = 'none';
            text[i].className = 'hidden'+id;
        }
    }
}

function prodMenu() {
	var menu = getElementsByClass("pmenu",null,"div");
	if ( !menu ) return false;
    for(i in menu) {
        var dt = menu[i].getElementsByTagName("dt");
        for(j in dt) {
            if ( dt[j].className == 'noactive' ) continue;
            dt[j].onclick = function() {
                this.parentNode.className = this.parentNode.className?'':'active';
                return false;
            }
        }
    }
}

addEvent(window, 'load', prodMenu);

function sendNlData( type, lang ) {
    var sQuery = '';

    var objNlName     = document.getElementById('nlName');
    var objNlEmail    = document.getElementById('nlEmail');

    var aParam = {
        'nlType': type,
        'nlName': objNlName.value,
        'nlEmail': objNlEmail.value
    }

    for ( sKey in aParam ) {
        sQuery = sQuery + '/' + aParam[sKey];
    }

    gRPC.request('/'+lang+'/system'+sQuery+'/', loadedNlPage, '' );
}

function loadedNlPage(d,p) {

    var temp = '';
    var error = '';

    var objError = document.getElementById('nlError');
    var objForm  = document.getElementById('nlForm');

    var objNlName     = document.getElementById('nlName');
    var objNlEmail    = document.getElementById('nlEmail');

    var objErrorText = document.getElementById('nlErrorText');

    var errors = new Array();
    errors[0] = 'Sikertelen próbálozás!';
    errors[1] = 'Feliratkozás folyamatban...';
    errors[2] = 'Leiratkozott folyamatban...';
    errors[3] = 'Hírlevélre sikeresen feliratkozott.';
    errors[4] = 'Hírlevélről sikeresen leiratkozott.';
    errors[5] = 'Ön már fel van iratkozva!';
    errors[6] = 'Ön még nincs feliratkozva!';
    errors[7] = 'Hiányzó adat!';
    errors[8] = 'Hibás e-mail cím!';
    errors[9] = 'E-mail címet meg kell adni!';
    errors[10] = 'Nevet meg kell adni!';

    if ( d == 'hiba' ) {
        error = 9;
    } else {
        temp = d.split('&');
        for ( i in temp ) {
            if (temp[i].substr(0,5) == 'error') {
                temp = temp[i].split('=');
                break;
            }
        }
        error = temp[1];
    }

    objErrorText.innerHTML = errors[error];

    objError.style.display = 'block';
    objForm.style.display = 'none';

    if ( error == 3 || error == 4 ) {
        objNlName.value = '';
        objNlEmail.value = '';
    }

}

function goForm() {
    var objError = document.getElementById('nlError');
    var objForm  = document.getElementById('nlForm');

    objError.style.display = 'none';
    objForm.style.display = 'block';
}

function load(directory){
    if(document.images){
        names=load.arguments
        pictures=new Array;
        for (z=1;z<names.length;z++){
            pictures[z]=new Image;
            pictures[z].src=directory+names[z];
        }
    }    
}

function changeGrayImage(el) {
    var src = el.src;
    var tmp, iamge;

    tmp = src.split('/');
    image = tmp[ tmp.length-1 ];
    if (image.substr(0,5) == 'gray_') tmp[ tmp.length-1 ] = image.substr(5, image.length);
    else tmp[ tmp.length-1 ] = 'gray_'+image;

    el.src = tmp.join('/');
}

function setSearch(lang, prefix) {
    var query = '';
    var items = [];
    items[0] = 'search_brand';
    items[1] = 'search_use';
    items[2] = 'search_output';
    items[3] = 'search_transtype';

    query += '/'+prefix;

    for (i=0; i<items.length; i++) {
        query += '/'+document.getElementById(prefix+'_'+items[i]).value
    }

    gRPC.request( '/'+lang+'/jsRPC/searchrpc' + query, loadSearch, prefix );
}

function loadSearch(d,p) {

    var oBrand = document.getElementById(p+'div_search_brand');
    var oUse = document.getElementById(p+'div_search_use');
    var oOutput = document.getElementById(p+'div_search_output');
    var oTranstype = document.getElementById(p+'div_search_transtype');

    var tmp = d.split('||');

    oBrand.innerHTML = tmp[0];
    oUse.innerHTML = tmp[1];
    oOutput.innerHTML = tmp[2];
    oTranstype.innerHTML = tmp[3];

}