diff options
author | pezholio <pezholio@gmail.com> | 2017-01-30 14:54:50 +0000 |
---|---|---|
committer | pezholio <pezholio@gmail.com> | 2017-01-31 13:57:17 +0000 |
commit | 111acf7ccb452a7c163682b73b9cf5aee5f98be1 (patch) | |
tree | 388dd8d16937431d5e94d27a35111e08484085ab | |
parent | 81e725393821f4aa39007f67c3aba01e8a058d7c (diff) |
Return JSON if `ajax` in params
-rw-r--r-- | perllib/FixMyStreet/App/Controller/My.pm | 4 | ||||
-rw-r--r-- | t/app/controller/my_planned.t | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/perllib/FixMyStreet/App/Controller/My.pm b/perllib/FixMyStreet/App/Controller/My.pm index c26cdd5c8..ffcdf829d 100644 --- a/perllib/FixMyStreet/App/Controller/My.pm +++ b/perllib/FixMyStreet/App/Controller/My.pm @@ -56,6 +56,10 @@ sub planned : Local : Args(0) { $c->forward('planned_reorder'); $c->forward('/reports/stash_report_sort', [ 'shortlist' ]); $c->forward('get_problems'); + if ($c->get_param('ajax')) { + $c->stash->{shortlist} = $c->stash->{sort_key} eq 'shortlist'; + $c->detach('/reports/ajax', [ 'my/_problem-list.html' ]); + } $c->forward('setup_page_data'); } diff --git a/t/app/controller/my_planned.t b/t/app/controller/my_planned.t index d66673589..fa463e61e 100644 --- a/t/app/controller/my_planned.t +++ b/t/app/controller/my_planned.t @@ -45,6 +45,18 @@ $mech->content_contains('Shortlist'); $mech->submit_form_ok({ with_fields => { 'shortlist-add' => 1 } }); $mech->content_contains('Shortlisted'); +$mech->get_ok('/my/planned?sort=shortlist&ajax=1'); +$mech->content_contains('shortlist-up'); +$mech->content_contains('shortlist-down'); + +$mech->get_ok('/my/planned?sort=created-desc&ajax=1'); +$mech->content_lacks('shortlist-up'); +$mech->content_lacks('shortlist-down'); + +$mech->get_ok('/my/planned?ajax=1'); +$mech->content_contains('shortlist-up'); +$mech->content_contains('shortlist-down'); + done_testing(); END { |