//category, title, thumb, file
var files = [
	['audio', 'Mad Decent DJ Sega: Magical Amount', 		'djsega', 	'MadDecentDJSegaMagicalAmount.zip']
,	['audio', 'Cobra Starship: Magical Amount', 			'cobra', 	'CobraStarshipThe MagicaAmount.zip']
,	['audio', 'Mix Master Mike: Tough Love Ashtray Edit', 	'mmm', 		'MixMasterMikeToughLove.zip']
,	['audio', 'Z-Trip: Smaller Babies Banjo Break Mix', 	'ztrip', 	'ZTripSmallerBabiesBanjoBreakMix.zip']
,	['audio', 'Diplo: Typo Hip Hop Mix', 					'diplo', 	'DiploTypoHipHopMix.zip']
,	['audio', 'Pete Rock: Magical Amount', 					'peterock', 'PeteRockMagialAmount.zip']
];

/* windows only */
	if (navigator.appVersion.indexOf("Win") != -1) {files.push(
	['screensavers', 'Unicorn', 	'unicorn', 	'unicorn_Setup.zip']
,	['screensavers', 'Kitty', 		'kitty', 	'kitten_Setup.zip']
,	['screensavers', 'Roach', 		'roach', 	'roach_Setup.zip']
,	['screensavers', 'Dance', 		'dance', 	'dance_Setup.zip']
,	['screensavers', 'Stork', 		'stork', 	'stork_Setup.zip']
	);}
/* end windows only */

files.push(
//,	['wallpapers', 'Big Tobacco Disease', 'btd', 'DL_wallpapers_BTD.zip']
	['wallpapers', 'Spheres BucketOshards',		'spheres_bucketOshards', 'spheres_bucketOshards.zip']
,	['wallpapers', 'Spheres HeartShards',		'spheres_heartShards', 'spheres_heartShards.zip']
,	['wallpapers', 'Spheres Peekaboo',			'spheres_peekaboo', 'spheres_peekaboo.zip']
,	['wallpapers', 'Addiction Plant',			'addictionPlant_78x58', 'Addiction-plant-wall3CC3FA.jpg']
,	['wallpapers', 'Pesticide 1', 				'pesticide', 			'DL_wallpaper_Pesticide_1.zip']
,	['wallpapers', 'Chemical Warfare', 			'chemicalwarfare', 		'ChemicalWarfare_Wallpaper.zip']
,	['wallpapers', 'Pesticide 2', 				'pesticide2', 			'DL_wallpaper_Pesticide_2.zip']
,	['wallpapers', 'Gamer', 					'', 					'gamer.zip']
,	['wallpapers', 'Truck Trick', 				'', 					'DL_wallpaper_TruckTrick.zip']
,	['wallpapers', 'Living Room', 				'', 					'DL_wallpapers_livingRoom.zip']
,	['wallpapers', 'Resurrection', 				'', 					'DL_wallpapers_Resurrection.zip']
,	['wallpapers', 'Truck', 					'truck', 				'truthTruck.zip']
,	['wallpapers', 'Jeff Soto', 				'jeffsoto', 			'JeffSoto.zip']
,	['wallpapers', 'Non-Conceptual', 			'nonconceptual', 		'Nonconceptual.zip']
,	['wallpapers', 'Fuse Green', 				'fusegreen', 			'FuseGreen.zip']
,	['wallpapers', 'Fairies', 					'fairies', 				'fairy_wp.zip']
,	['wallpapers', 'SunnySide', 				'sunnyside', 			'sunnySide_wp.zip']
,	['wallpapers', 'Didja Know', 				'didjaknow', 			'DidjaKnow.zip']
,	['wallpapers', 'Unicorn', 					'unicorn', 				'unicorn_wp.zip']
);

