var detect = navigator.userAgent.toLowerCase();
var total,thestring,yPos;
var global_scene;
var global_resolution_array = new Array();
var resolution_changes, global_resolution, scene_changes;
var completed=0;

function getBrowserInfo() {
	var browser, version, OS;
	if (checkIt('konqueror')) {
		browser = "Konqueror";
		OS = "Linux";
	}
	else if (checkIt('safari')) browser 	= "Safari"
	else if (checkIt('omniweb')) browser 	= "OmniWeb"
	else if (checkIt('opera')) browser 		= "Opera"
	else if (checkIt('webtv')) browser 		= "WebTV";
	else if (checkIt('icab')) browser 		= "iCab"
	else if (checkIt('msie')) browser 		= "Internet Explorer"
	else if (!checkIt('compatible')) {
		browser = "Netscape Navigator"
		version = detect.charAt(8);
	}
	else browser = "An unknown browser";

	if (!version) version = detect.charAt(place + thestring.length);

	if (!OS) {
		if (checkIt('linux')) OS 		= "Linux";
		else if (checkIt('x11')) OS 	= "Unix";
		else if (checkIt('mac')) OS 	= "Mac"
		else if (checkIt('win')) OS 	= "Windows"
		else OS 								= "an unknown operating system";
	}
	return browser;
}

function checkIt(string) {
	place = detect.indexOf(string) + 1;
	thestring = string;
	return place;
}

// Add in markup necessary to make this work. Basically two divs:
// Overlay holds the shadow
// Lightbox is the centered square that the content is put into.
function addLightboxMarkup() {
	var bod 		= document.getElementsByTagName('body')[0];
	var overlay 	= document.createElement('div');
	overlay.id		= 'overlay';
	var lb			= document.createElement('div');
	lb.id			= 'lightbox';
	lb.className 	= 'loading';
	lb.innerHTML	= '<div id="lbLoadMessage">loading</div>';
	bod.appendChild(overlay);
	bod.appendChild(lb);

    var opacity = 60;
	overlay.style.opacity = (opacity / 100);
	overlay.style.MozOpacity = (opacity / 100);
	overlay.style.KhtmlOpacity = (opacity / 100);
	overlay.style.filter = "alpha(opacity=" + opacity + ")";
}

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}
}

// Turn everything on - mainly the IE fixes
function ajax_activate(url, width, height, opacity) {
    var ol=$('overlay');
    if (!ol) {
        addLightboxMarkup();
        ol=$('overlay');
    }

    if (!opacity) {
        opacity = 60;
    }
	ol.style.opacity = (opacity / 100);
	ol.style.MozOpacity = (opacity / 100);
	ol.style.KhtmlOpacity = (opacity / 100);
	ol.style.filter = "alpha(opacity=" + opacity + ")";

    hideSelects('hidden');
    displayLightbox("block", url, width, height);
}

// In IE, select elements hover on top of the lightbox
function hideSelects(visibility) {
    var browser=getBrowserInfo();
    if (browser == 'Internet Explorer'){
	    selects = document.getElementsByTagName('select');
	    for(i = 0; i < selects.length; i++) {
		    selects[i].style.visibility = visibility;
	    }
    }
	iframes = document.getElementsByTagName('iframe');
	for(i = 0; i < iframes.length; i++) {
		iframes[i].style.visibility = visibility;
	}
	objects = document.getElementsByTagName('object');
	for(i = 0; i < objects.length; i++) {
		objects[i].style.visibility = visibility;
	}
}

// Ie requires height to 100% and overflow hidden or else you can scroll down past the lightbox
function prepareIE(height, overflow) {
	var bod = document.getElementsByTagName('body')[0];
	bod.style.height = height;
	bod.style.overflow = overflow;

	var htm = document.getElementsByTagName('html')[0];
	htm.style.height = height;
	htm.style.overflow = overflow;
}

function displayLightbox(display, url, width, height){
	$('overlay').style.display = display;
	$('lightbox').style.display = display;
	if(display != 'none') loadInfo(url, width, height);
}

