/* LOGIN-BAR - START ********************************************************/
// language fallback auf DE
cL = 'at';
I18n = Array();

I18n['at'] = Array();
I18n['at']['welcome'] 		= 'Willkommen'; 
I18n['at']['product'] 		= 'Produkt'; 
I18n['at']['products'] 		= 'Produkte'; 
I18n['at']['no_products']	= 'Keine Produkte ...';
I18n['at']['newsletter'] 	= 'Newsletter';
I18n['at']['order_now'] 	= 'Jetzt bestellen';
I18n['at']['login'] 		= 'Anmelden';
I18n['at']['register'] 		= 'Jetzt registrieren';
I18n['at']['currency'] 		= '&euro;';

I18n['cz'] = Array();
I18n['cz']['welcome'] 		= 'Vítejte'; 
I18n['cz']['product'] 		= 'Produkt'; 
I18n['cz']['products'] 		= 'Produkty'; 
I18n['cz']['no_products']	= 'Žádné produkty ...';
I18n['cz']['newsletter'] 	= 'Newsletter';
I18n['cz']['order_now'] 	= 'MÁM ZÁJEM';
I18n['cz']['login'] 		= 'Přihlásit';
I18n['cz']['register'] 		= 'Zaregistrujte se nyní';
I18n['cz']['currency'] 		= 'Kč';

I18n['sk'] = Array();
I18n['sk']['welcome'] 		= 'Vitajte'; 
I18n['sk']['product'] 		= 'Produkt'; 
I18n['sk']['products'] 		= 'Produkty';
I18n['sk']['no_products']	= 'Žiadne produkty ...';
I18n['sk']['newsletter'] 	= 'Möbelix Novinky';
I18n['sk']['order_now'] 	= 'Mám záujem';
I18n['sk']['login'] 		= 'Prihlásiť';
I18n['sk']['register'] 		= 'Zaregistrujte sa teraz';
I18n['sk']['currency'] 		= '&euro;';

I18n['hu'] = Array();
I18n['hu']['welcome'] 		= 'Üdvözlöm'; 
I18n['hu']['product'] 		= 'Termékre'; 
I18n['hu']['products'] 		= 'Termékeket';
I18n['hu']['no_products']	= 'Szám termékeket ...';
I18n['hu']['newsletter'] 	= 'Hírlevél';
I18n['hu']['order_now'] 	= 'Feliratkozás';   
I18n['hu']['login'] 		= 'Bejelentkezés';
I18n['hu']['register'] 		= 'Feliratkozás';
I18n['hu']['currency'] 		= 'Ft';


