course view - urls.py done!
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
{% extends "base.html" %}
|
{% extends "newbase.html" %}
|
||||||
{% load staticfiles %}
|
{% load staticfiles %}
|
||||||
{% load rowerfilters %}
|
{% load rowerfilters %}
|
||||||
{% block scripts %}
|
{% block scripts %}
|
||||||
@@ -7,49 +7,32 @@
|
|||||||
|
|
||||||
{% block title %}{{ course.name }} {% endblock %}
|
{% block title %}{{ course.name }} {% endblock %}
|
||||||
{% block og_title %}{{ course.name }} {% endblock %}
|
{% block og_title %}{{ course.name }} {% endblock %}
|
||||||
{% block content %}
|
{% block main %}
|
||||||
<div class="grid_12 alpha">
|
<h1>{{ course.name }}</h1>
|
||||||
<div class="grid_2 alpha">
|
|
||||||
{% if nosessions %}
|
|
||||||
<a class="button small red" href="/rowers/courses/{{ course.id }}/delete">Delete</a>
|
|
||||||
{% else %}
|
|
||||||
<a class="button small red" href="/rowers/courses/{{ course.id }}/replace">
|
|
||||||
Update</a>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
<div class="grid_2">
|
|
||||||
{% if course.manager == rower %}
|
|
||||||
<a class="button small gray" href="/rowers/courses/{{ course.id }}">View Course</a>
|
|
||||||
{% else %}
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
<div class="grid_2">
|
|
||||||
<a class="button small gray" href="/rowers/list-courses">Courses</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="grid_12 alpha">
|
|
||||||
|
|
||||||
<h1>{{ course.name }}</h1>
|
<ul class="main-content">
|
||||||
|
<li class="grid_2">
|
||||||
<div class="grid_6 alpha">
|
|
||||||
<form id="course_form" method="post">
|
<form id="course_form" method="post">
|
||||||
<table>
|
<table>
|
||||||
{{ form.as_table }}
|
{{ form.as_table }}
|
||||||
</table>
|
</table>
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
<div id="formbutton" class="grid_1 prefix_4 suffix_1 alpha">
|
|
||||||
<input class="button green" type="submit" value="Submit">
|
<input class="button green" type="submit" value="Submit">
|
||||||
</div>
|
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</li>
|
||||||
<div class="grid_6 omega">
|
<li class="grid_2">
|
||||||
{{ mapdiv|safe }}
|
<div class="mapdiv">
|
||||||
|
{{ mapdiv|safe }}
|
||||||
|
|
||||||
|
|
||||||
{{ mapscript|safe }}
|
{{ mapscript|safe }}
|
||||||
</div>
|
</div>
|
||||||
|
</li>
|
||||||
|
|
||||||
</div>
|
</ul>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block sidebar %}
|
||||||
|
{% include 'menu_racing.html' %}
|
||||||
|
{% endblock %}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{% extends "base.html" %}
|
{% extends "newbase.html" %}
|
||||||
{% load staticfiles %}
|
{% load staticfiles %}
|
||||||
{% load rowerfilters %}
|
{% load rowerfilters %}
|
||||||
{% block scripts %}
|
{% block scripts %}
|
||||||
@@ -7,24 +7,12 @@
|
|||||||
|
|
||||||
{% block title %}{{ course.name }} {% endblock %}
|
{% block title %}{{ course.name }} {% endblock %}
|
||||||
{% block og_title %}{{ course.name }} {% endblock %}
|
{% block og_title %}{{ course.name }} {% endblock %}
|
||||||
{% block content %}
|
{% block main %}
|
||||||
<div class="grid_12 alpha">
|
<h1>Replace {{ course.name }}</h1>
|
||||||
<div class="grid_2 prefix_2 alpha">
|
|
||||||
{% if course.manager == rower %}
|
|
||||||
<a class="button small gray" href="/rowers/courses/{{ course.id }}">View Course</a>
|
|
||||||
{% else %}
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
<div class="grid_2">
|
|
||||||
<a class="button small gray" href="/rowers/list-courses">Courses</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="grid_12 alpha">
|
|
||||||
|
|
||||||
<h1>Replace {{ course.name }}</h1>
|
<ul class="main-content">
|
||||||
|
|
||||||
<div class="grid_8 alpha">
|
<li class="grid_2">
|
||||||
<p>
|
<p>
|
||||||
This replaces the course {{ course.name }} with the course you select below for all
|
This replaces the course {{ course.name }} with the course you select below for all
|
||||||
planned sessions and virtual races, and then deletes this course.
|
planned sessions and virtual races, and then deletes this course.
|
||||||
@@ -34,18 +22,21 @@
|
|||||||
{{ form.as_table }}
|
{{ form.as_table }}
|
||||||
</table>
|
</table>
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
<div id="formbutton" class="grid_1 prefix_4 suffix_1 alpha">
|
<input class="button green" type="submit" value="Submit">
|
||||||
<input class="button green" type="submit" value="Submit">
|
|
||||||
</div>
|
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</li>
|
||||||
<div class="grid_4 omega">
|
<li class="grid_2">
|
||||||
{{ mapdiv|safe }}
|
<div class="mapdiv">
|
||||||
|
{{ mapdiv|safe }}
|
||||||
|
|
||||||
{{ mapscript|safe }}
|
|
||||||
</div>
|
{{ mapscript|safe }}
|
||||||
|
</div>
|
||||||
</div>
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block sidebar %}
|
||||||
|
{% include 'menu_racing.html' %}
|
||||||
|
{% endblock %}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{% extends "base.html" %}
|
{% extends "newbase.html" %}
|
||||||
{% load staticfiles %}
|
{% load staticfiles %}
|
||||||
{% load rowerfilters %}
|
{% load rowerfilters %}
|
||||||
{% block scripts %}
|
{% block scripts %}
|
||||||
@@ -7,34 +7,11 @@
|
|||||||
|
|
||||||
{% block title %}{{ course.name }} {% endblock %}
|
{% block title %}{{ course.name }} {% endblock %}
|
||||||
{% block og_title %}{{ course.name }} {% endblock %}
|
{% block og_title %}{{ course.name }} {% endblock %}
|
||||||
{% block content %}
|
{% block main %}
|
||||||
<div class="grid_12 alpha">
|
<h1>{{ course.name }}</h1>
|
||||||
<div class="grid_2 alpha">
|
|
||||||
{% if nosessions %}
|
|
||||||
<a class="button small red" href="/rowers/courses/{{ course.id }}/delete">Delete</a>
|
|
||||||
{% else %}
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
<div class="grid_2">
|
|
||||||
{% if course.manager == rower %}
|
|
||||||
<a class="button small gray" href="/rowers/courses/{{ course.id }}/edit">Edit</a>
|
|
||||||
{% else %}
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
<div class="grid_2">
|
|
||||||
<a class="button small gray" href="/rowers/list-courses">Courses</a>
|
|
||||||
</div>
|
|
||||||
<div class="grid_2">
|
|
||||||
<a class="button small gray" href="/rowers/courses/{{ course.id }}/emailkml">Export to KML</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="grid_12 alpha">
|
|
||||||
|
|
||||||
<h1>{{ course.name }}</h1>
|
<ul class="main-content">
|
||||||
|
<li class="grid_2">
|
||||||
<div class="grid_6 alpha">
|
|
||||||
<table class="listtable shortpadded" width="100%">
|
<table class="listtable shortpadded" width="100%">
|
||||||
<tr>
|
<tr>
|
||||||
<th>Name</th><td>{{ course.name }}</td>
|
<th>Name</th><td>{{ course.name }}</td>
|
||||||
@@ -46,14 +23,19 @@
|
|||||||
<th>Notes</th><td>{{ course.notes|linebreaks }}</td>
|
<th>Notes</th><td>{{ course.notes|linebreaks }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</li>
|
||||||
<div class="grid_6 omega">
|
<li class="grid_2">
|
||||||
{{ mapdiv|safe }}
|
<div class="mapdiv">
|
||||||
|
{{ mapdiv|safe }}
|
||||||
|
|
||||||
{{ mapscript|safe }}
|
|
||||||
</div>
|
{{ mapscript|safe }}
|
||||||
|
</div>
|
||||||
</div>
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block sidebar %}
|
||||||
|
{% include 'menu_racing.html' %}
|
||||||
|
{% endblock %}
|
||||||
|
|||||||
@@ -1,7 +1,23 @@
|
|||||||
<div>
|
{% extends "newbase.html" %}
|
||||||
{{ mapscript|safe }}
|
{% load staticfiles %}
|
||||||
|
{% load rowerfilters %}
|
||||||
|
{% block scripts %}
|
||||||
|
{% include "monitorjobs.html" %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block title %}{{ course.name }} {% endblock %}
|
||||||
|
{% block og_title %}{{ course.name }} {% endblock %}
|
||||||
|
{% block main %}
|
||||||
|
<h1>{{ course.name }}</h1>
|
||||||
|
<div class="mapdiv">
|
||||||
{{ mapdiv|safe }}
|
{{ mapdiv|safe }}
|
||||||
|
{{ mapscript|safe }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block sidebar %}
|
||||||
|
{% include 'menu_racing.html' %}
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -14,5 +14,43 @@
|
|||||||
<a href="/rowers/list-courses">
|
<a href="/rowers/list-courses">
|
||||||
<i class="fas fa-map-marked fa-fw"></i> Courses
|
<i class="fas fa-map-marked fa-fw"></i> Courses
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
{% if course %}
|
||||||
|
<li class="has-children" id="course">
|
||||||
|
<input type="checkbox" name="group-course" id="group-course" checked>
|
||||||
|
<label for="group-course"><i class="fas fa-map-marked fa-fw"></i> {{ course.name }}</label>
|
||||||
|
<ul>
|
||||||
|
<li id="course-view">
|
||||||
|
<a href="/rowers/courses/{{ course.id }}">
|
||||||
|
<i class="fas fa-search fa-fw"></i> View
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li id="course-mapview">
|
||||||
|
<a href="/rowers/courses/{{ course.id }}/map">
|
||||||
|
<i class="fas fa-map fa-fw"></i> Map View
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
{% if course.manager == rower %}
|
||||||
|
<li id="course-emailkml">
|
||||||
|
<a href="/rowers/courses/{{ course.id }}/emailkml">
|
||||||
|
<i class="fas fa-envelope fa-fw"></i> Export as KML</a>
|
||||||
|
</li>
|
||||||
|
<li id="course-editview">
|
||||||
|
<a href="/rowers/courses/{{ course.id }}/edit">
|
||||||
|
<i class="fas fa-pencil-alt fa-fw"></i> Edit</a>
|
||||||
|
</li>
|
||||||
|
{% if nosessions %}
|
||||||
|
<li id="course-deleteview">
|
||||||
|
<a href="/rowers/courses/{{ course.id }}/delete">
|
||||||
|
<i class="fas fa-trash-alt fa-fw"></i> Delete</a>
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
<li id="course-view">
|
||||||
|
<a href="/rowers/courses/{{ course.id }}/replace">
|
||||||
|
<i class="fas fa-map-marked-alt fa-fw"></i> Update Markers</a>
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
</ul> <!-- cd-accordion-menu -->
|
</ul> <!-- cd-accordion-menu -->
|
||||||
|
|||||||
113
rowers/views.py
113
rowers/views.py
@@ -9187,23 +9187,46 @@ def workout_comment_view(request,id=0):
|
|||||||
|
|
||||||
# for ajax calls
|
# for ajax calls
|
||||||
def course_map_view(request,id=0):
|
def course_map_view(request,id=0):
|
||||||
if id != 0:
|
try:
|
||||||
try:
|
course = GeoCourse.objects.get(id=id)
|
||||||
course = GeoCourse.objects.get(id=id)
|
except GeoCourse.DoesNotExist:
|
||||||
except GeoCourse.DoesNotExist:
|
return Http404("Course doesn't exist")
|
||||||
return Http404("Course doesn't exist")
|
|
||||||
|
|
||||||
script,div = course_map(course)
|
script,div = course_map(course)
|
||||||
|
|
||||||
|
breadcrumbs = [
|
||||||
|
{
|
||||||
|
'url': reverse(virtualevents_view),
|
||||||
|
'name': 'Racing'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(courses_view),
|
||||||
|
'name': 'Courses'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(course_view,kwargs={'id':course.id}),
|
||||||
|
'name': course.name
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(course_map_view,kwargs={'id':course.id}),
|
||||||
|
'name': 'Map'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
r = getrower(request.user)
|
||||||
|
|
||||||
|
|
||||||
|
return render(request,
|
||||||
|
'coursemap.html',
|
||||||
|
{
|
||||||
|
'mapdiv':div,
|
||||||
|
'course':course,
|
||||||
|
'mapscript':script,
|
||||||
|
'active':'nav-racing',
|
||||||
|
'rower':r,
|
||||||
|
'breadcrumbs':breadcrumbs,
|
||||||
|
})
|
||||||
|
|
||||||
return render(request,
|
|
||||||
'coursemap.html',
|
|
||||||
{
|
|
||||||
'mapdiv':div,
|
|
||||||
'mapscript':script
|
|
||||||
})
|
|
||||||
|
|
||||||
else:
|
|
||||||
return ""
|
|
||||||
|
|
||||||
@login_required()
|
@login_required()
|
||||||
def course_replace_view(request,id=0):
|
def course_replace_view(request,id=0):
|
||||||
@@ -9238,9 +9261,31 @@ def course_replace_view(request,id=0):
|
|||||||
|
|
||||||
script,div = course_map(course)
|
script,div = course_map(course)
|
||||||
|
|
||||||
|
breadcrumbs = [
|
||||||
|
{
|
||||||
|
'url': reverse(virtualevents_view),
|
||||||
|
'name': 'Racing'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(courses_view),
|
||||||
|
'name': 'Courses'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(course_view,kwargs={'id':course.id}),
|
||||||
|
'name': course.name
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(course_replace_view,kwargs={'id':course.id}),
|
||||||
|
'name': 'Replace Markers'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
return render(request,
|
return render(request,
|
||||||
'course_replace.html',
|
'course_replace.html',
|
||||||
{'course':course,
|
{'course':course,
|
||||||
|
'active':'nav-racing',
|
||||||
|
'breadcrumbs':breadcrumbs,
|
||||||
|
'rower':r,
|
||||||
'mapdiv':div,
|
'mapdiv':div,
|
||||||
'mapscript':script,
|
'mapscript':script,
|
||||||
'form':form})
|
'form':form})
|
||||||
@@ -9301,10 +9346,31 @@ def course_edit_view(request,id=0):
|
|||||||
course.save()
|
course.save()
|
||||||
|
|
||||||
form = GeoCourseEditForm(instance=course)
|
form = GeoCourseEditForm(instance=course)
|
||||||
|
|
||||||
|
breadcrumbs = [
|
||||||
|
{
|
||||||
|
'url': reverse(virtualevents_view),
|
||||||
|
'name': 'Racing'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(courses_view),
|
||||||
|
'name': 'Courses'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(course_view,kwargs={'id':course.id}),
|
||||||
|
'name': course.name
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(course_edit_view,kwargs={'id':course.id}),
|
||||||
|
'name': 'Edit'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
return render(request, 'course_edit_view.html',
|
return render(request, 'course_edit_view.html',
|
||||||
{
|
{
|
||||||
'course':course,
|
'course':course,
|
||||||
|
'active':'nav-racing',
|
||||||
|
'breadcrumbs':breadcrumbs,
|
||||||
'mapscript':script,
|
'mapscript':script,
|
||||||
'mapdiv':div,
|
'mapdiv':div,
|
||||||
'nosessions':nosessions,
|
'nosessions':nosessions,
|
||||||
@@ -9324,8 +9390,25 @@ def course_view(request,id=0):
|
|||||||
|
|
||||||
script,div = course_map(course)
|
script,div = course_map(course)
|
||||||
|
|
||||||
|
breadcrumbs = [
|
||||||
|
{
|
||||||
|
'url': reverse(virtualevents_view),
|
||||||
|
'name': 'Racing'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(courses_view),
|
||||||
|
'name': 'Courses'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'url': reverse(course_view,kwargs={'id':course.id}),
|
||||||
|
'name': course.name
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|
||||||
return render(request, 'course_view.html',
|
return render(request, 'course_view.html',
|
||||||
{
|
{
|
||||||
|
'active':'nav-racing',
|
||||||
|
'breadcrumbs':breadcrumbs,
|
||||||
'course':course,
|
'course':course,
|
||||||
'mapscript':script,
|
'mapscript':script,
|
||||||
'mapdiv':div,
|
'mapdiv':div,
|
||||||
|
|||||||
@@ -930,3 +930,17 @@ a.wh:hover {
|
|||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.mapdiv {
|
||||||
|
padding: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mapdiv img {
|
||||||
|
float: left !important;
|
||||||
|
padding: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.paypalpix {
|
||||||
|
width: auto !important;
|
||||||
|
max-width: 1px;
|
||||||
|
}
|
||||||
|
|||||||
@@ -639,16 +639,3 @@ aside .cd-accordion-menu.animated label::before {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.mapdiv {
|
|
||||||
padding: 0 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mapdiv img {
|
|
||||||
float: left !important;
|
|
||||||
padding: 0 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.paypalpix {
|
|
||||||
width: auto !important;
|
|
||||||
max-width: 1px;
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user