// Write an iFrame instead of using an AJAX call to pull the content
function loadInfo(content, width, height) {
    if (width==undefined) {
        width='665';
    }
    if (height==undefined) {
        height='200';
    }
    offset=100;
	var w = innerDimension().width;
	var h = innerDimension().height;
	var ox = offsetDimension().x;
	var oy = offsetDimension().y;
	if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 && (navigator.appVersion.indexOf("Win") != -1)) {
		var l = ((w) / 2) - ((width) / 2) + ox;
		var t = ((h) / 2) - ((height) / 2) + oy-offset;
	} else {
		var l = ((w) / 2) - ((width) / 2) + ox;
		var t = ((h) / 2) - ((height) / 2) + oy-offset;
	}
    if (t < 5) {
        t=5;
    }

	l = Math.round(l);
	t = Math.round(t);
	$('lightbox').style.top = t+'px';
	$('lightbox').style.left = l+'px';
	$('lightbox').style.width = width+'px';
	$('lightbox').style.height = height+'px';

	info = '<div id="lbContent"><img src="ajax-loader-upload.gif"></div>';
	new Insertion.Before($('lbLoadMessage'), info)
	$('lightbox').className = "done";
	var myAjax = new Ajax.Request(content, { method: 'get',
			                                 onSuccess: function(transport) {
                                                 $('lbContent').update(transport.responseText);
                                                 write_nk_code();
     			                             }
    });
}

// Example of creating your own functionality once lightbox is initiated
function ajax_deactivate(){
	parent.$('overlay').style.display = 'none';
	parent.$('lightbox').style.display = 'none';
	selects = parent.document.getElementsByTagName('select');
	for(i = 0; i < selects.length; i++) {
		selects[i].style.visibility = 'visible';
	}
	Element.remove(parent.$('lbContent'));
    hideSelects('visible');
}

function write_flv_player(scene, resolution, autostart) {
    if (resolution==undefined) {
        var cookie=getCookie( 'default_resolution' );
        if (cookie=='') {
            resolution=global_resolution_array.length-1;
        } else {
            resolution=cookie;
        }
    } else {
        SetCookie('default_resolution', resolution);
    }
    if (autostart==undefined) {
        autostart=1;
    } else {
        autostart=0;
    }
    global_resolution=resolution;
    if (!scene) {
        scene=global_scene;
    } else {
        global_scene=scene;
    }
    var so = new SWFObject("http://212.40.96.18/goldengate_content/player2.swf", "flvcontent", 720, 576, "6", "#000000");
    so.addParam("allowFullScreen", "true");
    so.addParam("wmode", "opaque");
    so.addParam("quality", "high");
    so.addParam("allowScriptAccess", "always");
    so.addVariable("config", "include/pt_config.php?id=" + scene + "%26m=luxxtv%26res=" + global_resolution_array[resolution] + "%26autostart=" + autostart);
    so.write("flash_player");
    if (resolution_changes) {
        setscenes();
    }
}


function SetCookie(name, value, expire_day) {
    if ((!expire_day) && (expire_day!=0)) {
        expire_day=300;
    }
    if (expire_day==0) {
        document.cookie=name + "=" + escape(value) + ";path=/";
    } else {
        var expires = new Date ();
        expires.setTime(expires.getTime() + expire_day * 24 * 60 * 60 * 1000);
        document.cookie=name + "=" + escape(value) + ";expires=" + expires.toGMTString() + ";path=/";
    }
}

function getCookie( name ) {
    var name = name + "=";
    var cs = document.cookie.split(';');
    var cookie_length = cs.length;
    for (var i=0; i < cookie_length; i++) {
        var c = cs[i];
        while (c.charAt(0) ==' ') c = c.substring(1,c.length);
        if (c.indexOf(name) == 0) {
            c = c.substring(name.length, c.length);
            c = unescape(c) ;
            return c;
        }
    }
    return '';
}

function findClasses(node, className, tag, collect ) {
	if (node == null) node = document;
	if (tag == null) tag = '*';
	var items = node.getElementsByTagName(tag);
	var collector = new Array();
	var pattern = new RegExp("(^|\\s)"+className+"(\\s|$)");
	var i = 0;
	for (var j = 0; j < items.length; j++) {
		if ((pattern.test(items[j].className) ) || (className=='')) {
			if ( collect == false ) {
				return items[j];
            }
			collector[i] = items[j];
			i++;
		}
	}
	if ( collect == false ) {
		return false;
    }
	return collector;
}


