var _SEARCH_ = "Search by keyword or catalog #";
var _SEARCH_BUTTON_URL_ = '/BVThemes/Warner Press v1/button-search.gif';
var _GO_BUTTON_URL_ = '/BVThemes/Warner Press v1/button-go.gif';
var _ABOUT_US_TEXT_ = '<a href="/custom.aspx?id=1">About Warner Press</a>';
var _LABEL_PRICE_RETAIL_ = ' Retail Price';
var _LABEL_PRICE_DISCOUNT_ = ' Your Price';

var clearSearchText = function (e) {
	var onBlur;
	
	onBlur = function (e) {
		if (this.value.length == 0) this.value = _SEARCH_;
		this.removeEvent('blur', onBlur);
	}
	
	if (_SEARCH_ == undefined) _SEARCH_ = this.value;
	this.value = '';
	
	this.addEvent('blur', onBlur);
}

var customizeSearchBox = function () {
	var txt = $E('div.SearchBoxFormContent input');
	
	if (txt) {	
		$E('div.SearchBoxFormContent input').value = _SEARCH_;
		$E('div.SearchBoxFormContent input').addEvent('focus', clearSearchText);
	}
	
	$$('input#inKeyword').each( function (item) {
		item.value = _SEARCH_;
		item.addEvent('focus', clearSearchText);
	});
}

var customizeNewBadge = function () {
	$ES('.NewProductBadge img').each(function (item) {
		item.setProperty('src', '/images/newbadge.png');
	})
}

var customizeHeader = function () {
	var tr = $E('#MenuLevel1 tbody tr');
	var td = new Element('td').setHTML('<a href="/">Home</a>');
	
	td.injectTop(tr);

	var li = new Element('li').setHTML(_ABOUT_US_TEXT_);
	li.injectAfter($$('#SiteMenu li')[1]);
}

var customizePager = function () {
	$ES('#maincontent a').each( function (item) {
		s = item.getText();
		myRegExp = /View All/;
		
		if (myRegExp.test(s)) {
			item.addClass("viewAll");
		}
	});		
}
	
var customizeRecords = function () {
	var tbl = $ES('#Records table');
	tbl[0].addClass('subNav');
	tbl[1].addClass('products');
}

var customizeProducts = function() {
	var numRows, i;
		
	// ensure that there are always 4 table columns
	tr =  $E('div.productTable tr');
	if (tr) {
		tds = tr.getElements('td');
		numRows = 4 - tds.length;
		for (i = 0; i < numRows; i++) {
			tr.adopt(new Element('td').setHTML('&nbsp;'));
		}
	}

	$ES('.productTable table tr').each( function(item) {
		if (item.getLast()) {
			item.getLast().addClass('last');
		}	
	});

	$ES('body.home div#column2 table tr').each( function(item) {
		if (item.getLast()) {
			item.getLast().addClass('last');
		}	
	});
}

var customizeCart = function () {
	$ES("#tblItems tr").each( function(item) {
		item.getElement('td').addClass('productImage');
	});	
}

var customizeReceipt = function () {
	var tbl;
	
	$ES('#orderItems table tr').each( function (item, index) {
		if (index % 2 == 0) item.addClass('alt');
	});	
}

var customizeOrderHistory = function () {
	var btn = $('btnSearch');
	
	if (btn) {
		$('btnSearch').setProperty('type', 'image');
		$('btnSearch').setProperty('src', _SEARCH_BUTTON_URL_);
	}
}

var customizeSubNav = function (id, category) {
	var href, s, e, testClass, body;
	
	body = $E('body');
	
	$ES('div.NavColumnBlockContent li a').each( function (item) {
		
		href = item.getProperty('href');
		e = href.lastIndexOf('.');
		
		testClass = href.substring(s, e).toLowerCase();
		
		if (body.hasClass(testClass)) {
			item.getParent().addClass('current');
			return;
		}
		
	});	
}

var customizeCategoryMenu = function () {
	var lis = $$('div.CategoryListContent li');
	
	lis.each(function (item) {
		var ul = item.getElement('ul');
		if (ul) {
			item.getElement('span').addClass('parent');
		}
	});
}

var customizePricing = function () {
	var cls = 'priceLabel';
	
	$$('span.ListPrice').each(function (item) {
		var label = new Element('span').appendText(_LABEL_PRICE_RETAIL_).addClass(cls);
		label.injectAfter(item);
	});
	
	$$('span.SitePriceDiscounted').each(function (item) {
		var label = new Element('span').appendText(_LABEL_PRICE_DISCOUNT_).addClass(cls).addClass("bold");
		label.injectAfter(item);
	});
}

window.onDomReady(function () {
	customizeSearchBox();
	customizeNewBadge();
	customizeHeader();
	customizeCart();
	customizeReceipt();
	customizeProducts();	
	customizeOrderHistory();
	customizeSubNav();
	customizeCategoryMenu();
	customizePricing();
	
	$ES('div.MailingListSignupForm input').each( function (item) {
		if (item.getProperty('type') == 'image') {
			item.setProperty('src', _GO_BUTTON_URL_);
		}
	});
});