Update schedule module
This commit is contained in:
parent
5be8fa9c6d
commit
d9899f2d56
@ -22,3 +22,47 @@
|
||||
.rug-breadcrumbs {
|
||||
display: none;
|
||||
}
|
||||
|
||||
p {
|
||||
max-width: none;
|
||||
}
|
||||
|
||||
table {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
input {
|
||||
width: 100%
|
||||
}
|
||||
|
||||
.alert-warning {
|
||||
color: #856404;
|
||||
background-color: #fff3cd;
|
||||
border-color: #ffeeba;
|
||||
}
|
||||
|
||||
.alert-success {
|
||||
color: #155724;
|
||||
background-color: #d4edda;
|
||||
border-color: #c3e6cb;
|
||||
}
|
||||
.alert-danger {
|
||||
color: #721c24;
|
||||
background-color: #f8d7da;
|
||||
border-color: #f5c6cb;
|
||||
}
|
||||
.form-control {
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: calc(1.5em + .75rem + 2px);
|
||||
padding: .375rem .75rem;
|
||||
font-size: 1rem;
|
||||
font-weight: 400;
|
||||
line-height: 1.5;
|
||||
color: #495057;
|
||||
background-color: #fff;
|
||||
background-clip: padding-box;
|
||||
border: 1px solid #ced4da;
|
||||
border-radius: .25rem;
|
||||
transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
|
||||
}
|
@ -4,8 +4,6 @@
|
||||
{% block title %}{% trans "Welcome to the RUG Template page" %}{% endblock %}
|
||||
{% block pagetitle %}{% trans "Welcome to the RUG Template page" %}{% endblock %}
|
||||
{% block content %}
|
||||
<p>
|
||||
<strong>{% trans "Simple RUG Template" %}</strong>
|
||||
</p>
|
||||
<p><strong>{% trans "Simple RUG Template" %}</strong></p>
|
||||
<p>{% trans "Some more text" %}</p>
|
||||
{% endblock %}
|
@ -2,12 +2,9 @@
|
||||
|
||||
<li class="rug-nav--secondary__item">
|
||||
<a class="rug-nav--secondary__link js--togglable-switch" data-toggle-class="rug-nav--secondary__link--selected" data-toggle-group="submenu" data-toggle-id="menu-2427370b-9435-44d9-bca7-b93ec9d03cc0-33.31" data-toggle-mode="togglable">{% trans "Section" %}</a>
|
||||
|
||||
<ul class="rug-nav--secondary__sub rug-nav--secondary__sub--hidden js--togglable-item" data-toggle-class="rug-block" data-toggle-group="submenu" data-toggle-id="menu-2427370b-9435-44d9-bca7-b93ec9d03cc0-33.31">
|
||||
|
||||
<li class="rug-nav--secondary__sub__item" data-menu-id="b512aa55-f0cb-4588-9054-302caa5fa951-33.34">
|
||||
<a class="rug-nav--secondary__sub__link" href="#"><span class="rug-nav--secondary__sub__link-text">{% trans "Menu item" %}</span></a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
@ -6,8 +6,11 @@
|
||||
{% block content %}
|
||||
<p>
|
||||
<strong>{% trans "Login" %}</strong>
|
||||
<br />
|
||||
{% blocktrans %}
|
||||
You can login here to create your schedules. If you do not have a login, please contact: some_one@rug.nl
|
||||
{% endblocktrans %}
|
||||
</p>
|
||||
|
||||
<form method="post" action="{% url 'login' %}">
|
||||
{% csrf_token %}
|
||||
<input type="hidden" name="next" value="{{ next }}">
|
||||
@ -18,7 +21,7 @@
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<br />
|
||||
{# Assumes you setup the password_reset view in your URLconf #}
|
||||
<p><a href="{% url 'password_reset' %}">{% trans "Lost password?" %}</a></p>
|
||||
{% endblock %}
|
@ -4,9 +4,7 @@
|
||||
{% block title %}{% trans "Password reset complete" %}{% endblock %}
|
||||
{% block pagetitle %}{% trans "Password reset complete" %}{% endblock %}
|
||||
{% block content %}
|
||||
<p>
|
||||
<strong>{% trans "Password reset complete" %}</strong>
|
||||
<br />
|
||||
<p>Your new password has been set. You can log in now on the <a href="{% url 'login' %}">log in page</a>.</p>
|
||||
</p>
|
||||
<p><strong>{% trans "Password reset complete" %}</strong></p>
|
||||
{% url 'login' as login_url %}
|
||||
<p>{% blocktrans %}Your new password has been set. You can log in now on the <a href="{{ login_url }}">log in page</a>.{% endblocktrans %}</p>
|
||||
{% endblock %}
|
||||
|
@ -4,22 +4,23 @@
|
||||
{% block title %}{% trans "Set a new password!" %}{% endblock %}
|
||||
{% block pagetitle %}{% trans "Set a new password!" %}{% endblock %}
|
||||
{% block content %}
|
||||
<p>
|
||||
<strong>{% trans "Set a new password!" %}</strong>
|
||||
<p><strong>{% trans "Set a new password!" %}</strong><br />
|
||||
{% if validlink %}
|
||||
{% blocktrans %}Here you can set a new password.{% endblocktrans %}
|
||||
</p>
|
||||
<form method="POST">
|
||||
<table>
|
||||
{% csrf_token %}
|
||||
{{ form.as_table }}
|
||||
<tr>
|
||||
<td>
|
||||
<input type="submit" value="Change my password">
|
||||
<td colspan="2">
|
||||
<input type="submit" value="{% trans "Change my password" %}">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
{% else %}
|
||||
<p>{% trans "The password reset link was invalid, possibly because it has already been used. Please request a new password reset." %}</p>
|
||||
{% trans "The password reset link was invalid, possibly because it has already been used. Please request a new password reset." %}</p>
|
||||
{% endif %}
|
||||
</p>
|
||||
|
||||
{% endblock %}
|
||||
|
@ -8,6 +8,6 @@
|
||||
<strong>{% trans "Reset password, email sent" %}</strong>
|
||||
<br />
|
||||
<br />
|
||||
We've emailed you instructions for setting your password. You should receive the email shortly!
|
||||
{% blocktrans %}We've emailed you instructions for setting your password. You should receive the email shortly!{% endblocktrans %}
|
||||
</p>
|
||||
{% endblock %}
|
File diff suppressed because one or more lines are too long
@ -6,19 +6,16 @@
|
||||
{% block content %}
|
||||
<p>
|
||||
<strong>{% trans "Reset password" %}</strong>
|
||||
<br />
|
||||
{% blocktrans %}Here you can request a password reset. Please enter your email address that is used for registration.{% endblocktrans %}
|
||||
</p>
|
||||
|
||||
|
||||
<form method="post" action="{% url 'password_reset' %}">
|
||||
{% csrf_token %}
|
||||
<table>
|
||||
{{ form.as_table }}
|
||||
<tr>
|
||||
<td>{{ form.email.label_tag }}</td>
|
||||
<td>{{ form.email }}</td>
|
||||
<td colspan="2"><input type="submit" value="{% trans "Reset my password"%} "></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<input type="submit" value="Reset my password">
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
@ -4,9 +4,7 @@
|
||||
{% block title %}{% trans "Singup" %}{% endblock %}
|
||||
{% block pagetitle %}{% trans "Singup" %}{% endblock %}
|
||||
{% block content %}
|
||||
<p>
|
||||
<strong>{% trans "Singup" %}</strong>
|
||||
</p>
|
||||
<p><strong>{% trans "Singup" %}</strong></p>
|
||||
|
||||
<form method="post" action="{% url 'signup' %}">
|
||||
{% csrf_token %}
|
||||
|
@ -0,0 +1,24 @@
|
||||
from django.core.management.base import BaseCommand, CommandError
|
||||
from apps.schedule.models import Schedule
|
||||
#from polls.models import Question as Poll
|
||||
|
||||
class Command(BaseCommand):
|
||||
help = 'Send out all the new reports'
|
||||
|
||||
# def add_arguments(self, parser):
|
||||
# parser.add_argument('poll_ids', nargs='+', type=int)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
Schedule.objects.filter(peregrine_result__isnull=False).filter(report_sent__isnull=True)
|
||||
|
||||
|
||||
# for poll_id in options['poll_ids']:
|
||||
# try:
|
||||
# poll = Poll.objects.get(pk=poll_id)
|
||||
# except Poll.DoesNotExist:
|
||||
# raise CommandError('Poll "%s" does not exist' % poll_id)
|
||||
|
||||
# poll.opened = False
|
||||
# poll.save()
|
||||
|
||||
# self.stdout.write(self.style.SUCCESS('Successfully closed poll "%s"' % poll_id))
|
@ -0,0 +1,25 @@
|
||||
# Generated by Django 3.0.6 on 2020-05-14 13:18
|
||||
|
||||
import collections
|
||||
from django.db import migrations, models
|
||||
import jsonfield.fields
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('schedule', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='schedule',
|
||||
name='peregrine_result',
|
||||
field=jsonfield.fields.JSONField(blank=True, help_text='The results from the Peregrine job in JSON', load_kwargs={'object_pairs_hook': collections.OrderedDict}, verbose_name='Peregrine JSON output'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='schedule',
|
||||
name='report_sent',
|
||||
field=models.DateTimeField(blank=True, help_text='The date and time when the report has sended to the user.', null=True, verbose_name='Report is send to user'),
|
||||
),
|
||||
]
|
@ -15,12 +15,17 @@ class Schedule(MetaDataModel):
|
||||
email = models.CharField(_('Email address'), max_length=100, help_text=_('Email address where the results will be sent to.'))
|
||||
|
||||
planning_source = JSONField(_('Schedule input'), blank=True, load_kwargs={'object_pairs_hook': collections.OrderedDict}, help_text=_('The schedule input in JSON format based on the form data'))
|
||||
|
||||
planning_peregrine = models.TextField(_('Peregrine input'), blank=True, help_text=_('This is the translated content from the source for use with Peregrine cluster'))
|
||||
|
||||
peregrine_accepted = models.BooleanField(_('Peregrine accepted'),default=False, help_text=_('When true, the Peregrine cluster has picked up the job.'))
|
||||
|
||||
peregrine_result = JSONField(_('Peregrine JSON output'), blank=True, load_kwargs={'object_pairs_hook': collections.OrderedDict}, help_text=_('The results from the Peregrine job in JSON'))
|
||||
|
||||
output_peregrine = models.BinaryField(_('Peregrine binary output'), blank=True, help_text=_('This is the output in binary format from the Peregrine cluster'))
|
||||
|
||||
report_sent = models.DateTimeField(_('Report is send to user'), blank=True, null=True, help_text=_('The date and time when the report has sended to the user.'))
|
||||
|
||||
def __str__(self):
|
||||
"""str: Returns a readable name for the schedule. Format is [schedule_name] (employee_name)."""
|
||||
return '{} ({})'.format(self.name, self.employee)
|
@ -4,66 +4,134 @@
|
||||
{% block title %}{% trans "New schedule" %}{% endblock %}
|
||||
{% block pagetitle %}{% trans "New schedule" %}{% endblock %}
|
||||
{% block content %}
|
||||
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
|
||||
<div class="container">
|
||||
<form method="POST" action="{% url 'schedule:new' %}">
|
||||
{% csrf_token %}
|
||||
{{ form.json }}
|
||||
<h1>Algemene informatie</h1>
|
||||
<p>Als een afdeling meerdere wachtkamers heeft, vul dan dit formulier meerdere keren in; een keer voor elke groep van behandelkamers die een wachtkamer delen.</p>
|
||||
<div class="form-group">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>
|
||||
<label for="id_name">Naam van de afdeling</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="text" class="form-control" id="id_name" name="name" aria-describedby="afdelingnaamHelp" required>
|
||||
<small id="afdelingnaamHelp" class="form-text text-muted">Geef de naam op van de afdeling</small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>
|
||||
<label for="id_email">Emailadres voor de resultaten</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="email" class="form-control" id="id_email" name="email" aria-describedby="emailadresHelp" required value={{user.email}}>
|
||||
<small id="emailadresHelp" class="form-text text-muted">Geef het emailadres op om de uitkomsten te ontvangen</small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>
|
||||
<label for="patienten">Aantal patiënten dat kan wachten in wachtkamer</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="number" class="form-control" id="patienten" name="patienten" min="1" max="100" aria-describedby="patientenHelp" required>
|
||||
<small id="patientenHelp" class="form-text text-muted">Met bewaren 1,5m afstand tussen lopende en zittende patiënten!</small>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br />
|
||||
<hr>
|
||||
<br />
|
||||
|
||||
<h1>Specialisaties binnen de afdeling</h1>
|
||||
<div class="poliekliniek_specialisatie">
|
||||
<div class="form-group">
|
||||
<label for="specialisatie_1" class="h4">Specialisatie 1</label>
|
||||
<input type="text" class="form-control" style="font-size: 1.5em" id="specialisatie_1" name="specialisatie_1" aria-describedby="specialisatie_1Help" required>
|
||||
<small id="specialisatie_1Help" class="form-text text-muted float-right d-none"><a href="#">Verwijder</a></small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="specialisatie_afkorting_1">Specialisatie afkorting</label>
|
||||
<input type="text" class="form-control" maxlength="5" id="specialisatie_afkorting_1" name="specialisatie_afkorting_1" aria-describedby="specialisatie_afkorting_1Help" required>
|
||||
<small id="specialisatie_1Help" class="form-text text-muted">Geef een afkorting op voor deze specialisatie. Deze gebruiken wij in de figuren van de rapportage.</small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="specialisatie_aantal_artsen_1">Aantal artsen</label>
|
||||
<input type="number" class="form-control" min="0" max="100" id="specialisatie_aantal_artsen_1" name="specialisatie_aantal_artsen_1" aria-describedby="specialisatie_aantal_artsen_1Help" required>
|
||||
<small id="specialisatie_aantal_artsen_1Help" class="form-text text-muted">Maximaal aantal artsen dat op enig moment tegelijk aan het werk zou kunnen zijn.</small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="specialisatie_aantal_kamers_1">Aantal behandelkamers</label>
|
||||
<input type="number" class="form-control" min="0" max="100" id="specialisatie_aantal_kamers_1" name="specialisatie_aantal_kamers_1" aria-describedby="specialisatie_aantal_kamers_1Help" required>
|
||||
<small id="specialisatie_aantal_kamers_1Help" class="form-text text-muted">Aantal behandelkamers dat beschikbaar is per specialisatie</small>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="specialisatie_aantal_behandelingen_1">Aantal verschillende soorten behandelingen</label>
|
||||
<input type="number" class="form-control" min="0" max="100" id="specialisatie_aantal_behandelingen_1" name="specialisatie_aantal_behandelingen_1" aria-describedby="specialisatie_aantal_behandelingen_1Help" required>
|
||||
<small id="specialisatie_aantal_behandelingen_1Help" class="form-text text-muted"></small>
|
||||
</div>
|
||||
<div class="form-group werktijden">
|
||||
<label>Werktijden <small class="text-danger" style="display:none"> Nog niet volledig</small></label>
|
||||
<table>
|
||||
<tbody>
|
||||
|
||||
<div class="container ml-4">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">de hele werkdag</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="werkdag_start_afdeling_1" name="werkdag_start_afdeling_1" required>
|
||||
<tr>
|
||||
<th>
|
||||
<label for="specialisatie_0" class="h4">Specialisatie 1</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="text" class="form-control" style="font-size: 1.5em" id="specialisatie_0" name="specialisatie_0" aria-describedby="specialisatie_0Help" required>
|
||||
<small id="specialisatie_0Help" class="form-text text-muted" style="float:right;display:none"><a href="#">Verwijder</a></small>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>
|
||||
<label for="specialisatie_afkorting_0">Specialisatie afkorting</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="text" class="form-control" maxlength="5" id="specialisatie_afkorting_0" name="specialisatie_afkorting_0" aria-describedby="specialisatie_afkorting_0Help" required>
|
||||
<small id="specialisatie_0Help" class="form-text text-muted">Geef een afkorting op voor deze specialisatie. Deze gebruiken wij in de figuren van de rapportage.</small>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>
|
||||
<label for="specialisatie_aantal_artsen_0">Aantal artsen</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="number" class="form-control" min="0" max="100" id="specialisatie_aantal_artsen_0" name="specialisatie_aantal_artsen_0" aria-describedby="specialisatie_aantal_artsen_0Help" required>
|
||||
<small id="specialisatie_aantal_artsen_0Help" class="form-text text-muted">Maximaal aantal artsen dat op enig moment tegelijk aan het werk zou kunnen zijn.</small>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>
|
||||
<label for="specialisatie_aantal_kamers_0">Aantal behandelkamers</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="number" class="form-control" min="0" max="100" id="specialisatie_aantal_kamers_0" name="specialisatie_aantal_kamers_0" aria-describedby="specialisatie_aantal_kamers_0Help" required>
|
||||
<small id="specialisatie_aantal_kamers_0Help" class="form-text text-muted">Aantal behandelkamers dat beschikbaar is per specialisatie</small>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>
|
||||
<label for="specialisatie_aantal_behandelingen_0">Aantal verschillende soorten behandelingen</label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="number" class="form-control" min="0" max="100" id="specialisatie_aantal_behandelingen_0" name="specialisatie_aantal_behandelingen_0" aria-describedby="specialisatie_aantal_behandelingen_0Help" required>
|
||||
<small id="specialisatie_aantal_behandelingen_0Help" class="form-text text-muted"></small>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>
|
||||
<label>Werktijden <small class="text-danger" style="display:none"> Nog niet volledig</small></label>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="form-group werktijden">
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>de hele werkdag</th>
|
||||
<td>
|
||||
<select class="form-control" id="werkdag_start_afdeling_0" name="werkdag_start_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="0600">06:00</option>
|
||||
<option value="0615">06:15</option>
|
||||
@ -83,9 +151,9 @@
|
||||
<option value="0945">09:45</option>
|
||||
<option value="1000">10:00</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="werkdag_end_afdeling_1" name="werkdag_end_afdeling_1" required>
|
||||
</td>
|
||||
<td>
|
||||
<select class="form-control" id="werkdag_end_afdeling_0" name="werkdag_end_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="1200">12:00</option>
|
||||
<option value="1215">12:15</option>
|
||||
@ -121,12 +189,13 @@
|
||||
<option value="1945">19:45</option>
|
||||
<option value="2000">20:00</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">ochtendpauze</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="ochtend_pauze_start_afdeling_1" name="ochtend_pauze_start_afdeling_1" required>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>ochtendpauze</th>
|
||||
<td>
|
||||
<select class="form-control" id="ochtend_pauze_start_afdeling_0" name="ochtend_pauze_start_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="0">Geen pauze</option>
|
||||
<option value="0900">09:00</option>
|
||||
@ -139,9 +208,9 @@
|
||||
<option value="1045">10:45</option>
|
||||
<option value="1100">11:00</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="ochtend_pauze_end_afdeling_1" name="ochtend_pauze_end_afdeling_1" required>
|
||||
</td>
|
||||
<td>
|
||||
<select class="form-control" id="ochtend_pauze_end_afdeling_0" name="ochtend_pauze_end_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="0">Geen pauze</option>
|
||||
<option value="0915">09:15</option>
|
||||
@ -155,12 +224,13 @@
|
||||
<option value="1115">11:15</option>
|
||||
<option value="1130">11:30</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">lunchpauze</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="lunch_pauze_start_afdeling_1" name="lunch_pauze_start_afdeling_1" required>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>lunchpauze</th>
|
||||
<td>
|
||||
<select class="form-control" id="lunch_pauze_start_afdeling_0" name="lunch_pauze_start_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="0">Geen pauze</option>
|
||||
<option value="1130">11:30</option>
|
||||
@ -175,9 +245,9 @@
|
||||
<option value="1345">13:45</option>
|
||||
<option value="1400">14:00</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="lunch_pauze_end_afdeling_1" name="lunch_pauze_end_afdeling_1" required>
|
||||
</td>
|
||||
<td>
|
||||
<select class="form-control" id="lunch_pauze_end_afdeling_0" name="lunch_pauze_end_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="0">Geen pauze</option>
|
||||
<option value="1200">12:00</option>
|
||||
@ -192,12 +262,13 @@
|
||||
<option value="1415">14:15</option>
|
||||
<option value="1430">14:30</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">middagpauze</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="middag_pauze_start_afdeling_1" name="middag_pauze_start_afdeling_1" required>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th>middagpauze</th>
|
||||
<td>
|
||||
<select class="form-control" id="middag_pauze_start_afdeling_0" name="middag_pauze_start_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="0">Geen pauze</option>
|
||||
<option value="1430">14:30</option>
|
||||
@ -208,9 +279,9 @@
|
||||
<option value="1545">15:45</option>
|
||||
<option value="1600">16:00</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<select class="form-control" id="middag_pauze_end_afdeling_1" name="middag_pauze_end_afdeling_1" required>
|
||||
</td>
|
||||
<td>
|
||||
<select class="form-control" id="middag_pauze_end_afdeling_0" name="middag_pauze_end_afdeling_0" required>
|
||||
<option value="">Maak een keuze</option>
|
||||
<option value="0">Geen pauze</option>
|
||||
<option value="1445">14:45</option>
|
||||
@ -222,13 +293,23 @@
|
||||
<option value="1615">16:15</option>
|
||||
<option value="1630">16:30</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="text-center mt-4 font-weight-bold"><a href="#" class="add_specialisatie">klik hier om een extra specialisatie toe te voegen</a></div>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div style="text-align: center; width: 100%; margin-top: 15px"><a href="#" class="add_specialisatie">klik hier om een extra specialisatie toe te voegen</a></div>
|
||||
|
||||
<br />
|
||||
<hr>
|
||||
<br />
|
||||
@ -237,25 +318,23 @@
|
||||
<p>In het model worden slots van 5 minuten gebruikt voor het bepalen van starttijden. etc. Afspraken starten daarmee om bijv. 10.00, 10.05, 10.10.<br />Afspraakduur wordt daarmee ook in veelvouden van 5 minuten gevraagd.</p>
|
||||
<p>Zowel afspraken waar de patiënt fysiek in het ziekenhuis is, als wel telefoongesprekken worden hier gevraagd. Beide type afspraken kunnen in het raster worden gepland.</p>
|
||||
<p>"Normaal" betekent: zoals het was voor COVID-19<br />30% betekent: als je maar 30% van de patiënten kunt binnenkrijgen, hoeveel afspraken van elk type zou je dan willen inplannen?</p>
|
||||
<div class="container">
|
||||
<div class="row mb-2">
|
||||
<div class="col"><strong>Naam behandeling</strong></div>
|
||||
<div class="col"><strong>Duur (in minuten)</strong></div>
|
||||
<div class="col"><strong>Specialisatie</strong></div>
|
||||
<div class="col"><strong>Methode</strong></div>
|
||||
<div class="col"><strong>Normaal aantal</strong></div>
|
||||
<div class="col"><strong>Gewenst als op 30%</strong></div>
|
||||
</div>
|
||||
|
||||
<div class="row behandeling">
|
||||
<div class="col">
|
||||
<div class="form-group">
|
||||
<input type="text" class="form-control" id="behandeling_1" name="behandeling_1" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="form-group">
|
||||
<select class="form-control" id="behandeling_durartion_1" name="behandeling_durartion_1" required>
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>Naam behandeling</th>
|
||||
<th>Duur (in minuten)</th>
|
||||
<th>Specialisatie</th>
|
||||
<th>Methode</th>
|
||||
<th>Normaal aantal</th>
|
||||
<th>Gewenst als op 30%</th>
|
||||
</tr>
|
||||
|
||||
<tr class="behandeling">
|
||||
<td><input type="text" class="form-control" id="behandeling_0" name="behandeling_0" required></td>
|
||||
<td>
|
||||
<select class="form-control" id="behandeling_duration_0" name="behandeling_duration_0" required>
|
||||
<option value="5">5</option>
|
||||
<option value="10">10</option>
|
||||
<option value="15">15</option>
|
||||
@ -275,65 +354,58 @@
|
||||
<option value="85">85</option>
|
||||
<option value="90">90</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="form-group">
|
||||
<select class="form-control specialismes" id="behandeling_specialisme_1" name="behandeling_specialisme_1" required></select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="form-group">
|
||||
<select class="form-control" id="behandeling_method_1" name="behandeling_method_1" required>
|
||||
</td>
|
||||
<td>
|
||||
<select class="form-control specialismes" id="behandeling_specialisme_0" name="behandeling_specialisme_0" required></select>
|
||||
</td>
|
||||
<td>
|
||||
<select class="form-control" id="behandeling_method_0" name="behandeling_method_0" required>
|
||||
<option value="live">in persoon</option>
|
||||
<option value="phone">telefonisch</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="form-group">
|
||||
<input type="number" class="form-control behandeling_calc" id="behandeling_100p_1" name="behandeling_100p_1" min="0" max="100" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="form-group">
|
||||
<input type="number" class="form-control behandeling_calc" id="behandeling_30p_1" name="behandeling_30p_1" min="0" max="100" required>
|
||||
<small class="form-text text-muted float-right d-none"><a href="#">Verwijder</a></small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
|
||||
<div class="text-center mt-4 font-weight-bold"><a href="#" class="add_behandeling">klik hier om een nieuwe behandeling toe te voegen</a></div>
|
||||
<td>
|
||||
<input type="number" class="form-control behandeling_calc" id="behandeling_100p_0" name="behandeling_100p_0" min="0" max="100" required>
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<input type="number" class="form-control behandeling_calc" id="behandeling_30p_0" name="behandeling_30p_0" min="0" max="100" required>
|
||||
<small style="float:right; display:none"><a href="#">Verwijder</a></small>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div style="text-align: center; width: 100%; margin-top: 15px"><a href="#" class="add_behandeling">klik hier om een nieuwe behandeling toe te voegen</a></div>
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr class="behandeling_calc_summary">
|
||||
<th>Totaal aantal afspraken</th>
|
||||
<td style="text-align: center">0</td>
|
||||
<td style="text-align: center">0</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="3" class="behandeling_calc_remarks">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="row behandeling_calc_summary">
|
||||
<div class="col-8"><strong>Totaal aantal afspraken</strong></div>
|
||||
<div class="col-2 text-center">0</div>
|
||||
<div class="col-2 text-center">0</div>
|
||||
</div>
|
||||
<div class="row behandeling_calc_remarks">
|
||||
<div class="col-12"></div>
|
||||
</div>
|
||||
<br />
|
||||
<hr>
|
||||
<br />
|
||||
<button type="submit" class="btn btn-primary">Submit</button>
|
||||
</form>
|
||||
</div>
|
||||
<!-- Optional JavaScript -->
|
||||
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
|
||||
<!--
|
||||
<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.1-muted 6.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
|
||||
-->
|
||||
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
function addSpecialisatie() {
|
||||
var clone = jQuery('div.poliekliniek_specialisatie:first').clone()
|
||||
clone.find('input').val('');
|
||||
clone.find('small').removeClass('d-none');
|
||||
clone.find('option:disabled').removeAttr('disabled');
|
||||
clone.find('small').show();
|
||||
clone.insertAfter('div.poliekliniek_specialisatie:last');
|
||||
updateSpecialisaties();
|
||||
loadRemoveSpecialisatie();
|
||||
@ -352,8 +424,8 @@
|
||||
jQuery('div.poliekliniek_specialisatie').each(function(counter,element){
|
||||
if (counter > 0) {
|
||||
element = jQuery(element);
|
||||
var nr = counter + 1;
|
||||
element.find('label').first().text('Specialisatie ' + nr);
|
||||
var nr = counter; // We are starting with 0 so the amount is the new number
|
||||
element.find('label').first().text('Specialisatie ' + (nr + 1));
|
||||
element.find('select,input').each(function(index,selectitem){
|
||||
selectitem = jQuery(selectitem);
|
||||
selectitem.prop('name',selectitem.prop('name').replace(/_\d+$/,'_' + nr));
|
||||
@ -370,6 +442,10 @@
|
||||
jQuery('div.poliekliniek_specialisatie input').off('change').on('change',function(){
|
||||
updateSpecialisatieValues();
|
||||
});
|
||||
|
||||
jQuery('div.werktijden select').off('change').on('change',function(event){
|
||||
check_working_hours(this);
|
||||
});
|
||||
}
|
||||
|
||||
function updateSpecialisatieValues() {
|
||||
@ -393,50 +469,14 @@
|
||||
});
|
||||
}
|
||||
|
||||
function addBehandelkamer() {
|
||||
var clone = jQuery('div.row.behandelkamer:first').clone()
|
||||
clone.find('input').val('');
|
||||
clone.find('selected').val('');
|
||||
clone.find('small').removeClass('d-none');
|
||||
|
||||
clone.insertAfter('div.row.behandelkamer:last');
|
||||
|
||||
updateBehandelkamers();
|
||||
loadRemoveBehandelkamer();
|
||||
}
|
||||
|
||||
function loadRemoveBehandelkamer() {
|
||||
jQuery('div.behandelkamer small a').off('click').on('click',function(event){
|
||||
event.preventDefault();
|
||||
jQuery(this).parentsUntil('.behandelkamer').parent().remove();
|
||||
|
||||
updateBehandelkamers();
|
||||
});
|
||||
}
|
||||
|
||||
function updateBehandelkamers() {
|
||||
jQuery('div.behandelkamer').each(function(counter,element){
|
||||
if (counter > 0) {
|
||||
element = jQuery(element);
|
||||
var nr = counter + 1;
|
||||
element.find('input').prop('id','behandelkamer_' + nr);
|
||||
element.find('input').prop('name','behandelkamer_' + nr);
|
||||
|
||||
element.find('select').prop('id','behandelkamer_specialisme_' + nr);
|
||||
element.find('select').prop('name','behandelkamer_specialisme_' + nr);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function addBehandeling() {
|
||||
var clone = jQuery('div.row.behandeling:first').clone()
|
||||
var clone = jQuery('tr.behandeling:first').clone()
|
||||
|
||||
clone.find('input').val('');
|
||||
clone.find('selected').val('');
|
||||
clone.find('small').removeClass('d-none');
|
||||
clone.find('small').show();
|
||||
|
||||
clone.insertAfter('div.row.behandeling:last');
|
||||
clone.insertAfter('tr.behandeling:last');
|
||||
|
||||
jQuery('input.behandeling_calc').off('change keyup').on('change keyup',function(){
|
||||
calculateBehandelingen();
|
||||
@ -447,7 +487,7 @@
|
||||
}
|
||||
|
||||
function loadRemoveBehandeling() {
|
||||
jQuery('div.behandeling small a').off('click').on('click',function(event){
|
||||
jQuery('tr.behandeling small a').off('click').on('click',function(event){
|
||||
event.preventDefault();
|
||||
jQuery(this).parentsUntil('.behandeling').parent().remove();
|
||||
|
||||
@ -456,10 +496,10 @@
|
||||
}
|
||||
|
||||
function updateBehandelingen() {
|
||||
jQuery('div.behandeling').each(function(counter,element){
|
||||
jQuery('tr.behandeling').each(function(counter,element){
|
||||
if (counter > 0) {
|
||||
element = jQuery(element);
|
||||
var nr = counter + 1;
|
||||
var nr = counter;
|
||||
|
||||
element.find('select,input').each(function(index,selectitem){
|
||||
selectitem = jQuery(selectitem);
|
||||
@ -474,14 +514,14 @@
|
||||
let total = 0, percentage = 0;
|
||||
let ok = true;
|
||||
|
||||
jQuery('div.row.behandeling').each(function(counter,row){
|
||||
jQuery('tr.behandeling').each(function(counter,row){
|
||||
row = jQuery(row);
|
||||
total += (row.find('input[name*="_100p_"]').val() != '' ? row.find('input[name*="_100p_"]').val() * 1 : 0);
|
||||
percentage += (row.find('input[name*="_30p_"]').val() != '' ? row.find('input[name*="_30p_"]').val() * 1 : 0);
|
||||
});
|
||||
|
||||
jQuery('div.row.behandeling_calc_summary div:nth-child(2)').text(total);
|
||||
jQuery('div.row.behandeling_calc_summary div:nth-child(3)').text(percentage);
|
||||
jQuery('tr.behandeling_calc_summary td:nth-child(2)').text(total);
|
||||
jQuery('tr.behandeling_calc_summary td:nth-child(3)').text(percentage);
|
||||
|
||||
let calc_message = '';
|
||||
let class_message = '';
|
||||
@ -497,13 +537,13 @@
|
||||
calc_message = 'Dit klopt precies';
|
||||
class_message = 'alert-success';
|
||||
}
|
||||
jQuery('div.behandeling_calc_remarks div').removeClass('alert-danger alert-warning alert-success').addClass(class_message).text(calc_message);
|
||||
jQuery('td.behandeling_calc_remarks').removeClass('alert-danger alert-warning alert-success').addClass(class_message).text(calc_message);
|
||||
|
||||
return ok;
|
||||
}
|
||||
|
||||
function validate_working_hours() {
|
||||
jQuery('div.form-group.werktijden').each(function(index,element){
|
||||
jQuery('div.werktijden').each(function(index,element){
|
||||
jQuery(element).find('select').removeClass('is-invalid');
|
||||
check_working_hours(element,true);
|
||||
jQuery(element).find('select').filter(function(){ let value = jQuery(this).val(); return !(value != null && value != '') }).addClass('is-invalid');
|
||||
@ -531,7 +571,11 @@
|
||||
if ('' !== element.value && element.value > 0) {
|
||||
// Only allow options that are between the day start and day end.
|
||||
let time = day_start.val();
|
||||
element.disabled = (time && element.value < day_start.val()) || (day_end.val() && element.value >= day_end.val());
|
||||
let disable = (time && element.value < day_start.val()) || (day_end.val() && element.value >= day_end.val());
|
||||
if (element.selected && disable) {
|
||||
morning_break_start.val('');
|
||||
}
|
||||
element.disabled = disable;
|
||||
}
|
||||
});
|
||||
|
||||
@ -540,7 +584,11 @@
|
||||
// Only allow options that are between the day start and day end.
|
||||
// Or when morning_break_start is selected and valid, add period time for end time selections
|
||||
let time = ('' != morning_break_start.val() ? morning_break_start.val() : day_start.val());
|
||||
element.disabled = (time && element.value <= time) || (day_end.val() && element.value > day_end.val());
|
||||
let disable = (time && element.value <= time) || (day_end.val() && element.value > day_end.val());
|
||||
if (element.selected && disable) {
|
||||
morning_break_end.val('');
|
||||
}
|
||||
element.disabled = disable;
|
||||
}
|
||||
});
|
||||
|
||||
@ -549,7 +597,11 @@
|
||||
// Only allow options that are between the day start and day end.
|
||||
// Or when morning_break_end is selected and valid, add period time for end time selections
|
||||
let time = ('' != morning_break_end.val() ? morning_break_end.val() : day_start.val());
|
||||
element.disabled = (time && element.value < time) || (day_end.val() && element.value >= day_end.val());
|
||||
let disable = (time && element.value < time) || (day_end.val() && element.value >= day_end.val());
|
||||
if (element.selected && disable) {
|
||||
lunch_start.val('');
|
||||
}
|
||||
element.disabled = disable;
|
||||
}
|
||||
});
|
||||
|
||||
@ -558,7 +610,11 @@
|
||||
// Only allow options that are between the day start and day end.
|
||||
// Or when lunch_start is selected and valid, add period time for end time selections
|
||||
let time = ('' != lunch_start.val() ? lunch_start.val() : day_start.val()) * 1;
|
||||
element.disabled = (time && element.value <= time) || (day_end.val() && element.value > day_end.val());
|
||||
let disable = (time && element.value <= time) || (day_end.val() && element.value > day_end.val());
|
||||
if (element.selected && disable) {
|
||||
lunch_end.val('');
|
||||
}
|
||||
element.disabled = disable;
|
||||
}
|
||||
});
|
||||
|
||||
@ -568,7 +624,11 @@
|
||||
// Only allow options that are between the day start and day end.
|
||||
// Or when lunch_end is selected and valid, add period time for end time selections
|
||||
let time = ('' != lunch_end.val() ? lunch_end.val() : day_start.val());
|
||||
element.disabled = (time && element.value < time) || (day_end.val() && element.value >= day_end.val());
|
||||
let disable = (time && element.value < time) || (day_end.val() && element.value >= day_end.val())
|
||||
if (element.selected && disable) {
|
||||
afternoon_break_start.val('');
|
||||
}
|
||||
element.disabled = disable;
|
||||
}
|
||||
});
|
||||
|
||||
@ -577,7 +637,11 @@
|
||||
// Only allow options that are between the day start and day end.
|
||||
// Or when morning_break_start is selected and valid, add period time for end time selections
|
||||
let time = ('' != afternoon_break_start.val() ? afternoon_break_start.val() : day_start.val());
|
||||
element.disabled = (time && element.value <= time) || (day_end.val() && element.value > day_end.val());
|
||||
let disable = (time && element.value <= time) || (day_end.val() && element.value > day_end.val());
|
||||
if (element.selected && disable) {
|
||||
afternoon_break_end.val('');
|
||||
}
|
||||
element.disabled = disable;
|
||||
}
|
||||
});
|
||||
|
||||
@ -594,7 +658,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
jQuery(function() {
|
||||
jQuery('a.add_specialisatie').on('click',function(event){
|
||||
event.preventDefault();
|
||||
@ -615,7 +678,7 @@
|
||||
addBehandeling();
|
||||
});
|
||||
|
||||
jQuery('div.form-group.werktijden select').off('change').on('change',function(event){
|
||||
jQuery('div.werktijden select').off('change').on('change',function(event){
|
||||
check_working_hours(this);
|
||||
});
|
||||
|
||||
@ -624,8 +687,6 @@
|
||||
});
|
||||
|
||||
jQuery('form').on('submit',function(event){
|
||||
//event.preventDefault();
|
||||
|
||||
if (validate_working_hours() &&
|
||||
calculateBehandelingen()) {
|
||||
|
||||
@ -634,17 +695,13 @@
|
||||
formdata.delete('json');
|
||||
|
||||
jQuery('input#id_json').val(JSON.stringify(Object.fromEntries(formdata)));
|
||||
|
||||
// alert('Alle velden zijn ok! Formulier wordt nu verder verwerkt.');
|
||||
console.log(event);
|
||||
return true;
|
||||
} else {
|
||||
alert('Er zijn wat problemen met het formulier. Controleer de invoer velden');
|
||||
|
||||
}
|
||||
return true;
|
||||
return false;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
{% endblock %}
|
||||
|
@ -160,3 +160,5 @@ EMAIL_USE_TLS = config('EMAIL_USE_TLS', default=False, cast=bool)
|
||||
if DEBUG:
|
||||
EMAIL_BACKEND = 'django.core.mail.backends.filebased.EmailBackend'
|
||||
EMAIL_FILE_PATH = os.path.join(BASE_DIR, 'sent_emails')
|
||||
|
||||
REPORTS_OUTPUT = os.path.join(BASE_DIR, 'reports')
|
||||
|
@ -2,22 +2,17 @@
|
||||
|
||||
<li class="rug-nav--secondary__item">
|
||||
<a class="rug-nav--secondary__link js--togglable-switch" data-toggle-class="rug-nav--secondary__link--selected" data-toggle-group="submenu" data-toggle-id="menu-2427370b-9435-44d9-bca7-b93ec9d03cc0-33.31" data-toggle-mode="togglable">{% trans "Menu" %}</a>
|
||||
|
||||
<ul class="rug-nav--secondary__sub rug-nav--secondary__sub--hidden js--togglable-item" data-toggle-class="rug-block" data-toggle-group="submenu" data-toggle-id="menu-2427370b-9435-44d9-bca7-b93ec9d03cc0-33.31">
|
||||
|
||||
<li class="rug-nav--secondary__sub__item" data-menu-id="b512aa55-f0cb-4588-9054-302caa5fa951-33.34">
|
||||
<a class="rug-nav--secondary__sub__link" href="{% url 'schedule:list' %}"><span class="rug-nav--secondary__sub__link-text">{% trans "Schedules" %}</span></a>
|
||||
</li>
|
||||
|
||||
<li class="rug-nav--secondary__sub__item" data-menu-id="b512aa55-f0cb-4588-9054-302caa5fa951-33.35">
|
||||
<a class="rug-nav--secondary__sub__link" href="{% url 'schedule:new' %}"><span class="rug-nav--secondary__sub__link-text">{% trans "New schedule" %}</span></a>
|
||||
</li>
|
||||
|
||||
|
||||
{% if user.is_authenticated %}
|
||||
<li class="rug-nav--secondary__sub__item" data-menu-id="b512aa55-f0cb-4588-9054-302caa5fa951-33.36">
|
||||
<a class="rug-nav--secondary__sub__link" href="{% url 'logout' %}"><span class="rug-nav--secondary__sub__link-text">{% trans "Logout" %}</span></a>
|
||||
</li>
|
||||
|
||||
|
||||
{% endif %}
|
||||
</ul>
|
||||
</li>
|
||||
|
@ -1,13 +1,12 @@
|
||||
{% extends 'base.html' %} <!-- Add this for inheritance -->
|
||||
{% load i18n %}
|
||||
|
||||
{% block title %}{% trans "Singup" %}{% endblock %}
|
||||
{% block pagetitle %}{% trans "Singup" %}{% endblock %}
|
||||
{% block title %}{% trans "Signup" %}{% endblock %}
|
||||
{% block pagetitle %}{% trans "Signup" %}{% endblock %}
|
||||
{% block content %}
|
||||
<p>
|
||||
<strong>{% trans "Singup" %}</strong>
|
||||
<strong>{% trans "Signup" %}</strong>
|
||||
<br />
|
||||
Please contact x@y.z
|
||||
{% blocktrans %}Please contact x@y.z{% endblocktrans %}
|
||||
</p>
|
||||
|
||||
{% endblock %}
|
Loading…
Reference in New Issue
Block a user