manager: misc improvements to ui/ux of multi-desk management (#18414)
This commit is contained in:
parent
f851de07df
commit
f28b936028
|
@ -40,11 +40,28 @@ h2 span.identifier {
|
|||
}
|
||||
|
||||
.timeperiods {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-right: -10px;
|
||||
}
|
||||
|
||||
.timeperiods .timeperiod {
|
||||
flex: 1 0 auto;
|
||||
width: 18%;
|
||||
margin-right: 10px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.timeperiod {
|
||||
float: left;
|
||||
display: block;
|
||||
margin: 10px;
|
||||
.timeperiods .timeperiod h4 {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.timeperiods .timeperiod ul.objects-list {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.timeperiods .timeperiod a.add::before {
|
||||
content: "\f055"; /* plus-circle */
|
||||
font-family: FontAwesome;
|
||||
padding-right: 1ex;
|
||||
}
|
||||
|
|
|
@ -109,27 +109,24 @@
|
|||
<div class="timeperiods">
|
||||
{% for desk in object.desk_set.all %}
|
||||
<div class="timeperiod">
|
||||
{% if object.desk_set.count > 1 %}
|
||||
<h4>
|
||||
<a href="{% if user_can_manage %}{% url 'chrono-manager-desk-edit' pk=desk.pk %}{% else %}#{% endif %}">
|
||||
{{ desk.label }}</a>
|
||||
</h4>
|
||||
{% endif %}
|
||||
{% url 'chrono-manager-agenda-add-time-period' agenda_pk=object.pk pk=desk.pk as add_time_period_url %}
|
||||
{% if desk.timeperiod_set.count %}
|
||||
<ul class="objects-list single-links">
|
||||
{% for time_period in desk.timeperiod_set.all %}
|
||||
<li><a href="{% if user_can_manage %}{% url 'chrono-manager-time-period-edit' pk=time_period.id %}{% else %}#{% endif %}">
|
||||
{{time_period.weekday_str}} / {{time_period.start_time}} → {{time_period.end_time}} </a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
<a rel="popup" href="{{add_time_period_url}}">{% trans 'Add' %}</a>
|
||||
</ul>
|
||||
{% else %}
|
||||
<div>
|
||||
{% trans "This desk doesn't have any time period yet." %} <a rel="popup" href="{{add_time_period_url}}">{% trans "New Time Period" %}</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<ul class="objects-list single-links">
|
||||
{% if forloop.counter != 1 or forloop.revcounter != 1 %}
|
||||
<li><a rel="popup" href="{% if user_can_manage %}{% url 'chrono-manager-desk-edit' pk=desk.id %}{% else %}#{% endif %}">
|
||||
<strong>{{ desk.label }}</strong>
|
||||
</a>
|
||||
{% if user_can_manage %}<a rel="popup" class="delete" href="{% url 'chrono-manager-desk-delete' pk=desk.id %}">{% trans "remove" %}</a>{% endif %}
|
||||
</li>
|
||||
{% endif %}
|
||||
{% for time_period in desk.timeperiod_set.all %}
|
||||
<li><a rel="popup" href="{% if user_can_manage %}{% url 'chrono-manager-time-period-edit' pk=time_period.id %}{% else %}#{% endif %}">
|
||||
{{time_period.weekday_str}} / {{time_period.start_time}} → {{time_period.end_time}} </a>
|
||||
{% if user_can_manage %}<a rel="popup" class="delete" href="{% url 'chrono-manager-time-period-delete' pk=time_period.id %}">{% trans "remove" %}</a>{% endif %}
|
||||
|
||||
</li>
|
||||
{% endfor %}
|
||||
<li><a class="add" rel="popup" href="{{add_time_period_url}}">{% trans 'Add a time period' %}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
|
|
@ -573,8 +573,7 @@ def test_meetings_agenda_add_time_period(app, admin_user):
|
|||
desk = Desk.objects.create(agenda=agenda, label='Desk A')
|
||||
app = login(app)
|
||||
resp = app.get('/manage/agendas/%s/' % agenda.id, status=200)
|
||||
assert "This desk doesn't have any time period yet." in resp.body
|
||||
resp = resp.click('New Time Period')
|
||||
resp = resp.click('Add a time period')
|
||||
resp.form['weekday'].select(text='Wednesday')
|
||||
resp.form['start_time'] = '10:00'
|
||||
resp.form['end_time'] = '17:00'
|
||||
|
@ -639,8 +638,7 @@ def test_meetings_agenda_add_time_period_as_manager(app, manager_user):
|
|||
app = login(app, username='manager', password='manager')
|
||||
resp = app.get('/manage/agendas/%d/' % agenda.id)
|
||||
assert 'New Meeting Type' in resp.content
|
||||
assert 'New Time Period' in resp.content
|
||||
assert 'This desk doesn\'t have any time period yet.' in resp.content
|
||||
assert 'Add a time period' in resp.content
|
||||
app.get('/manage/agendas/%d/desk/%d/add-time-period' % (agenda.id, desk.id), status=403)
|
||||
time_period = TimePeriod(desk=desk, weekday=0, start_time=datetime.time(9, 0),
|
||||
end_time=datetime.time(12, 0))
|
||||
|
|
Loading…
Reference in New Issue