Moodle
  1. Moodle
  2. MDL-16888

Add an option to show/hide list/single view

    Details

    • Affected Branches:
      MOODLE_20_STABLE
    • Rank:
      365

      Description

      In some cases only list or single views are needed. If we add an option to show/hide the views the database is easier to use.

        Issue Links

          Activity

          Hide
          Eloy Lafuente (stronk7) added a comment -

          Assigning to Martin for his consideration. Sounds like a good feature for me (to control which tabs are available). +1

          Show
          Eloy Lafuente (stronk7) added a comment - Assigning to Martin for his consideration. Sounds like a good feature for me (to control which tabs are available). +1
          Hide
          Anthony Borrow added a comment -

          Ralf - I am trying to imagine a scenario where not providing the option for single or list views would be helpful. Can you give me specific scenario that demonstrates how the hiding option would be actually useful. My gut tells me this might be a slight feature bloat but I am certainly open to your experience and ideas. Peace - Anthony

          Show
          Anthony Borrow added a comment - Ralf - I am trying to imagine a scenario where not providing the option for single or list views would be helpful. Can you give me specific scenario that demonstrates how the hiding option would be actually useful. My gut tells me this might be a slight feature bloat but I am certainly open to your experience and ideas. Peace - Anthony
          Hide
          Ralf Hilgenstock added a comment -

          Hi Anthony,

          I'm thinking mostly about very small databases like file upload, bibliography or a web link list. In this cases often you have only 2 or 3 fields in the database and you can show all elements in the list view.

          The single view needs additional editings by the teacher and thats not so easy. Actually they have to understand the HTML-concept of creating tables. A standard teacher can't do this. But this is a usabilty problem.

          If you have two tabs with the same content it may be confusing for students. The option for list view and single view is sensefull if you have lots of fields in the database, longer texts or pictures. But its not sensefull if you have only a few fields.

          Ralf

          Show
          Ralf Hilgenstock added a comment - Hi Anthony, I'm thinking mostly about very small databases like file upload, bibliography or a web link list. In this cases often you have only 2 or 3 fields in the database and you can show all elements in the list view. The single view needs additional editings by the teacher and thats not so easy. Actually they have to understand the HTML-concept of creating tables. A standard teacher can't do this. But this is a usabilty problem. If you have two tabs with the same content it may be confusing for students. The option for list view and single view is sensefull if you have lots of fields in the database, longer texts or pictures. But its not sensefull if you have only a few fields. Ralf
          Hide
          Anthony Borrow added a comment -

          Ralf - Thanks for the explanation as it makes sense. I agree that the whole template structure is not simple enough for teachers but that is another issue. I think we would need to study how folks are using it. The nice thing about the HTML is that it does give a pretty good deal of flexibility and control to the user which we will not want to give up but if we can simultaneously make it more automated to setup that would be a good thing. In any case, just to play a little devil's advocate, even on databases with only a few fields the list and single templates could be made the same so that the student's do not see a difference.This might be a useful comment in Docs (i.e. something along the lines of - "For databases with only a few fields, the entire record is viewable from the list view. In such cases, in order to avoid confusion for the student the teacher may find it helpful to make the list view and the single (detail) view appear identically. That way visually the student will not think they are look at or need to do something different." One simple way of implementing this would be to add a capability (or capabilities) View List, View Single and that way it could be handled with a role assignment. By default both would be on; however, a teacher could create an override and prevent that capability for a particular database. This is how the add entry is handled so it could easily enough be replicated to function with the other tabs. Peace - Anthony

          Show
          Anthony Borrow added a comment - Ralf - Thanks for the explanation as it makes sense. I agree that the whole template structure is not simple enough for teachers but that is another issue. I think we would need to study how folks are using it. The nice thing about the HTML is that it does give a pretty good deal of flexibility and control to the user which we will not want to give up but if we can simultaneously make it more automated to setup that would be a good thing. In any case, just to play a little devil's advocate, even on databases with only a few fields the list and single templates could be made the same so that the student's do not see a difference.This might be a useful comment in Docs (i.e. something along the lines of - "For databases with only a few fields, the entire record is viewable from the list view. In such cases, in order to avoid confusion for the student the teacher may find it helpful to make the list view and the single (detail) view appear identically. That way visually the student will not think they are look at or need to do something different." One simple way of implementing this would be to add a capability (or capabilities) View List, View Single and that way it could be handled with a role assignment. By default both would be on; however, a teacher could create an override and prevent that capability for a particular database. This is how the add entry is handled so it could easily enough be replicated to function with the other tabs. Peace - Anthony
          Hide
          Ralf Hilgenstock added a comment -

          Hi Anthony,

          you are playing devils advocat. Thought you came from the other side

          To show two times the same thing doesn't make sense for me. And for this teacher have to create the list view and to create a copy of html code to create three different parts and to add them in the other windows. No thats not a solution.

          I also disagree to handle the visibility of the tabs by capabilities. It should be much easier to handle for a teacher in the database settings. By default teachers don't have the capability to overwrite roles in courses.

          While reading your text I got a new idea how to handle the list view much better. The teacher gets a list of the elements in the database and can tick and order them how they should be visible in a list. Not ticked elements are not visible in the list view. Ordering can be done in a similar way like in test module for questions. After saving this settings moodle creates automatically the HTML code for the list. Interested teachers can then go to the code and add additional functions via CSS.

          If we think more about this it should be possible to create a better model for the single view also.

          Show
          Ralf Hilgenstock added a comment - Hi Anthony, you are playing devils advocat. Thought you came from the other side To show two times the same thing doesn't make sense for me. And for this teacher have to create the list view and to create a copy of html code to create three different parts and to add them in the other windows. No thats not a solution. I also disagree to handle the visibility of the tabs by capabilities. It should be much easier to handle for a teacher in the database settings. By default teachers don't have the capability to overwrite roles in courses. While reading your text I got a new idea how to handle the list view much better. The teacher gets a list of the elements in the database and can tick and order them how they should be visible in a list. Not ticked elements are not visible in the list view. Ordering can be done in a similar way like in test module for questions. After saving this settings moodle creates automatically the HTML code for the list. Interested teachers can then go to the code and add additional functions via CSS. If we think more about this it should be possible to create a better model for the single view also.
          Hide
          Anthony Borrow added a comment -

          Ralf - Well I may have started trying to be devil's advocate but felt myself being converted in the process Thinking about it further, I also agree that capabilities is not the way to go as we want it to be simple for the teachers. Let's keep kicking it around and see what ideas come forth. Peace - Anthony

          Show
          Anthony Borrow added a comment - Ralf - Well I may have started trying to be devil's advocate but felt myself being converted in the process Thinking about it further, I also agree that capabilities is not the way to go as we want it to be simple for the teachers. Let's keep kicking it around and see what ideas come forth. Peace - Anthony
          Hide
          Anthony Borrow added a comment -

          Added this as being related to usability and would be interested in Olli's input on this and how it relates to the usability guidelines. Peace - Anthony

          Show
          Anthony Borrow added a comment - Added this as being related to usability and would be interested in Olli's input on this and how it relates to the usability guidelines. Peace - Anthony
          Hide
          Olli Savolainen added a comment -

          Thanks, Anthony. Did not get into this much detail in the UI guidelines/consistency project of 2009 though. Hopefully in a later project!

          Show
          Olli Savolainen added a comment - Thanks, Anthony. Did not get into this much detail in the UI guidelines/consistency project of 2009 though. Hopefully in a later project!
          Hide
          Anthony Borrow added a comment -

          Thank Olli! As I think about this more, we are really talking about limiting functionality that in most cases is useful. On the conceptual level you want to be able to view either a single entry or multiple entries. Even though setting up is not as simple as it could be and we can work on improving that I am back to thinking that this might not be a good idea. My concern would be that the option to hide either single or list only complicates the interface and will then lead to confusion as to why someone cannot view it. My gut is back to telling me that this may not be a good idea but I would be willing to be convinced. Also, developing a patch should not be that difficult either. I would probably recommend adding a field to the data table - perhaps something like hidetab that would default to 0. When set to 1 it would hide the single view and when set to 2 it would hide the list view. Then we only need to check for $data->hidetab before displaying. Ralf, does that sound along the lines of what you might hope for? Peace - Anthony

          Show
          Anthony Borrow added a comment - Thank Olli! As I think about this more, we are really talking about limiting functionality that in most cases is useful. On the conceptual level you want to be able to view either a single entry or multiple entries. Even though setting up is not as simple as it could be and we can work on improving that I am back to thinking that this might not be a good idea. My concern would be that the option to hide either single or list only complicates the interface and will then lead to confusion as to why someone cannot view it. My gut is back to telling me that this may not be a good idea but I would be willing to be convinced. Also, developing a patch should not be that difficult either. I would probably recommend adding a field to the data table - perhaps something like hidetab that would default to 0. When set to 1 it would hide the single view and when set to 2 it would hide the list view. Then we only need to check for $data->hidetab before displaying. Ralf, does that sound along the lines of what you might hope for? Peace - Anthony
          Hide
          Matthew N added a comment -

          I agree with Ralf that when all of the fields can fit nicely in list view, there is no need to also have the single view. It would only be a matter of hiding the appropriate tabs of the module as we can already edit the list template to remove the link to the single view.

          The reason why I found this report is because I find that the "View Single" tab adds confusion for some users. It goes to the first entry in the database but in many cases the order of entries in the database is irrelevant and so to the user it seems like an arbitrary record is displayed. In my case I would like to hide the 'View Single' tab but allow the users to click the icon to see more info for a record from the list view without getting confused by clicking on 'View Single'.

          Show
          Matthew N added a comment - I agree with Ralf that when all of the fields can fit nicely in list view, there is no need to also have the single view. It would only be a matter of hiding the appropriate tabs of the module as we can already edit the list template to remove the link to the single view. The reason why I found this report is because I find that the "View Single" tab adds confusion for some users. It goes to the first entry in the database but in many cases the order of entries in the database is irrelevant and so to the user it seems like an arbitrary record is displayed. In my case I would like to hide the 'View Single' tab but allow the users to click the icon to see more info for a record from the list view without getting confused by clicking on 'View Single'.
          Hide
          Olli Savolainen added a comment -

          I think Matthew nailed it.

          Actually, now that I think of it I think the conceptual difficulty is in the misuse of tabs here. You have a table of contents (with some details about each entry) and links to individual items. So this is in fact a hierarchy but the UI presents it as two structures that are on the same level.

          So I completely agree that the single views should be available, but I do not think it should have a tab of its own, since it is the tab I can not think of a usage scenario for it. A simple return link to the listing with next/prev navigation would probably work - not unlike most blogs, actually.

          In fact, now that I look at the tabs I do not think the database app has any reason to have any tabs, since none of the tabs comply to the metaphor of tabs. Add entry is a command, so it should simply have a command button with a separate page with a simple return link to the database, or maybe even a YUI dialog. Search should probably be a simple text field right on every page of the database (plus just a link to an advanced search form), like on most websites (this is a strong convention users are used to http://www.useit.com/alertbox/20040913.html and I believe this probably is not obsolete).

          I would like to take a further look at this and compare similar applications. Then a blasamiq mockup + iterative usability testing. No major change in functionality, I guess - perhaps maybe a new look at the HTML templating mentioned above?

          Not sure what is planned for this though, since Navigation 2.0 seems to mean tabs are going away anyway.

          Show
          Olli Savolainen added a comment - I think Matthew nailed it. Actually, now that I think of it I think the conceptual difficulty is in the misuse of tabs here. You have a table of contents (with some details about each entry) and links to individual items. So this is in fact a hierarchy but the UI presents it as two structures that are on the same level. So I completely agree that the single views should be available, but I do not think it should have a tab of its own, since it is the tab I can not think of a usage scenario for it. A simple return link to the listing with next/prev navigation would probably work - not unlike most blogs, actually. In fact, now that I look at the tabs I do not think the database app has any reason to have any tabs, since none of the tabs comply to the metaphor of tabs. Add entry is a command, so it should simply have a command button with a separate page with a simple return link to the database, or maybe even a YUI dialog. Search should probably be a simple text field right on every page of the database (plus just a link to an advanced search form), like on most websites (this is a strong convention users are used to http://www.useit.com/alertbox/20040913.html and I believe this probably is not obsolete). I would like to take a further look at this and compare similar applications. Then a blasamiq mockup + iterative usability testing. No major change in functionality, I guess - perhaps maybe a new look at the HTML templating mentioned above? Not sure what is planned for this though, since Navigation 2.0 seems to mean tabs are going away anyway.
          Hide
          Tomaz Lasic added a comment -

          Olli asked my view on this as a teacher, reposting from Jabber talk to a more permanent and expanded version

          As a teacher I only ever want to see the list, then have the little magnifying glass icon to take me to Single View (perhaps rename as Item View?).

          As far as editing List and Single goes ... if the fields could be moved up and down when setting them (Fields tab as it stands in 1.9.x), then have a box next to them to check if you want these items to appear on the List View that would do me just fine as a teacher in 90% of cases. All items would be also automatically appear in the Add template. Save and go, no tables and templates to set.

          Of course, it would be great to go back at any time and rearrange the fields in the order I want them to appear and which ones appear on the List.

          If I want to fool around with HTML and make it look pretty and all that, I'd have some kind of Advanced setting button that would take me to something like the current List, Single and Add Template editors.

          Show
          Tomaz Lasic added a comment - Olli asked my view on this as a teacher, reposting from Jabber talk to a more permanent and expanded version As a teacher I only ever want to see the list, then have the little magnifying glass icon to take me to Single View (perhaps rename as Item View?). As far as editing List and Single goes ... if the fields could be moved up and down when setting them (Fields tab as it stands in 1.9.x), then have a box next to them to check if you want these items to appear on the List View that would do me just fine as a teacher in 90% of cases. All items would be also automatically appear in the Add template. Save and go, no tables and templates to set. Of course, it would be great to go back at any time and rearrange the fields in the order I want them to appear and which ones appear on the List. If I want to fool around with HTML and make it look pretty and all that, I'd have some kind of Advanced setting button that would take me to something like the current List, Single and Add Template editors.
          Hide
          Olli Savolainen added a comment -

          This also seems to have come up in the accessibility review: MDL-20036 . Hope to iteratively redesign and user test.

          Show
          Olli Savolainen added a comment - This also seems to have come up in the accessibility review: MDL-20036 . Hope to iteratively redesign and user test.
          Hide
          Olli Savolainen added a comment -

          Anyway, thanks Tomaz, good to hear your view on this.

          Show
          Olli Savolainen added a comment - Anyway, thanks Tomaz, good to hear your view on this.
          Hide
          Eloy Lafuente (stronk7) added a comment -

          NOTE: This issue was assigned to the STABLE backlog without complete triaging process. Marking it as triaged, but with this note for future reference.

          Show
          Eloy Lafuente (stronk7) added a comment - NOTE: This issue was assigned to the STABLE backlog without complete triaging process. Marking it as triaged, but with this note for future reference.

            People

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

              Dates

              • Created:
                Updated: