var games = null;

$(function(){

var filterFunc = function() {
    var srch = $('input#search').val().toLowerCase();
    var genre = $('select#genreselect option:selected').val();
    if (genre == '') genre = 'icon';
    $('div.icon').filter(function(){ return $(this).text().toLowerCase().indexOf(srch) >  -1 && $(this).hasClass(genre); }).show();
    $('div.icon').filter(function(){ return $(this).text().toLowerCase().indexOf(srch) <= -1 || ! $(this).hasClass(genre); }).hide();
}

$('input#search').keyup(filterFunc);
$('select#genreselect').change(filterFunc);

$.getJSON("games.json",function(data){
  games = data;
  var str = new Array(games.length);
  $.each(data, function(i,game){
    $('<div class="icon ' + game.genre + '" id="' + i + '">' + game.name + '</div>').
      css('background-image', 'url(\'icon/' + game.pkg[0] + '.png\')').
      click(function(){
          $('div.icon_clicked').removeClass('icon_clicked');
          $(this).addClass('icon_clicked');
          var game = games[this.id];
          $('#gamename').text(game.name);
          $.ajax({
              url: 'thumb/' + game.pkg[0] + '.jpg',
              success: function() {
                  $('#gamethumb').attr('src', 'thumb/' + game.pkg[0] + '.jpg');
              },
              error: function(){
                  $('#gamethumb').attr('src', 'image/missing_large.png');
              }
          });
          $('#gameurl').html('<a href="' + game.url +'">' + game.url + '</a>');
          $('#gamedesc').text(game.desc);
          $('#gameymp-11_2').attr('href','http://software.opensuse.org/ymp/games/openSUSE_11.2/' + game.pkg[0] + '.ymp');
          $('#gameymp-11_3').attr('href','http://software.opensuse.org/ymp/games/openSUSE_11.3/' + game.pkg[0] + '.ymp');
          $('#gameymp-11_4').attr('href','http://software.opensuse.org/ymp/games/openSUSE_11.4/' + game.pkg[0] + '.ymp');
          $('#gameymp-factory').attr('href','http://software.opensuse.org/ymp/games/openSUSE_Factory/' + game.pkg[0] + '.ymp');
          $('#clickinfo').hide();
          $('#gameinfo').show();
      }).appendTo('div#listview');
  });
});

});