files.push(
//,	['posters', 'Big Tobacco Disease', 'btd', 'DL_Poster_BTD.zip']
	['posters', 'Brain', 				'', 				'Brain_Poster.zip']
,	['posters', 'Hair and Stomach', 	'Smokeless', 		'Smokeless_Poster.zip']
,	['posters', 'Stomach', 				'', 				'Stomach_Poster.zip']
,	['posters', 'Stones', 				'', 				'Stones_Poster.zip']
,	['posters', 'Hairdude',				'', 				'DL_Poster_Hairdood.zip']
,	['posters', 'Chemical Warfare', 	'chemicalwarfare', 	'ChemicalWarfare_Wallpaper.zip']
,	['posters', 'Two-Faced', 			'2faced', 			'2faced_pst.zip']
,	['posters', 'Candy Store', 			'candystore', 		'candystore_pst.zip']
,	['posters', 'Elevator', 			'elevator', 		'elevator_pst.zip']
,	['posters', 'Exterminator', 		'exterminator', 	'exterminator_pst.zip']
,	['posters', 'Lunch Lady', 			'lunchlady', 		'lunchlady_pst.zip']
,	['posters', 'Newspaper', 			'newspaper', 		'newspaper_pst.zip']
,	['posters', 'Plant', 				'plant', 			'plant_pst.zip']
,	['posters', 'Pollonium', 			'pollonium', 		'polonium_pst.zip']
,	['posters', 'Contains Urea', 		'urea', 			'urea_pst.zip']
,	['posters', 'Unicorn Complex Ad', 	'unicorn_complexad', 'unicorn_complexad.zip']
);

//,	['email_signatures', 				'Infect Email Signatures', 	'infect', 	'EmailSignatures.zip'],
//,	['email_signatures', 				'Typos Email Signatures', 	'typos', 	'typo.zip']

files.push(
	['desktop_kits', 					'Contains Urea', 'urea', 'Urea.zip']
,	['desktop_kits', 					'Melting Moms', 'melting', 'MeltingMoms.zip']
,	['desktop_kits', 					'Bling', 'bling', 'Bling.zip']
);

//,	['stencils', 'Whuda Graffiti', 'whudafxup', 'whudafxup_stn.zip']

files.push(
	['buddy_icons', 'Unsexy Gases', 	'unsexygases', 		'BuddyIcons.zip']
,	['buddy_icons', 'Dragon', 			'dragon', 			'Dragon_bi.zip']
,	['buddy_icons', 'Fairy', 			'fairy', 			'Fairy_bi.zip']
,	['buddy_icons', 'Leprechaun', 		'leprechaun', 		'Leprechaun_bi.zip']
,	['buddy_icons', 'Sunny-Dark', 		'sunnydark', 		'SunnyDark_bi.zip']
,	['buddy_icons', 'Unicorn', 			'unicorn', 			'Unicorn_bi.zip']
);


/**
 * build div structure for downloads
 */