jQuery(document).ready(function() {

 	jQuery.lazy({
		src: '/fileadmin/templates/scripts/jquery/jquery.colorbox-min.js',
		name: 'colorbox',
		// dependencies: {css: ['/fileadmin/templates/scripts/jquery/colorbox/skin5/colorbox.css']},
        cache: true		
		});	

	jQuery.lazy({
		src: '/fileadmin/templates/scripts/jquery/jquery.hybrismap.js',
		name: 'hybrisMap',
		dependencies: {
			css: ['/fileadmin/templates/css/hybrismap.css']
		},
		cache: true		
		});        	
	

	
	//jQuery("#fac_categories").linkselect();
	
	jQuery('div.scrollable_h div.b_banner a').bind('click',function(e){
		pageTracker._trackEvent('banner', 'click', jQuery(this).attr('title'));
		});	
	

	/* Newsletter-BAR - START ********************************************************/	
	nl_bar_html = '<form id="nl_bar_form" name="nl_bar_form" action="/fileadmin/specials/newsletter/' + cL + '/" method="post"><label>' + I18n[cL]['newsletter'] + ':</label><div class="textInputBG"><input id="nl_bar_email" name="email" type="text" class="clearingInput" value="E-Mail"/></div><a href="javascript:document.nl_bar_form.submit();" class="button2"><span>' + I18n[cL]['order_now'] + '</span></a></form>';
	jQuery('#nlbar').html(nl_bar_html)
	/* Newsletter-BAR - STOP ********************************************************/	

    jQuery('.clearingInput').clearingInput();

	//SfNcLogin 			BASE64 				Login (E-Mail)
	//SfNcUsername		BASE64				Vor- und Nachname
	//SfNcCartQuantity	Integer (zB: 3)		Anzahl der Waren im Warenkorb
	//SfNcCartTotal		Decimalzahl (zB: 129.0)	Wert des Warenkorbes

	// login
	if(jQuery.cookie('SfNcUsername') != null){
		jQuery("div.warenkorb_bar_left").html(I18n[cL]['welcome'] + ' <a href="/sortiment/c/account/home">' + decodeBase64(jQuery.cookie('SfNcUsername')) + '</a>&nbsp!<br/><a href="/sortiment/c/account/logoff">Logout</a>');
		}
	else {
		jQuery("div.warenkorb_bar_left").html(I18n[cL]['welcome'] + '!<br/><a href="/sortiment/c/account/login">' + I18n[cL]['login'] + '</a>&nbsp;/&nbsp;<a href="/sortiment/c/account/register">' + I18n[cL]['register'] + '</a>');	
		}
	
	// basket
	if(jQuery.cookie('SfNcCartQuantity') >= 1) {
		total = parseFloat(jQuery.cookie('SfNcCartTotal'));
		total = (total).formatMoney(2, ',', '.');
		if(jQuery.cookie('SfNcCartQuantity') >= 1) {//jQuery('div.warenkorb_bar_right span.inhalt').html('Keine Produkte ...');
			if(jQuery.cookie('SfNcCartQuantity') == 1)	{ text_produkte = I18n[cL]['product'] }
			else										{ text_produkte = I18n[cL]['products'] }
			jQuery('div.warenkorb_bar_right span.inhalt').html(jQuery.cookie('SfNcCartQuantity') + '&nbsp;' + text_produkte + '&nbsp;&nbsp;' + I18n[cL]['currency'] + '&nbsp;' + total);
			}
		}
	else {
		jQuery('div.warenkorb_bar_right span.inhalt').html(I18n[cL]['no_products']);
		}
	});
/* LOGIN-BAR - STOP ********************************************************/	




	

Number.prototype.formatMoney = function(c, d, t){
	var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "," : d, t = t == undefined ? "." : t, s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
	return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
};


// get URL-parameter 
function getGetParameter(name){
   var i=1  //Suchposition in der URL
   var suche = name+"="
   while (i<location.search.length){
      if (location.search.substring(i, i+suche.length)==suche){
         var ende = location.search.indexOf("&", i+suche.length)
         ende = (ende>-1) ? ende : location.search.length
         var loca = location.search.substring(i+suche.length, ende)
         return unescape(loca)
      }
      i++
   }
   return false;
}



// ENCODING-DECODING - START
	
function urlDecode(str){
    str=str.replace(new RegExp('\\+','g'),' ');
    return unescape(str);
}
function urlEncode(str){
    str=escape(str);
    str=str.replace(new RegExp('\\+','g'),'%2B');
    return str.replace(new RegExp('%20','g'),'+');
}

var END_OF_INPUT = -1;

var base64Chars = new Array(
    'A','B','C','D','E','F','G','H',
    'I','J','K','L','M','N','O','P',
    'Q','R','S','T','U','V','W','X',
    'Y','Z','a','b','c','d','e','f',
    'g','h','i','j','k','l','m','n',
    'o','p','q','r','s','t','u','v',
    'w','x','y','z','0','1','2','3',
    '4','5','6','7','8','9','+','/'
);

var reverseBase64Chars = new Array();
for (var i=0; i < base64Chars.length; i++){
    reverseBase64Chars[base64Chars[i]] = i;
}

