| … | |
… | |
| 31 | # It's for figuring out the basepath. I may change this up if I |
31 | # It's for figuring out the basepath. I may change this up if I |
| 32 | # find a better way to do it. |
32 | # find a better way to do it. |
| 33 | my $path_info = $r->path_info; |
33 | my $path_info = $r->path_info; |
| 34 | my $path_translated = $r->lookup_uri($path_info)->filename; |
34 | my $path_translated = $r->lookup_uri($path_info)->filename; |
| 35 | my $current_uri = $r->uri; |
35 | my $current_uri = $r->uri; |
| 36 | unless ($path_info) { |
36 | my $args = $r->args; |
|
|
37 | |
|
|
38 | # If it's a valid WeBWorK URI, it ends in a /. This is assumed |
|
|
39 | # alllll over the place. |
|
|
40 | unless (substr($current_uri,-1) eq '/') { |
| 37 | $r->header_out(Location => "$current_uri/"); |
41 | $r->header_out(Location => "$current_uri/?$args"); |
| 38 | return REDIRECT; |
42 | return REDIRECT; |
| 39 | } |
43 | } |
| 40 | |
44 | |
| 41 | return OK if $r->header_only; |
45 | return OK if $r->header_only; |
| 42 | |
46 | |