function generateThumbs() {
	var divNum = 1;
	var colNum = 1;
	var bgColorClass;
	var menu;

	files.each(function(arr, i) {		
		if (arr && arr.constructor == Array) {  /* just in case */
			var cat = arr[0];			
			var cat_title = cat.gsub('_', ' ').capitalize();	// change buddy_icons to BuddyIcons
		}
		else {
			var cat = '';
			var cat_title = '';			
		}

		// see if container div already exists, create if not
		if (!$(cat)) {
			colNum = 1;
			if (divNum == 1) {
				bgColorClass = 'greyDark';
				divNum = 2;	
			}
			else {	
				bgColorClass = 'greyMedium';
				divNum = 1;			
			}

			//build container div
			var catCont = '';
			catCont += '<div class="contentPanel '+bgColorClass+'">';
			catCont += '<div id="'+cat+'" class="downloads_table">';
			catCont += '	<a name="'+cat+'"><\/a>';
			catCont += '	<div class="downloads_table_row">';
			catCont += '		<div class="title">'+cat_title+'<\/div>';
			catCont += '	<\/div>';
			catCont += '	<div class="downloads_table_row">';
			catCont += '		<div class="col1"><\/div>';
			catCont += '		<div class="col2"><\/div>';
			catCont += '		<div class="cf"><\/div>';
			catCont += '	<\/div>';
			catCont += '<\/div>';
			catCont += '	<div class="scrolltop">';
			catCont += '		<img src="images/btn_top.gif" width="52" height="20" border="0" alt="go to top" \/>';
			catCont += '	<\/div>';
			catCont += '<\/div>';
			
			$('downloadCategoriesContainer').insert({ bottom: catCont });

			//build menu item
			menu += '<div style="padding-bottom:5px;">';
			menu += '	<a href="#'+cat+'" class="dlmenu">'+cat_title+'<\/a>';
			menu += '<\/div>';
		}

		//quick fix for filenames cause I'm tired of renaming old assets
		var catsc = cat;
		switch (cat) {
			case 'wallpapers':			catsc = 'wpr';			break;
			case 'buddy_icons':			catsc = 'bud';			break;
			case 'posters':				catsc = 'pst';			break;
			case 'email_signatures':	catsc = 'em';			break;
			case 'desktop_kits':		catsc = 'dkt';			break;
			case 'stencils':			catsc = 'stn';			break;
			default: break;
		}

		var targetDiv = $(cat).down('.col' + colNum);
		var id = catsc + i;

		// insert into alternating columns for each category
		var filename = arr[2].blank() ? arr[1].toLowerCase().gsub(' ', '') : arr[2];
		var thumb = filename + '_'+catsc+'_tb.';
		thumb += cat == 'buddy_icons' ? 'gif' : 'jpg';
		var preview = filename + '_'+catsc+'_roll.jpg';

		var html = '';
		html += '<div class="downloads_table_colrow">';
		html += '	<div class="thumb '+cat+'" id="'+id+'">';
		html += '		<img src="/downloads/images/tb/'+thumb+'" alt="'+arr[1]+'" \/>';
		html += '	<\/div>';
		html += '	<div class="dl_details">';
		html += '		<div class="dl_item">'+arr[1]+'<\/div>';
		html += '		<div class="dl_get">';
		html += '			Get It <input class="checkbox" type="checkbox" name="'+cat+'" value="'+arr[3]+'" \/>';
		html += '		<\/div>';
		html += '	<\/div>';
		html += '<\/div>';
		html += '<div class="cf"><\/div>';

		targetDiv.insert({ bottom: html });
		colNum = colNum == 1 ? 2 : 1;

		//build overlay
		if (cat != 'audio' && cat != 'buddy_icons') {
			new Tip(id, '<img src="/downloads/images/preview/'+preview+'" width="352" height="285" border="0" \/>', { 
				title: cat.toUpperCase()+': '+arr[1], 
				hook: { tip: 'leftMiddle', target: 'rightMiddle' },
				offset: {x: 10, y: 0 }
			});
		}
	});

	//build menu
	new Tip('dl_menu_div', '<div style="background-color:#fff; padding:5px;">'+menu+'<\/div>', { 
		hideOn: false, hideAfter: .3, 
		hook: {tip: 'topLeft', target: 'bottomLeft'}, 
		className: 'dlmenu'
	});
}


function value(a,b) {
	a = a[1];
	b = b[1];
	return a == b ? 0 : (a < b ? -1 : 1);
}

function submitDownloadsPage() {
	pageTracker._trackPageview('/DYHWIT_2009/Event/Downloads/Download_Button');
	$('downloadsForm').submit();
}

function googleTrackDownloads() { //get all selected checkboxes
	var checkboxes = [];
	checkboxes = $$('input').each(function(e){ 
		if((e.type == 'checkbox')&&(e.checked)){
			var zip = $F(e); 
			pageTracker._trackPageview('/Downloads/ItemDownloaded/'+zip);
		}
	});
	submitDownloadsPage.defer();
}

document.observe("dom:loaded", function() {
	generateThumbs();
	$('checkAll').observe('click', function() {
		check_all();
	});
	$('btn_GetItems').observe('click', googleTrackDownloads);
	$$('div.scrolltop').invoke('observe', 'click', function() { 
		new Effect.ScrollTo('top');
	});
	
	var browserName=navigator.appName; 
	if (browserName=="Microsoft Internet Explorer"){ $('GetItems').setStyle({left: "540px"}); }
});

Event.observe(window, "scroll", function() {
	var browserName = navigator.appName; 
	var el = $('GetItems');
	if (browserName=="Microsoft Internet Explorer") { // only do this for ie
		var s;
		if (self.pageYOffset) { // scrolling offset calculation via www.quirksmode.org 
			s = self.pageYOffset;
		}
		else if (document.documentElement && document.documentElement.scrollTop) {
			s = document.documentElement.scrollTop;
		}
		else if (document.body) {
			s = document.body.scrollTop;
		}
		el.style.top = s + 240;
	}
});	