From e7f0af08a29ac69b7132df4f973883f7d577563e Mon Sep 17 00:00:00 2001 From: Alex Jordan Date: Sat, 1 Feb 2025 00:44:09 -0800 Subject: [PATCH] make it so URLs in feedback emails always show the problem grader --- lib/WeBWorK/Utils.pm | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/lib/WeBWorK/Utils.pm b/lib/WeBWorK/Utils.pm index c1a2467646..e6b7f4a5c0 100644 --- a/lib/WeBWorK/Utils.pm +++ b/lib/WeBWorK/Utils.pm @@ -358,11 +358,18 @@ sub generateURLs ($c, %params) { if ($userName) { my $routePath; - my @args; + my $args = {}; if (defined $params{set_id} && $params{set_id} ne '') { if ($params{problem_id}) { $routePath = $c->url_for('problem_detail', setID => $params{set_id}, problemID => $params{problem_id}); - @args = qw/displayMode showOldAnswers showCorrectAnswers showHints showSolutions/; + $args = { + displayMode => undef, + showOldAnswers => undef, + showCorrectAnswers => undef, + showHints => undef, + showSolutions => undef, + showProblemGrader => 1 + }; } else { $routePath = $c->url_for('problem_list', setID => $params{set_id}); } @@ -372,10 +379,10 @@ sub generateURLs ($c, %params) { $emailableURL = $c->systemLink( $routePath, authen => 0, - params => [ 'effectiveUser', @args ], + params => { effectiveUser => undef, %{$args} }, use_abs_url => 1, ); - $returnURL = $c->systemLink($routePath, params => [@args]); + $returnURL = $c->systemLink($routePath); } else { $emailableURL = '(not available)'; $returnURL = '';