changed sync to post form (still called send to benchcoach)
This commit is contained in:
@@ -57,20 +57,7 @@
|
||||
<div class="card-header d-inline-flex">
|
||||
<div class="d-inline-flex flex-grow-1"><h5>Event</h5></div>
|
||||
<div class="d-inline-flex">
|
||||
<form method="post" action="{% url 'sync' %}">{% csrf_token %}
|
||||
<input type="hidden" name="object_name" value="event">
|
||||
<input type="hidden" name="object_id" value={{ event.teamsnap_event.id }}>
|
||||
<input type="hidden" name="next" value="{{ request.path }}">
|
||||
<button type="submit" value="update_event" class="btn btn-sm btn-outline-secondary d-xl-flex align-items-xl-center mx-1">
|
||||
<i class="bi bi-cloud-fill"></i><i class="bi bi-arrow-right"></i><i class="bi bi-clipboard"></i>
|
||||
</button>
|
||||
|
||||
</input>
|
||||
</form>
|
||||
|
||||
<button type="button" value="Submit" class="btn btn-sm btn-outline-primary d-xl-flex align-items-xl-center mx-1">
|
||||
<i class="bi bi-pencil-square mx-1"></i>Edit
|
||||
</button>
|
||||
{% include 'teamsnap/update-button.html' with object_name='event' object_id=event.id next=request.path %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body p-0">
|
||||
@@ -108,11 +95,6 @@
|
||||
<div class="d-inline-flex flex-grow-1">
|
||||
<h5>Bench</h5>
|
||||
</div>
|
||||
<div>
|
||||
<button class="btn btn-sm btn-outline-secondary d-xl-flex align-items-xl-center" type="button">
|
||||
<i class="bi bi-arrow-clockwise"></i>TeamSnap
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-body p-0">
|
||||
|
||||
@@ -21,9 +21,10 @@
|
||||
<td>{{ obj_data.object_count }}</td>
|
||||
<th>{{ obj_data.counterpart.name }} </th>
|
||||
<td>{{ obj_data.counterpart.object_count }}</td>
|
||||
<td><a class="btn btn-primary" href="{% url 'send' object_name=obj_data.counterpart.name %}" role="button">
|
||||
<i class="bi bi-arrow-clockwise"></i><i class="bi bi-asterisk"></i> Sync
|
||||
</a></td>
|
||||
|
||||
<td>
|
||||
{% include 'teamsnap/update-button.html' with object_name=obj_data.counterpart.name object_id='' next=request.path %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
8
teamsnap/templates/teamsnap/update-button.html
Normal file
8
teamsnap/templates/teamsnap/update-button.html
Normal file
@@ -0,0 +1,8 @@
|
||||
<form method="post" id="formSync" action="{% url 'send' %}">{% csrf_token %}
|
||||
<input type="hidden" name="object_name" value="{{ object_name }}">
|
||||
<input type="hidden" name="object_id" value={{ object_id }}>
|
||||
<input type="hidden" name="next" value="{{ next }}">
|
||||
<button type="submit" value="update_event" class="btn btn-sm btn-outline-secondary d-xl-flex align-items-xl-center mx-1">
|
||||
<i class="bi bi-arrow-clockwise"></i><i class="bi bi-asterisk"></i>
|
||||
</button>
|
||||
</form>
|
||||
@@ -14,7 +14,7 @@ urlpatterns = [
|
||||
path('sync_teamsnap_db', views.sync_teamsnapdb_with_teamsnapapi, name="sync with teamsnapapi"),
|
||||
path('sync_benchcoach_db', views.sync_teamsnapdb_to_benchcoachdb, name="sync benchcoach"),
|
||||
path('update/<str:object_name>', views.update_teamsnapdb_from_teamsnapapi, name="update"),
|
||||
path('send/<str:object_name>', views.send_to_benchcoach, name="send"),
|
||||
path('send', views.send_to_benchcoach, name="send"),
|
||||
path('sync/', views.sync, name="sync"),
|
||||
path('import/', views.import_teamsnap, name="import")
|
||||
# path('import_teamsnap', views.import_teamsnap, name="import teamsnap"),
|
||||
|
||||
@@ -175,7 +175,12 @@ def update_teamsnapdb_from_teamsnapapi(request, object_name, object_id=None):
|
||||
return redirect('teamsnap home')
|
||||
|
||||
@login_required()
|
||||
def send_to_benchcoach(request, object_name):
|
||||
def send_to_benchcoach(request, object_name=None, object_id=None): #TODO rename
|
||||
if request.POST:
|
||||
next = request.POST.get('next')
|
||||
object_name = request.POST.get('object_name')
|
||||
object_id = request.POST.get('object_id')
|
||||
|
||||
Object = {
|
||||
obj.__name__.lower(): obj
|
||||
for obj in
|
||||
@@ -191,21 +196,35 @@ def send_to_benchcoach(request, object_name):
|
||||
r[object_name]=[]
|
||||
|
||||
if object_name == 'team':
|
||||
if object_id:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Team.objects.filter(id=object_id))
|
||||
else:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Team.objects.all())
|
||||
|
||||
if object_name == 'venue':
|
||||
if object_id:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Venue.objects.filter(id=object_id))
|
||||
else:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Venue.objects.all())
|
||||
pass
|
||||
|
||||
if object_name == 'player':
|
||||
if object_id:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Player.objects.filter(id=object_id))
|
||||
else:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Player.objects.all())
|
||||
|
||||
if object_name == 'event':
|
||||
if object_id:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Event.objects.filter(id=object_id))
|
||||
r['availability'] = sync_engine.sync(qs=benchcoach.models.Event.objects.get(id=object_id).availability_set.all())
|
||||
else:
|
||||
r[object_name] = sync_engine.sync(qs=benchcoach.models.Event.objects.all())
|
||||
pass
|
||||
|
||||
if object_name == 'availability':
|
||||
r[object_name] = []
|
||||
if object_id:
|
||||
r[object_name] += sync_engine.sync(qs=benchcoach.models.Availability.objects.filter(id=object_id))
|
||||
else:
|
||||
for event in benchcoach.models.Player.objects.all():
|
||||
r[object_name] += sync_engine.sync(qs=event.availability_set.all())
|
||||
|
||||
@@ -215,7 +234,9 @@ def send_to_benchcoach(request, object_name):
|
||||
else:
|
||||
messages.success(request, f"Success! {len(results)} {object_name} objects updated.")
|
||||
|
||||
return redirect('teamsnap home')
|
||||
return redirect(next)
|
||||
else:
|
||||
return HttpResponse(404)
|
||||
|
||||
def sync_teamsnapdb_with_teamsnapapi(request):
|
||||
'''
|
||||
|
||||
Reference in New Issue
Block a user