var here = this;
var currency = currency || "eur";
var cart = cart ? cart.split(",,") : new Array();
var bands = new Array();
var categories = new Array();
var categoriesPopulated = false;
var types = new Array();
var cGroup = cGroup || "null";
var cCategory = cCategory || "null";
var cType = cType || "null";

function writeShop() {
	if(id("shop")) {
		t = "<div id='main' class='right'>";
		pNum = 0;
		booyah = false;
		for(i=0; i<products.length; i++) {
			if(filter(products[i])){
				if(pNum) t += "<hr />";
				t += display(products[i]);
				pNum++;
				booyah = true;
			}
			if(!categoriesPopulated && !categoryAdded(products[i].category)) categories.push(products[i].category);
		}
		categoriesPopulated = true;
		if(!booyah){
			t += "<span class='alert'>Oh man. I don't think "+cGroup+" has any "+cCategory.toLowerCase()+" for you to buy right now. Sorry.</span>";
		}
		t += "</div>"
		t += sideColumn();
		id("shop").innerHTML = t;
	}
}
function sideColumn(){
	r = "<div id='sidebar'>";
	r += sideCart();
	r += "<div class='bands'>";
	r += "<h2>Bands</h2>";
	r += "<ul>";
	r += "<li"+(cGroup == "null" ? " class='selected'" : "")+"><a href='#' onclick='javascript:setFilter(\"cGroup\", \"null\"); return false;'>All</a></li>";
	for(i=0; i<products.length; i++){
		product = products[i];
		if(products[i].typeOfGroup == "Bands"){
			r += "<li"+(cGroup == product.group ? " class='selected'" : "")+"><a href='#' onclick='javascript:setFilter(\"cGroup\", \""+product.group+"\"); return false;'>"+product.group+"</a></li>";
		}
	}
	r += "</ul>";
	r += "</div>";
	r += "<div class='categories'>";
	r += "<h2>Categories</h2>";
	r += "<ul>"
	r += "<li"+(cCategory == "null" ? " class='selected'" : "")+"><a href='#' onclick='javascript:setFilter(\"cCategory\", \"null\"); return false;'>All</a></li>";
	for(i=0; i<categories.length; i++){
		cat = categories[i];
		r += "<li"+(cCategory == cat ? " class='selected'" : "")+"><a href='#' onclick='javascript:setFilter(\"cCategory\", \""+cat+"\"); return false;'>"+cat+"</a></li>";
	}
	r += "</ul>";
	r += "</div>";
	r += "</div>";
	return r;
}
function display(product) {
	r = "<div class='product'>";
	if(product.thumb) r += "<img src='../../pelagic/_js/"+siteRoot+"/wp-content/themes/pelagic/_shop/_img/"+product.thumb+"' class='thumb' />";
	r += "<h2>"+product.title+"</h2>";
	r += "<div class='details'>";
	r += product.details;
	r += "</div>";
	r += "<div class='purchase'>";
	r += "<table class='buy_table' cellspacing='1' cellpadding='0'><tr>";
	if(product.stock instanceof Object){
		r += "<td valign='center' class='price'"+(product.stock.smallGirl != undefined ? " rowspan='2'" : "")+">"+currencySymbol()+getPrice(product.price)+"</td>";
		r += "<td valign='center' class='type'>tshirt</td>";
		r += "<td valign='center' "+(product.stock.small ? "><a href='#' onclick='addToCart(\""+product.ref+"\", \"small\");'>small</a>" : " class='out'>small" )+"</td>";
		r += "<td valign='center' "+(product.stock.medium ? "><a href='#' onclick='addToCart(\""+product.ref+"\", \"medium\");'>medium</a>" : " class='out'>medium" )+"</td>";
		r += "<td valign='center' "+(product.stock.large ? "><a href='#' onclick='addToCart(\""+product.ref+"\", \"large\");'>large</a>" : " class='out'>large" )+"</td>";
		r += "<td valign='center' "+(product.stock.xLarge ? "><a href='#' onclick='addToCart(\""+product.ref+"\", \"xLarge\");'>x-large</a>" : " class='out'>x-large" )+"</td>";
		if(product.stock.smallGirl != undefined){
			r += "</tr><tr>";
			r += "<td valign='center' class='type'>girly</td>";
			r += "<td valign='center' "+(product.stock.smallGirl ? "><a href='#' onclick='addToCart(\""+product.ref+"\", \"smallGirl\");'>small</a>" : " class='out'>small" )+"</td>";
			r += "<td valign='center' "+(product.stock.mediumGirl ? "><a href='#' onclick='addToCart(\""+product.ref+"\", \"mediumGirl\");'>medium</a>" : " class='out'>medium" )+"</td>";
			r += "<td colspan='2'></td>";
		}
	} else {
		r += "<td valign='center' class='price'>"+currencySymbol()+getPrice(product.price)+"</td>";
		r += "<td valign='center'><a href='#' onclick='addToCart(\""+product.ref+"\");'>purchase</a></td>";
	}
	r += "</tr></table>";
	r += "</div>";
	r += "<div class='clear'></div></div>";
	return r;
}
function addToCart(ref, variation){
	this.blur();
	for(j=0; j<cart.length; j++){
		if(cart[j][0] == ref && cart[j][1] == variation){
			cart[j][2]++;
			writeShop();
			return false;
		}
	}
	cart.unshift([ref, variation, 1]);
	writeShop();
}
function removeFromCart(ref, variation){
	for(j=0; j<cart.length; j++){
		if(cart[j][0] == ref){
			if(cart[j][2] == 1){
				takeFromCart(j);
			} else {
				cart[j][2]--;
			}
		}
	}
}
function takeFromCart(j){
	cart.splice(j, 1);
}
function sideCart(){
	tr = "<h2>Cart</h2>";
	tr += "<ul id='side_cart'>";
	for(k=0; k<cart.length; k++){
		deets = getItem(cart[k][0]);
		tr += "<li>";
		tr += "<span class='item_name'>"+deets.title+"</span>";
		tr += "</li>";
	}
	tr += "</ul>";
	return tr;
}
function inCart(ref){
	for(j=0; j<cart.length; j++){
		if(cart[j][0] == ref){
			return cart[j][[2]];
		}
	}
	return 0;
}
function getItem(ref){
	for(l=0; l<products.length; l++){
		if(products[l].ref == ref) return products[l];
	}
	return false;
}
function categoryAdded(cat){
	for(j=0; j<categories.length; j++){
		if(categories[j] == cat) return true;
	}
	return false;
}
function setFilter(nFilter, nValue) {
	here[nFilter] = nValue;
	setCookie(nFilter, nValue);
	writeShop();
}
function filter(product) {
	for(k=0; k<products.length; k++){
		if((cGroup == product.group || cGroup == "null") && (cCategory == product.category || cCategory == "null") && (cType == product.type || cType == "null")){
			return true;
		}
	}
	return false;
}
function getPrice(num){
	switch(currency){ 
		
		case "usd":
		return (num*usd_eur_exchange).toFixed(2);
		break;
		
		default :
		return num.toFixed(2);
		break;
		
	}
}
function setCurrency(nc){
	currency = nc || currency;
	setCookie("currency", currency);
}
function currencySymbol(){
	switch(currency){
		
		case "usd":
		return "$";
		break;
		
		default :
		return "€";
		break;
		
	}
}

