function Tag(Parent, Uri) {
    var tv;
    var tag;

    var loadTag = function(data) {
        tag = data;
        $('.tagname', tv).text(data.text);

        BeerTable($('.tagbeers', tv),
                  [{fun:function() {
                      if (GSession) {
                          var scored = [];
                          for (var i = data.beers.length-1; i >= 0; i--) {
                              var score = find_score(data.beers[i]);
                              if (score || score == 0)
                                  scored.push({'id':data.beers[i],
                                               'score':score});
                          }
                          return map(function(b) { return b.id; },
                                     scored.sort(function(b1, b2) { return b2.score - b1.score; }));
                      }
                      return [];
                  },
                    uri:data_uri+'?sort=score',
                    label:'score'
                   },
                   {uri:data_uri+'?sort=atoz',
                    label:'name',
                    field:'beers',
                    current:true
                   },
                   {uri:data_uri+'?sort=adddate',
                    label:'add date',
                    field:'beers'
                   },
                   {uri:data_uri+'?sort=lastcomm',
                    label:'last comment',
                    field:'beers'
                   }]);
    };

    var loadTemplate = function(data) {
        tv = $(data).appendTo(Parent);
        $.getJSON(Uri, [], loadTag);
    };

    $.get('/'+stv+'/html/tag.html', [], loadTemplate);
}

$(function() { Tag($('#view'), data_uri); });

