Moodle
  1. Moodle
  2. MDL-16798

Assign roles screen is a dead end when creating a course

    Details

    • Affected Branches:
      MOODLE_19_STABLE
    • Fixed Branches:
      MOODLE_19_STABLE

      Description

      When creating a course, you arrive at the Role assign page and hit a dead end. Needs:

      1) a "Continue to the course" button.
      2) some text to explain what is happening.

      at least.

        Gliffy Diagrams

        1. MDL-16798.diff
          1 kB
          Anthony Borrow
        2. MDL-16798.diff
          1 kB
          Anthony Borrow
        3. patch.diff
          1 kB
          Chris Bertagne

          Issue Links

            Activity

            Hide
            Anthony Borrow added a comment -

            Regarding #1 - A continue to course button would be nice; however, I think its not too much of a stretch to have them use the breadcrumb but a continue button to course is OK. Are there other places where we expect the user to use the breadcrumb or should we be providing some type of continue button on each page. As for #2, I find the text at the top of the page "Assign roles in Course: ..." to be sufficient. There is help button for those not familiar with the page but I find it to be fairly intuitive. FYI - I've heard that the students at Strake Jesuit are working on a patch for this to add the "Continue to the course" button. Peace - Anthony

            Show
            Anthony Borrow added a comment - Regarding #1 - A continue to course button would be nice; however, I think its not too much of a stretch to have them use the breadcrumb but a continue button to course is OK. Are there other places where we expect the user to use the breadcrumb or should we be providing some type of continue button on each page. As for #2, I find the text at the top of the page "Assign roles in Course: ..." to be sufficient. There is help button for those not familiar with the page but I find it to be fairly intuitive. FYI - I've heard that the students at Strake Jesuit are working on a patch for this to add the "Continue to the course" button. Peace - Anthony
            Hide
            Martin Dougiamas added a comment -

            I saw some usability tests done on this page with an eye tracker and newbies were just not seeing the navigation bar at the top ..

            I have to admit it does look really odd in the context of creating a course. You sort of expect a wizard type interface and it jars when you hit that second page...

            Show
            Martin Dougiamas added a comment - I saw some usability tests done on this page with an eye tracker and newbies were just not seeing the navigation bar at the top .. I have to admit it does look really odd in the context of creating a course. You sort of expect a wizard type interface and it jars when you hit that second page...
            Hide
            Chris Bertagne added a comment -

            I agree with Martin - the lack of some sort of button at the bottom is an inconsistency, but we're taking care of that. So is the consensus that we don't need any more informational text on this page?

            Show
            Chris Bertagne added a comment - I agree with Martin - the lack of some sort of button at the bottom is an inconsistency, but we're taking care of that. So is the consensus that we don't need any more informational text on this page?
            Hide
            Anthony Borrow added a comment -

            Chris - I suspect that we do not need more informational text. I would say start with adding the button and then we can evaluate the revised page to see if anything else would be helpful after the button is added. Would you and your team at Strake be willing to submit a patch? Peace - Anthony

            Show
            Anthony Borrow added a comment - Chris - I suspect that we do not need more informational text. I would say start with adding the button and then we can evaluate the revised page to see if anything else would be helpful after the button is added. Would you and your team at Strake be willing to submit a patch? Peace - Anthony
            Hide
            Chris Bertagne added a comment -

            So far we have the buttons on the page and they function correctly. We used the print_single_button() function to accomplish this. We also added two entries to the utf8 language strings for the two button's values and used the get_string() function to get them from the language strings. If we add entries to the English language, wouldn't all other languages need those two entries? If so, who's responsible for adding the new strings?

            Show
            Chris Bertagne added a comment - So far we have the buttons on the page and they function correctly. We used the print_single_button() function to accomplish this. We also added two entries to the utf8 language strings for the two button's values and used the get_string() function to get them from the language strings. If we add entries to the English language, wouldn't all other languages need those two entries? If so, who's responsible for adding the new strings?
            Hide
            Anthony Borrow added a comment -

            Chris - What strings did you create? Might we use continuetocourse? Personally I think that could be changed to say simply 'Continue to course' as the only place it is used is in /enrol/paypal/enrol.html and there it would be fine. I think the language is too wordy and makes it less flexible to be used in other places. In either case, to answer your question there are ways of handling the language strings but you do not have to worry about it. New strings are added by the translators of those language packs. Usually we try to let Koen (who handles translations know about what is happening) know by sending an email to translation@moodle.org if there is a significant change to a language string so that he can let the other translators know to update their language pack. Does that answer your question? Peace - Anthony

            Show
            Anthony Borrow added a comment - Chris - What strings did you create? Might we use continuetocourse? Personally I think that could be changed to say simply 'Continue to course' as the only place it is used is in /enrol/paypal/enrol.html and there it would be fine. I think the language is too wordy and makes it less flexible to be used in other places. In either case, to answer your question there are ways of handling the language strings but you do not have to worry about it. New strings are added by the translators of those language packs. Usually we try to let Koen (who handles translations know about what is happening) know by sending an email to translation@moodle.org if there is a significant change to a language string so that he can let the other translators know to update their language pack. Does that answer your question? Peace - Anthony
            Hide
            Chris Bertagne added a comment -

            If we did use continuetocouse (which we discovered accidentally), then we would still need another string for the button on the sub-page where the roles actually get assigned. We were thinking about something like "Back to Assign Roles", which would require an added string in the language file. Does that sound good?

            Show
            Chris Bertagne added a comment - If we did use continuetocouse (which we discovered accidentally), then we would still need another string for the button on the sub-page where the roles actually get assigned. We were thinking about something like "Back to Assign Roles", which would require an added string in the language file. Does that sound good?
            Hide
            Anthony Borrow added a comment -

            The more I think about it the less I like 'Continue to ...' and 'Return to ...' as they presume a flow as if the only way to get here were as part of creating a course. I think we are better served by sticking with action descriptions that will indicate where we will go when we click on a button. Nevertheless, I think Continue to course seems to work for the /admin/roles/assign.php page without a roleid. With a roleid, I think we could simply use get_string('assignrolesin', 'role', print_context_name($context)) to indicate that we will go back to assigning roles in the course. I think this might prevent you from having to create any new language strings. Peace - Anthony

            Show
            Anthony Borrow added a comment - The more I think about it the less I like 'Continue to ...' and 'Return to ...' as they presume a flow as if the only way to get here were as part of creating a course. I think we are better served by sticking with action descriptions that will indicate where we will go when we click on a button. Nevertheless, I think Continue to course seems to work for the /admin/roles/assign.php page without a roleid. With a roleid, I think we could simply use get_string('assignrolesin', 'role', print_context_name($context)) to indicate that we will go back to assigning roles in the course. I think this might prevent you from having to create any new language strings. Peace - Anthony
            Hide
            Chris Bertagne added a comment -

            Patch for bug MDL-16798.
            Button added on main "Assign Roles" page and each sub-page
            No extra informative text added because function is pretty self-explanatory.

            Show
            Chris Bertagne added a comment - Patch for bug MDL-16798 . Button added on main "Assign Roles" page and each sub-page No extra informative text added because function is pretty self-explanatory.
            Hide
            Anthony Borrow added a comment -

            Chris - Generally speaking, I would encourage you to avoid using relative paths (i.e. ../../) and opt for absolute paths when possible. For example, take a look at how /mod/forum/index.php uses the print_single_button with $CFG->wwwroot to give an absolute rather than a relative path. That way if things ever got shuffled around for some reason it would still work. I'm attaching an updated patch that makes use of $CFG->wwwroot. Peace - Anthony

            Show
            Anthony Borrow added a comment - Chris - Generally speaking, I would encourage you to avoid using relative paths (i.e. ../../) and opt for absolute paths when possible. For example, take a look at how /mod/forum/index.php uses the print_single_button with $CFG->wwwroot to give an absolute rather than a relative path. That way if things ever got shuffled around for some reason it would still work. I'm attaching an updated patch that makes use of $CFG->wwwroot. Peace - Anthony
            Hide
            Anthony Borrow added a comment -

            updated version using neutral paths and note that the continuetocourse string is in moodle.php not admin. Peace - Anthony

            Show
            Anthony Borrow added a comment - updated version using neutral paths and note that the continuetocourse string is in moodle.php not admin. Peace - Anthony
            Hide
            Ryan Smith added a comment -

            This is a great idea to fix. I've answered countless questions from confused users stuck on the assign roles page.

            Will this be added to 1.9.x soon?

            Show
            Ryan Smith added a comment - This is a great idea to fix. I've answered countless questions from confused users stuck on the assign roles page. Will this be added to 1.9.x soon?
            Hide
            Anthony Borrow added a comment -

            Ryan - Have you been able to test the attached patch file? It would be good to get some confirmation that it works. I know that Martin has been busy traveling around to the various Moodle Moots but if you could provide some feedback that would be helpful. Peace - Anthony

            Show
            Anthony Borrow added a comment - Ryan - Have you been able to test the attached patch file? It would be good to get some confirmation that it works. I know that Martin has been busy traveling around to the various Moodle Moots but if you could provide some feedback that would be helpful. Peace - Anthony
            Hide
            Ryan Smith added a comment -

            Anthony,

            I just tested patch.diff that was attached above. It works great! I was able to create a new course, it went to the assign roles page, then I clicked the button and it took me to the course. Simple, but greatly improves usability. The diff is missing the language string code change so the button isn't labeled...but that is an easy fix.

            Show
            Ryan Smith added a comment - Anthony, I just tested patch.diff that was attached above. It works great! I was able to create a new course, it went to the assign roles page, then I clicked the button and it took me to the course. Simple, but greatly improves usability. The diff is missing the language string code change so the button isn't labeled...but that is an easy fix.
            Hide
            Anthony Borrow added a comment -

            Ryan - Thanks for testing. Which patch file did you use? I should have been specific and said to use MDL-16798.diff. The 'continuetocourse' string should already be defined in /lang/en_utf8/moodle.php so there is no need to add it. The patch.diff file was originally submitted by a student and they had mistakenly used the /lang/en_utf8/admin.php file which does not have the string defined. So make sure you are using the right patch file and sorry for any confusion. Peace - Anthony

            Show
            Anthony Borrow added a comment - Ryan - Thanks for testing. Which patch file did you use? I should have been specific and said to use MDL-16798 .diff. The 'continuetocourse' string should already be defined in /lang/en_utf8/moodle.php so there is no need to add it. The patch.diff file was originally submitted by a student and they had mistakenly used the /lang/en_utf8/admin.php file which does not have the string defined. So make sure you are using the right patch file and sorry for any confusion. Peace - Anthony
            Hide
            Ryan Smith added a comment -

            I just tested MDL-16798.diff and it works great. It says 'Click here to enter your course'.

            Thanks for making this patch, it will solve a lot of confusion for new Moodle users.

            Show
            Ryan Smith added a comment - I just tested MDL-16798 .diff and it works great. It says 'Click here to enter your course'. Thanks for making this patch, it will solve a lot of confusion for new Moodle users.
            Hide
            Anthony Borrow added a comment -

            Martin - Feel free to re-assign this to me if you are too busy with travels. It's very straightforward. Peace - Anthony

            Show
            Anthony Borrow added a comment - Martin - Feel free to re-assign this to me if you are too busy with travels. It's very straightforward. Peace - Anthony
            Hide
            Martin Dougiamas added a comment -

            Thanks Anthony!

            Show
            Martin Dougiamas added a comment - Thanks Anthony!
            Hide
            Anthony Borrow added a comment -

            Tim has committed a different approach for HEAD while resolving MDL-16993 that I do not think would be easily backported to 1.9. I'm going to commit the patch attached here as an initial step toward Tim's more complete solution for 2.0. As a result, I'm tagging /admin/roles/assign.php as merged even though the changes are not applied in HEAD; however, the issue is resolved for HEAD just in a different way. Peace - Anthony

            Show
            Anthony Borrow added a comment - Tim has committed a different approach for HEAD while resolving MDL-16993 that I do not think would be easily backported to 1.9. I'm going to commit the patch attached here as an initial step toward Tim's more complete solution for 2.0. As a result, I'm tagging /admin/roles/assign.php as merged even though the changes are not applied in HEAD; however, the issue is resolved for HEAD just in a different way. Peace - Anthony
            Hide
            Anthony Borrow added a comment -

            Commited to 19STABLE, not merging with HEAD as Tim Hunt provides a more complete solution in response to MDL-16993. Resolving as fixed. Peace - Anthony

            Show
            Anthony Borrow added a comment - Commited to 19STABLE, not merging with HEAD as Tim Hunt provides a more complete solution in response to MDL-16993 . Resolving as fixed. Peace - Anthony
            Hide
            Nicolas Connault added a comment -

            Thanks for the fix, Anthony.

            Show
            Nicolas Connault added a comment - Thanks for the fix, Anthony.

              People

              • Votes:
                3 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: