$(document).ready(function () {
	
	var lessons = new Array;
	var lesson;
	var first;
	var second;
	var cards = new Array;
	
	$('.card').live('click',function () {
		$('.active span').fadeOut(800);
		$(this).children('span').fadeIn(800);
		if ($(this).hasClass('active')) {
			$(this).removeClass('active');
			if (!second && first) {
				second = $(this).children('span').attr('class');
			} else if (!first) {
				first = $(this).children('span').attr('class');
			}
		}
		if (first && second && first != second) {
			$('.'+first).parents('.card').addClass('active');
			$('.'+second).parents('.card').addClass('active');
//			$('.active span').fadeOut(1300);
			first = null;
			second = null;
		}
		if (first && second && first == second) {
			$('.'+first).parents('.card').fadeTo(1300,0.1);
			first = null;
			second = null;
		}
		if (!$('.active').length) {
			$('.cards').after( $('<div class="new_game"/>').html("You won! New Game") );
		}
	});
	
	$('.lesson_picker').change(function () {
		load_lesson($('#lesson_id').val());
		$('.lesson_crumb').text($('.lesson_picker').val());
		$('.lesson_crumb').attr('href','/lesson/plan/'+$('#lesson_id').val()+'/'+$('.lesson_picker').val());
		$('.lesson_picker').siblings('.dyn_picker_options').children('.dyn_picker_option').hide();
		$('.lesson_picker').siblings('.dyn_picker_options').children('.'+$('.category_picker').val()).show();
		$('.category_picker').live('change', function () {	
			$('.lesson_picker').siblings('.dyn_picker_options').children('.dyn_picker_option').hide();
			$('.lesson_picker').siblings('.dyn_picker_options').children('.'+$('.category_picker').val()).show();
			$('.lesson_picker').val('');
			$('.lesson_picker').css('background-image','none');
			$('.lesson_picker').css('padding-left','3px');
			$('.lesson_picker').css('padding-right','30px');
			setTimeout( function () {
				$('.lesson_picker').val('Choose Lesson...');
				$('.lesson_picker').focus();
			},1000);
		});
	});

	$('.new_game').live('click',function () {
		load_lesson($('#lesson_id').val());
	});

	var load_lesson = function (lesson_id) {
		lesson = get_lesson( $('#lesson_id').val() );
		if (lesson.message == 'no access') {
			$('.cards').before( $('<div class="progress_container"><h2><a href="/lesson/plan/'+$('#lesson_id').val()+'/'+$('.lesson_picker').val()+'">'+$('.lesson_picker').val()+'</a> is a premium lesson.</h2><p><a href="/purchase" class="start_button">Buy Premium Membership</a><br/><br/>Get access to premiem content for <b><a href="/purchase">only $21.99</a></b>.</p></div>') ).remove();
		} else if (lesson) {
			$('.lesson_image').attr('src',lesson.image);
			$('.activity .lesson_link').attr('href',lesson.link);
			$('.progress_container').remove();
			$('.new_game').remove();
			$.shuffle(lesson.words);
			var limit = 8;
			if (lesson.words.length < 8) {
				limit = lesson.words.length;
			}
			cards = new Array;
			for (i=0;i<limit;i++) {
				cards[i] = [lesson.words[i].key,lesson.words[i].key];
				cards[i+limit] = [lesson.words[i].key,lesson.words[i].definition];
			}
			$.shuffle(cards);
			if ( $('.cards').length ) {
				$('.cards').empty();
			} else {
				$('.activity .header').after( $('<div class="cards"/>') );
			}
			$.each(cards, function(index, value) {
				word = $('<span>').addClass(value[0]).text(value[1]).hide();
				$('.cards').append( $('<div class="card"/>').addClass('active').append(word) );
			});
			$('.link_arrow').attr('href','/lesson/plan/'+ $('#lesson_id').val()+'/'+ $('.dyn_picker_selected').val());
		}
	}

	var get_lesson = function (lesson_id) {
		if (!lessons[lesson_id]) {
			$.ajax({
				async: false,
				type: 'post',
				url: '/memory/lesson/'+lesson_id,
				success: function (data) {
					lessons[lesson_id] = data;
				},
				dataType: "json"
			});
		}
		return lessons[lesson_id];
	}

	load_lesson($('#lesson_id').val());
});
