Skip to content
Snippets Groups Projects
Commit beb94c45 authored by Piotr Gawron's avatar Piotr Gawron
Browse files

visit can be marked as finished

parent b8ea9072
No related branches found
No related tags found
1 merge request!1Appointments dev
......@@ -67,11 +67,13 @@ class Subject(models.Model):
dead = models.BooleanField(
verbose_name='Dead',
default= False
default= False,
editable=False
)
resigned = models.BooleanField(
verbose_name='Resigned',
default= False
default= False,
editable=False
)
default_appointment_location = models.CharField(max_length=1,
choices=LOCATION_CHOICES,
......@@ -467,9 +469,14 @@ class Appointment(models.Model):
)#Potentially redundant; but can be used to manually adjust appointment's length
is_finished = models.BooleanField(
verbose_name='Has the appointment ended?',
default=False
default=False,
editable=False
)
def mark_as_finished(self):
self.is_finished = True
self.save()
def datetime_until(self):
if self.datetime_when is None:
return None
......
......@@ -53,6 +53,9 @@
{% endif %}
</div>
{% endfor %}
<div class="col-md-6">
<a href="{% url 'web.views.appointment_mark' id 'finished' %}" class="btn btn-warning btn-block">Mark as finished</a>
</div>
</div><!-- /.box-body -->
<div class="box-footer">
......
......@@ -22,6 +22,7 @@ urlpatterns = [
url(r'appointments/add/(?P<id>\d+)$', views.appointment_add, name='web.views.appointment_add'),
url(r'appointments/edit/(?P<id>\d+)$', views.appointment_edit, name='web.views.appointment_edit'),
url(r'appointments/edit_datetime/(?P<id>\d+)$', views.appointment_edit_datetime, name='web.views.appointment_edit_datetime'),
url(r'appointments/mark/(?P<id>\d+)/(?P<as_what>[A-z]+)$', views.appointment_mark, name='web.views.appointment_mark'),
url(r'visits$', views.visits, name='web.views.visits'),
url(r'visits/details/(?P<id>\d+)$', views.visit_details, name='web.views.visit_details'),
......
......@@ -173,6 +173,12 @@ def subject_mark(request, id, as_what):
who.mark_as_rejected()
return redirect(subject_edit, id=id)
def appointment_mark(request, id, as_what):
appointment = get_object_or_404(Appointment, id=id)
if as_what == 'finished':
appointment.mark_as_finished()
return redirect(visit_details, id=appointment.visit.id)
def subject_visit_details(request, id):
locsubject = get_object_or_404(Subject, id=id)
visits = locsubject.visit_set.all()
......@@ -350,7 +356,7 @@ def appointment_edit(request, id):
return redirect(appointments)
else:
form = AppointmentEditForm(instance=the_appointment)
return wrap_response(request, 'appointments/edit.html', {'form': form})
return wrap_response(request, 'appointments/edit.html', {'form': form, 'id':id})
def appointment_edit_datetime(request, id):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment