diff --git a/smash/web/forms.py b/smash/web/forms.py index da8682ad36472273abe91ceb797a8267053c59f5..2bed967f5025e3282afd3b6db666b905c8a9cd0c 100644 --- a/smash/web/forms.py +++ b/smash/web/forms.py @@ -51,3 +51,8 @@ class VisitDetailForm(ModelForm): class Meta: model = Visit exclude = ['visitFinished'] + +class VisitAddForm(ModelForm): + class Meta: + model = Visit + exclude = ['visitFinished'] diff --git a/smash/web/templates/visits/add.html b/smash/web/templates/visits/add.html new file mode 100644 index 0000000000000000000000000000000000000000..852234f42c2f49acda45203d8ee43203d44323f2 --- /dev/null +++ b/smash/web/templates/visits/add.html @@ -0,0 +1,91 @@ +{% extends "_base.html" %} +{% load static %} +{% load filters %} + +{% block styles %} +{{ block.super }} + <!-- DataTables --> + <link rel="stylesheet" href="{% static 'AdminLTE/plugins/datatables/dataTables.bootstrap.css' %}"> +{% endblock styles %} + +{% block page_title %}'visits'{% endblock page_title %} +{% block page_header %}New visit{% endblock page_header %} +{% block page_description %}{% endblock page_description %} + +{% block title %}{{ block.super }} - Add new subject{% endblock %} + +{% block breadcrumb %} +{% include "subjects/breadcrumb.html" %} +{% endblock breadcrumb %} + +{% block maincontent %} + +{% block content %} +<div class="box box-info"> + <div class="box-header with-border"> + <a href="{% url 'web.views.visits' %}" class="btn btn-block btn-default">Cancel</a> + </div> + + {% comment %} <div class="box-header with-border"> + <h3 class="box-title">Details of a visit</h3> + </div>{% endcomment %} + + <form method="post" action="" class="form-horizontal"> + {% csrf_token %} + + <div class="box-body"> + <div class="col-sm-6"> + {% for field in form %} + <div class="form-group {% if field.errors %}has-error{% endif %}"> + <label for="inputEmail3" class="col-sm-4 control-label"> + {{ field.label }} + </label> + + <div class="col-sm-8"> + {{ field|add_class:'form-control' }} + </div> + + {% if field.errors %} + <span class="help-block"> + {{ field.errors }} + </span> + {% endif %} + </div> + {% endfor %} + </div> + </div><!-- /.box-body --> + + <div class="box-footer"> + <div class="col-sm-6"> + <button type="submit" class="btn btn-block btn-success">Add</button> + </div> + <div class="col-sm-6"> + <a href="{% url 'web.views.visits' %}" class="btn btn-block btn-default">Cancel</a> + </div> + </div><!-- /.box-footer --> + </form> +</div> + +{% endblock %} + + +{% endblock maincontent %} + +{% block scripts %} + {{ block.super }} + + <script src="{% static 'AdminLTE/plugins/datatables/jquery.dataTables.min.js' %}"></script> + <script src="{% static 'AdminLTE/plugins/datatables/dataTables.bootstrap.min.js' %}"></script> + <script> + $(function () { + $('#table').DataTable({ + "paging": true, + "lengthChange": false, + "searching": true, + "ordering": true, + "info": true, + "autoWidth": false + }); + }); + </script> +{% endblock scripts %} diff --git a/smash/web/templates/visits/index.html b/smash/web/templates/visits/index.html index c18b0a5d4eea304922b93303d380337d2e35ca7a..de355f6124102f6c957c3df850cad99283fb3759 100644 --- a/smash/web/templates/visits/index.html +++ b/smash/web/templates/visits/index.html @@ -23,6 +23,14 @@ {% endblock breadcrumb %} {% block maincontent %} + +<div> + <a href="{% url 'web.views.visit_add' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new visit + </a> +</div> + <div> <div> {% if visit_list %} diff --git a/smash/web/urls.py b/smash/web/urls.py index 1a5b7bb367c1a62aacc85724f8f6dfe00b80f731..0540b586e0c4a791555a11c52a59031b1d4ff51d 100644 --- a/smash/web/urls.py +++ b/smash/web/urls.py @@ -22,6 +22,7 @@ urlpatterns = [ url(r'visits$', views.visits, name='web.views.visits'), url(r'visits/details/(?P<id>\d+)$', views.visit_details, name='web.views.visit_details'), + url(r'visits/add$', views.visit_add, name='web.views.visit_add'), url(r'subjects$', views.subjects, name='web.views.subjects'), url(r'subjects/add$', views.subject_add, name='web.views.subject_add'), diff --git a/smash/web/views.py b/smash/web/views.py index b20d8c294f4124455a5d6b748589db7af30932fb..10e25b7ee51f1e0fe515a74590e8733abae0d7a6 100644 --- a/smash/web/views.py +++ b/smash/web/views.py @@ -73,6 +73,18 @@ def visit_details(request, id): return wrap_response(request, 'visits/details.html', {'vform': vform, 'sform': sform, 'loApp': listOfAppointments, 'visFinished': visFinished}) +def visit_add(request): + if request.method == 'POST': + form = VisitAddForm(request.POST, request.FILES) + if form.is_valid(): + form.save() + return redirect(visits) + else: + form = VisitAddForm() + + return wrap_response(request, 'visits/add.html', {'form': form}) + + def subjects(request): subjects_list = Subject.objects.order_by('-lastName') context = {