Skip to content

Commit a787385

Browse files
committed
show links to sets even when you are not assigned to those sets
1 parent 57a8d71 commit a787385

2 files changed

Lines changed: 14 additions & 8 deletions

File tree

lib/WeBWorK/ContentGenerator.pm

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -486,6 +486,7 @@ sub links ($c) {
486486
my $setID = $c->stash('setID');
487487
my $problemID = $c->stash('problemID');
488488
my $achievementID = $c->stash('achievementID');
489+
my $globalSetID = defined $setID ? $setID =~ s/,v\d+$//r : undef;
489490

490491
# Determine if navigation is restricted for this user.
491492
my $restricted_navigation = $authen->was_verified && !$authz->hasPermissions($userID, 'navigation_allowed');
@@ -500,9 +501,13 @@ sub links ($c) {
500501
if ($authen->was_verified) {
501502
if (defined $setID && $db->existsUserSet($eUserID, $setID)) {
502503
$problemID = undef unless (defined $problemID && $db->existsUserProblem($eUserID, $setID, $problemID));
503-
} else {
504+
} elsif (defined $globalSetID && $db->existsGlobalSet($globalSetID)) {
504505
$setID = undef;
505506
$problemID = undef;
507+
} else {
508+
$setID = undef;
509+
$globalSetID = undef;
510+
$problemID = undef;
506511
}
507512
}
508513

@@ -543,7 +548,8 @@ sub links ($c) {
543548
eUserID => $eUserID,
544549
urlUserID => $c->stash('userID'),
545550
setID => $setID,
546-
prettySetID => format_set_name_display($setID // ''),
551+
globalSetID => $globalSetID,
552+
prettySetID => format_set_name_display($setID // $globalSetID // ''),
547553
problemID => $problemID,
548554
prettyProblemID => $prettyProblemID,
549555
achievementID => $achievementID,

templates/ContentGenerator/Base/links.html.ep

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -125,14 +125,14 @@
125125
% # Sets Manager
126126
<li class="list-group-item nav-item"><%= $makelink->('instructor_set_list') %></li>
127127
% # Editor link. Only shown for non-versioned sets
128-
% if (defined $setID && $setID !~ /,v\d+$/) {
128+
% if (defined $globalSetID || defined $setID && $setID !~ /,v\d+$/) {
129129
<li class="list-group-item nav-item">
130130
<ul class="nav flex-column">
131131
<li class="nav-item">
132132
<%= $makelink->(
133133
'instructor_set_detail',
134134
text => $prettySetID,
135-
captures => { setID => $setID },
135+
captures => { setID => $globalSetID // $setID },
136136
link_attrs => { dir => 'ltr' }
137137
); %>
138138
</li>
@@ -221,7 +221,7 @@
221221
% # Statistics
222222
<li class="list-group-item nav-item">
223223
<%= $makelink->('instructor_statistics') %>
224-
% if (defined $setID) {
224+
% if (defined $setID || defined $globalSetID) {
225225
<ul class="nav flex-column">
226226
<li class="nav-item" dir="ltr">
227227
<%= $makelink->(
@@ -252,7 +252,7 @@
252252
</li>
253253
% # Student Progress
254254
<li class="list-group-item nav-item"><%= $makelink->('instructor_progress') %>
255-
% if ($userID ne $eUserID || defined $setID || defined $urlUserID) {
255+
% if ($userID ne $eUserID || defined $setID || defined $globalSetID || defined $urlUserID) {
256256
<ul class="nav flex-column">
257257
% if (defined $urlUserID) {
258258
<li class="nav-item">
@@ -276,13 +276,13 @@
276276
) %>
277277
</li>
278278
% }
279-
% if (defined $setID) {
279+
% if (defined $setID || defined $globalSetID) {
280280
<li class="nav-item" dir="ltr">
281281
<%= $makelink->(
282282
'instructor_set_progress',
283283
# Make sure a versioned set id is not used for the progress link.
284284
text => $prettySetID =~ s/,v\d+$//r,
285-
captures => { setID => $setID =~ s/,v\d+$//r },
285+
captures => { setID => $globalSetID // $setID =~ s/,v\d+$//r },
286286
) %>
287287
</li>
288288
% }

0 commit comments

Comments
 (0)