Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0
    • Fix Version/s: 2.0
    • Component/s: My home
    • Labels:
      None
    • Difficulty:
      Difficult
    • Affected Branches:
      MOODLE_20_STABLE
    • Fixed Branches:
      MOODLE_20_STABLE
    • Rank:
      35218

      Description

      Refer to http://moodle.org/mod/forum/discuss.php?d=122919

      This is the primary issue to handle what we can do to make My Moodle into a more customizable, social platform for Moodle.

      Key goals are:

      • it must be customisable by the user to show as little or as much as they want
      • it should be generic so it can be used by all Moodle institutions (this means working with the community to develop consensus where possible, otherwise options for different features)
      • it should be efficient on CPU and RAM
      1. Home Page.bmml
        3 kB
        Mike Churchward
      2. Home Page.bmml
        3 kB
        Mike Churchward
      3. Martin's My Moodle Mockups.bmml
        19 kB
        Martin Dougiamas
      4. mymoodle_fixes.patch
        2 kB
        Hubert Chathi
      5. mymoodle.tar.gz
        15 kB
        Hubert Chathi
      6. mymoodle.tar.gz
        15 kB
        Hubert Chathi
      7. MyMoodle-MessageCentre.bmml
        2 kB
        Mike Churchward
      8. MyMoodle-MessageCentre.bmml
        2 kB
        Mike Churchward
      9. MyMoodle-MessageCentre.bmml
        1 kB
        Mike Churchward
      10. MyMoodle-MyCourses.bmml
        1 kB
        Mike Churchward
      11. MyMoodle-MyCourses.bmml
        1 kB
        Mike Churchward
      12. MyMoodle-MyCourses.bmml
        2 kB
        Mike Churchward
      13. MyMoodle-profile.bmml
        2 kB
        Mike Churchward
      14. MyMoodle-profile.bmml
        2 kB
        Mike Churchward
      15. MyMoodle-profile.bmml
        2 kB
        Mike Churchward
      16. mymoodleprofile.patch
        120 kB
        Martin Dougiamas
      1. Home Page.png
        96 kB
      2. Martin's My Moodle Mockups.png
        283 kB
      3. MyMoodle-MessageCentre.png
        104 kB
      4. MyMoodle-MyCourses.png
        82 kB
      5. MyMoodle-profile.png
        85 kB

        Issue Links

          Activity

          Hide
          Mike Churchward added a comment -

          Added UI Mockup: <MyMoodle-profile>

          Show
          Mike Churchward added a comment - Added UI Mockup: <MyMoodle-profile>
          Hide
          Mike Churchward added a comment -

          Added UI Mockup: <MyMoodle-MyCourses>

          Show
          Mike Churchward added a comment - Added UI Mockup: <MyMoodle-MyCourses>
          Hide
          Petr Škoda added a comment -

          why does it look like current user profile page?

          Show
          Petr Škoda added a comment - why does it look like current user profile page?
          Hide
          Mike Churchward added a comment -

          Patience...
          I'm using the tool to create some mockups for discussion. I thought it best to start with known configurations and move of from there. Since the mockup tool is in JIRA, I have to create them here. I will create more, and then add some description about my thinking. There are many more to come.

          Show
          Mike Churchward added a comment - Patience... I'm using the tool to create some mockups for discussion. I thought it best to start with known configurations and move of from there. Since the mockup tool is in JIRA, I have to create them here. I will create more, and then add some description about my thinking. There are many more to come.
          Hide
          Petr Škoda added a comment -

          sure :-D

          Show
          Petr Škoda added a comment - sure :-D
          Hide
          Mike Churchward added a comment - - edited

          Added UI Mockup: <MyMoodle-MessageCentre>

          Mockups are to discuss possible 'page' plug-ins for the My Moodle interface. Moving to forum discussion http://moodle.org/mod/forum/discuss.php?d=122919#p539007

          Show
          Mike Churchward added a comment - - edited Added UI Mockup: <MyMoodle-MessageCentre> Mockups are to discuss possible 'page' plug-ins for the My Moodle interface. Moving to forum discussion http://moodle.org/mod/forum/discuss.php?d=122919#p539007
          Hide
          Minh-Tam Nguyen added a comment -

          I have been working towards something like the mockup for My Courses (collapsed details, user-determined order) as a customisation of myMoodle in 1.9.5. http://moodle.org/mod/forum/discuss.php?d=122236

          Show
          Minh-Tam Nguyen added a comment - I have been working towards something like the mockup for My Courses (collapsed details, user-determined order) as a customisation of myMoodle in 1.9.5. http://moodle.org/mod/forum/discuss.php?d=122236
          Hide
          Daniel Neis added a comment -

          Hello,

          here at Universidade Federal of Santa Catarina, we have developed a new feature to MyMoodle to let the user choose for which courses the overview will be showed.
          This selection persists only over the same session, starting with overview hide for all courses. The issue was linked as "will help resolve" this one.

          Show
          Daniel Neis added a comment - Hello, here at Universidade Federal of Santa Catarina, we have developed a new feature to MyMoodle to let the user choose for which courses the overview will be showed. This selection persists only over the same session, starting with overview hide for all courses. The issue was linked as "will help resolve" this one.
          Hide
          Martin Dougiamas added a comment -

          Mike, is this work still on your radar?

          I need to know really soon if we can expect to see any of this ready for 2.0 ...

          Show
          Martin Dougiamas added a comment - Mike, is this work still on your radar? I need to know really soon if we can expect to see any of this ready for 2.0 ...
          Hide
          Mike Churchward added a comment -

          Yes it is and yes you can. I apologize. We got sidetracked a bit, but this is still crucial to our work. I will get a design / development document on this within the next two weeks.

          Show
          Mike Churchward added a comment - Yes it is and yes you can. I apologize. We got sidetracked a bit, but this is still crucial to our work. I will get a design / development document on this within the next two weeks.
          Hide
          Martin Dougiamas added a comment -

          OK, we probably need to have this done and dusted in about 8 weeks or so.

          Show
          Martin Dougiamas added a comment - OK, we probably need to have this done and dusted in about 8 weeks or so.
          Hide
          Martin Dougiamas added a comment -

          Ping! Ping!

          Show
          Martin Dougiamas added a comment - Ping! Ping!
          Hide
          Martin Dougiamas added a comment -

          Zing!

          Show
          Martin Dougiamas added a comment - Zing!
          Hide
          Martin Dougiamas added a comment -

          Mike, if this is really not looking likely please let me know ... so I can reassign or do it myself

          Show
          Martin Dougiamas added a comment - Mike, if this is really not looking likely please let me know ... so I can reassign or do it myself
          Hide
          Mike Churchward added a comment - - edited

          Sorry Martin. We have been working on the spec. I'm sure we can get it done. I will post what we have by tomorrow.
          We will post our ideas in phases as well, so that the minimum requirements can definitely be met by release.

          Show
          Mike Churchward added a comment - - edited Sorry Martin. We have been working on the spec. I'm sure we can get it done. I will post what we have by tomorrow. We will post our ideas in phases as well, so that the minimum requirements can definitely be met by release.
          Hide
          Mike Churchward added a comment -

          Documenting our plans now... Should have them added today,.

          Show
          Mike Churchward added a comment - Documenting our plans now... Should have them added today,.
          Hide
          Mike Churchward added a comment -

          Added UI Mockup: <Home Page>

          Show
          Mike Churchward added a comment - Added UI Mockup: <Home Page>
          Hide
          Mike Churchward added a comment -

          I have added a wiki page at http://docs.moodle.org/en/Development:My_Moodle_Dev_Plans to describe the work. I will add the technical plans to that as well. Feel free to comment.

          Show
          Mike Churchward added a comment - I have added a wiki page at http://docs.moodle.org/en/Development:My_Moodle_Dev_Plans to describe the work. I will add the technical plans to that as well. Feel free to comment.
          Hide
          Hubert Chathi added a comment -

          I've updated Mike's wiki page to include some more concrete technical plans.

          Show
          Hubert Chathi added a comment - I've updated Mike's wiki page to include some more concrete technical plans.
          Hide
          Hubert Chathi added a comment -

          An update on progress:
          what is done:

          • MyMoodle has tabs/subpages (currently, only admin can create tabs – allowing users to create tabs introduces some policy questions that need to be addressed)
          • tabs can be private/public, and locked/unlocked
          • only admins can edit locked pages (globally) (add/remove blocks); users can edit unlocked pages for their own MyMoodle (needs more testing)
          • users can view the MyMoodle pages for other users (if they have sufficient privileges or the page is "public") – this makes MyMoodle able to function similarly to the "profile" page, or used for social networking-like functions
            what still needs to be done:
          • ability to delete/rename subpages
          • port the current MyMoodle course display to a block
          • add proper installation/upgrade information (capabilities, database schema, default tabs)
          • finish admin interface
          • port other profile functionality (profile, forum posts, blog posts, etc.) to a block
          • create new blocks for use with MyMoodle (ideas?)
          • create custom block manager so that blocks added site-wide actually show up site-wide by default
          Show
          Hubert Chathi added a comment - An update on progress: what is done: MyMoodle has tabs/subpages (currently, only admin can create tabs – allowing users to create tabs introduces some policy questions that need to be addressed) tabs can be private/public, and locked/unlocked only admins can edit locked pages (globally) (add/remove blocks); users can edit unlocked pages for their own MyMoodle (needs more testing) users can view the MyMoodle pages for other users (if they have sufficient privileges or the page is "public") – this makes MyMoodle able to function similarly to the "profile" page, or used for social networking-like functions what still needs to be done: ability to delete/rename subpages port the current MyMoodle course display to a block add proper installation/upgrade information (capabilities, database schema, default tabs) finish admin interface port other profile functionality (profile, forum posts, blog posts, etc.) to a block create new blocks for use with MyMoodle (ideas?) create custom block manager so that blocks added site-wide actually show up site-wide by default
          Hide
          Hubert Chathi added a comment -

          OK, formatting on that previous comment is slightly messed up, and I can't edit (should have used "preview"...). The "what still needs to be done:" line should be outdented.

          Show
          Hubert Chathi added a comment - OK, formatting on that previous comment is slightly messed up, and I can't edit (should have used "preview"...). The "what still needs to be done:" line should be outdented.
          Hide
          Martin Dougiamas added a comment -

          More plans and code are here: MDL-13583 Might be worth having a look at, Hubert.

          I'm just working on some new mockups based on the discussion today.

          Show
          Martin Dougiamas added a comment - More plans and code are here: MDL-13583 Might be worth having a look at, Hubert. I'm just working on some new mockups based on the discussion today.
          Hide
          Minh-Tam Nguyen added a comment -

          is it part of the plan to give users control over the order in which courses are listed? (ie will users be able to move Geography above Maths in MyMoodle-MyCourses.png if they think that order is more appropriate?)

          Show
          Minh-Tam Nguyen added a comment - is it part of the plan to give users control over the order in which courses are listed? (ie will users be able to move Geography above Maths in MyMoodle-MyCourses.png if they think that order is more appropriate?)
          Hide
          Martin Dougiamas added a comment -

          Adding my mockup from the hackfest. The details may change of course.

          Show
          Martin Dougiamas added a comment - Adding my mockup from the hackfest. The details may change of course.
          Hide
          Mike Churchward added a comment -

          Hi Minh-Tam. The course list will be a block and not specifically part of My Moodle. But, we will make sure that functional requests for that block will be addressed.

          Show
          Mike Churchward added a comment - Hi Minh-Tam. The course list will be a block and not specifically part of My Moodle. But, we will make sure that functional requests for that block will be addressed.
          Hide
          Martin Dougiamas added a comment -

          Trying another upload to fix the filetype

          Show
          Martin Dougiamas added a comment - Trying another upload to fix the filetype
          Hide
          Martin Dougiamas added a comment -

          Screenshots

          Show
          Martin Dougiamas added a comment - Screenshots
          Hide
          Martin Dougiamas added a comment -

          Hi Hubert Any progress on this?

          Show
          Martin Dougiamas added a comment - Hi Hubert Any progress on this?
          Hide
          Hubert Chathi added a comment -

          Hi Martin, I have one of my guys working on it. It took him a while to figure out the new Moodle 2.0 API (as expected), but he's making good progress on it. I'll put together a quick progress update later this week, after I review his current code.

          Show
          Hubert Chathi added a comment - Hi Martin, I have one of my guys working on it. It took him a while to figure out the new Moodle 2.0 API (as expected), but he's making good progress on it. I'll put together a quick progress update later this week, after I review his current code.
          Hide
          Mark Pearson added a comment -

          In response to Minh-Tam Nguyen's query about giving user's control over ordering the course list, Mike Churchward replied:
          > The course list will be a block and not specifically part of My Moodle. But, we will make sure that functional requests for that block will be addressed.

          Now I'm really confused. In the mockups above MyCourses has a separate tab and (presumably) displays the list of courses the user is enrolled in. How is this then a block?

          I am currently using Minh-Tam Nguyen's wonderful MyMoodle hack (http://tracker.moodle.org/browse/MDL-19430) which allows users to not only reorder courses in any way they choose but also to hide/reveal courses so that they can control which ones are always visible. This should not be too difficult to include in the version 2.0 system should it not?

          Show
          Mark Pearson added a comment - In response to Minh-Tam Nguyen's query about giving user's control over ordering the course list, Mike Churchward replied: > The course list will be a block and not specifically part of My Moodle. But, we will make sure that functional requests for that block will be addressed. Now I'm really confused. In the mockups above MyCourses has a separate tab and (presumably) displays the list of courses the user is enrolled in. How is this then a block? I am currently using Minh-Tam Nguyen's wonderful MyMoodle hack ( http://tracker.moodle.org/browse/MDL-19430 ) which allows users to not only reorder courses in any way they choose but also to hide/reveal courses so that they can control which ones are always visible. This should not be too difficult to include in the version 2.0 system should it not?
          Hide
          Hubert Chathi added a comment -

          Users will be able to configure My Moodle with different subpages. They can then configure each subpage to display blocks in whatever configuration of blocks they want.

          We will actually not be using tabs; we will instead be integrating with the navigation block. See Martin's mockups for the latest version of the My Moodle plans.

          Show
          Hubert Chathi added a comment - Users will be able to configure My Moodle with different subpages. They can then configure each subpage to display blocks in whatever configuration of blocks they want. We will actually not be using tabs; we will instead be integrating with the navigation block. See Martin's mockups for the latest version of the My Moodle plans.
          Hide
          Mark Pearson added a comment -

          Looking at Martin's MyMoodle mockups above, the dashboard has Course Overview as the central component. This is currently (1.9.x) also the central component of MyMoodle and the reason why we use it. People want to get to their most used courses with a single click. Will the Course Overview as shown in the Martin MyMoodle Mockup display the list of enrolled courses as it it seems to indicate. Shunting the list of enrolled courses to a side block on a secondary page or tab would be a UI mistake in my view. Minh-Tam's modifications are excellent because they allow users who may have dozens of enrolled courses to keep the most used ones visible at the top of the list.

          Show
          Mark Pearson added a comment - Looking at Martin's MyMoodle mockups above, the dashboard has Course Overview as the central component. This is currently (1.9.x) also the central component of MyMoodle and the reason why we use it. People want to get to their most used courses with a single click. Will the Course Overview as shown in the Martin MyMoodle Mockup display the list of enrolled courses as it it seems to indicate. Shunting the list of enrolled courses to a side block on a secondary page or tab would be a UI mistake in my view. Minh-Tam's modifications are excellent because they allow users who may have dozens of enrolled courses to keep the most used ones visible at the top of the list.
          Hide
          Hubert Chathi added a comment -

          My Moodle will support blocks in the centre column. In Martin's My Moodle mockup, there are three blocks visible in the centre column: "Course overview", "My Files", and "Friends".

          You will still be able to get the same end result with the new My Moodle code as you can get with the current My Moodle code. It's just that we will be using the blocks architecture to make the page more configurable, instead of hard-coding it to only show the list of courses.

          Show
          Hubert Chathi added a comment - My Moodle will support blocks in the centre column. In Martin's My Moodle mockup, there are three blocks visible in the centre column: "Course overview", "My Files", and "Friends". You will still be able to get the same end result with the new My Moodle code as you can get with the current My Moodle code. It's just that we will be using the blocks architecture to make the page more configurable, instead of hard-coding it to only show the list of courses.
          Hide
          Minh-Tam Nguyen added a comment -

          Thanks Hubert. To me it sounds like it's not planned to include course hiding/reordering capabilities in the 'Course Overview' by default, but you're thinking that someone will be able to add it back in afterwards on the basis of the block architecture (ie. rewriting MDL-1943 as a block).

          Show
          Minh-Tam Nguyen added a comment - Thanks Hubert. To me it sounds like it's not planned to include course hiding/reordering capabilities in the 'Course Overview' by default, but you're thinking that someone will be able to add it back in afterwards on the basis of the block architecture (ie. rewriting MDL-1943 as a block).
          Hide
          Hubert Chathi added a comment -

          We will probably just start off with just a duplication of the current "Course Overview" (with maybe minor improvements), at least for the initial release. After the initial release, we may try to incorporate some of the other feature requests in the tracker. At the same time, others are free to create their own blocks that add other features.
          Basically, as far as MDL-19430 goes, I'm not saying that it will never become part of Moodle. But it will probably not be in Moodle 2.0. And until it does become part of Moodle (if it does become a part of Moodle, which as always depends on demand for the changes, and manpower to maintain it), you can maintain your own version of the Course Overview block, which will be easier for others to add to their own Moodle site, since it will just be a block, rather than a patch.

          Here is an overview of the major steps for the current work:

          • finish off the "Dashboard" implementation (should have something available for public testing this week or next, though it will probably be in the form of a manual patch, plus a script to run for installation)
          • implement the "Course Overview" block (start with just a copy of what the current My Moodle does, and then integrate the enrolment system changes)
          • finish off the "Personal Profile" page (which will mostly be the same code as the "Dashboard" page)
          • triage all the current My Moodle bugs, implement all the "low hanging fruit", and look into the effort required for the important/popular requests
          Show
          Hubert Chathi added a comment - We will probably just start off with just a duplication of the current "Course Overview" (with maybe minor improvements), at least for the initial release. After the initial release, we may try to incorporate some of the other feature requests in the tracker. At the same time, others are free to create their own blocks that add other features. Basically, as far as MDL-19430 goes, I'm not saying that it will never become part of Moodle. But it will probably not be in Moodle 2.0. And until it does become part of Moodle (if it does become a part of Moodle, which as always depends on demand for the changes, and manpower to maintain it), you can maintain your own version of the Course Overview block, which will be easier for others to add to their own Moodle site, since it will just be a block, rather than a patch. Here is an overview of the major steps for the current work: finish off the "Dashboard" implementation (should have something available for public testing this week or next, though it will probably be in the form of a manual patch, plus a script to run for installation) implement the "Course Overview" block (start with just a copy of what the current My Moodle does, and then integrate the enrolment system changes) finish off the "Personal Profile" page (which will mostly be the same code as the "Dashboard" page) triage all the current My Moodle bugs, implement all the "low hanging fruit", and look into the effort required for the important/popular requests
          Hide
          Martin Dougiamas added a comment -

          Keen to test/review some stuff here!

          Show
          Martin Dougiamas added a comment - Keen to test/review some stuff here!
          Hide
          Mark Pearson added a comment -

          @Hubert:
          We will probably just start off with just a duplication of the current "Course Overview" (with maybe minor improvements), at least for the initial release. ......... But it will probably not be in Moodle 2.0. And until it does become part of Moodle (if it does become a part of Moodle, which as always depends on demand for the changes, and manpower to maintain it), you can maintain your own version of the Course Overview block, which will be easier for others to add to their own Moodle site, since it will just be a block, rather than a patch.

          I think that this is a mistake. Here's why. Let us assume that the majority of sites with Moodle in production are going to be migrating from version 1.9 to version 2. I don't think this is an unreasonable assumption since the number of sites coming to Moodle version 2 for the first time is likely to be quite small, especially in relation to the overall population of running Moodle sites. Now, we know that since the format for the course backup for v2 is incompatible with 1.x (for very good reasons I might add) the only way to get courses from v1.9 to v2 is by using the new code with an existing database. Thus we can be confident that many if not most of the moodle installations will have a population of users (faculty and students) who are enrolled in many courses. Thus the default user logging in to Moodle 2.0 with My Moodle switched on will be greeted with a long list of courses stretching down for several 'pages' with all the assignments/other activities visible. Even if this list is ordered by most recent course it will still entail much scrolling to locate the course that the user desires to enter. The primary function of MyMoodle (IMO) is to present the enrolled courses in a simple to access list – if the user has to scroll down the page every time to an arbitrary position this will quickly get tiresome and administrators will come under pressure to remove MyMoodle from being the default point of entry. Thus the MyMoodle Mockup graphic above is misleading; display 12 courses with assignments etc and you'll have a much better notion of what it'll look like at every logon to the average user. To conclude, I cannot see how the Course Overview will function adequately without the ability to reorder and hide courses, and hide/reveal activities in the course frame which is exactly what MDL-19430 achieves.

          Show
          Mark Pearson added a comment - @Hubert: We will probably just start off with just a duplication of the current "Course Overview" (with maybe minor improvements), at least for the initial release. ......... But it will probably not be in Moodle 2.0. And until it does become part of Moodle (if it does become a part of Moodle, which as always depends on demand for the changes, and manpower to maintain it), you can maintain your own version of the Course Overview block, which will be easier for others to add to their own Moodle site, since it will just be a block, rather than a patch. I think that this is a mistake. Here's why. Let us assume that the majority of sites with Moodle in production are going to be migrating from version 1.9 to version 2. I don't think this is an unreasonable assumption since the number of sites coming to Moodle version 2 for the first time is likely to be quite small, especially in relation to the overall population of running Moodle sites. Now, we know that since the format for the course backup for v2 is incompatible with 1.x (for very good reasons I might add) the only way to get courses from v1.9 to v2 is by using the new code with an existing database. Thus we can be confident that many if not most of the moodle installations will have a population of users (faculty and students) who are enrolled in many courses. Thus the default user logging in to Moodle 2.0 with My Moodle switched on will be greeted with a long list of courses stretching down for several 'pages' with all the assignments/other activities visible. Even if this list is ordered by most recent course it will still entail much scrolling to locate the course that the user desires to enter. The primary function of MyMoodle (IMO) is to present the enrolled courses in a simple to access list – if the user has to scroll down the page every time to an arbitrary position this will quickly get tiresome and administrators will come under pressure to remove MyMoodle from being the default point of entry. Thus the MyMoodle Mockup graphic above is misleading; display 12 courses with assignments etc and you'll have a much better notion of what it'll look like at every logon to the average user. To conclude, I cannot see how the Course Overview will function adequately without the ability to reorder and hide courses, and hide/reveal activities in the course frame which is exactly what MDL-19430 achieves.
          Hide
          Hubert Chathi added a comment -

          Hi Martin,
          I hope to have something ready for you to test in the next couple of days (or, I guess, the next few days for you, since you're a day ahead of us ). We have code that is working for the Dashboard view, but I have broken it, and am working on unbreaking it. Here are our current plans:

          • have a workable Dashboard and Personal Profile page for general consumption, but this will only be limited to having one page each, instead of having the "tabs" (or multiple pages) that we had talked about before. The code to support multiple pages is already mostly written, but we decided that we had enough issues to get feedback from the community about, that the multiple pages would just confuse the issue. (Should be available mid-week.)
          • after getting community feedback about the single-page version, release a version that allows users to have multiple dashboard pages (and multiple profile pages?) (availability depends on community feedback, obviously, but the multiple pages functionality will only take a couple of days to polish off)
          • triage of current My Moodle bugs
          Show
          Hubert Chathi added a comment - Hi Martin, I hope to have something ready for you to test in the next couple of days (or, I guess, the next few days for you, since you're a day ahead of us ). We have code that is working for the Dashboard view, but I have broken it, and am working on unbreaking it. Here are our current plans: have a workable Dashboard and Personal Profile page for general consumption, but this will only be limited to having one page each, instead of having the "tabs" (or multiple pages) that we had talked about before. The code to support multiple pages is already mostly written, but we decided that we had enough issues to get feedback from the community about, that the multiple pages would just confuse the issue. (Should be available mid-week.) after getting community feedback about the single-page version, release a version that allows users to have multiple dashboard pages (and multiple profile pages?) (availability depends on community feedback, obviously, but the multiple pages functionality will only take a couple of days to polish off) triage of current My Moodle bugs
          Hide
          Martin Dougiamas added a comment -

          Mark, I agree with you that the Course Overview should be a lot more collapsible/customisable than it is now, something along the lines of MDL-19430.

          Since some code exists already it might be pretty simple to use it in the new Course Overview block. If so I'll try to ensure it gets into 2.0 as standard.

          The nice thing with the new block structure is that these blocks can evolve independently of the main My Moodle pages, and people can create alternatives at any time.

          Show
          Martin Dougiamas added a comment - Mark, I agree with you that the Course Overview should be a lot more collapsible/customisable than it is now, something along the lines of MDL-19430 . Since some code exists already it might be pretty simple to use it in the new Course Overview block. If so I'll try to ensure it gets into 2.0 as standard. The nice thing with the new block structure is that these blocks can evolve independently of the main My Moodle pages, and people can create alternatives at any time.
          Hide
          Mark Pearson added a comment -

          Thanks a lot Martin. Having Blocks available for the central column adds a huge level of utility. It just takes some getting used to

          Show
          Mark Pearson added a comment - Thanks a lot Martin. Having Blocks available for the central column adds a huge level of utility. It just takes some getting used to
          Hide
          Minh-Tam Nguyen added a comment -

          Thanks Martin. I haven't seen the current structure of what Hubert is working on, but I guess I'll see if I can extract the code from MDL-19430 in to a block over the next month or so. There are two bugs and an enhancement to be added anyway.

          Show
          Minh-Tam Nguyen added a comment - Thanks Martin. I haven't seen the current structure of what Hubert is working on, but I guess I'll see if I can extract the code from MDL-19430 in to a block over the next month or so. There are two bugs and an enhancement to be added anyway.
          Hide
          Hubert Chathi added a comment -

          Hi Martin,
          I should be pretty much done the coding for the first phase. I just need to do a final run-through with Mike, document how the system works (along with current caveats), and create something so that it will install the database structures (without having to mess with the Moodle version). So I should have something ready for you to bang on by the time you wake up tomorrow morning.
          Hubert

          Show
          Hubert Chathi added a comment - Hi Martin, I should be pretty much done the coding for the first phase. I just need to do a final run-through with Mike, document how the system works (along with current caveats), and create something so that it will install the database structures (without having to mess with the Moodle version). So I should have something ready for you to bang on by the time you wake up tomorrow morning. Hubert
          Hide
          Ray Lawrence added a comment -

          Before we get too carried away with cenral blocks (and I could ) as they can only be implemented via themes not standard block config let's make sure we consider the needs of admins without access to server/themes.

          Show
          Ray Lawrence added a comment - Before we get too carried away with cenral blocks (and I could ) as they can only be implemented via themes not standard block config let's make sure we consider the needs of admins without access to server/themes.
          Hide
          Hubert Chathi added a comment -

          Ray: No, central blocks do not need any special theme support. They are implemented by the page itself. You will see how it works tomorrow, when we release the code.

          Show
          Hubert Chathi added a comment - Ray: No, central blocks do not need any special theme support. They are implemented by the page itself. You will see how it works tomorrow, when we release the code.
          Hide
          Hubert Chathi added a comment -

          I've attached mymoodle.tar.gz, which contains the code that we've written. It contains a readme.txt file that describes what it does, and how to install it. Please read it carefully, especially the warnings. I'm planning on making a screencast (tomorrow?) as well, which will hopefully explain how it works better than my readme file.

          Minh-Tam: the code you are interested in is in blocks/course_overview. Right now, it is basically just a copy-and-paste of the relevant bits of the old My Moodle code, which means that it shouldn't be too hard to adapt your code. However, Petr is changing the enrolment data tables, so the block will have to be adapted to use that. (I'm not sure if he's done that yet.)

          Show
          Hubert Chathi added a comment - I've attached mymoodle.tar.gz, which contains the code that we've written. It contains a readme.txt file that describes what it does, and how to install it. Please read it carefully, especially the warnings. I'm planning on making a screencast (tomorrow?) as well, which will hopefully explain how it works better than my readme file. Minh-Tam: the code you are interested in is in blocks/course_overview. Right now, it is basically just a copy-and-paste of the relevant bits of the old My Moodle code, which means that it shouldn't be too hard to adapt your code. However, Petr is changing the enrolment data tables, so the block will have to be adapted to use that. (I'm not sure if he's done that yet.)
          Hide
          Mike Churchward added a comment -

          Reviewed this with Hubert. All looks good and I think will provide the functional starting point we wanted.

          Some issues came up with sticky blocks in particular. I think this is related to the contexts that have to be used. We will need to discuss these.

          In particular:

          1. if I make a block sticky for a dashboard or profile page as an administrator, there is no way after that to make in un-sticky.
          2. If I make a block sticky for a dashboard or profile page as an administrator, a general user still seems to be able to move it around.

          These problems may be part of the new sticky block system? We couldn't find any place where blocks could be defined to be sticky in courses. Has this changed?

          Show
          Mike Churchward added a comment - Reviewed this with Hubert. All looks good and I think will provide the functional starting point we wanted. Some issues came up with sticky blocks in particular. I think this is related to the contexts that have to be used. We will need to discuss these. In particular: if I make a block sticky for a dashboard or profile page as an administrator, there is no way after that to make in un-sticky. If I make a block sticky for a dashboard or profile page as an administrator, a general user still seems to be able to move it around. These problems may be part of the new sticky block system? We couldn't find any place where blocks could be defined to be sticky in courses. Has this changed?
          Hide
          Hubert Chathi added a comment -

          Errata to my code: line 81 in user/profile.php should be changed to read "... 'private' => 0));" instead of "... 'private' => 1));". (0 instead of 1)

          Show
          Hubert Chathi added a comment - Errata to my code: line 81 in user/profile.php should be changed to read "... 'private' => 0));" instead of "... 'private' => 1));". (0 instead of 1)
          Hide
          Ray Lawrence added a comment -

          To Hubert: Hi, is this in HEAD yet. I can only see Left and Right in Region.

          Show
          Ray Lawrence added a comment - To Hubert: Hi, is this in HEAD yet. I can only see Left and Right in Region.
          Hide
          Hubert Chathi added a comment -

          Ray: No, this is not in HEAD yet. It is only in the tar file that I have uploaded to this issue, and it only applies to the My Moodle pages.

          Show
          Hubert Chathi added a comment - Ray: No, this is not in HEAD yet. It is only in the tar file that I have uploaded to this issue, and it only applies to the My Moodle pages.
          Hide
          Hubert Chathi added a comment -

          Screencast is available here: http://dl.dropbox.com/u/4986499/My%20Moodle%20screencast.ogg (It's an ogg theora video. You'll probably need VLC or something similar to play it.)

          Show
          Hubert Chathi added a comment - Screencast is available here: http://dl.dropbox.com/u/4986499/My%20Moodle%20screencast.ogg (It's an ogg theora video. You'll probably need VLC or something similar to play it.)
          Hide
          Hubert Chathi added a comment -

          I've had reports from some people saying that there is no audio in my screencast when viewed from the browser, but it is there when downloaded and viewed through VLC.

          Show
          Hubert Chathi added a comment - I've had reports from some people saying that there is no audio in my screencast when viewed from the browser, but it is there when downloaded and viewed through VLC.
          Hide
          Mark Pearson added a comment -

          The screencast works for me in Flock browser (Gecko) and also with VLC. (BTW, what s/w did you use to create this?)

          A couple of points. You chaps have done a lot of work here to add functionality. But it's hard to keep things simple enough for users to gain confidence to employ that functionality.

          First off, I think that my average faculty user will experience some cognitive dissonance when she sees 'My Moodle dashboard'. She'll be expecting a display like the My Moodle but she'll get a Dashboard. Shy not rename everything to 'My Dashboard' (which is the topmost title in the screencast) or perhaps 'Dashboard'? That way users will know up front that it's new and different.

          2. It's not clear to me why there's a 'Main profile page' and a 'View Profile' – both hidden underneath a pull-down triangle. User interface studies have shown in the past that many folks don't understand how to reveal stuff nested in that way. Why not enable editing on the View Profile and do away with 'Main profile page'?

          3. Are you going to implement Course hiding and Assignment hiding in the Course overview block?

          4. When to copy system defaults to user space :
          +1 for 'on user creation'

          5. Please keep this simple and easy to use. From experience with MyMoodle in versions 1.9 and previous, my guess is that very few, if any, users will bother to customize their dashboard away from the default. With this in mind I'd rather see a rock solid dashboard system with good performance than one with lots of frills.

          Thanks for all the hard work you're putting into this.
          Mark

          Show
          Mark Pearson added a comment - The screencast works for me in Flock browser (Gecko) and also with VLC. (BTW, what s/w did you use to create this?) A couple of points. You chaps have done a lot of work here to add functionality. But it's hard to keep things simple enough for users to gain confidence to employ that functionality. First off, I think that my average faculty user will experience some cognitive dissonance when she sees 'My Moodle dashboard'. She'll be expecting a display like the My Moodle but she'll get a Dashboard. Shy not rename everything to 'My Dashboard' (which is the topmost title in the screencast) or perhaps 'Dashboard'? That way users will know up front that it's new and different. 2. It's not clear to me why there's a 'Main profile page' and a 'View Profile' – both hidden underneath a pull-down triangle. User interface studies have shown in the past that many folks don't understand how to reveal stuff nested in that way. Why not enable editing on the View Profile and do away with 'Main profile page'? 3. Are you going to implement Course hiding and Assignment hiding in the Course overview block? 4. When to copy system defaults to user space : +1 for 'on user creation' 5. Please keep this simple and easy to use. From experience with MyMoodle in versions 1.9 and previous, my guess is that very few, if any, users will bother to customize their dashboard away from the default. With this in mind I'd rather see a rock solid dashboard system with good performance than one with lots of frills. Thanks for all the hard work you're putting into this. Mark
          Hide
          Hubert Chathi added a comment -

          Mark, thanks for the feedback.

          re: 1. Yes, naming is something that we can discuss. I should add that I am planning on having the system default dashboard default to being just like the current My Moodle page, so if the admins leave the default alone, users should not experience much cognitive dissonance.

          re: 2. The "Main profile page" is the new stuff. The "View Profile" is the "old" Moodle profile. (In the "Martin's My Moodle Mockups.png" mockup, the "Main profile page" corresponds to the middle image, and the "View Profile" corresponds to the image on the right.) We will need to figure out how to distinguish these two pages, and make things less confusing.

          re: 3. course/assignment hiding is not currently on my personal roadmap, but Martin said that he wants to get it into 2.0, so either I'll end up doing it, or someone else will.

          re: 4. I think we'll have to start a forum discussion on this issue.

          re: 5. Yes, I want to keep it easy to use, but flexible enough to do what people want to do with it. The bulk of the code is actually fairly simple – most of the complexity is handled already by the new page and block libraries. (That said, My Moodle will probably require some (minor) changes to those libraries in order to work properly.)

          Show
          Hubert Chathi added a comment - Mark, thanks for the feedback. re: 1. Yes, naming is something that we can discuss. I should add that I am planning on having the system default dashboard default to being just like the current My Moodle page, so if the admins leave the default alone, users should not experience much cognitive dissonance. re: 2. The "Main profile page" is the new stuff. The "View Profile" is the "old" Moodle profile. (In the "Martin's My Moodle Mockups.png" mockup, the "Main profile page" corresponds to the middle image, and the "View Profile" corresponds to the image on the right.) We will need to figure out how to distinguish these two pages, and make things less confusing. re: 3. course/assignment hiding is not currently on my personal roadmap, but Martin said that he wants to get it into 2.0, so either I'll end up doing it, or someone else will. re: 4. I think we'll have to start a forum discussion on this issue. re: 5. Yes, I want to keep it easy to use, but flexible enough to do what people want to do with it. The bulk of the code is actually fairly simple – most of the complexity is handled already by the new page and block libraries. (That said, My Moodle will probably require some (minor) changes to those libraries in order to work properly.)
          Hide
          Mark Pearson added a comment -

          Hubert – thanks for the quick response.

          When to copy system defaults: I think that this is a good question to throw open to the community so Forum discussion double plus good!

          Show
          Mark Pearson added a comment - Hubert – thanks for the quick response. When to copy system defaults: I think that this is a good question to throw open to the community so Forum discussion double plus good!
          Hide
          Martin Dougiamas added a comment -

          Somehow I missed the changes in the past couple of weeks! Just saw this, sorry.

          Thanks Hubert! I'm looking forward to giving this all a try!

          Show
          Martin Dougiamas added a comment - Somehow I missed the changes in the past couple of weeks! Just saw this, sorry. Thanks Hubert! I'm looking forward to giving this all a try!
          Hide
          Mike Churchward added a comment -

          Hi Martin -

          We are awaiting feedback. Have you been able to review the screen capture video and/or the code?

          Show
          Mike Churchward added a comment - Hi Martin - We are awaiting feedback. Have you been able to review the screen capture video and/or the code?
          Hide
          Hubert Chathi added a comment -

          Started a forum discussion here: http://moodle.org/mod/forum/discuss.php?d=147868

          Show
          Hubert Chathi added a comment - Started a forum discussion here: http://moodle.org/mod/forum/discuss.php?d=147868
          Hide
          Hubert Chathi added a comment -

          Updated patch for current Moodle 2.0 (as of Wednesday or so).

          Show
          Hubert Chathi added a comment - Updated patch for current Moodle 2.0 (as of Wednesday or so).
          Hide
          Martin Dougiamas added a comment -

          Working hard on this, expecting to be able to check in by tomorrow!

          Show
          Martin Dougiamas added a comment - Working hard on this, expecting to be able to check in by tomorrow!
          Hide
          Martin Dougiamas added a comment -

          My current development code

          Show
          Martin Dougiamas added a comment - My current development code
          Hide
          Martin Dougiamas added a comment -

          I'm checking this in NOW. Main difference to last patch is the userid is now NULL for system pages instead of zero, and some better checks here and there. Let's work on it further in HEAD.

          Show
          Martin Dougiamas added a comment - I'm checking this in NOW. Main difference to last patch is the userid is now NULL for system pages instead of zero, and some better checks here and there. Let's work on it further in HEAD.
          Hide
          Hubert Chathi added a comment - - edited

          Martin, I've attached a quick patch (mymoodle_fixes.patch) that fixes a few things:

          • makes the admin pages properly selected in the settings block
          • removes the block manager hack from the admin pages (it's only needed in the user pages – although I've talked with Tim H, and we may be trying a different approach for that later)
          • remove a couple stray print_objects
          • only copy non-sticky blocks (otherwise, they'll show up twice)

          Should I apply for CVS commit privileges?

          Show
          Hubert Chathi added a comment - - edited Martin, I've attached a quick patch (mymoodle_fixes.patch) that fixes a few things: makes the admin pages properly selected in the settings block removes the block manager hack from the admin pages (it's only needed in the user pages – although I've talked with Tim H, and we may be trying a different approach for that later) remove a couple stray print_objects only copy non-sticky blocks (otherwise, they'll show up twice) Should I apply for CVS commit privileges?
          Hide
          Martin Dougiamas added a comment -

          Thanks Hubert. Unfortunately we can't use admin_external_page because it changes the regions, but Sam is working on a fix.

          I actually deliberately removed the sticky blocks exclusion. The reason is because I added the pageid as the subpagepattern for all these blocks and this gets updated during the copy. It helps to think of stickyness on the system default page as meaning sticky for all the pages in this user's set of pages (for when we add more tabs).

          If admins want to make sure certain blocks always appear on all My Moodle pages then they should do it the same way they normally do for any part of the site which is to create sticky blocks for the whole site with NO subpagepattern and just a my-index pagetype.

          Show
          Martin Dougiamas added a comment - Thanks Hubert. Unfortunately we can't use admin_external_page because it changes the regions, but Sam is working on a fix. I actually deliberately removed the sticky blocks exclusion. The reason is because I added the pageid as the subpagepattern for all these blocks and this gets updated during the copy. It helps to think of stickyness on the system default page as meaning sticky for all the pages in this user's set of pages (for when we add more tabs). If admins want to make sure certain blocks always appear on all My Moodle pages then they should do it the same way they normally do for any part of the site which is to create sticky blocks for the whole site with NO subpagepattern and just a my-index pagetype.
          Hide
          Martin Dougiamas added a comment -

          Closing this. Start new bugs for new things.

          Show
          Martin Dougiamas added a comment - Closing this. Start new bugs for new things.

            People

            • Votes:
              23 Vote for this issue
              Watchers:
              30 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: