project: Moodle
summary: Make the Calendar great again
description: This is my personal Roadmap for the Calendar. I have decided to create this epic to keep the Calendar bugs, improvements and ideas I have which I consider important to the future of the Calendar component.

1.summary: Show actual calendar week in Week view
description: It would be great in Week view if the section name was like this: Week 41 - Monday, October 10th - Friday, October 14th , because teachers and students at our schools use the actual calendar week all the time to plan events. A shorter version could be Week 41 - Oct 10th - Oct 14th If this is not for everyone, perhaps it could be an option, either a radio button or a check-box. Cheers, Haakon Note: this affects earlier versions too, I just included the latest 2.x and 1.9.x version in Affected versions.
2.summary: Make templates look better on mobile
description: Review and improve templates to make sure it displays correctly on mobile devices. Leave this to last, as there are other parts of calendar to be converted to templates.
3.summary: Remove old event_form.php and all references
description: We can remove the old event_form.php and all references to it after the work done in .
4.summary: Highlight today in the monthly view
description: We add the style for it, but we dont do anyhting with it. We should highlight the current day in some fashion in the monthly view. The class is there ("today") but no styles exist for it.
5.summary: Change course selector in calendar to use autocomplete
description: Allow selection of course via autocomplete in calendar views.
6.summary: Add categories to calendar course selector
description: Add categories to calendar course selector
7.summary: Make it easier to switch between views
description: Its a tad tricky to switch between views at the moment: to get to the upcoming view, you must have the upcoming block to get to the month view from another view, you have to click on the month name, but there is no way to get back again Would be good to make it easier to get between the different types of view.
8.summary: Improve calendar behat coverage
description: During the development of I have identified many use cases that are not covered by behat, that makes really hard to know if we are breaking something. Also, its a bit hard now to know what is the expected behaviour of some features of calendar, for example group event types.
9.summary: Calendar view selector enables users to switch between month, day and upcoming events
description: At the moment the whole page is reloaded when the user visit the day view. The idea is to convert that to AJAX refreshing the content without having to leave the page.
10.summary: Convert upcoming view to AJAX
description: At the moment the whole page is reloaded when the user visit the upcoming view. The idea is to convert that to AJAX refreshing the content without having to leave the page. We already have those pages in templates and we have some WS to fetch the data.
11.summary: Add support for drag/drop of events in the day view
description: Once is implemented, add the support for drag and drop events in the day view
12.summary: Calendar - Add drop-down lists for month/year
description: I think that it would be a good idea to add drop-down lists to select day/month/year for easier navigation. For example, in the month view, two drop-down lists could be added, one to select the month to be viewed and another to select the year. According to quote . Navigating months There is no easy way to jump to a specific month in the year other than to directly edit the URL variable for month "m=" : calendar/view.php?view=month&cal_d=1&cal_m=02&cal_y=2006quote Drop-down list should resolved this.
13.summary: Add unit tests for calendar_view_event_allowed()
description: We have introduced calendar_view_event_allowed() as part of the work in , but at that point we have not added any unit tests for that method. Since that method is used to define what the user can/cannot see in the calendar would be great to add some tests to cover that fuction.

Below is an instruction that describes a task, paired with an input that provides an epic with this format: 
"project": "Name of the project" 
"summary": "Summary of the epic user story" 
"description": "Description of the epic user story". Write a response that appropriately completes the request.### Instruction:
Break this epic user story into smaller tasks to help the developers understand the epic better, you can divide this epic into as much as you want depending on the complexity of the epic.
### Input:
project: Moodle
summary: Make the Calendar great again
description: This is my personal Roadmap for the Calendar. I have decided to create this epic to keep the Calendar bugs, improvements and ideas I have which I consider important to the future of the Calendar component.

### Response:
1.summary: Show actual calendar week in Week view
description: It would be great in Week view if the section name was like this: Week 41 - Monday, October 10th - Friday, October 14th , because teachers and students at our schools use the actual calendar week all the time to plan events. A shorter version could be Week 41 - Oct 10th - Oct 14th If this is not for everyone, perhaps it could be an option, either a radio button or a check-box. Cheers, Haakon Note: this affects earlier versions too, I just included the latest 2.x and 1.9.x version in Affected versions.
2.summary: Make templates look better on mobile
description: Review and improve templates to make sure it displays correctly on mobile devices. Leave this to last, as there are other parts of calendar to be converted to templates.
3.summary: Remove old event_form.php and all references
description: We can remove the old event_form.php and all references to it after the work done in .
4.summary: Highlight today in the monthly view
description: We add the style for it, but we dont do anyhting with it. We should highlight the current day in some fashion in the monthly view. The class is there ("today") but no styles exist for it.
5.summary: Change course selector in calendar to use autocomplete
description: Allow selection of course via autocomplete in calendar views.
6.summary: Add categories to calendar course selector
description: Add categories to calendar course selector
7.summary: Make it easier to switch between views
description: Its a tad tricky to switch between views at the moment: to get to the upcoming view, you must have the upcoming block to get to the month view from another view, you have to click on the month name, but there is no way to get back again Would be good to make it easier to get between the different types of view.
8.summary: Improve calendar behat coverage
description: During the development of I have identified many use cases that are not covered by behat, that makes really hard to know if we are breaking something. Also, its a bit hard now to know what is the expected behaviour of some features of calendar, for example group event types.
9.summary: Calendar view selector enables users to switch between month, day and upcoming events
description: At the moment the whole page is reloaded when the user visit the day view. The idea is to convert that to AJAX refreshing the content without having to leave the page.
10.summary: Convert upcoming view to AJAX
description: At the moment the whole page is reloaded when the user visit the upcoming view. The idea is to convert that to AJAX refreshing the content without having to leave the page. We already have those pages in templates and we have some WS to fetch the data.
11.summary: Add support for drag/drop of events in the day view
description: Once is implemented, add the support for drag and drop events in the day view
12.summary: Calendar - Add drop-down lists for month/year
description: I think that it would be a good idea to add drop-down lists to select day/month/year for easier navigation. For example, in the month view, two drop-down lists could be added, one to select the month to be viewed and another to select the year. According to quote . Navigating months There is no easy way to jump to a specific month in the year other than to directly edit the URL variable for month "m=" : calendar/view.php?view=month&cal_d=1&cal_m=02&cal_y=2006quote Drop-down list should resolved this.
13.summary: Add unit tests for calendar_view_event_allowed()
description: We have introduced calendar_view_event_allowed() as part of the work in , but at that point we have not added any unit tests for that method. Since that method is used to define what the user can/cannot see in the calendar would be great to add some tests to cover that fuction.
