Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

User creates new Project.  They are redirected to the files tab Files Tab of the new (empty) projectProject

Each tab Tab is shown, and contains either instructions to get started (ie "There is no content. Please click Edit Wiki from the Tools menu.") or a button for adding content of that type.  

There are instructions in the help icons for each tab Tab header.


Use Cases:

User creates new project.  They will be shown the display options dialog.

User creates project, selects options to display, but adds no content.  They navigate away from the project and then return a few hours later.  The project should still display the selected tabs, even though they contain no content.

User returns to project after a long time, or using a different browser.  They initially selected tabs to display, but added no content to any of them.  They will be shown the display options dialog.

User wants to delete a tab from their project.  They must first delete all content within that tab, and then it will be automatically hidden.  Trying to hide the tab in the display options dialog will result in an error being shown (if the tab still contains content).

User wants to add a tab to their project.  They must select that tab from the display options dialog - which can be reached from the Tools menu.

...

  1. A user creates a Project which will have only a Wiki.  They want the Project to show just the Wiki without any Tabs or other distracting elements.
  2. A user creates a Project with a subset of features (i.e. a Wiki, Files, and tables). They want the Project to show those Tabs, but none of the other Tabs (Discussion, Docker, etc).


Goal:

To allow unnecessary content on a Project to be hidden.  In this case, unnecessary content refers to some subset of the Tabs for navigating between different parts of a Project.

A Tab will only be considered necessary, and thus shown to the user, if:

  1. There's associated content (for example, if a File has been uploaded to the Project then the Files tab will be shown).
  2. They have permission to Edit the Project, and they switched the "Project Display Option" for the Tab to ON.

In addition, if there is only one Tab that would be shown (because it has content, or has been switched to ON in the "Project Display Options"), then there will be no tabs.  It would be superfluous to render the lone tab when there are no other tabs to navigate to.


Proposed Design with Mockups:

Upon creating a new Project (or in the case where the counts for each tab , either in the cache or returned by the service call, are all 0), a dialog will be shown with a welcome message and switches to toggle on/off for selecting which elements to include in the project.  The user's selections will be cached, and this way the tabs selected will be rendered even though they do not have any content.  The cached selections will expire after one daysome amount of time.

The user must select at least one tab to display in order to submit.

...

In addition, if only one tab was selected by the creator, no tab section will be displayed.


Interactions between a user and the new design:

User creates new project.  They will be shown the display options dialog.

User creates project, selects options to display, but adds no content.  They navigate away from the project and then return a few hours later.  The project should still display the selected tabs, even though they contain no content.

User returns to project after a long time, or using a different browser.  They initially selected tabs to display, but added no content to any of them.  They will be shown the display options dialog.

User wants to delete a tab from their project.  They must first delete all content within that tab, and then it will be automatically hidden.  Trying to hide the tab in the display options dialog will result in an error being shown (if the tab still contains content).

User wants to add a tab to their project.  They must select that tab from the display options dialog - which can be reached from the Tools menu.