var base64Str;
var base64Count;
function setBase64Str(str){
    base64Str = str;
    base64Count = 0;
}
function readBase64(){    
    if (!base64Str) return END_OF_INPUT;
    if (base64Count >= base64Str.length) return END_OF_INPUT;
    var c = base64Str.charCodeAt(base64Count) & 0xff;
    base64Count++;
    return c;
}
function encodeBase64(str){
    setBase64Str(str);
    var result = '';
    var inBuffer = new Array(3);
    var lineCount = 0;
    var done = false;
    while (!done && (inBuffer[0] = readBase64()) != END_OF_INPUT){
        inBuffer[1] = readBase64();
        inBuffer[2] = readBase64();
        result += (base64Chars[ inBuffer[0] >> 2 ]);
        if (inBuffer[1] != END_OF_INPUT){
            result += (base64Chars [(( inBuffer[0] << 4 ) & 0x30) | (inBuffer[1] >> 4) ]);
            if (inBuffer[2] != END_OF_INPUT){
                result += (base64Chars [((inBuffer[1] << 2) & 0x3c) | (inBuffer[2] >> 6) ]);
                result += (base64Chars [inBuffer[2] & 0x3F]);
            } else {
                result += (base64Chars [((inBuffer[1] << 2) & 0x3c)]);
                result += ('=');
                done = true;
            }
        } else {
            result += (base64Chars [(( inBuffer[0] << 4 ) & 0x30)]);
            result += ('=');
            result += ('=');
            done = true;
        }
        lineCount += 4;
        if (lineCount >= 76){
            result += ('\n');
            lineCount = 0;
        }
    }
    return result;
}
function readReverseBase64(){   
    if (!base64Str) return END_OF_INPUT;
    while (true){      
        if (base64Count >= base64Str.length) return END_OF_INPUT;
        var nextCharacter = base64Str.charAt(base64Count);
        base64Count++;
        if (reverseBase64Chars[nextCharacter]){
            return reverseBase64Chars[nextCharacter];
        }
        if (nextCharacter == 'A') return 0;
    }
    return END_OF_INPUT;
}

function ntos(n){
    n=n.toString(16);
    if (n.length == 1) n="0"+n;
    n="%"+n;
    return unescape(n);
}

function decodeBase64(str){
    setBase64Str(str);
    var result = "";
    var inBuffer = new Array(4);
    var done = false;
    while (!done && (inBuffer[0] = readReverseBase64()) != END_OF_INPUT
        && (inBuffer[1] = readReverseBase64()) != END_OF_INPUT){
        inBuffer[2] = readReverseBase64();
        inBuffer[3] = readReverseBase64();
        result += ntos((((inBuffer[0] << 2) & 0xff)| inBuffer[1] >> 4));
        if (inBuffer[2] != END_OF_INPUT){
            result +=  ntos((((inBuffer[1] << 4) & 0xff)| inBuffer[2] >> 2));
            if (inBuffer[3] != END_OF_INPUT){
                result +=  ntos((((inBuffer[2] << 6)  & 0xff) | inBuffer[3]));
            } else {
                done = true;
            }
        } else {
            done = true;
        }
    }
    return result;
}

var digitArray = new Array('0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f');
function toHex(n){
    var result = ''
    var start = true;
    for (var i=32; i>0;){
        i-=4;
        var digit = (n>>i) & 0xf;
        if (!start || digit != 0){
            start = false;
            result += digitArray[digit];
        }
    }
    return (result==''?'0':result);
}

function pad(str, len, pad){
    var result = str;
    for (var i=str.length; i<len; i++){
        result = pad + result;
    }
    return result;
}

function encodeHex(str){
    var result = "";
    for (var i=0; i<str.length; i++){
        result += pad(toHex(str.charCodeAt(i)&0xff),2,'0');
    }
    return result;
}

