Skip to content

Commit ea3d51b

Browse files
authored
Merge pull request #2730 from Alex-Jordan/achievement-buttons
move helper tool buttons to above problem list
2 parents 7e33f21 + cde953e commit ea3d51b

File tree

8 files changed

+90
-91
lines changed

8 files changed

+90
-91
lines changed

lib/WeBWorK/ContentGenerator.pm

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -973,8 +973,11 @@ sub feedbackMacro ($c, %params) {
973973
return '' unless $c->authz->hasPermissions($c->param('user'), 'submit_feedback');
974974

975975
if ($c->ce->{courseURLs}{feedbackURL}) {
976-
return $c->link_to(($c->maketext($c->ce->{feedback_button_name}) || $c->maketext('Email instructor')) =>
977-
$c->ce->{courseURLs}{feedbackURL});
976+
return $c->link_to(
977+
($c->maketext($c->ce->{feedback_button_name}) || $c->maketext('Email instructor')) =>
978+
$c->ce->{courseURLs}{feedbackURL},
979+
class => 'btn btn-primary'
980+
);
978981
} elsif ($c->ce->{courseURLs}{feedbackFormURL}) {
979982
$params{notifyAddresses} =
980983
join(';', $c->fetchEmailRecipients('receive_feedback', $c->db->getUser($c->param('user'))));

templates/ContentGenerator/Base/feedback_macro_email.html.ep

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66
% next if $key eq 'pg_object'; # Not used in internal feedback mechanism
77
<%= hidden_field $key => $value =%>
88
% }
9-
<p>
10-
<%= submit_button maketext($ce->{feedback_button_name}) || maketext('Email instructor'),
11-
name => 'feedbackForm', class => 'btn btn-primary' =%>
12-
</p>
9+
<%= submit_button maketext($ce->{feedback_button_name}) || maketext('Email instructor'),
10+
name => 'feedbackForm', class => 'btn btn-primary' =%>
1311
% end

templates/ContentGenerator/Base/feedback_macro_form.html.ep

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@
2020
% }
2121
% }
2222
%
23-
<p>
24-
<%= submit_button maketext($ce->{feedback_button_name}) || maketext('Email instructor'),
25-
name => 'feedbackForm', class => 'btn btn-primary' =%>
26-
</p>
23+
<%= submit_button maketext($ce->{feedback_button_name}) || maketext('Email instructor'),
24+
name => 'feedbackForm', class => 'btn btn-primary' =%>
2725
<% end =%>

