X-Git-Url: https://git.yukkurigames.com/?p=mlpccg-meta.git;a=blobdiff_plain;f=meta%2Fviews.py;h=71684b1f3a6d76f9c1a59792f5c4cce3aa3b3909;hp=0f71d00288bdb33b2c1ed4fcb3345b1d0e604a77;hb=88d04533bca919d52194a1c3c0e6e982c926a75f;hpb=247faccd70eea33b856c3aac471be3d411b8be80 diff --git a/meta/views.py b/meta/views.py index 0f71d00..71684b1 100644 --- a/meta/views.py +++ b/meta/views.py @@ -1,5 +1,4 @@ from datetime import datetime -import difflib import json from django.shortcuts import render, get_object_or_404 from django.template import RequestContext @@ -14,20 +13,20 @@ def index(request): tournament_data = [] for tournament in tournament_models: tournament_records = tournament.recordmodel_set.all().order_by('placement') - tournament_decks = [DeckList(name=record.decklist.name, url=record.decklist.url) for record in tournament_records] + tournament_decks = [(record.placement, DeckList(name=record.decklist.name, url=record.decklist.url)) for record in tournament_records] tournament_data += [{'tournament': tournament, 'decklists': tournament_decks}] records = RecordModel.objects.all() placements = [{'decklist': DeckList(name=record.decklist.name, url=record.decklist.url), 'placement': record.placement} for record in records if record.decklist.url] clustering = Clustering(records=placements) - ranking = [(int(avg), label, [decklist for decklist in clustering.clusters[label]]) for avg, label in clustering.ranking()] + ranking = [(int(avg), label, clustering.clusters[label]) for avg, label in clustering.ranking()] return render(request, 'index.html', { 'ranking': ranking, 'tournaments': tournament_data }, context_instance=RequestContext(request)) -def tournaments(request): +def tournaments_json(request): return HttpResponse(json.dumps([{'name': t.name, 'id': t.id} for t in TournamentModel.objects.all()]), content_type='application/json') @@ -43,8 +42,22 @@ def tournaments_detail(request, tournament_id): 'records': records, 'tournament': tournament}) +def decklists(request): + decklists = DeckListModel.objects.all() + + return render(request, 'decklists.html', { + 'decklists': decklists}) + +def decklists_detail(request, decklist_id): + decklist = get_object_or_404(DeckListModel, pk=decklist_id) + + return render(request, 'decklists_detail.html', { + 'decklist': decklist}) + def rate(request): - decklist = DeckList(url=request.POST['url']) + url = request.POST.get('url', 'v1code=%s' % request.GET.get('v1code')) + + decklist = DeckList(url=url) if request.POST.get('d_name') and request.POST.get('t_date') and request.POST.get('t_name') and request.POST.get('t_placement'): try: