diff --git a/smash/web/api_views/worker.py b/smash/web/api_views/worker.py index 881f15287d969ffaea7a1fb6b58fdb1f23ca78ca..39eb016eead7bbde9c4478276c82f27e39fd50cf 100644 --- a/smash/web/api_views/worker.py +++ b/smash/web/api_views/worker.py @@ -82,6 +82,7 @@ def serialize_worker(worker): result = { "first_name": worker.first_name, "last_name": worker.last_name, + "name": str(worker), "id": worker.id, } return result diff --git a/smash/web/forms/worker_form.py b/smash/web/forms/worker_form.py index 37fa22d1983684b32774911b47245300e6fa81ad..0321c7bf3e38cb5738b0806cfd9bf197d96334dd 100644 --- a/smash/web/forms/worker_form.py +++ b/smash/web/forms/worker_form.py @@ -40,8 +40,11 @@ class WorkerForm(ModelForm): if worker_type == WORKER_STAFF: del self.fields['voucher_types'] + del self.fields['name'] else: del self.fields['locations'] + del self.fields['first_name'] + del self.fields['last_name'] if worker_type != WORKER_VOUCHER_PARTNER: del self.fields['voucher_partner_code'] diff --git a/smash/web/migrations/0117_auto_20180717_1434.py b/smash/web/migrations/0117_auto_20180717_1434.py new file mode 100644 index 0000000000000000000000000000000000000000..ddc48c027953a13a8d5237dc5113fdfd3376afd4 --- /dev/null +++ b/smash/web/migrations/0117_auto_20180717_1434.py @@ -0,0 +1,30 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.7 on 2018-07-17 14:34 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('web', '0116_auto_20180611_1346'), + ] + + operations = [ + migrations.AddField( + model_name='worker', + name='name', + field=models.CharField(blank=True, default=b'', max_length=50, verbose_name=b'Name'), + ), + migrations.AlterField( + model_name='worker', + name='first_name', + field=models.CharField(blank=True, max_length=50, verbose_name=b'First name'), + ), + migrations.AlterField( + model_name='worker', + name='last_name', + field=models.CharField(blank=True, max_length=50, verbose_name=b'Last name'), + ), + ] diff --git a/smash/web/migrations/0117_voucher_activity_type.py b/smash/web/migrations/0118_voucher_activity_type.py similarity index 91% rename from smash/web/migrations/0117_voucher_activity_type.py rename to smash/web/migrations/0118_voucher_activity_type.py index ef1198ed71c60bd8df6f4f1fcea686155b86adba..745425a78944445eff81f69a0ebbffd4acb30046 100644 --- a/smash/web/migrations/0117_voucher_activity_type.py +++ b/smash/web/migrations/0118_voucher_activity_type.py @@ -8,7 +8,7 @@ from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ - ('web', '0116_auto_20180611_1346'), + ('web', '0117_auto_20180717_1434'), ] operations = [ diff --git a/smash/web/models/worker.py b/smash/web/models/worker.py index b3dde9b892d7e7fb9e16ccf5817a231be03b9b2b..c631fd4e12d048cabf23b3c48529a1e477dffa57 100644 --- a/smash/web/models/worker.py +++ b/smash/web/models/worker.py @@ -68,11 +68,19 @@ class Worker(models.Model): verbose_name='Username' ) first_name = models.CharField(max_length=50, - verbose_name='First name' + verbose_name='First name', + blank=True, ) last_name = models.CharField(max_length=50, - verbose_name='Last name' + verbose_name='Last name', + blank=True, ) + name = models.CharField(max_length=50, + verbose_name='Name', + default='', + blank=True, + null=False + ) phone_number = models.CharField(max_length=20, verbose_name='Phone number', blank=True @@ -189,10 +197,22 @@ class Worker(models.Model): return unicode(person), role def __str__(self): - return "%s %s" % (self.first_name, self.last_name) + if self.name != '': + if self.first_name == '': + return self.name + else: + return "%s %s %s" % (self.name, self.first_name, self.last_name) + else: + return "%s %s" % (self.first_name, self.last_name) def __unicode__(self): - return "%s %s" % (self.first_name, self.last_name) + if self.name != '': + if self.first_name == '': + return self.name + else: + return "%s %s %s" % (self.name, self.first_name, self.last_name) + else: + return "%s %s" % (self.first_name, self.last_name) def initials(self): result = "" diff --git a/smash/web/static/js/smash.js b/smash/web/static/js/smash.js index f2af5cef26d8c4b20f2d93c4530785fdf9a57f5e..69a2961b00841a9f2205abf4697a414995d750b0 100644 --- a/smash/web/static/js/smash.js +++ b/smash/web/static/js/smash.js @@ -24,9 +24,9 @@ $(document).ready(function () { return true; } }); - + //disable all dropdown HTML select elements that should be readonly but aren't - $("select[readonly] option:not(:selected)").attr('disabled','disabled'); + $("select[readonly] option:not(:selected)").attr('disabled', 'disabled'); }); $.ajaxSetup({ @@ -295,8 +295,7 @@ function createTable(params) { var select = $('select', obj); $.get(voucher_partner_url, function (content) { $.each(content.data, function (index, voucher_partner) { - select.append('<option value="' + voucher_partner.id + '">' + voucher_partner.first_name + ' ' + - voucher_partner.last_name + ' ' + '</option>'); + select.append('<option value="' + voucher_partner.id + '">' + voucher_partner.name + '</option>'); }); }); }); diff --git a/smash/web/templates/doctors/index.html b/smash/web/templates/doctors/index.html index 1d64262cef902c2a22b2a491151399e618c2887c..6960412e877ef7582b29e6dd3bb01060f1ffff44 100644 --- a/smash/web/templates/doctors/index.html +++ b/smash/web/templates/doctors/index.html @@ -34,12 +34,14 @@ <thead> <tr> <th>No.</th> - <th>First name</th> - <th>Last name</th> - <th>Languages</th> {% if worker_type == 'STAFF' %} + <th>First name</th> + <th>Last name</th> <th>Unit</th> + {% else %} + <th>Name</th> {% endif %} + <th>Languages</th> <th>Details</th> {% if worker_type == 'STAFF' %} <th>On leave</th> @@ -51,8 +53,13 @@ {% for worker in doctors_list %} <tr> <td>{{ forloop.counter }}</td> - <td>{{ worker.first_name }}</td> - <td>{{ worker.last_name }}</td> + {% if worker_type == 'STAFF' %} + <td>{{ worker.first_name }}</td> + <td>{{ worker.last_name }}</td> + <td>{{ worker.unit }}</td> + {% else %} + <td>{{ worker.name }}</td> + {% endif %} <td> {% autoescape off %} {% for language in worker.languages.all %} @@ -60,9 +67,6 @@ {% endfor %} {% endautoescape %} </td> - {% if worker_type == 'STAFF' %} - <td>{{ worker.unit }}</td> - {% endif %} <td><a href="{% url 'web.views.worker_edit' worker.id %}" type="button" class="btn btn-block btn-default">Details</a></td> {% if worker_type == 'STAFF' %}