Definitions

  • Page: a usable instance owned by a single user, comprised of a page_layout along and gadgets assigned to the various regions.
  • PageLayout: a static definition of how regions are displayed on a page instance
  • PageTemplate: a static definition of how a page should be constructed (includes page_layout and widgets). A Page instance would be generated from a PageTemplate.
  • SubPage: ???
  • Workspace: A collection of pages owned by a single user (workspace is owned).

Proposal for a new page/workspace model that meets the following criteria:

  • Conceptual types of pages
    1. A dashboard or portal page. Currently called a user page, it is created and managed by a single user. People have expressed interest, or added functionality to: (a) SHARE: allow others to view, but not modify, the page as it exists (b) COPY: use this page as a starting point for new pages that are created by users
      2. A group, space or team page. A page where a group of users is responsible for managing the layouts data, and widgets on the page, but no single individual "owns" it. This page would have visibility permissions for other people not in the "group"
      3. A profile page. A page that contains gadgets and information about the current user and is intended to be viewed by anyone in the system. The page should be modifiable by the subject of the profile but this ability should be controlled administratively.
      4. An application page. A page with a set of widgets that are somehow statically defined and configured only for public access.
      5. An embedded page. A set of widgets rendered in a form suitable for embedding in external sites.
      6. (others)
  • Generic placeholder for implementation specific context (overlaps types of pages)
  • A way to define the initial set of widgets on a page and their relative position
  • A way to define visibility rules on sets of pages
  • User controlled layouts

User Stories

  • As a User I want to be able to save one of my current pages as a template for other people to create similar pages from.
  • As a User I want to be able to create a new page from an existing template by selecting a template from a "store-like" interface.
  • As a System Administrator I want to be able to create a PageTemplate that I can publish that is not customizable.
  • As a System Administrator I want to be able to publish a page to all/some users that they cannot remove from their workspace.
  • No labels