Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Device Settings Updates: Auto Download #9781

Closed
3 tasks
marcellamaki opened this issue Oct 18, 2022 · 1 comment
Closed
3 tasks

Device Settings Updates: Auto Download #9781

marcellamaki opened this issue Oct 18, 2022 · 1 comment
Assignees
Labels
P0 - critical Priority: Release blocker or regression

Comments

@marcellamaki
Copy link
Member

marcellamaki commented Oct 18, 2022

Overview

This issue is a full-stack issue that updates the Device Settings page to include a setting where the user can determine whether or not to automatically download new materials such as lessons and quizzes. The default behavior is to download automatically. The setting should be set to true by default, and then the user can change it. There is an additional setting which determines a maximum amount of space that Kolibri can use for auto-downloaded content.

To avoid having to create a new migration for each field, we will be using a feature branch for this project update-device-settings. Please make PRs to this branch, which will later be merged into develop when the feature is complete.

Specifications

Figma

Please see complete figma spec for full specs of various states.

➡️ Accessibility notes:

  • The title for this section ('Auto-download') is an <h2>
  • Please use KComponents to ensure that the content is properly passed on to screen readers, and that focus outlining works.

API changes

The changes to the API should be made within the existing API file in the /device plugin: kolibri/plugins/device/assets/src/views/DeviceSettingsPage/api.js unless it is discovered that there would be some blocker to use this setting. As an alternative, options.ini could be considered.

Backend changes should include updating the model kolibri/core/device/models.py and related serializer kolibri/core/device/serializers.py

Acceptance Criteria

  • Frontend is updated with correct strings, using existing components
  • On saving, the setting is updated on both the frontend and the backend, and a Settings have been updated message displays. (This snackbar should already exists and it should appear by default on a successful update to the device settings).
  • The DeviceSettingsPage.spec.js should be updated so that existing tests still pass (as necessary) and there should be at least one test written to cover this scenario

References

@marcellamaki marcellamaki added this to the Device Settings Updates milestone Oct 18, 2022
@marcellamaki marcellamaki added the P0 - critical Priority: Release blocker or regression label Oct 18, 2022
@jredrejo jredrejo mentioned this issue Nov 15, 2022
9 tasks
@rtibbles
Copy link
Member

rtibbles commented Dec 7, 2022

Fixed in #9833

@rtibbles rtibbles closed this as completed Dec 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P0 - critical Priority: Release blocker or regression
Projects
None yet
Development

No branches or pull requests

3 participants