var hexv = {
  "00":0,"01":1,"02":2,"03":3,"04":4,"05":5,"06":6,"07":7,"08":8,"09":9,"0A":10,"0B":11,"0C":12,"0D":13,"0E":14,"0F":15,
  "10":16,"11":17,"12":18,"13":19,"14":20,"15":21,"16":22,"17":23,"18":24,"19":25,"1A":26,"1B":27,"1C":28,"1D":29,"1E":30,"1F":31,
  "20":32,"21":33,"22":34,"23":35,"24":36,"25":37,"26":38,"27":39,"28":40,"29":41,"2A":42,"2B":43,"2C":44,"2D":45,"2E":46,"2F":47,
  "30":48,"31":49,"32":50,"33":51,"34":52,"35":53,"36":54,"37":55,"38":56,"39":57,"3A":58,"3B":59,"3C":60,"3D":61,"3E":62,"3F":63,
  "40":64,"41":65,"42":66,"43":67,"44":68,"45":69,"46":70,"47":71,"48":72,"49":73,"4A":74,"4B":75,"4C":76,"4D":77,"4E":78,"4F":79,
  "50":80,"51":81,"52":82,"53":83,"54":84,"55":85,"56":86,"57":87,"58":88,"59":89,"5A":90,"5B":91,"5C":92,"5D":93,"5E":94,"5F":95,
  "60":96,"61":97,"62":98,"63":99,"64":100,"65":101,"66":102,"67":103,"68":104,"69":105,"6A":106,"6B":107,"6C":108,"6D":109,"6E":110,"6F":111,
  "70":112,"71":113,"72":114,"73":115,"74":116,"75":117,"76":118,"77":119,"78":120,"79":121,"7A":122,"7B":123,"7C":124,"7D":125,"7E":126,"7F":127,
  "80":128,"81":129,"82":130,"83":131,"84":132,"85":133,"86":134,"87":135,"88":136,"89":137,"8A":138,"8B":139,"8C":140,"8D":141,"8E":142,"8F":143,
  "90":144,"91":145,"92":146,"93":147,"94":148,"95":149,"96":150,"97":151,"98":152,"99":153,"9A":154,"9B":155,"9C":156,"9D":157,"9E":158,"9F":159,
  "A0":160,"A1":161,"A2":162,"A3":163,"A4":164,"A5":165,"A6":166,"A7":167,"A8":168,"A9":169,"AA":170,"AB":171,"AC":172,"AD":173,"AE":174,"AF":175,
  "B0":176,"B1":177,"B2":178,"B3":179,"B4":180,"B5":181,"B6":182,"B7":183,"B8":184,"B9":185,"BA":186,"BB":187,"BC":188,"BD":189,"BE":190,"BF":191,
  "C0":192,"C1":193,"C2":194,"C3":195,"C4":196,"C5":197,"C6":198,"C7":199,"C8":200,"C9":201,"CA":202,"CB":203,"CC":204,"CD":205,"CE":206,"CF":207,
  "D0":208,"D1":209,"D2":210,"D3":211,"D4":212,"D5":213,"D6":214,"D7":215,"D8":216,"D9":217,"DA":218,"DB":219,"DC":220,"DD":221,"DE":222,"DF":223,
  "E0":224,"E1":225,"E2":226,"E3":227,"E4":228,"E5":229,"E6":230,"E7":231,"E8":232,"E9":233,"EA":234,"EB":235,"EC":236,"ED":237,"EE":238,"EF":239,
  "F0":240,"F1":241,"F2":242,"F3":243,"F4":244,"F5":245,"F6":246,"F7":247,"F8":248,"F9":249,"FA":250,"FB":251,"FC":252,"FD":253,"FE":254,"FF":255
};

function decodeHex(str){
    str = str.toUpperCase().replace(new RegExp("s/[^0-9A-Z]//g"));
    var result = "";
    var nextchar = "";
    for (var i=0; i<str.length; i++){
        nextchar += str.charAt(i);
        if (nextchar.length == 2){
            result += ntos(hexv[nextchar]);
            nextchar = "";
        }
    }
    return result;
    
}

// ENCODING-DECODING - START
