var UTF8 = {
	encode: function(s){
		for(var c, i = -1, l = (s = s.split("")).length, o = String.fromCharCode; ++i < l;
			s[i] = (c = s[i].charCodeAt(0)) >= 127 ? o(0xc0 | (c >>> 6)) + o(0x80 | (c & 0x3f)) : s[i]
		);
		return s.join("");
	},
	decode: function(s){
		for(var a, b, i = -1, l = (s = s.split("")).length, o = String.fromCharCode, c = "charCodeAt"; ++i < l;
			((a = s[i][c](0)) & 0x80) &&
			(s[i] = (a & 0xfc) == 0xc0 && ((b = s[i + 1][c](0)) & 0xc0) == 0x80 ?
			o(((a & 0x03) << 6) + (b & 0x3f)) : o(128), s[++i] = "")
		);
		return s.join("");
	}
};

var contentCallback = { 
    success: function(o) {
    document.getElementById('mainContentDiv').innerHTML = o.responseText;
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);  
    }
} 


var topTenCallback = { 
    success: function(o) {
        if (document.getElementById('topTenNewsDiv')) 
            document.getElementById('topTenNewsDiv').innerHTML=o.responseText;    
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);  
    } 
} 

function topTenNews(){
	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', topTenCallback, "ajaxaction=toptennews"); 
}

function productGroupAction(args){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', contentCallback, args); 
}


function setProductPict(pict){
    document.getElementById('productPict').src = pict;
}