templates/ContentGenerator/ProblemSet.html.ep

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,6 @@
2323
% # Stats message displays the current status of the set and states the next important date.
2424
<%= include 'ContentGenerator/Base/set_status', set => $set =%>
2525
%
26-
<%= $set->assignment_type =~ /gateway/ ? $c->gateway_body : $c->problem_list =%>
26+
<%= include 'ContentGenerator/ProblemSet/auxiliary_tools' =%>
2727
%
28-
<%= include 'ContentGenerator/ProblemSet/use_achievement_items' =%>
29-
<div class="mb-3">
30-
<%= $c->feedbackMacro(
31-
route => current_route,
32-
set => $set->set_id,
33-
problem => '',
34-
displayMode => $c->{displayMode},
35-
showOldAnswers => '',
36-
showCorrectAnswers => '',
37-
showHints => '',
38-
showSolutions => '',
39-
) =%>
40-
</div>
28+
<%= $set->assignment_type =~ /gateway/ ? $c->gateway_body : $c->problem_list =%>
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
<div class="submit-buttons-container mb-3">
2+
<div class="d-inline-block">
3+
<%= $c->feedbackMacro(
4+
route => current_route,
5+
set => $c->{set}->set_id,
6+
problem => '',
7+
displayMode => $c->{displayMode},
8+
showOldAnswers => '',
9+
showCorrectAnswers => '',
10+
showHints => '',
11+
showSolutions => '',
12+
) =%>
13+
</div>
14+
% if ($ce->{achievementsEnabled} && $ce->{achievementItemsEnabled}) {
15+
% my $achievementItems = $c->{achievementItems};
16+
% if ($achievementItems && @$achievementItems) {
17+
<%= link_to maketext('Use Achievement Reward') => '#modal_rewards',
18+
role => 'button',
19+
class => 'btn btn-primary',
20+
id => 'popup_rewards',
21+
data => { bs_toggle => 'modal' }
22+
=%>
23+
<div id="modal_rewards" class="modal hide fade" tabindex="-1">
24+
<div class="modal-dialog modal-dialog-centered">
25+
<div class="modal-content">
26+
<div class="modal-header">
27+
<h4 class="modal-title"><%= maketext('Achievement Rewards') %></h4>
28+
<button type="button" class="btn-close" data-bs-dismiss="modal"
29+
aria-label="<%= maketext('close') %>"></button>
30+
</div>
31+
<div class="modal-body">
32+
<dl>
33+
% for (@$achievementItems) {
34+
% my ($item, $form) = @$_;
35+
<dt class="fs-4"><%= $item->name %></dt>
36+
<dd class="mx-3 mb-4">
37+
<%= form_for current_route, method => 'POST', name => 'use_reward', begin =%>
38+
<%= hidden_field 'use_achievement_item_id' => $item->id %>
39+
<%= $form %>
40+
% unless ($item->{hideUseButton}) {
41+
<input class="btn btn-primary" type="submit"
42+
name="use_achievement_item_<%= $item->id %>"
43+
value="<%= maketext('Use [_1]', $item->remaining_title($c)) %>">
44+
% }
45+
<%= end =%>
46+
</dd>
47+
% }
48+
</dl>
49+
</div>
50+
<div class="modal-footer">
51+
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
52+
</div>
53+
</div>
54+
</div>
55+
</div>
56+
% } elsif (param('user') ne param('effectiveUser')) {
57+
<span class="d-inline-block set-id-tooltip" tabindex="0" data-bs-toggle="tooltip" data-bs-placement="top"
58+
data-bs-title="<%=maketext('You cannot use achievement rewards when acting as another user.') %>">
59+
<button class="btn btn-primary" type="button" disabled>
60+
<%= maketext('Use Achievement Reward') %>
61+
</button>
62+
</span>
63+
% } else {
64+
<span class="d-inline-block set-id-tooltip" tabindex="0" data-bs-toggle="tooltip" data-bs-placement="top"
65+
data-bs-title="<%=maketext('No achievement rewards are available for this assignment.') %>">
66+
<button class="btn btn-primary" type="button" disabled>
67+
<%= maketext('Use Achievement Reward') %>
68+
</button>
69+
</span>
70+
% }
71+
% }
72+
% unless ($c->{set}->assignment_type =~ /gateway/) {
73+
<%= link_to
74+
maketext('Download Hardcopy') => $c->systemLink(url_for 'hardcopy_preselect_set'),
75+
class => 'btn btn-primary' =%>
76+
% }
77+
</div>
78+

templates/ContentGenerator/ProblemSet/problem_list.html.ep

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,3 @@
5353
<p><%= maketext('This homework set contains no problems.') %></p>
5454
% }
5555
%
56-
<div class="mb-3">
57-
<%= link_to
58-
maketext('Download Hardcopy for Current Set') => $c->systemLink(url_for 'hardcopy_preselect_set'),
59-
class => 'btn btn-primary' =%>
60-
</div>

templates/ContentGenerator/ProblemSet/use_achievement_items.html.ep

Lines changed: 0 additions & 61 deletions
This file was deleted.

templates/ContentGenerator/ProblemSet/version_list.html.ep

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@
242242
id => 'clear', type => 'reset', class => 'btn btn-primary' =%>
243243
</div>
244244
<div class="mb-3">
245-
<%= submit_button maketext('Download PDF or TeX Hardcopy for Selected Tests'),
245+
<%= submit_button maketext('Download Hardcopy for Selected Tests'),
246246
id => 'hardcopy', name => 'hardcopy', class => 'btn btn-primary' =%>
247247
</div>
248248
<% end =%>

0 commit comments

Comments
 (0)