diff --git a/smash/web/templates/doctors/availdelete.html b/smash/web/templates/doctors/availdelete.html new file mode 100644 index 0000000000000000000000000000000000000000..3ce291566dd852c5f43fe1be65b03cd0e8056959 --- /dev/null +++ b/smash/web/templates/doctors/availdelete.html @@ -0,0 +1,247 @@ +{% extends "_base.html" %} +{% load static %} + +{% block styles %} +{{ block.super }} + <!-- DataTables --> + <link rel="stylesheet" href="{% static 'AdminLTE/plugins/datatables/dataTables.bootstrap.css' %}"> +{% endblock styles %} + +{% block page_title %}'workers'{% endblock page_title %} +{% block page_header %}Workers{% endblock page_header %} +{% block page_description %}avaibility{% endblock page_description %} + +{% block breadcrumb %} + <li><a href="#"><i class="fa fa-dashboard"></i> Avaibilities</a></li> + <li class="active">Workers</li> +{% endblock breadcrumb %} + +{% block maincontent %} + +<div class="box-body"> + + <h3>Monday</h3> + {% if avmon %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <th>Remove</th> + </tr> + </thead> + <tbody> + {% for record in avmon %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Monday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Tuesday</h3> + {% if avtue %} + <table id = "tabtue" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avtue %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Tuesday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Wednesday</h3> + {% if avwed %} + <table id = "tabwed" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avwed %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Wednesday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Thursday</h3> + {% if avthu %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avthu %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Thursday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Friday</h3> + {% if avfri %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avfri %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Friday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Saturday</h3> + {% if avsat %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <th>Remove</th> + </tr> + </thead> + <tbody> + {% for record in avsat %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Saturday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + +</div> +{% 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": false, + "ordering": true, + "info": true, + "autoWidth": false + }); + }); + </script> +{% endblock scripts %} diff --git a/smash/web/templates/doctors/availdex.html b/smash/web/templates/doctors/availdex.html new file mode 100644 index 0000000000000000000000000000000000000000..3ce291566dd852c5f43fe1be65b03cd0e8056959 --- /dev/null +++ b/smash/web/templates/doctors/availdex.html @@ -0,0 +1,247 @@ +{% extends "_base.html" %} +{% load static %} + +{% block styles %} +{{ block.super }} + <!-- DataTables --> + <link rel="stylesheet" href="{% static 'AdminLTE/plugins/datatables/dataTables.bootstrap.css' %}"> +{% endblock styles %} + +{% block page_title %}'workers'{% endblock page_title %} +{% block page_header %}Workers{% endblock page_header %} +{% block page_description %}avaibility{% endblock page_description %} + +{% block breadcrumb %} + <li><a href="#"><i class="fa fa-dashboard"></i> Avaibilities</a></li> + <li class="active">Workers</li> +{% endblock breadcrumb %} + +{% block maincontent %} + +<div class="box-body"> + + <h3>Monday</h3> + {% if avmon %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <th>Remove</th> + </tr> + </thead> + <tbody> + {% for record in avmon %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Monday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Tuesday</h3> + {% if avtue %} + <table id = "tabtue" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avtue %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Tuesday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Wednesday</h3> + {% if avwed %} + <table id = "tabwed" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avwed %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Wednesday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Thursday</h3> + {% if avthu %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avthu %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Thursday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Friday</h3> + {% if avfri %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <td> Remove </td> + </tr> + </thead> + <tbody> + {% for record in avfri %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Friday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + + <h3>Saturday</h3> + {% if avsat %} + <table id = "tabmon" class="table table-bordered table-striped"> + <thead> + <tr> + <th>No.</th> + <th>From</th> + <th>Until</th> + <th>Remove</th> + </tr> + </thead> + <tbody> + {% for record in avsat %} + <tr> + <td> {{forloop.counter}} </td> + <td> {{record.availFro}} </td> + <td> {{record.availTil}} </td> + <td><a href="{% url 'web.views.availdelete' record.id %}" type="button" class="btn btn-block btn-default">Delete</a></td> + </tr> + {% endfor %} + </tbody> + </table> + + + {% else %} + <p>No avaibilities on Saturday.</p> + {% endif %} + + <div> + <a href="{% url 'web.views.doctoradd' %}" class="btn btn-app"> + <i class="fa fa-plus"></i> + Add new avaibility</a> + </div> + +</div> +{% 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": false, + "ordering": true, + "info": true, + "autoWidth": false + }); + }); + </script> +{% endblock scripts %} diff --git a/smash/web/templates/doctors/index.html b/smash/web/templates/doctors/index.html index 46de2281b50fe8daf4baf5eb77d4b015e6ec305e..427ea4b7e23077437c5c49501723439373146b55 100644 --- a/smash/web/templates/doctors/index.html +++ b/smash/web/templates/doctors/index.html @@ -56,8 +56,8 @@ <td>{{ worker.unit }}</td> <td><a href="{% url 'web.views.doctordetails' worker.id %}" type="button" class="btn btn-block btn-default">Details</a></td> <td><a href="{% url 'web.views.doctoredit' worker.id %}" type="button" class="btn btn-block btn-default">Edit</a></td> - <td><button type="button" class="btn btn-block btn-default">Modify availability</button></td> - <td> + <td><a href="{% url 'web.views.doctoravail' worker.id %}" type="button" class="btn btn-block btn-default">Modify availability</a></td> + <td> {% if worker.isOnLeave %}<button type="button" class="btn btn-block btn-danger">YES</button> {% else %}<button type="button" class="btn btn-block btn-success">NO</button> {% endif %} diff --git a/smash/web/urls.py b/smash/web/urls.py index d11ecc6de1c1a8938304fc775184161751d58c99..e8cd197203445d4a563e18a6518588b87b3ef284 100644 --- a/smash/web/urls.py +++ b/smash/web/urls.py @@ -27,6 +27,8 @@ urlpatterns = [ url(r'doctors/add$', views.doctoradd, name='web.views.doctoradd'), url(r'doctors/details/(?P<ids>\d+)$', views.doctordetails, name='web.views.doctordetails'), url(r'doctors/edit/(?P<ids>\d+)$', views.doctoredit, name='web.views.doctoredit'), + url(r'doctors/avaibility/(?P<ids>\d+)$', views.doctoravail, name='web.views.doctoravail'), + url(r'doctors/availdelete/(?P<ids>\d+)$', views.availdelete, name='web.views.availdelete'), url(r'equipment_and_rooms$', views.equipment_and_rooms, name='web.views.equipment_and_rooms'), url(r'equipment_and_rooms/eqdef$', views.equipment_def, name='web.views.equipment_def'), url(r'mail_templates$', views.mail_templates, name='web.views.mail_templates'), diff --git a/smash/web/views.py b/smash/web/views.py index eec71faef86a0a444328549670ee9fd871b1d2f7..0285bffd9d00a471c056fa60a973035d0484a202 100644 --- a/smash/web/views.py +++ b/smash/web/views.py @@ -134,6 +134,32 @@ def doctordetails(request, ids): formset = WorkerDetailForm(instance=Worker.objects.get(id=ids)) return render(request, 'doctors/details.html', {'formset': formset}) +def doctoravail(request, ids): + avall = Avaibility.objects.filter(person = ids) + + avmon = avall.filter(dayNo=1) + avtue = avall.filter(dayNo=2) + avwed = avall.filter(dayNo=3) + avthu = avall.filter(dayNo=4) + avfri = avall.filter(dayNo=5) + avsat = avall.filter(dayNo=6) + + template = loader.get_template("doctors/availdex.html") + context = { + 'avmon': avmon, + 'avtue': avtue, + 'avwed': avwed, + 'avthu': avthu, + 'avfri': avfri, + 'avsat': avsat, + 'ids': ids + } + + return HttpResponse(template.render(context,request)) + +def availdelete(request, id): + return redirect(doctors) + def equipment_def(request): equipment_list = Item.objects.order_by('-name') template = loader.get_template("eqdef/index.html")