Skip to content

Commit fd980e8

Browse files
authored
Partners can view request comment and sender (#5160)
* Partner dashboard: add 'comment and sender' to Requests in Progress * Comment is truncated to 20 chars; rest displayed via tooltip * Partner requests: add 'comment and sender' to Request History * Add specs * Refactor script for tooltip
1 parent 8ecabdd commit fd980e8

File tree

4 files changed

+52
-0
lines changed

4 files changed

+52
-0
lines changed

app/views/partners/dashboards/_requests_in_progress.html.erb

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
<th scope="col" class="p-4" style='width:150px'>Request Date</th>
88
<th scope="col" class="p-4">Number of Items Requested</th>
99
<th scope="col" class="p-4">Items Requested</th>
10+
<th scope="col" class="p-4">Comment and Sender</th>
1011
</tr>
1112
</thead>
1213
<tbody>
@@ -33,8 +34,24 @@
3334
</span>
3435
<% end %>
3536
</td>
37+
<td class="p-4">
38+
<% comment = request.comments %>
39+
<% if comment.present? %>
40+
<div class="mb-2" data-bs-toggle="tooltip" data-bs-title="<%= comment %>">
41+
<%= truncate(comment, length: 20) %>
42+
</div>
43+
<% end %>
44+
<a href="mailto:<%= request.requester.email %>"><%= request.requester.email %></a>
45+
</td>
3646
</tr>
3747
<% end %>
3848
</tbody>
3949
</table>
4050
</section>
51+
52+
<script type="module">
53+
$(document).ready(function() {
54+
const tooltipTriggerList = document.querySelectorAll('[data-bs-toggle="tooltip"]');
55+
[...tooltipTriggerList].forEach(tooltipTriggerEl => new bootstrap.Tooltip(tooltipTriggerEl));
56+
})
57+
</script>

app/views/partners/requests/_history.html.erb

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
<thead>
66
<tr class="border-bottom border-dark">
77
<th scope="col" class="p-4 w-40">Request Date</th>
8+
<th scope="col" class="p-4">Number of Items Requested</th>
89
<th scope="col" class="p-4">Items Requested</th>
10+
<th scope="col" class="p-4">Comment and Sender</th>
911
</tr>
1012
</thead>
1113
<tbody>
@@ -23,8 +25,24 @@
2325
</span>
2426
<% end %>
2527
</td>
28+
<td class="p-4">
29+
<% comment = partner_request.comments %>
30+
<% if comment.present? %>
31+
<div class="mb-2" data-bs-toggle="tooltip" data-bs-title="<%= comment %>">
32+
<%= truncate(comment, length: 20) %>
33+
</div>
34+
<% end %>
35+
<a href="mailto:<%= partner_request.requester.email %>"><%= partner_request.requester.email %></a>
36+
</td>
2637
</tr>
2738
<% end %>
2839
</tbody>
2940
</table>
3041
</section>
42+
43+
<script type="module">
44+
$(document).ready(function() {
45+
const tooltipTriggerList = document.querySelectorAll('[data-bs-toggle="tooltip"]');
46+
[...tooltipTriggerList].forEach(tooltipTriggerEl => new bootstrap.Tooltip(tooltipTriggerEl));
47+
})
48+
</script>

spec/requests/partners/dashboard_requests_spec.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,16 @@
5959

6060
expect(response.body).to match(/7\s+#{item1.name}/m)
6161
end
62+
63+
it "displays comment and sender" do
64+
request = create(:request, :pending, partner:, request_items: [])
65+
create(:item_request, request:, quantity: 16, item: item1)
66+
67+
get partners_dashboard_path
68+
69+
expect(response.body).to include(request.comments)
70+
expect(response.body).to include(request.requester.email)
71+
end
6272
end
6373

6474
it "displays upcoming distributions" do

spec/requests/partners/requests_spec.rb

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,13 @@
3030
subject.call
3131
expect(response.body).to include("684")
3232
end
33+
34+
it "displays comment and sender" do
35+
request = create(:request, partner_id: partner.id, request_items: [{item_id: item1.id, quantity: '125'}])
36+
subject.call
37+
expect(response.body).to include(request.comments)
38+
expect(response.body).to include(request.requester.email)
39+
end
3340
end
3441

3542
describe "GET #new" do

0 commit comments

Comments
 (0)