Recheck QSO functionality
This commit is contained in:
parent
9a1b84a58a
commit
99827c6385
2
TODO
2
TODO
|
@ -1,5 +1,4 @@
|
||||||
- calculate "claimed points"
|
- calculate "claimed points"
|
||||||
- link/funktion um qsos erneut gegeneinander checken zu lassen
|
|
||||||
- listviews mit pagination evaluieren
|
- listviews mit pagination evaluieren
|
||||||
- registered datum, name und "genauer standort" für benutzer und shadowbenutzer?
|
- registered datum, name und "genauer standort" für benutzer und shadowbenutzer?
|
||||||
|
|
||||||
|
@ -26,6 +25,7 @@
|
||||||
- ensure QSOs are logged in UTC (they currently are, but why?)
|
- ensure QSOs are logged in UTC (they currently are, but why?)
|
||||||
- rearrange login index: contest content rüberziehen; exchange registration nach rechts in der nav
|
- rearrange login index: contest content rüberziehen; exchange registration nach rechts in der nav
|
||||||
- cbr parser zum hochladen
|
- cbr parser zum hochladen
|
||||||
|
- link/funktion um qsos erneut gegeneinander checken zu lassen
|
||||||
|
|
||||||
Glaube nich, dass ich das mache
|
Glaube nich, dass ich das mache
|
||||||
- call dupe validation könnte ins model wandern
|
- call dupe validation könnte ins model wandern
|
||||||
|
|
|
@ -147,7 +147,6 @@ class QSO(models.Model):
|
||||||
self.cfmdQSO.cfmdQSO = None
|
self.cfmdQSO.cfmdQSO = None
|
||||||
self.cfmdQSO = None
|
self.cfmdQSO = None
|
||||||
|
|
||||||
self.cfmdQSO = None
|
|
||||||
if self.ref and self.callRef and self.callRef.ref and not self.cfmdQSO:
|
if self.ref and self.callRef and self.callRef.ref and not self.cfmdQSO:
|
||||||
# look for a matching line
|
# look for a matching line
|
||||||
q = QSO.objects.filter(
|
q = QSO.objects.filter(
|
||||||
|
|
|
@ -31,4 +31,5 @@ urlpatterns = [
|
||||||
url(r'^log/edit/(?P<qsoid>\d+)/$', contest_views.logEdit, name='logEdit'),
|
url(r'^log/edit/(?P<qsoid>\d+)/$', contest_views.logEdit, name='logEdit'),
|
||||||
url(r'^log/delete/(?P<qsoid>\d+)/$', contest_views.logDelete, name='logDelete'),
|
url(r'^log/delete/(?P<qsoid>\d+)/$', contest_views.logDelete, name='logDelete'),
|
||||||
url(r'^uploadcbr/$', uploadCBR, name='uploadCBR'),
|
url(r'^uploadcbr/$', uploadCBR, name='uploadCBR'),
|
||||||
|
url(r'^regref/recheckqsos//$', contest_views.recheckAllQSOs, name='recheckAllQSOs'),
|
||||||
]
|
]
|
||||||
|
|
|
@ -141,6 +141,22 @@ def getPage(paginator, pageNo):
|
||||||
except EmptyPage:
|
except EmptyPage:
|
||||||
return paginator.page(paginator.num_pages)
|
return paginator.page(paginator.num_pages)
|
||||||
|
|
||||||
|
|
||||||
|
@staff_member_required
|
||||||
|
def recheckAllQSOs(request):
|
||||||
|
if request.method == "POST":
|
||||||
|
cnt = 0
|
||||||
|
for qso in QSO.objects.all():
|
||||||
|
if qso.checkQSOData():
|
||||||
|
print(qso)
|
||||||
|
qso.save()
|
||||||
|
cnt += 1
|
||||||
|
|
||||||
|
messages.success(request, "Allo QSO have been checked against each other (%d QSOs modified)" % (cnt,))
|
||||||
|
return HttpResponseRedirect(reverse("contest:registerRefs"))
|
||||||
|
|
||||||
|
return render(request, "contest/checkAllQSOs.html", {})
|
||||||
|
|
||||||
@staff_member_required
|
@staff_member_required
|
||||||
def viewUserQSOs(request, uid, page=1):
|
def viewUserQSOs(request, uid, page=1):
|
||||||
user = get_object_or_404(User, id=uid)
|
user = get_object_or_404(User, id=uid)
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% load crispy_forms_tags %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-6 col-sm-offset-3">
|
||||||
|
<div class="panel panel-warning">
|
||||||
|
<div class="panel-heading">Check all QSOs?</div>
|
||||||
|
<div class="panel-body">
|
||||||
|
<p>
|
||||||
|
You have the option to let the system recheck all QSOs if
|
||||||
|
they can find another matching QSO, also to re-verify exchanges
|
||||||
|
and callsigns.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<strong>This might take some time!</strong>
|
||||||
|
</p>
|
||||||
|
<form method="post" action="#">
|
||||||
|
{% csrf_token %}
|
||||||
|
<button type="submit" class="btn btn-warning center-block">Reverify EVERYTHING!</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="panel panel-default">
|
<div class="panel panel-default">
|
||||||
<div class="panel-heading">Contest Stations</div>
|
<div class="panel-heading">Contest Stations</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
Here is a Table with all OMs/YLs in the contest!
|
Here is a Table with all OMs/YLs in the contest! If you want you can recheck for cfmd QSOs <a href="{% url "contest:recheckAllQSOs" %}">here</a>.
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
Loading…
Reference in New Issue