function setCookie(cookieName, cookieValue) {
	if(cookieValue instanceof Array) cookieValue = cookieValue.join(",,");
	id('sneaky').src = siteRoot+"/setCookie.php?name="+cookieName+"&val="+cookieValue;
}
function id(theID) {
	return document.getElementById(theID);
}


/* poofarts
		if (!shippingObj.custom){
			cartR += '<form action="https://www.paypal.com/cgi-bin/webscr" method="post" onsubmit="checkout()">';
		} else {
			cartR += '<form name="emailRequest" action="email.php" method="post" onsubmit="return verifyFields();">';
		}
		cartR += '<input type="hidden" name="cmd" value="_cart">';
		cartR += '<input type="hidden" name="upload" value="1">';
		cartR += '<input type="hidden" name="business" value="info@theoceancollective.com">';
        cartR += '<input type="hidden" name="cpp_header_image" value="http://www.theoceancollective.com/shop/img/logo_for_paypal.gif">';
        cartR += '<input type="hidden" name="return" value="http://www.theoceancollective.com/shop/success.html">';
        cartR += '<input type="hidden" name="cancel_return" value="http://www.theoceancollective.com/shop/cart.php">';
		cartR += '<input type="hidden" name="currency_code" value="'+(c == 'd' ? 'USD' : 'EUR')+'">';
		//cartR += '<input type="hidden" name="on0_1" value="'+shippingObj.s+'">';
        cartR += '<input type="hidden" name="shipping_1" value="'+shipping+'">';
        cartR += '<input type="hidden" name="handling_1" value="'+handling+'">';

var cookieCutter = ",,,";
var cookieEqual = "||";
var cookieArray = ",,";
function setCookie(cookieName, cookieValue) {
	cookie = document.cookie.split("=")[1];
	if(cookie.length) {
		cookie = cookie.split(cookieCutter);
		var index = -1;
		for(j=0; j<cookie.length; j++) {
			if(cookie[j].indexOf(cookieName+cookieEqual) > -1){
				index = j;
				break;
			}
		}
		if(index > -1){
			if(cookieValue && cookieValue != "null") {
				cook = cookie[index].split(cookieEqual);
				cook[1] = cookieValue;
				cook = cook.join(cookieEqual);
				cookie[index] = cook;
			} else {
				cookie.splice(j, 1);
			}
		} else {
			cookie.push(cookieName+cookieEqual+cookieValue);
		}
		document.cookie = "cookie="+cookie.join(cookieCutter);
	} else {
		document.cookie = "cookie="+cookieName+cookieEqual+cookieValue+cookieCutter;
	}
}
*/