function startup() {
    if (completed==0) {
        completed=1;

	    var resolution_change=$('resolution_change');
	    var scene_change=$('scene_change');
	    if (resolution_change && scene_change) {
	        resolution_changes=findClasses(resolution_change, 'resolution_change_part', 'a');
	        scene_changes=findClasses(scene_changes, 'scene_change_part', 'a');
	    }
        addLightboxMarkup();
        if (resolution_changes) {
            setscenes();
        }

        var tabs_one=$('tabs_one');
        if (tabs_one) {
	        new Control.Tabs('tabs_one');
        }
    }
}

function setscenes() {
    var resolution_changes_num=resolution_changes.length;
    for (i=0; i < resolution_changes_num; i++) {
    	if (i == global_resolution ) {
    	    resolution_changes[i].className='button active';
    	} else {
    	    resolution_changes[i].className='button';
    	}
    }
    $('scene_' + global_scene).className='active';
    var scene_changes_num=scene_changes.length;
    for (i=0; i < scene_changes_num; i++) {
    	if (scene_changes[i].id == 'scene_' + global_scene ) {
    	    scene_changes[i].className='active';
    	} else {
    	    scene_changes[i].className='';
    	}
    }
}

function showhide(r) {
    var arr=$(r + '2');
    if (!arr) {
        arr=$(r);
    }
    if (arr.style.display=='none') {
        arr.style.display='block';
    } else {
        arr.style.display='none';
    }
}

function check_search() {
    if ($('search').value.length <= 2) {
        window.alert('Minimum 3 betűt meg kell adnod!');
        return false;
    } else {
        return true;
    }
}

function min_strlen(inputtext, suggested_length) {
    var j;
    inputtext=inputtext.toString();
    var current_length=inputtext.length;
    if (current_length < suggested_length) {
        for (j=1; j <= (suggested_length-current_length); j++) {
            inputtext='0' + inputtext;
        }
    }
    return inputtext;
}

// netkulcs es VIP kellek fuggvenyek

function change_netkulcs_iframe() {
	SetCookie('cookietest', 'true');
	var cookietest=getCookie('cookietest');
	if (cookietest=='true') {
        iframe = $('netkulcs_iframe_sms_code');
        SetCookie('referer_checked', '1', 7);
        iframe.onload=function() {
            write_nk_code();
        }
        iframe.src = lang['base_url'] + '/include/ajax/vip_code_call.php';
	}
}

function utf8_decode(utftext) {
    utftext=unescape(utftext);
	var string = "";
	var i = 0;
	var c = c1 = c2 = 0;
	while ( i < utftext.length ) {
		c = utftext.charCodeAt(i);
		if (c < 128) {
			string += String.fromCharCode(c);
			i++;
		} else if((c > 191) && (c < 224)) {
			c2 = utftext.charCodeAt(i+1);
			string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
			i += 2;
		} else {
			c2 = utftext.charCodeAt(i+1);
			c3 = utftext.charCodeAt(i+2);
			string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
			i += 3;
		}
	}
	return string;
}

