Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

Add ability to link to related reports to ViewDataTable #3137

Closed
diosmosis opened this Issue · 22 comments

2 participants

Benaka Matthieu Aubry
Benaka
Collaborator

Some reports are related to other reports. In order to show the viewer these reports and in order to reduce the clutter that occurs if too many reports are displayed at once, a feature should be added to ViewDataTable that displays a report's related reports, if any.

The user should be able to click on a related report to see it load in-place. That is, it shouldn't send the viewer to a new page.

Benaka
Collaborator

Attachment: Patch for this issue.
3137.diff.tar.gz

Benaka
Collaborator

Attachment: Sample screen of related reports feature.
related_reports_picture.png

Benaka
Collaborator

I've uploaded a patch for this feature & a screenshot showing how it looks. If everything's OK, I can commit. What do you thing?

Benaka
Collaborator

Attachment: New patch for this issue.
3137.diff.tar.2.gz

Benaka
Collaborator

There was a bug in my patch, the related report URLs didn't unset filter information & forced a table to load. The patch I just uploaded fixes that.

Matthieu Aubry
Owner

Cool new feature.

  • When there is only one related report, please put "Related report:" and the report name on the same line. It should look more concise/ less height pixels.
  • Does it work fine in the dashboard widgets?
  • For example in the Goals reports, if a related report needs the idGoal, will it be forwarded automatically to the related report controller?
    • Or should setRelatedReports() accept an array (module => X, action => Y, idGoal => Z, otherParameter => A) instead of just accepting module.action ?
  • do you think this feature would make sense to use in Piwik in some of the existing reports?

Good work!

Benaka
Collaborator

Attachment: Another patch for this issue.
3137.diff.tar.3.gz

Benaka
Collaborator

Attachment: New screenshot of related reports use. W/ one related report & w/ 2 related reports.
related_reports_picture.2.png

Benaka
Collaborator

Attachment: Screenshot of related report feature used in widget.
related_reports_widget1.png

Benaka
Collaborator

Attachment: Screenshot of related report feature used in widget (just one related report).
related_reports_widget2.png

Benaka
Collaborator

Uploaded a new patch.

Replying to matt:

  • When there is only one related report, please put "Related report:" and the report name on the same line. It should look more concise/ less height pixels.

Looks better this way :).

  • Does it work fine in the dashboard widgets?

I uploaded two pictures of its use in a dashboard widget. I think it looks ok.

  • For example in the Goals reports, if a related report needs the idGoal, will it be forwarded automatically to the related report controller?
    • Or should setRelatedReports() accept an array (module => X, action => Y, idGoal => Z, otherParameter => A) instead of just accepting module.action ?

For a Goals report the idGoal would be added automatically, since it would already exist in the query string. If you were trying to link a goal report to a non-goal report (for whatever reason), however, there'd be an issue, so I made the following changes:

I removed the setRelatedReport method and replaced it w/ two others: addRelatedReports & addRelatedReport. addRelatedReports works more or less like setRelatedReport. addRelatedReport (singular) will allow you to use specific query parameters.

I thought about making setRelatedReports take an array of arrays like you suggested, but it seemed like the use of custom query parameters would be rare occurrence. What do you think?

  • do you think this feature would make sense to use in Piwik in some of the existing reports?

I'm not sure it would. It makes sense to use it when you want to display reports that are very similar and want to save space. If you're trying to tell the user when looking at a certain report that there's another one that can be used in conjunction with it, I think this feature isn't the right one to use. It would probably be better to use some sort of text bubble.

So I guess I think this feature should be used to show different views of the same data (like browser & browser version, archive tables & archive tables by year, etc.)

But I haven't looked at every report, so maybe I'm missing something?

Good work!

Thanks! Let me know what you think of the new patch.

Matthieu Aubry
Owner

I uploaded two pictures of its use in a dashboard widget. I think it looks ok.
it looks OK indeed, I might change the color to greyish color to make it less black... but def OK :)

I thought about making setRelatedReports take an array of arrays like you suggested, but it seemed like the use of custom query parameters would be rare occurrence. What do you think?
Perfect!

So I guess I think this feature should be used to show different views of the same data (like browser & browser version, archive tables & archive tables by year, etc.)

One perfect report to reuse this feature is to display "Exit Page Titles" and "Entry page titles" reports, from the footer of "Page Titles". See #1996 - feel free to look into this one if you're keen :)

Benaka
Collaborator

(In [6309]) Fixes #3137, added ability for data table views to link to arbitrary related reports in the data table footer.

Matthieu Aubry
Owner

(In [6332]) Refs #3137 Small style changes

Matthieu Aubry
Owner

Reopening for Small bug: When adding "OS" and "OS family" widgets in dashboard, clicking on footer link confuses the datatable and reload the other widget.

Benaka
Collaborator

(In [6336]) Fixes #3137, fixed issue when same reports used more than once in dashboard (due to related reports feature) and modified so if a url to an index page is supplied as a related report, its corresponding menu item is clicked.

Benaka
Collaborator

(In [6342]) Refs #3137, don't show related reports when there's no data to display.

Benaka
Collaborator

(In [6354]) Refs #3137, #2987, reverted datatable id changes, will require much more work to fix this bug.

Benaka
Collaborator

(In [6358]) Refs #3137, fix small bugs in Piwik, modified related reports feature so set of related reports used doesn't change after a related report is loaded.

Notes:

  • fixed bug in datatable.js. code that loaded by AJAX shouldn't of used $().html() but $().replaceWith(). The former added an unnecessary div every time.
  • GenerateGraphHTML.php didn't set the right viewDataTable view property value
  • Added getValuesFromUrl function to broadcast JS object.
Benaka
Collaborator

(In [6361]) Fixes #1996, refs #3137 added entry page titles & exit page titles reports. Fixed issues w/ related reports feature and actions data tables.

Benaka
Collaborator

(In [6364]) Refs #1996, #3137 fixed some minor issues w/ new entry/exit page titles reports and added logic to related reports feature to modify report header if available.

Matthieu Aubry
Owner

(In [6400]) Refs #3137 Fixing last issues with datatable features ?

Benaka diosmosis added this to the Piwik 1.8 milestone
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.