1
0
Fork 0

Bring new form under the project structure

merge-requests/79/head
Nikos Roussos 2014-12-19 16:46:31 +02:00
parent 44e37d3651
commit fca9008a26
6 changed files with 87 additions and 106 deletions

View File

@ -1,23 +0,0 @@
from django.conf.urls import patterns, url
from django.views.generic import TemplateView
urlpatterns = patterns(
'',
url(r'^$', 'base.views.index', name='home'),
url(r'^o/(?P<id>[0-9]+)/$',
'base.views.view_observation', name='observations_view_observation'),
url(r'^observations/$', 'base.views.observations_list',
name='observations'),
url(r'^observations/new/$', 'base.views.observation_new', name='observation_new'),
url(r'^about/$',
TemplateView.as_view(template_name='base/about.html'),
name='about'),
url(r'^stations/$', 'base.views.stations_list', name='stations'),
url(r'^s/(?P<id>[0-9]+)/$',
'base.views.view_station', name='stations_view_station'),
url(r'^station/edit/$', 'base.views.edit_station', name='stations_edit_station'),
url(r'^prediction_windows/(?P<sat_id>[\w.@+-]+)/(?P<start_date>.+)/(?P<end_date>.+)/$',
'base.views.prediction_windows',
name='prediction_windows'),
)

View File

@ -5,12 +5,18 @@ from django.views.generic import TemplateView
urlpatterns = patterns(
'network.base.views',
url(r'^$', 'index', name='home'),
url(r'^o/(?P<id>[0-9]+)/$', 'observation_view', name='observation_view'),
url(r'^observations/$', 'observations_list', name='observations_list'),
url(r'^observations/new/$', 'observation_new', name='observation_new'),
url(r'^about/$', TemplateView.as_view(template_name='base/about.html'), name='about'),
# Observations
url(r'^observations/$', 'observations_list', name='observations_list'),
url(r'^observations/(?P<id>[0-9]+)/$', 'observation_view', name='observation_view'),
url(r'^observations/new/$', 'observation_new', name='observation_new'),
# Stations
url(r'^stations/$', 'stations_list', name='stations_list'),
url(r'^s/(?P<id>[0-9]+)/$', 'station_view', name='station_view'),
url(r'^stations/(?P<id>[0-9]+)/$', 'station_view', name='station_view'),
url(r'^stations/edit/$', 'station_edit', name='station_edit'),
url(r'^prediction_windows/(?P<sat_id>[\w.@+-]+)/(?P<start_date>.+)/(?P<end_date>.+)/$',
'prediction_windows', name='prediction_windows'),
)

View File

@ -150,7 +150,7 @@ def station_view(request, id):
@require_POST
def edit_station(request):
def station_edit(request):
"""Edit or add a single station."""
if request.POST['id']:
pk = request.POST.get('id')
@ -164,7 +164,7 @@ def edit_station(request):
f.save()
form.save_m2m()
messages.success(request, 'Successfully saved Ground Station')
return redirect(reverse('stations_view_station', kwargs={'id': f.id}))
return redirect(reverse('base:station_view', kwargs={'id': f.id}))
else:
messages.error(request, 'Some fields missing on the form')
return redirect(reverse('users:view_user', kwargs={'username': request.user.username}))

View File