function write_nk_code() {
    var vip_code=getCookie('vip_code');
    var vip_price=getCookie('vip_price');
    var vip_phone=getCookie('vip_phone');
    var vip_day=getCookie('vip_day');
    var currency=getCookie('currency');
    var country_name=getCookie('country_name');
    vip_code=vip_code.replace('+', ' ');
    country_name=utf8_decode(country_name);
    country_name=country_name.replace('+', ' ');
    if ((vip_code!='') && (vip_code!='0') && (vip_price!='0') && (vip_phone!='0') && (vip_day!='0')) {
        var vip_code_div=$$('.vip_code');
        for (var i=0; i < vip_code_div.length; i++) {
            vip_code_div[i].innerHTML = vip_code;
        }
        var vip_price_div=$$('.vip_price');
        for (var i=0; i < vip_price_div.length; i++) {
            vip_price_div[i].innerHTML = vip_price + ' ' + currency;
        }
        var vip_phone_div=$$('.vip_phone');
        for (var i=0; i < vip_phone_div.length; i++) {
            vip_phone_div[i].innerHTML = vip_phone;
        }
        var vip_day_div=$$('.vip_day');
        for (var i=0; i < vip_day_div.length; i++) {
            vip_day_div[i].innerHTML = vip_day;
        }
        var country_name_div=$$('.country_name');
        for (var i=0; i < country_name_div.length; i++) {
            country_name_div[i].innerHTML = country_name;
        }
        var has_not_sms_div=$$('.has_not_sms');
        for (var i=0; i < has_not_sms_div.length; i++) {
            has_not_sms_div[i].style.display = 'none';
        }
        var has_sms_div=$$('.has_sms');
        for (var i=0; i < has_sms_div.length; i++) {
            has_sms_div[i].style.display = 'block';
        }
    } else if ((vip_price=='0') && (vip_phone=='0') && (vip_day=='0')) {
        var has_not_sms_div=$$('.has_not_sms');
        for (var i=0; i < has_not_sms_div.length; i++) {
            has_not_sms_div[i].style.display = 'block';
        }
        var has_sms_div=$$('.has_sms');
        for (var i=0; i < has_sms_div.length; i++) {
            has_sms_div[i].style.display = 'none';
        }
    }
}

function vipnetkulcs() {
    var kinyiturl="https://secure.key4web.com/service/buy/" + lang['nk_vip_service_key'];
    var wm_id=getCookie('wm_id');
    if (wm_id) {
        if (wm_id!='') {
            kinyiturl= kinyiturl + '?wm=' + wm_id;
        }
    }
	winpopsf=window.open(kinyiturl,"","width=700,height=650, scrollbars=1, resizable=1");
}

function ajax_form_submit(form_id, url) {
    var url=lang['base_url'] + '/include/ajax/' + url;
    var pars=$(form_id).serialize() ;
    $('lbContent').update('<div class="dialog"><div class="content"><div class="t"></div><h1>Loading...</h1></div><div class="b"><div></div></div></div>');
	var myAjax = new Ajax.Request(url, { method: 'post',
			                             parameters: pars,
			                             onSuccess: function(transport) {
			                                var temp=transport.responseText.split('|');
			                                if (temp[0]=='true') {
			                                    if (temp[1]==undefined) {
			                                        location.reload();
			                                    } else {
			                                        location.href=temp[1];
			                                    }
			                                } else {
                                                $('lbContent').update(transport.responseText);
                                                write_nk_code();
			                                }
     			                         }
    });
}

function drm_download(file) {
    var windowurl="https://secure.key4web.com/interface/drm/getmedia?webmaster=as&downloadurl=" + file;
    url=window.open(windowurl,"","width=400,height=250, scrollbars=0, resizable=1")
}

function ajax_cart_submit() {
    var url=lang['base_url'] + '/include/ajax/cart.php';
    var pars=$('order_form').serialize() ;
	var myAjax = new Ajax.Request(url, { method: 'post',
			                             parameters: pars,
			                             onSuccess: function(transport) {
                                            $('kosarba_kerult').style.display='inline';
                                            $('cart').update(transport.responseText);
     			                         }
    });
}

function ajax_cart_upload_submit() {
    var url=lang['base_url'] + '/include/ajax/cart.php';
    var pars=$('cart_form').serialize() ;
	var myAjax = new Ajax.Request(url, { method: 'post',
			                             parameters: pars,
			                             onSuccess: function(transport) {
                                            $('cart').update(transport.responseText);
     			                         }
    });
}

function copy_order_data() {
    var name=$('name');
    var city=$('city');
    var postal_code=$('postal_code');
    var street=$('street');
    var street_number=$('street_number');
    var charge_name=$('charge_name');
    var charge_city=$('charge_city');
    var charge_postal_code=$('charge_postal_code');
    var charge_street=$('charge_street');
    var charge_street_number=$('charge_street_number');

    charge_name.value=name.value;
    charge_city.value=city.value;
    charge_postal_code.value=postal_code.value;
    charge_street.value=street.value;
    charge_street_number.value=street_number.value;
}