diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index f4a2bd20c..bb5a3fda6 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.38.23", + "version": "4.38.24", "author": "undefined ", "license": "AGPL-3.0", "main": "hydro.js", diff --git a/packages/ui-default/pages/homework_main.page.js b/packages/ui-default/pages/homework_main.page.js index f6fdabf6f..00ffe2e96 100644 --- a/packages/ui-default/pages/homework_main.page.js +++ b/packages/ui-default/pages/homework_main.page.js @@ -17,16 +17,25 @@ const page = new NamedPage('homework_main', () => { })); const calendar = new Calendar(events); calendar.getDom().appendTo('[name="calendar_entry"]'); - $('[name="calendar_entry"]').hide(); + const preference = localStorage.getItem('homework-view') || 'list'; + if (preference === 'calendar') { + $('.homework__list').hide(); + $('[name="homework_display"]').val('calendar'); + } else { + $('[name="calendar_entry"]').hide(); + $('[name="homework_display"]').val('list'); + } $('[name="homework_display"]').change((ev) => { switch (ev.currentTarget.value) { case 'calendar': $('.homework__list').hide(); $('[name="calendar_entry"]').show(); + localStorage.setItem('homework-view', 'calendar'); break; case 'list': $('.homework__list').show(); $('[name="calendar_entry"]').hide(); + localStorage.setItem('homework-view', 'list'); break; default: throw new Error('Unexpected display parameter');