I have just gone through this again to iron out the bugs & made detailed notes on what I checked & what behaviour I saw this time. (since I had to spend far too long refreshing my memory as to what the thing was I hadn't quite finished fixing & my brain is well below half-mast today I did lots of running notes!).
Note that I decided to separate this patch from the action items patch because it adds some of the underlying change - but I feel the actions might still need some more back & forth whereas I think the changes on this one are non-controversial
Note
Test 1
1) go to all reports (http://dmaster.local/civicrm/report/list?reset=1)
2) click on left hand link (opens report with criteria open for change)
http://dmaster.local/civicrm/report/instance/23?reset=1&output=criteria – note id is 23 & the additional of output=criteria means it renders in criteria view.
3) Click on an additional field & check update
4) the report is saved with the selected field updated. (note in my test it retained the output mode as criteria unless I clicked on preview report or changed it on the access tab to be 'view results' – arguably I expected it to render the rows but I felt it was 'ok')
5) after saving this changes accessing the report from the reports menu gave me the new field & rendered the url with force=1 on it – ie http://dmaster.local/civicrm/report/instance/23?reset=1&force=1
6) Choosing save a copy took me to a new instance – ie. http://dmaster.local/civicrm/report/instance/72?reset=1&force=1
Test 2
1) from http://dmaster.local/civicrm/report/list?reset=1 choose the view results link instead.
2) the report should render as resolved with the force=1 in the url http://dmaster.local/civicrm/report/instance/67?force=1&reset=1
3) similar tests to above work (I did get a white screen on print pdf on one report but don't believe it was related)
Test 3 – from all reports try save a copy – the report instance you wind up on should have a brand new id – note it simply prepends copy to the title rather than asking – which I think is OK in this flow. Opens in criteria mode – I also think this is OK
Test 4 – pdf, print, csv – note pdf only worked on some reports but where it did it worked by all methods – I think it's the pdf html rendering & not a new issue. Repeat contributions worked fine
Test 5 check that delete report works. Look for the id of the report being removed & not coming back on refresh. IMPORTANT check that afterwards interacting with a different report works fine. When I tried our first approach – ie. removing the reset=1 to view criteria I found the delete information was carried over! Note the nasty js native confirm was already there – I just felt like it was too much code to swap it out & it must make sense to make that more re-usable & hence left for now.
Test 6 – check that action buttons are present whether or not any rows are rendered – allowing people to edit the report criteria & then output to csv with the query only running once (or if they prefer to see it they can choose preview results – depending on the query performance)
Test 7 check that when rendering pdf or print, or csv the full result is rendered (not just the first 25). Likewise all contacts should be added to group.
Note that the csv option is specifically excluded for Event detail report and Contact Detail report
I have just gone through this again to iron out the bugs & made detailed notes on what I checked & what behaviour I saw this time. (since I had to spend far too long refreshing my memory as to what the thing was I hadn't quite finished fixing & my brain is well below half-mast today I did lots of running notes!).
Note that I decided to separate this patch from the action items patch because it adds some of the underlying change - but I feel the actions might still need some more back & forth whereas I think the changes on this one are non-controversial
Note
Test 1
1) go to all reports (http://dmaster.local/civicrm/report/list?reset=1)
2) click on left hand link (opens report with criteria open for change)
http://dmaster.local/civicrm/report/instance/23?reset=1&output=criteria – note id is 23 & the additional of output=criteria means it renders in criteria view.
3) Click on an additional field & check update
4) the report is saved with the selected field updated. (note in my test it retained the output mode as criteria unless I clicked on preview report or changed it on the access tab to be 'view results' – arguably I expected it to render the rows but I felt it was 'ok')
5) after saving this changes accessing the report from the reports menu gave me the new field & rendered the url with force=1 on it – ie http://dmaster.local/civicrm/report/instance/23?reset=1&force=1
6) Choosing save a copy took me to a new instance – ie. http://dmaster.local/civicrm/report/instance/72?reset=1&force=1
Test 2
1) from http://dmaster.local/civicrm/report/list?reset=1 choose the view results link instead.
2) the report should render as resolved with the force=1 in the url http://dmaster.local/civicrm/report/instance/67?force=1&reset=1
3) similar tests to above work (I did get a white screen on print pdf on one report but don't believe it was related)
Test 3 – from all reports try save a copy – the report instance you wind up on should have a brand new id – note it simply prepends copy to the title rather than asking – which I think is OK in this flow. Opens in criteria mode – I also think this is OK
Test 4 – pdf, print, csv – note pdf only worked on some reports but where it did it worked by all methods – I think it's the pdf html rendering & not a new issue. Repeat contributions worked fine
Test 5 check that delete report works. Look for the id of the report being removed & not coming back on refresh. IMPORTANT check that afterwards interacting with a different report works fine. When I tried our first approach – ie. removing the reset=1 to view criteria I found the delete information was carried over! Note the nasty js native confirm was already there – I just felt like it was too much code to swap it out & it must make sense to make that more re-usable & hence left for now.
Test 6 – check that action buttons are present whether or not any rows are rendered – allowing people to edit the report criteria & then output to csv with the query only running once (or if they prefer to see it they can choose preview results – depending on the query performance)
Test 7 check that when rendering pdf or print, or csv the full result is rendered (not just the first 25). Likewise all contacts should be added to group.
Note that the csv option is specifically excluded for Event detail report and Contact Detail report