var view = 'details';
var active = true;
var setView = Cookie.get('listview');
var checked = new Array();
var filter = 'a';

if (Cookie.get('checked') && Cookie.get('checked').length > 0) {
   checked = Cookie.get('checked').split(',');
}

function activate() {
	active = true;
}

function unactivate(){
	active = false;
}

function setFilter(type){
	switch(type){
		case 'c':
			items = $('content').getElements('tr[class="movie_unseen"]');
			for (var e = 0; e < items.length; e++){
				items[e].style.display = 'none';
			}
			items = $('content').getElements('tr[class="movie_seen"]');
			for (var e = 0; e < items.length; e++){
				items[e].style.display="block";
				try { items[e].style.display="table-row"; } catch(err) { }
			}
			filter = 'c';
			$('filter_all').style.fontWeight = 'normal';
			$('filter_checked').style.fontWeight = 'bold';
			$('filter_not_checked').style.fontWeight = 'normal';
			break;
		case 'n':
			items = $('content').getElements('tr[class="movie_seen"]');
			for (var e = 0; e < items.length; e++){
				items[e].style.display = 'none';
			}
			items = $('content').getElements('tr[class="movie_unseen"]');
			for (var e = 0; e < items.length; e++){
				items[e].style.display="block";
				try { items[e].style.display="table-row"; } catch(err) { }
			}
			filter = 'n';
			$('filter_all').style.fontWeight = 'normal';
			$('filter_checked').style.fontWeight = 'normal';
			$('filter_not_checked').style.fontWeight = 'bold';
			break;
		default:
			items = $('content').getElements('tr[class="movie_seen"]').concat($('content').getElements('tr[class="movie_unseen"]'));
			for (var e = 0; e < items.length; e++){
				items[e].style.display="block";
				try { items[e].style.display="table-row"; } catch(err) { }
			}
			filter = 'a';
			$('filter_all').style.fontWeight = 'bold';
			$('filter_checked').style.fontWeight = 'normal';
			$('filter_not_checked').style.fontWeight = 'normal';
	}
}

function clickMovie(imdb) {
	if (active === true) {
		$('loading_'+imdb).style.display = 'block';
	   $('poster_'+imdb).style.display = 'none';

	   var status = $('movie_'+imdb).className;
	   if (status == 'movie_unseen') {
	       if (logged == true) {
	           var url = "http://www.250films.net/pages/check.inc.php?imdb="+imdb;
	       	ajax = new Ajax(url, {
	       		method: 'get',
	       		onFailure: function(){ alert('Failure, your changes will NOT be saved. Please contact us.') }
	       	}).request();
			} else {
           checked.remove(imdb);
           checked.extend([imdb]);
           Cookie.set('checked', checked.join(), {path: '/', duration: 365});
         }
	      checkMovie(imdb);

	   } else if (status == 'movie_seen') {
	       if (logged == true) {
	           var url = "http://www.250films.net/pages/uncheck.inc.php?imdb="+imdb;
	       	ajax = new Ajax(url, {
	       		method: 'get',
	       		onFailure: function(){ alert('Failure, your changes will NOT be saved. Please contact us.') }
	       	}).request();
			} else {
				checked.remove(imdb);
				Cookie.set('checked', checked.join(), {path: '/', duration: 365});
			}
			uncheckMovie(imdb);

		} else {
			$('loading_'+imdb).style.display = 'none';
			alert('Failure, your changes will NOT be saved. Please contact us.');
		}
	}
}

function checkAll() {
	if (confirm('Are you sure you want to check all movies? Previous data will be lost...')) {
		items = $('content').getElements('tr[class="movie_unseen"]');
		for (var e = 0; e < items.length; e++){
			var imdb = items[e].id.substring(6,13);
			$('loading_'+imdb).style.display = 'block';
	   	$('poster_'+imdb).style.display = 'none';
		}

		if (logged == true) {
			var url = "http://www.250films.net/pages/check.inc.php?imdb=all";
	    	ajax = new Ajax(url, {
	    		method: 'get',
	    		onFailure: function(){ alert('Failure, your changes will NOT be saved. Please contact us.') }
	    	}).request();
		} else {
			for (var e = 0; e < items.length; e++){
		   	checked.remove(imdb);
		      checked.extend([imdb]);
			}
			Cookie.set('checked', checked.join(), {path: '/', duration: 365});
		}

		for (var e = 0; e < items.length; e++){
			items[e].className = 'movie_seen';
			var imdb = items[e].id.substring(6,13);
			$('rank_'+imdb).style.color = '#8C8C8C';
			$('loading_'+imdb).style.display = 'block';
	   	$('poster_'+imdb).style.display = 'none';
		}

		setFilter('a');
		$('progress').innerHTML = 250;
	}
}

