Comments (7)
The alternative is:
To enable the button quickly after making changes, just reload the page and deny the Leave Page confirmation box. the button will get enabled.
from lifterlms.
About the actual behavior:
The save button doesn't get enabled even after making changes. It enables in a random order and takes too much time leaving the user in anticipation.
This seems a bug. Can you reproduce it consistently? Like change only one thing and see whether or not the save button gets enabled.
The waiting time for the Save button to get enabled is random and can't be predicted.
Actually it's not random and can be predicted, the check on whether the save button needs to be enabled is run every 10 seconds, this value can be modified using this filter: https://github.com/gocodebox/lifterlms/blob/185e02878c7395e795b3763a501f645ea39bc8d7/includes/admin/class.llms.admin.builder.php#L645C9-L645C35
Sometimes it doesn't get enabled at all even after making changes which results in data loss due to page reload.
This is very related to the point one, we need to find a pattern, is there a specific input that when changed is not detected as such?
After making changes, the auto-save shows the button in the "Saved" state and when we leave the page it shows the leave page confirmation box. It means if I leave the page, all the changes will vanish and if I don't and want to save it, I can't because the Save button is disabled and it's still in the "Saved" state.
I cannot reproduce this, you're saying that when the "confirmation box" shows up, if you click on "Stay on page", then the Save Button doesn't get enabled? The confirmation box shows up when an unsaved change is detected, and when that happens the button state is changed accordingly:
lifterlms/assets/js/builder/Views/Sidebar.js
Line 170 in 185e028
Is it possible that after you clicked on "Stay on page" the button, accidentally the autosave was triggered and then the button rapidly went from disabled to enabled to disabled state again? So everything was saved but it was not clear?
from lifterlms.
@actuallyakash
when you got time, a feedback on my reply?
from lifterlms.
About the actual behaviour:
The save button doesn't get enabled even after making changes. It enables in a random order and takes too much time leaving the user in anticipation.
This seems like a bug. Can you reproduce it consistently? Like change only one thing and see whether or not the save button gets enabled.
Yeah, I can reproduce it consistently. Below are some experiments:
- Updated Lesson Title - Took 19.54 seconds - to save automatically.
- Updated Quiz Title - Took 27.90 seconds - to enable save button.
- Enable Limit Attempts - Took 12.79 seconds - to enable save button.
- Enable Question Banks - Took 5.29 seconds - to enable save button.
It seems to work fine for now. I'm not able to reproduce the case when it was not getting enabled at all.
The waiting time for the Save button to get enabled is random and can't be predicted.
Actually it's not random and can be predicted, the check on whether the save button needs to be enabled is run every 10 seconds, this value can be modified using this filter: https://github.com/gocodebox/lifterlms/blob/185e02878c7395e795b3763a501f645ea39bc8d7/includes/admin/class.llms.admin.builder.php#L645C9-L645C35
Oh, maybe it's due to the local server being slow. When testing now it seems to enable the save button quite fast.
Sometimes it doesn't get enabled at all even after making changes which results in data loss due to page reload.
This is very related to the point one, we need to find a pattern, is there a specific input that when changed is not detected as such?
Let's keep this issue open for some time and once I'll get that particular pattern, I'll post it here. It seems to work fine most of the time right now. However, I mostly faced issues with the save button while working on quizzes.
After making changes, the auto-save shows the button in the "Saved" state and when we leave the page it shows the leave page confirmation box. It means if I leave the page, all the changes will vanish and if I don't and want to save it, I can't because the Save button is disabled and it's still in the "Saved" state.
I cannot reproduce this, you're saying that when the "confirmation box" shows up, if you click on "Stay on page", then the Save Button doesn't get enabled? The confirmation box shows up when an unsaved change is detected, and when that happens the button state is changed accordingly:
It happened on a customer's website that it was not getting enabled at all. There were no caching plugins.
Also, it happened on my local installation once while working on the question banks, although, it's working fine for now.
Is it possible that after you clicked on "Stay on page" the button, accidentally the autosave was triggered and then the button rapidly went from disabled to enabled to disabled state again? So everything was saved but it was not clear?
I didn't face this case, as after clicking "Stay on page", the button didn't change at all and when I clicked reload the changes I made were not there. Again, I'm not able to reproduce the issue.
from lifterlms.
Another ticket complaining about this is HS-238541. Should we always have the "Save" button in the course builder to be always clickable?
from lifterlms.
Another ticket complaining is HS-238793.
from lifterlms.
The saving check happens every 10 seconds, so it's random when it'll happen. The title was not editable but that is being fixed separately.
@dominiquemariano It's worth recommending that users disable auto save in their profile if they're having issues. With the course builder UX/UI changes the save button should appear within 1 second with auto save disabled vs. up to 10 seconds.
I'm going to close this issue for now as it has a few different paths in it (ie. consistency of saves, time to show save button which is being changed, un-reproducable showing of "stay on page" message, etc). We can create one issue per re-producable bug we see and tackle them one-by-one.
from lifterlms.
Related Issues (20)
- There is no drop-down option in the Form group. HOT 1
- Confirmation Field in the User Email section cannot be turned off or disabled. HOT 1
- Cannot save cloned Course when using the Classic Editor HOT 2
- Quill error in Course Builder with certain content
- Sorting by Average Progress filters out any courses with 0% completion
- Styling of Courses Catalog Visibility popup in Block Editor
- Cannot add Plan Description after adding a new Access Plan
- Unpublished New Lesson in course builder "View" click opens course builder in new tab instead of lesson draft preview HOT 1
- Write a Review Styling
- Change Wording on Information Message
- Depreciated use of mb_convert_encoding() HOT 2
- Backslashes are removed from result clarification content
- JavaScript Error in webUI popover change
- Avada theme shows video on a lesson in the header and footer incorrectly HOT 1
- Adding URL with urlencoded characters does not work HOT 1
- Courses block shows hidden courses incorrectly
- Allow "Plan Availability" to be specified for an Access Plan for a Membership
- "Certificate Title" block will not render HOT 1
- Change "Updated" column to "Enrolment"
- Consider additional user events for the "Last Seen" date
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lifterlms.