User feedback form doesn't re-appear after returning to the dashboard page
See original GitHub issueBug Description
An observation: the User Feedback Form Appears on the Dashboard but the user does not complete it. The user then goes to another module page and comes back to the Dashboard. The User Feedback Form should then reappear, but it doesn’t at the moment.
Related Asana ticket: https://app.asana.com/0/1200379030254833/1200498459236227
A possible solution for this issue is to cache the survey only if it has been idle for 2 mins or more and the user hasn’t completed it. In this case, if the user left the dashboard page and returned back to it, they will see the survey again and can complete it.
Steps to reproduce
- Go to ‘…’
- Click on ‘…’
- Scroll down to ‘…’
- See error
Screenshots
Additional Context
- PHP Version:
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Plugin Version [e.g. 22]
- Device: [e.g. iPhone6]
Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance criteria
- If a user feedback survey is shown and the user doesn’t interact with it and goes to another page, it should keep appearing as long as 30 seconds since first appearing haven’t passed. In other words:
- If the user clicks away from the dashboard and then returns quickly, or refreshes the dashboard within 30 seconds after the user feedback survey was triggered, it should be re-triggered.
- If the user remains more than 30 seconds on the dashboard without interacting with the user feedback survey, it can be assumed they don’t care right now, so at this point it should not be re-triggered on next page load (and instead rely on our default 1 hour timeout for triggering surveys).
Implementation Brief
- Using
assets/js/googlesitekit/datastore/user/surveys.js
,- In the
triggerSurvey
function, update the logic to set the cache whenttl
>0
by delaying thesetItem
call by 30 seconds usingsetTimeout
.
- In the
Test Coverage
- No new tests to be added.
Visual Regression Changes
- N/A
QA Brief
- Visit the main dashboard and the user feedback is displayed.
- Within 30s, navigate to another page within the admin.
- Return to the main dashboard. The user feedback should be displayed again.
- Now wait for 35s, without interacting with the component.
- Navigate away from the page and come back to the main dashboard.
- The user feedback component should not show up
Changelog entry
- Add a timeout to delay caching the survey by 30 seconds
Issue Analytics
- State:
- Created 2 years ago
- Comments:9 (2 by maintainers)
Top Results From Across the Web
Your definitive guide to feedback buttons
We look at what feedback buttons are, why you might want to use one, how they differ, how you install them and tips...
Read more >Feedback form examples and templates that work
Use these feedback form tips to help you hear more from your ... Feedback requests can appear as pop-ups on web pages, chatbots,...
Read more >Forms | Frequently Asked Questions - Knowledge Base
Find answers and general information quickly about the forms tool in HubSpot. Learn more about troubleshooting HubSpot forms.
Read more >Troubleshooting FAQs for Survey and Feedback tools
Common questions, tips, and help with Surveys and Feedback. Why is the widget not appearing or why am I no longer receiving responses?......
Read more >Embedded Feedback
You can embed a simple helpfulness question on your site content, so visitors can rate the content and even provide feedback right on...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
You’re right @eugene-manuilov 🤦 I didn’t realize the form will not show up if the user interacted with it, thus I wanted to know when the user interacts with it. IB updated. Thanks!
QA Update: ✅
Nice! Works perfect.