@ -11,87 +11,86 @@
{% endblock css %}
{% block content %}
<h2 id="station-info"
data-name="{{ station.name }}"
data-id="{{ station.id }}"
data-lng="{{ station.lng }}"
data-lat="{{ station.lat }}">
{{ station.id }} - {{ station.name }}
{% if request.user == station.owner %}
<button class="btn btn-primary pull-right" data-toggle="modal" data-target="#StationModal">Edit Ground Station</button>
{% endif %}
</h2>
<h2 id="station-info"
data-name="{{ station.name }}"
data-id="{{ station.id }}"
data-lng="{{ station.lng }}"
data-lat="{{ station.lat }}">
{{ station.id }} - {{ station.name }}
{% if request.user == station.owner %}
<button class="btn btn-primary pull-right" data-toggle="modal" data-target="#StationModal">Edit Ground Station</button>
<!-- Station Modal -->
{% include 'includes/station_edit.html' %}
{% endif %}
</h2
<div class="row">
<div class="col-md-4">
<div class="gs-front-line">
<span class="label label-default">Owner</span>
<span class="gs-front-data">
<a href="{% url 'users:view_user' username=station.owner.username %}">
{{ station.owner.get_full_name }}
</a>
</span>
</div>
<div class="gs-front-line">
<span class="label label-default">Location</span>
<span class="gs-front-data">
{{ station.location }}
</span>
</div>
<div class="gs-front-line">
<span class="label label-default">Coordinates</span>
<span class="gs-front-data">
{{ station.lat|floatformat:-3 }}, {{ station.lng|floatformat:-3 }}
</span>
</div>
<div class="gs-front-line">
<span class="label label-default">Altitude</span>
<span class="gs-front-data">
{{ station.alt }} m
</span>
</div>
<div class="gs-front-line">
<span class="label label-default">Creation Date</span>
<span class="gs-front-data"
title="{{ station.created|date:"c" }}">
{{ station.created|timesince }} ago
</span>
</div>
</div>
<div class="col-md-4">
{% for antenna in station.antenna.all %}
<div class="row">
<div class="col-md-4">
<div class="gs-front-line">
<span class="label label-default">Antenna</span>
<span class="label label-default">Owner</span>
<span class="gs-front-data">
<a href="{% url 'users:view_user' username=station.owner.username %}">
{{ station.owner.get_full_name }}
</a>
</span>
</div>
<div class="panel panel-default">
<div class="panel-body">
{{ antenna.band }} - {{ antenna.antenna_type }} - {% frq antenna.frequency %}
<div class="gs-front-line">
<span class="label label-default">Location</span>
<span class="gs-front-data">
{{ station.location }}
</span>
</div>
<div class="gs-front-line">
<span class="label label-default">Coordinates</span>
<span class="gs-front-data">
{{ station.lat|floatformat:-3 }}, {{ station.lng|floatformat:-3 }}
</span>
</div>
<div class="gs-front-line">
<span class="label label-default">Altitude</span>
<span class="gs-front-data">
{{ station.alt }} m
</span>
</div>
<div class="gs-front-line">
<span class="label label-default">Creation Date</span>
<span class="gs-front-data"
title="{{ station.created|date:"c" }}">
{{ station.created|timesince }} ago
</span>
</div>
</div>
<div class="col-md-4">
{% for antenna in station.antenna.all %}
<div class="gs-front-line">
<span class="label label-default">Antenna</span>
</div>
</div>
{% empty %}
<p class="notice">
No antenna associated with this station.
</p>
{% endfor %}
<div class="panel panel-default">
<div class="panel-body">
{{ antenna.band }} - {{ antenna.antenna_type }} - {% frq antenna.frequency %}
</div>
</div>
{% empty %}
<p class="notice">
No antenna associated with this station.
</p>
{% endfor %}
</div>
<div class="col-md-4">
<img src="{{ MEDIA_URL }}{{ station.image }}"
class="station-view-image"
alt="{{ station.name }}"
title="{{ station.name }}">
</div>
</div>
<div class="col-md-4">
<img src="{{ MEDIA_URL }}{{ station.image }}"
class="station-view-image"
alt="{{ station.name }}"
title="{{ station.name }}">
</div>
</div>
<div class="row">
<div class="col-md-12">
<div id="map-station"></div>
<div class="row">
<div class="col-md-12">
<div id="map-station"></div>
</div>
</div>
</div>
<!-- Station Modal -->
{% include 'includes/station_edit.html' %}
{% endblock content %}
{% block javascript %}
<script src="{% static 'js/station_view.js' %}"></script>
<script src="{% static 'js/station_view.js' %}"></script>
{% endblock javascript %}

View File

@ -11,7 +11,7 @@
role="form"
enctype="multipart/form-data"
method="post"
action="{% url 'stations_edit_station' %}">{% csrf_token %}
action="{% url 'base:station_edit' %}">{% csrf_token %}
<div class="modal-body">
<div class="form-group">
<label for="name" class="col-sm-2 control-label">Name</label>

View File

@ -74,6 +74,8 @@
<div class="col-md-12">
{% if user == request.user %}
<button class="btn btn-default" data-toggle="modal" data-target="#StationModal">Add Ground Station</button>
<!-- Station Modal -->
{% include 'includes/station_edit.html' %}
{% endif %}
</div>
</div>
@ -145,7 +147,4 @@
</div>
</div>
</div>
<!-- Station Modal -->
{% include 'includes/station_edit.html' %}
{% endblock content %}