var setProductGoodsCallback = { 
    success: function(o) {

    var goodsData = YAHOO.lang.JSON.parse(o.responseText)
    document.getElementById('aruCikkszamDiv').innerHTML = (goodsData.cikkszam)? "<span class='product_cikkszam_label'>cikkszám: </span><span class='product_cikkszam'>" + goodsData.cikkszam + "</span>":"";
    document.getElementById('aruNameDiv').innerHTML = (goodsData.name)? "<span class='product_goods_label'>típus: </span><span class='product_goods'>" + goodsData.name + "</span>":"";
    document.getElementById('aruDescriptionDiv').innerHTML = (goodsData.description)? "<span class='product_desc_label'>leírás: </span><span class='product_desc'>" + goodsData.description + "</span>":"";
    document.getElementById('aruSzinNevDiv').innerHTML = (goodsData.szinnev)? "<span class='product_color_label'>szín: </span><span class='product_color'>" + goodsData.szinnev + "</span>":"";
    document.getElementById('aruMeretDiv').innerHTML = (goodsData.meret)? "<span class='product_size_label'>méret: </span><span class='product_size'>" + goodsData.meret + ' ' + goodsData.m_egyseg + ' ' + goodsData.gycsom + "</span>":"";
    document.getElementById('aruAr').innerHTML = (goodsData.ar)? "<span class='product_price_label'>bruttó ár: </span><span class='product_price'>" + goodsData.ar + " Ft</span>":"";
    document.getElementById('aruRegiAr').innerHTML = (goodsData.regiar != "0")? "<span class='product_price_label'>Régi ár: </span><span class='akciosregiar'>" + goodsData.regiar + " Ft</span>":"";
    document.getElementById('basket_arukod').value = goodsData.arukod;
    
    document.getElementById('productPict').src = goodsData.pict;
    document.getElementById('productPict').alt = (goodsData.pict)? goodsData.name:"";
    document.getElementById('productPict').title = (goodsData.pict)? goodsData.name:"";

    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function setProductGoods(arukod){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', setProductGoodsCallback, "ajaxaction=setproductgoods&arukod="+arukod); 
}

var toBasketCallback = { 
    success: function(o) {
        basketInfo();
        basket();
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function toBasket(){
    var arukod = document.getElementById('basket_arukod').value;
    var productid = document.getElementById('basket_productid').value;
    var darab = document.getElementById('basket_piece').value;
    var szam = document.getElementById('basket_szam').value;
    var osztas = document.getElementById('basket_osztas').value;
    var pgid = document.getElementById('basket_pgid').value;
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', toBasketCallback, "ajaxaction=tobasket&pgid=" + pgid + "&szam=" + szam + "&osztas=" + osztas + "&productid=" + productid + "&darab=" + darab + "&arukod="+arukod); 
}

function toBasketMegveszem(){
    var arukod = document.getElementById('basket_arukod').value;
    var productid = document.getElementById('basket_productid').value;
    var darab = document.getElementById('basket_piece_megveszem').value;
    var szam = document.getElementById('basket_szam').value;
    var osztas = document.getElementById('basket_osztas').value;
    var pgid = document.getElementById('basket_pgid').value;
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', toBasketCallback, "ajaxaction=tobasket&pgid=" + pgid + "&szam=" + szam + "&osztas=" + osztas + "&productid=" + productid + "&darab=" + darab + "&arukod="+arukod); 
}

var fromBasketCallback = { 
    success: function(o) {

    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function fromBasket(){
    var arukod = document.getElementById('basket_arukod').value;
    var productid = document.getElementById('basket_productid').value;
    var darab = document.getElementById('basket_piece')[document.getElementById('basket_piece').selectedIndex].value;
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', fromBasketCallback, "ajaxaction=frombasket&productid=" + productid + "darab=" + darab + "&arukod="+arukod); 
}

var basketPiecePlusCallback = { 
    success: function(o) {
        basket();
        basketInfo();
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function basketPiecePlus(productid, arukod, darab){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', basketPiecePlusCallback, "ajaxaction=basketpieceplus&productid=" + productid + "&&arukod=" + arukod + "&darab=" + darab); 
}

var basketPieceMinusCallback = { 
    success: function(o) {
        basket();
        basketInfo();
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function basketPieceMinus(productid, arukod, darab){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', basketPieceMinusCallback, "ajaxaction=basketpieceminus&productid=" + productid + "&arukod=" + arukod + "&darab=" + darab); 
}

var basketCallback = { 
    success: function(o) {
        if (document.getElementById("basketDiv")) 
            document.getElementById("basketDiv").innerHTML = o.responseText;
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function basket(){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', basketCallback, "ajaxaction=basket"); 
}

var basketInfoCallback = { 
    success: function(o) {
        if (document.getElementById("basketInfoDiv")) 
            document.getElementById("basketInfoDiv").innerHTML = o.responseText;
            if ((o.responseText != '') && document.getElementById('penztarGomb')) {
                document.getElementById('penztarGomb').style.display = 'block';
            } else {
                document.getElementById('penztarGomb').style.display = 'none';
            }
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function basketInfo(){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', basketInfoCallback, "ajaxaction=basketinfo"); 
}

function reviewStar(obj, pID) {
    var sMax = 5;
	for(i=1;i <= pID; i++) {
		document.getElementById(obj + '_' + i).className = 'star-active';
	}

	for(y=pID+1; y <= sMax; y++) {
		document.getElementById(obj + '_' + y).className = 'star-inactive';
	}
}

var doReviewCallback = { 
    success: function(o) {
        var reviewData = YAHOO.lang.JSON.parse(o.responseText)
        
        if (reviewData.comment) alert(reviewData.comment);
        
        if (document.getElementById('reviewValueDiv_' + reviewData.productid) && reviewData.atlag != 0)
            document.getElementById('reviewValueDiv_' + reviewData.productid).innerHTML = "<span class='product_ertekeles_label'>értékelés: " + reviewData.atlag + " (" + reviewData.sumvote + ")</span>";
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function doReview(productid, reViewValue){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', doReviewCallback, "ajaxaction=review&productid=" + productid + "&reviewvalue=" + reViewValue); 
}
 
var akciosCallback = { 
    success: function(o) {
        if (document.getElementById('akciosDiv'))
            document.getElementById('akciosDiv').innerHTML = o.responseText;
    }, 
    failure: function(o) {
//        alert("ERROR! " + o.statusText);
    }
}

function akcios(){
    var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', akciosCallback, "ajaxaction=akcios"); 
}

function newsPrintWindow(smap){
    var newwindow = window.open('print.php?cikkid=' + smap,'printwindow','width=500,height=600,location=0,resizable=0,status=0,scrollbars=1,top=200,left=220,toolbar=0');
}
 
function newsForwardWindow(what,smap){
    var newwindow = window.open('forward.php?what=' + what + '&id=' + smap,'forwardwindow','width=500,height=350,location=0,resizable=0,status=0,scrollbars=1,top=200,left=220,toolbar=0');
}

var chooseCardCallBack = { 
    success: function(o) {
        document.getElementById('cardContentDiv').innerHTML = o.responseText;
    }, 
    failure: function(o) {
        //alert("ERROR! " + o.statusText);  
    }
} 

function chooseCard(categoryid, cardid, cardnum){
	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', chooseCardCallBack, "ajaxaction=choosecard&categoryid=" + categoryid + "&cardid=" + cardid + "&cardnum=" + cardnum); 
}

var searchCallBack = { 
    success: function(o) {
        //var searchData = eval('(' + o.responseText + ')');
        var searchData = YAHOO.lang.JSON.parse(o.responseText)

        if (document.getElementById(searchData.divId + 'Div')) document.getElementById(searchData.divId + 'Div').innerHTML = searchData.searchText;
    }, 
    failure: function(o) {
        //alert("ERROR! " + o.statusText);  
    }
} 

function search(searchword, subject, szam, osztas){
	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', searchCallBack, "ajaxaction=search&subject=" + subject + "&searchword=" + searchword + "&szam=" + szam + "&osztas=" + osztas);
}

function voteMachine(){
    _this = this;
    var callBack = {
        success: function(o) {
            document.getElementById('voteMachineDiv').innerHTML = o.responseText;
        }, 
        failure: function(o) {
            //alert("ERROR! " + o.statusText);  
        }
    }
	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', callBack, "ajaxaction=vm_votingMachine");
}

function vm_vote(){
    var Dom = YAHOO.util.Dom;
    _this = this;
    var callBack = {
        success: function(o) {
            document.getElementById('voteMachineDiv').innerHTML = o.responseText;
        }, 
        failure: function(o) {
            //alert("ERROR! " + o.statusText);  
        }
    }

    YAHOO.util.Connect.setForm(Dom.get("voteMachineForm"));
	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', callBack);
}


function getEventsOfDate(sDate, megye, catid){
    var Dom = YAHOO.util.Dom;
    _this = this;
    var callBack = {
        success: function(o) {
            document.getElementById('eventsofdate').innerHTML = o.responseText;
        }, 
        failure: function(o) {
            //alert("ERROR! " + o.statusText);  
        }
    }

	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', callBack, "ajaxaction=geteventofdate&sdate=" + sDate + "&megye=" + megye + "&catid=" + catid);
}

function getEventData(sDate, id, megye, catid){
    var Dom = YAHOO.util.Dom;
    _this = this;
    var callBack = {
        success: function(o) {
            document.getElementById('eventsofdate').innerHTML = o.responseText;
        }, 
        failure: function(o) {
            //alert("ERROR! " + o.statusText);  
        }
    }

	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', callBack, "ajaxaction=geteventdata&id=" + id + "&sdate=" + sDate + "&megye=" + megye + "&catid=" + catid);
}

function getIconsOfDate(){
    var Dom = YAHOO.util.Dom;
    _this = this;
    var callBack = {
        success: function(o) {
            document.getElementById('cal1IconsContainer').innerHTML = o.responseText;
        }, 
        failure: function(o) {
            //alert("ERROR! " + o.statusText);  
        }
    }

	var transaction = YAHOO.util.Connect.asyncRequest('POST', '/inc/ajaxfunc.php', callBack, "ajaxaction=geticonsofdate&sdate=" + sDate + "&sW=" + sW);    
}