function uncheckAll() {
	if (confirm('Are you sure you want to uncheck all movies? Previous data will be lost...')) {
		items = $('content').getElements('tr[class="movie_seen"]');
		for (var e = 0; e < items.length; e++){
			var imdb = items[e].id.substring(6,13);
			$('loading_'+imdb).style.display = 'block';
	   	$('poster_'+imdb).style.display = 'none';
		}

		if (logged == true) {
			var url = "http://www.250films.net/pages/uncheck.inc.php?imdb=all";
	    	ajax = new Ajax(url, {
	    		method: 'get',
	    		onFailure: function(){ alert('Failure, your changes will NOT be saved. Please contact us.') }
	    	}).request();
		} else {
			checked.length = 0;
			Cookie.remove('checked', {path: '/', duration: 365});
		}

		for (var e = 0; e < items.length; e++){
			items[e].className = 'movie_unseen';
			var imdb = items[e].id.substring(6,13);
			$('rank_'+imdb).style.color = '#C8C8C8';
			$('loading_'+imdb).style.display = 'block';
	   	$('poster_'+imdb).style.display = 'none';
		}

		setFilter('a');
		$('progress').innerHTML = 0;
	}
}

function checkMovie(imdb) {
   $('movie_'+imdb).className = "movie_seen";
   $('progress').innerHTML = parseInt($('progress').innerHTML) + 1;
   //document.title = '250films - '+$('progress').innerHTML+'/250';
   $('rank_'+imdb).style.color = '#8C8C8C';
   $('loading_'+imdb).style.display = 'none';
   $('poster_'+imdb).style.display = 'block';
   if (filter == 'n') {
   	$('movie_'+imdb).style.display = "none";
	}
}

function uncheckMovie(imdb) {
   $('movie_'+imdb).className = "movie_unseen";
   $('progress').innerHTML = parseInt($('progress').innerHTML) - 1;
   //document.title = '250films - '+$('progress').innerHTML+'/250';
   $('rank_'+imdb).style.color = '#C8C8C8';
   $('loading_'+imdb).style.display = 'none';
   $('poster_'+imdb).style.display = 'block';
   if (filter == 'c') {
   	$('movie_'+imdb).style.display = "none";
	}
}

function mouseOverMovie(imdb) {
   var status = $('movie_'+imdb).className;
   if (status == 'movie_unseen') {
       $('rank_'+imdb).style.color = '#8C8C8C';
   } else if (status == 'movie_seen') {
       $('rank_'+imdb).style.color = '#000';
   }
}
function mouseOutMovie(imdb) {
   var status = $('movie_'+imdb).className;
   if (status == 'movie_unseen') {
       $('rank_'+imdb).style.color = '#C8C8C8';
   } else if (status == 'movie_seen') {
       $('rank_'+imdb).style.color = '#8C8C8C';
   }
}

function viewSimple() {
   if (view != 'simple') {
       view = 'simple';
       Cookie.set('listview', 'simple', {path: '/', duration: 365}); // save this for 1 year

       ranks = $('content').getElements('td[class="rank"]');
       for (var e = 0; e < ranks.length; e++){
           ranks[e].style.fontSize = '14pt';
           ranks[e].style.width = '45px';
       }

       posters = $('content').getElements('td[class="poster"]');
       for (var e = 0; e < posters.length; e++){
           posters[e].style.display = 'none';
       }

       details = $('content').getElements('span[class="details"]');
       for (var e = 0; e < details.length; e++){
           details[e].style.display = 'none';
       }

       items = $('content').getElements('tr[class="movie_seen"]').concat($('content').getElements('tr[class="movie_unseen"]'));
       for (var e = 0; e < items.length; e++){
           items[e].style.height = '24px';
       }
   }
}

function viewDetails() {
   if (view != 'details') {
       view = 'details';
       Cookie.set('listview', 'details', {path: '/', duration: 365}); // save this for 1 year

       items = $('content').getElements('tr[class="movie_seen"]').concat($('content').getElements('tr[class="movie_unseen"]'));
       for (var e = 0; e < items.length; e++){
           items[e].style.height = '60px';
       }

       ranks = $('content').getElements('td[class="rank"]');
       for (var e = 0; e < ranks.length; e++){
           ranks[e].style.fontSize = '30pt';
           ranks[e].style.width = '90px';
       }

       posters = $('content').getElements('td[class="poster"]');
       for (var e = 0; e < posters.length; e++){
           posters[e].style.display="block";
           try { posters[e].style.display="table-cell"; } catch(err) { }
       }

       details = $('content').getElements('span[class="details"]');
       for (var e = 0; e < details.length; e++){
           details[e].style.display = 'block';
       }
   }
}