Tool requirements

Information

This is the list of requirements for the resources viewer tool.

Requirements (phase 1)

  1. Works with resources only (for now)
  2. Initially a read-only viewer
    1. Provide a link over to the resources tool for editing/adding new resources
    2. Possibly allow adding new resources in the future
  3. Select a single "slice" or view of the resources data for this instance of the tool
    • Future: Possibly allow multiple slices in a single viewer tool?
    • Future: Possibly allow a search filter to determine the slice
    1. This would happen in the site setup or worksite setup
      • There would be a step to configure/setup the slice by selecting the resource(s) to view
      • Selection required to continue
    2. The slice can contain data that is not visible yet to a user or set of users
      • Use a configurable message as desired, default "No visible content to display" (question)
      • Future: Allow data from other sites: "Show other sites" at bottom
  4. Removing the tool removes all associated slices
    • Similar to the Web Content tool
  5. Configuration options
    1. Collection of resources
    2. View options
      1. Choose which of the following to render on the list page
        • Size
        • Author
        • Last modify date
      • Note: Description is ONLY rendered for the flat list
      1. Choose one rendering option for this instance of the tool
        1. Flat: Render all items flat (ignore subfolders) - include description
        2. Expanded: Render all items in a hierarchy view (fully expanded, cannot close)
        3. Expandable: Render items in current folder flat but include expandable subfolders
        4. Future: Render items in current folder with subfolders that become the current folder when clicked
        5. Future: Render all items flat including items in any subfolders
      • Admin chooses one of these to be the default for this Sakai instance
    3. Set "No content visible" message for this view
    4. Future: Styling or formatting for Title/Description/etc....
  6. Render a flat view of the resources or Render a hierarchical view of resources which allow navigation into subfolders (depends on setting)
  7. Display the following for each resource:
    1. Name (title) (required)
    2. Type (required)
    3. Description
    4. Size
    5. Author
    6. Last modify date
      • This is controllable via view options for this tool
  8. Future: Provide a way to deal with long lists of items
    1. Provide paging or search
    2. Use 15 items per page OR warn users when the list gets beyond a certain number of items
  9. Do ordering based on the ordering for a folder (as set in the resources tool)
    1. May require refactoring of the resources tool to work correctly
    2. Future: Also possibly allow ordering based on a custom setting in this tool
      1. Allow reordering using drag and drop functionality

Use Cases

  • An instructor wants to create an item in the "tool" menu (at the left side of the screen) labeled "Week 1" containing a list of resources relevant to the first week's lectures and readings for a course. The instructor adds a "ResourceViewer" tool to the site and names it "Week 1". The instructor then configures the tool. Because the instructor has maintainer permissions for the site, she sees a link labeled "Add" in the global menu for the tool. Clicking the "add" link brings up the resources attachment helper, allowing her to attach a link to any resource she has access to (in any site, if "see all sites" is enabled). It also allows her to create a new attachment. She can add multiple items if she chooses. The items do not have to be in the same folder in the resources tool. Clicking "finish" in the attachment helper returns the instructor to the ResourcesViewer. The item(s) she added are listed there. Next she can format the display. Maybe there's a "format" button in the tool's global menu. That allows her to pick what fields will be shown for each item in the list and maybe even relative font sizes. She can also define an order for the items in the list. The default order should be the order in which items were added to the list, but the maintainer has the ability to sort on any field and rearrange by moving items up or down in the list.