Moodle
  1. Moodle
  2. MDL-39063

Improve usability of connecting to external backpacks

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.5
    • Fix Version/s: 2.5
    • Component/s: Badges
    • Testing Instructions:
      Hide

      There is an attachment with mock-ups for this improvement.

      Management of backpack settings is now moved from My Badges to its own page under "My profile settings > Badges > Backpack settings".

      An email specified in backpack settings is used for pushing badges. Users should not be able to push badges if there is no backpack connection established.

      Users can select more than one collection of external badges from their backpack to display them on profile page.

      Also this patch includes preferences page that manages default visibility of earned badges.

      Show
      There is an attachment with mock-ups for this improvement. Management of backpack settings is now moved from My Badges to its own page under "My profile settings > Badges > Backpack settings". An email specified in backpack settings is used for pushing badges. Users should not be able to push badges if there is no backpack connection established. Users can select more than one collection of external badges from their backpack to display them on profile page. Also this patch includes preferences page that manages default visibility of earned badges.
    • Affected Branches:
      MOODLE_25_STABLE
    • Fixed Branches:
      MOODLE_25_STABLE
    • Pull from Repository:
      git@github.com:totara/openbadges.git
    • Pull Master Branch:
    • Rank:
      49187

      Description

      It appears to be quite unclear to users how to work with external backpack.

      I think a workflow of setting up backpack connection, importing badges, and pushing badges to backpack should be improved.

        Issue Links

          Activity

          Hide
          Simon Coggins added a comment -

          The main problems with the current implementation are:

          1. The user can push badges to their backpack without connecting to a backpack if and only if their moodle email matches their backpack email, but that is not made clear in the interface.
          2. It is not possible to change your backpack email from the default moodle email, unless your backpack already has some public collections. This is unlikely to be true if you are first setting things up.

          This is a pretty significant usability issue. In the videos linked from this post:

          http://misterel72.blogspot.co.uk/2013/04/moodleopenbadges.html

          The user was unable to successfully connect to their backpack (http://www.screenr.com/Lv67). Eventually they succeeded but only by creating a new user account with an email that matched their backpack email (http://www.screenr.com/3v67).

          We have come up with an alternative approach which resolves both these problems and I think does a better job of guiding a user through the process and indicating what they need to do next.

          I'll attach the mockup of what we have come up with.

          Show
          Simon Coggins added a comment - The main problems with the current implementation are: The user can push badges to their backpack without connecting to a backpack if and only if their moodle email matches their backpack email, but that is not made clear in the interface. It is not possible to change your backpack email from the default moodle email, unless your backpack already has some public collections. This is unlikely to be true if you are first setting things up. This is a pretty significant usability issue. In the videos linked from this post: http://misterel72.blogspot.co.uk/2013/04/moodleopenbadges.html The user was unable to successfully connect to their backpack ( http://www.screenr.com/Lv67 ). Eventually they succeeded but only by creating a new user account with an email that matched their backpack email ( http://www.screenr.com/3v67 ). We have come up with an alternative approach which resolves both these problems and I think does a better job of guiding a user through the process and indicating what they need to do next. I'll attach the mockup of what we have come up with.
          Hide
          Yuliya Bozhko added a comment -

          User docs will be updated shortly.

          Show
          Yuliya Bozhko added a comment - User docs will be updated shortly.
          Hide
          Martin Dougiamas added a comment -

          It's a bit of a major patch with new tables but I would +1 this as a bugfix sooner rather than later.

          Integrators please note there are language string edits in here which translators may need to be made aware of.

          Show
          Martin Dougiamas added a comment - It's a bit of a major patch with new tables but I would +1 this as a bugfix sooner rather than later. Integrators please note there are language string edits in here which translators may need to be made aware of.
          Hide
          Martin Dougiamas added a comment -

          How ready is this? How confident are you that it won't have regressions?

          Show
          Martin Dougiamas added a comment - How ready is this? How confident are you that it won't have regressions?
          Hide
          Yuliya Bozhko added a comment -

          I think we finished everything that was planned for this bug. We are giving it a thorough internal review right now and will post updates shortly.

          Show
          Yuliya Bozhko added a comment - I think we finished everything that was planned for this bug. We are giving it a thorough internal review right now and will post updates shortly.
          Hide
          Simon Coggins added a comment -

          We have completed an internal review and pushed a few more minor fixes to the patch, so I would say it is ready now.

          The one thing I haven't done is run the behat tests as I don't have them set up, so I'm not sure if these UI changes will cause any failures of them.

          Simon

          Show
          Simon Coggins added a comment - We have completed an internal review and pushed a few more minor fixes to the patch, so I would say it is ready now. The one thing I haven't done is run the behat tests as I don't have them set up, so I'm not sure if these UI changes will cause any failures of them. Simon
          Hide
          Dan Poltawski added a comment -

          Adding Helen Foster and David Monllaó. I'm hoping to look at adding this change later today - as it would be better if we can release 2.5 with it. But it does mean its going to change what may have already been tested.

          Show
          Dan Poltawski added a comment - Adding Helen Foster and David Monllaó . I'm hoping to look at adding this change later today - as it would be better if we can release 2.5 with it. But it does mean its going to change what may have already been tested.
          Hide
          Helen Foster added a comment -

          Thanks for adding me as a watcher Dan.

          Just mentioning that it's no problem if the improvement changes what has already been tested, as we can always rewrite tests and then reset them and/or add new tests.

          Show
          Helen Foster added a comment - Thanks for adding me as a watcher Dan. Just mentioning that it's no problem if the improvement changes what has already been tested, as we can always rewrite tests and then reset them and/or add new tests.
          Hide
          Dan Poltawski added a comment -

          Hi Yuliya,

          This seems to be conflicting a lot, could you fix up the conflicts (upgrade.php ones are inevetable, but the other badges ones would be better you doing than me).

          thanks!

          remote: Counting objects: 63, done.
          remote: Compressing objects: 100% (3/3), done.
          remote: Total 33 (delta 30), reused 33 (delta 30)
          Unpacking objects: 100% (33/33), done.
          From github.com:totara/openbadges
           * branch            MDL-39063_master -> FETCH_HEAD
          Auto-merging lib/navigationlib.php
          Auto-merging lib/db/upgrade.php
          CONFLICT (content): Merge conflict in lib/db/upgrade.php
          Auto-merging lib/badgeslib.php
          Auto-merging badges/renderer.php
          CONFLICT (content): Merge conflict in badges/renderer.php
          Auto-merging badges/mybackpack.php
          CONFLICT (content): Merge conflict in badges/mybackpack.php
          Auto-merging badges/edit_form.php
          CONFLICT (content): Merge conflict in badges/edit_form.php
          Auto-merging badges/backpack_form.php
          CONFLICT (content): Merge conflict in badges/backpack_form.php
          Automatic merge failed; fix conflicts and then commit the result.
          
          Show
          Dan Poltawski added a comment - Hi Yuliya, This seems to be conflicting a lot, could you fix up the conflicts (upgrade.php ones are inevetable, but the other badges ones would be better you doing than me). thanks! remote: Counting objects: 63, done. remote: Compressing objects: 100% (3/3), done. remote: Total 33 (delta 30), reused 33 (delta 30) Unpacking objects: 100% (33/33), done. From github.com:totara/openbadges * branch MDL-39063_master -> FETCH_HEAD Auto-merging lib/navigationlib.php Auto-merging lib/db/upgrade.php CONFLICT (content): Merge conflict in lib/db/upgrade.php Auto-merging lib/badgeslib.php Auto-merging badges/renderer.php CONFLICT (content): Merge conflict in badges/renderer.php Auto-merging badges/mybackpack.php CONFLICT (content): Merge conflict in badges/mybackpack.php Auto-merging badges/edit_form.php CONFLICT (content): Merge conflict in badges/edit_form.php Auto-merging badges/backpack_form.php CONFLICT (content): Merge conflict in badges/backpack_form.php Automatic merge failed; fix conflicts and then commit the result.
          Hide
          Yuliya Bozhko added a comment -

          Hi Dan,

          I assume you were getting conflicts in integration branch? I rebased my branch against integration master and updated tracker. Have a look if it works better for you now.

          Show
          Yuliya Bozhko added a comment - Hi Dan, I assume you were getting conflicts in integration branch? I rebased my branch against integration master and updated tracker. Have a look if it works better for you now.
          Hide
          Dan Poltawski added a comment -

          Ah - yes you are right, I forgot there were integrated bits and pieces which haven't been reeleased. Thanks.

          Show
          Dan Poltawski added a comment - Ah - yes you are right, I forgot there were integrated bits and pieces which haven't been reeleased. Thanks.
          Hide
          Dan Poltawski added a comment -

          Thanks Yuliya - I've integrated this now.

          There was a conflict with MDL-39132 which I hope i've solved successfully (as well as upgrade.php etc, but thats the way of master development). I also fixed trailing whitespace in upgrade.php.

          I noticed that there wasn't CSS changes for the new boostrap base theme - but it looks like none of the css has been moved to the bootstrap theme yet for badges so i'm going to create a new issue. I also thought that it would be advantageous to tighten up some of those CSS rules, again i'll put it in the other issue.

          Show
          Dan Poltawski added a comment - Thanks Yuliya - I've integrated this now. There was a conflict with MDL-39132 which I hope i've solved successfully (as well as upgrade.php etc, but thats the way of master development). I also fixed trailing whitespace in upgrade.php. I noticed that there wasn't CSS changes for the new boostrap base theme - but it looks like none of the css has been moved to the bootstrap theme yet for badges so i'm going to create a new issue. I also thought that it would be advantageous to tighten up some of those CSS rules, again i'll put it in the other issue.
          Hide
          Dan Poltawski added a comment -

          Created MDL-39162 for the CSS things.

          Show
          Dan Poltawski added a comment - Created MDL-39162 for the CSS things.
          Hide
          Yuliya Bozhko added a comment -

          Thanks Dan! I will have a look at the themes issue as I haven't actually done much with that

          Show
          Yuliya Bozhko added a comment - Thanks Dan! I will have a look at the themes issue as I haven't actually done much with that
          Hide
          Andrew Davis added a comment -

          I have partially tested this but may have to handball it to someone else to get it completed.

          Management of backpack settings is now moved from My Badges to its own page under "My profile settings > Badges > Backpack settings"

          Yep, that's fine.

          An email specified in backpack settings is used for pushing badges. Users should not be able to push badges if there is no backpack connection established.

          I have been able to enter my email and connect to an account on http://backpack.openbadges.org

          Users can select more than one collection of external badges from their backpack to display them on profile page.

          Here I run into trouble. I have no external badges. I download my badges from my Moodle site and attempted to upload them to http://backpack.openbadges.org/backpack/add however that gives me a "The connection was reset" error. Almost certainly a problem at their end rather than with us. I've tried repeatedly and always get the same thing.

          Also this patch includes preferences page that manages default visibility of earned badges.
          Presumably there are ultimately going to be more things on this page as having a preferences page with a single checkbox is a little odd.

          Also, it doesn't appear to work. When a user looks at their own profile page their badges are displayed regardless of whether or not "Automatically show badges I earn on my profile page" is checked. Am I misunderstanding how this should function?

          Show
          Andrew Davis added a comment - I have partially tested this but may have to handball it to someone else to get it completed. Management of backpack settings is now moved from My Badges to its own page under "My profile settings > Badges > Backpack settings" Yep, that's fine. An email specified in backpack settings is used for pushing badges. Users should not be able to push badges if there is no backpack connection established. I have been able to enter my email and connect to an account on http://backpack.openbadges.org Users can select more than one collection of external badges from their backpack to display them on profile page. Here I run into trouble. I have no external badges. I download my badges from my Moodle site and attempted to upload them to http://backpack.openbadges.org/backpack/add however that gives me a "The connection was reset" error. Almost certainly a problem at their end rather than with us. I've tried repeatedly and always get the same thing. Also this patch includes preferences page that manages default visibility of earned badges. Presumably there are ultimately going to be more things on this page as having a preferences page with a single checkbox is a little odd. Also, it doesn't appear to work. When a user looks at their own profile page their badges are displayed regardless of whether or not "Automatically show badges I earn on my profile page" is checked. Am I misunderstanding how this should function?
          Hide
          Yuliya Bozhko added a comment -

          Hi Andrew,

          The preferences page affects only newly earned badges as explained in the help string "This setting allows you to automatically set visibility of the newly earned badges." It doesn't affect old badges. As for whether it needs a separate page... Blogs have a separate page with number of posts preferences, so I don't see anything wrong with having a similar page for badges

          I will check on Mozilla backpack, but but you are probably right that it's on their side.

          Show
          Yuliya Bozhko added a comment - Hi Andrew, The preferences page affects only newly earned badges as explained in the help string "This setting allows you to automatically set visibility of the newly earned badges." It doesn't affect old badges. As for whether it needs a separate page... Blogs have a separate page with number of posts preferences, so I don't see anything wrong with having a similar page for badges I will check on Mozilla backpack, but but you are probably right that it's on their side.
          Hide
          Yuliya Bozhko added a comment - - edited

          Just to make sure, are you testing on localhost or your test site is available online? Badges use hosted assertions. Your web site should be available online for Mozilla backpack to connect to it and pull your assertion to the backpack.

          Show
          Yuliya Bozhko added a comment - - edited Just to make sure, are you testing on localhost or your test site is available online? Badges use hosted assertions. Your web site should be available online for Mozilla backpack to connect to it and pull your assertion to the backpack.
          Hide
          Andrew Davis added a comment -

          Ah. I am testing on localhost. I wondered if that was the problem.

          The preference makes sense now and is functioning correctly. Perhaps "Automatically show badges I earn on my profile page" could be something like "Automatically show new badges on my profile" or something similar. I suspect the current situation will cause confusion as many people, such as myself, will not read the help item. Anyhow, I'll leave it up to you to open a new MDL for the string change if you think it's appropriate.

          Show
          Andrew Davis added a comment - Ah. I am testing on localhost. I wondered if that was the problem. The preference makes sense now and is functioning correctly. Perhaps "Automatically show badges I earn on my profile page" could be something like "Automatically show new badges on my profile" or something similar. I suspect the current situation will cause confusion as many people, such as myself, will not read the help item. Anyhow, I'll leave it up to you to open a new MDL for the string change if you think it's appropriate.
          Hide
          Dan Poltawski added a comment -

          I think that can be passed, then? (will be further tested in QA)

          Show
          Dan Poltawski added a comment - I think that can be passed, then? (will be further tested in QA)
          Hide
          Dan Poltawski added a comment -

          Blooming Marvelous! It's time for a knees up - your changes are upstream!

          Thanks for making Moodle better!

          Toodle pip

          Show
          Dan Poltawski added a comment - Blooming Marvelous! It's time for a knees up - your changes are upstream! Thanks for making Moodle better! Toodle pip
          Hide
          Mary Cooch added a comment -

          Removing docs_required label as Yuliya's documentation has been copied over and added to in http://docs.moodle.org/25/en/Badges. Many thanks Yuliya

          Show
          Mary Cooch added a comment - Removing docs_required label as Yuliya's documentation has been copied over and added to in http://docs.moodle.org/25/en/Badges . Many thanks Yuliya

            People

            • Votes:
              2 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: