Skip to content

Inventory of all application views

kriscooke edited this page May 28, 2021 · 1 revision

Pages and shared components inventory, by scope

Link to each heading for details. Asterisk* denotes pages that require certain query parameters to be appended to the URL to prevent error.


Industry User

Industry users (reporters and certifiers) must log in using a user name or email address and are not expected to have an IDIR.

Reporter Dashboard: /reporter

View and request access to operators to apply for CIIP on behalf of.

Shared components:

  • Organisation (dropdown item in organisation search)

Facilities page, aka. "My Applications": /reporter/facilities

View facilities for operators to which the user has access and on behalf of which they can apply for CIIP. The listings provide links to the following actions for each facility:

  • a) start an application
  • b) resume an in-progress application
  • c) view a submitted application

Note: When navigating to this page via "My Applications", all applications from all the user's facilities and operators are listed. Otherwise when navigating here by clicking on an individual operator, this page shows just the applications for the facilities belonging to that operator.

Shared components:

  • SearchTable

New Application Disclaimer page: /reporter/new-application-disclaimer*

Interstitial page that collects the reporter's consent before allowing a new application to be started.

* Required query parameters:

  • applicationId
  • version

Application page: /reporter/application/[applicationId]*

A set of forms, displayed in sequential tabs, allowing reporters to apply for CIIP for a specified facility.

The form tab (ie: Emissions, etc.) initially displayed on loading this page is controlled by the value of the formId query parameter. Further, the page can be loaded to display the Summary tab by appending the parameter: confirmationPage=true instead of formId.

Form validation helps ensure the integrity of data entered before submission; however, this can be overridden by the reporter with a message justifying their reasons for not being able to fix the validation errors.

* Optional query parameters:

  • formId: if not present and confirmationPage is not true, the app will automatically set it to the first form's id
  • confirmationPage: if set to true and formId is not present, the app will display the Summary tab

Shared components:

  • FormSharedStyles
  • ApplicationDetailsContainer

Submission Complete page: /reporter/complete-submit

Interstitial page shown after submitting an application, which confirms the application has been successfully submitted.

View Submitted Application page: /reporter/application/[applicationId]/version/[versionNumber]/view*

View a submitted application, including comments made by the analyst who reviewed the applications.

Shared components:

  • ApplicationComments
  • ApplicationDetailsContainer

Analyst

Analysts must log in with IDIR. To gain access to this scope, new analyst users must:

  • log in using IDIR
  • be specifically granted analyst access in Keycloak by an admin

Pending Analyst page /analyst/pending

Displayed to users logged in with IDIR but who have not had analyst access granted to them in Keycloak. The user is informed that an admin will need to grant them access.

Analyst Dashboard /analyst

Links to all pages accessible from this scope (analyst and admin views), including external links to:

  • Metabase for data insights, aka. business intelligence
  • Issue tracker for reporting problems to the development team

Add Organisation page /analyst/add-organisation

Add a new operator (aka. organisation). Search and sort the list of existing operators and view their details, such as CRA Business Number and SWRS Report ID.

Shared components:

  • Organisation (dropdown item in organisation search)

Add Facility page /analyst/add-facility

Add a new facility belonging to an existing operator. Search and sort the list of existing facilities and view their details, such as Operator Name, facility type, BCGHG ID, and SWRS Report ID.

Organisation Access Requests page /analyst/organisation-requests

  • List all reporter requests for access to an operator and see access decisions (approved or rejected) on past requests.
  • Make access decisions by approving or rejecting requests.
  • Requests do not disappear after a decision is made and can be reset if it's later decided to change a given access decision.
  • List of requests is searchable and sortable by various attributes pertaining to the user, operator and request status.

Shared components:

  • SearchTable

Applications Admin page /analyst/applications

View all submitted applications. The list of applications is searchable and sortable by operator, facility, reporting year, submission date and status.

Shared components:

  • SearchTable

Application Review page /analyst/application-review*

Review a submitted application, section by section.

  • Compare the difference (diff) between application revisions and/or the imported data from SWRS
  • Enter comments by section for the reporter
    • comments are not visible to the reporter until a decision is made on the application as a whole
  • Add internal comments by section and flag sections internally for further attention by analysts
  • Delete comments or mark comments as resolved
  • Make a decision to approve or reject an application, or request that the reporter make changes
    • these decisions trigger an email to the reporter
  • Download the application as PDF

* Required query parameters:

  • applicationId
  • applicationRevisionId
  • version

Shared components:

  • ApplicationComments

Admin

Admins must log in with IDIR. To gain access to this scope, new admin users must:

  • log in using IDIR
  • be specifically granted admin access in Keycloak by an existing admin

Admin users have access to all the views listed under the analyst scope, plus the following:

Admin Dashboard /admin

Links to all pages accessible from this scope (analyst and admin views), including external links to:

  • Metabase for data insights, aka. business intelligence
  • Issue tracker for reporting problems to the development team

Users Admin page /admin/users

View a list of all users: their name, occupation, phone number and email address.

Products and Benchmarks admin page /admin/products-benchmarks

View and edit a list of products, with benchmarks.

  • Search and sort the list by product attributes
  • Define links between products that should be reported together
  • View product details
  • Edit product benchmarks
  • Create new products as a draft
  • Publish draft products
  • Archive published products

Shared components:

  • SearchTable

Reporting Periods admin page /admin/reporting-years

View reporting periods and their key dates, edit future dates, and create new reporting years. To ensure an accurate historical record, dates and times cannot be edited once they are past. A reporting period cannot be deleted once created; however, it can be edited provided that the dates and times are not past.

Shared components:

  • FormSharedStyles

All user roles (logged in)

Registration page /registration

Shown after SSO registration (which occurs offsite on the BCGov Keycloak service), this is the first page that a newly registered user sees on the website. It collects some additional information - phone number and occupation - not already covered in the SSO registration and redirects the user to their dashboard after submission.

User Profile page: /user/profile

View and change name, occupation, phone number and email address.


Guest/Public Scope (not logged in)

Home page /

Gives an overall introduction to CIIP, including key application dates and call to action to register and apply, or log in.

Shared components:

  • RegistrationLoginButtons
    • LoginButton

Login Redirect page /login-redirect*

* Query parameters are not actually required here to prevent an error, but this page is intended to be used in conjunction with a redirectTo parameter indicating the URL to redirect to after login.

Shared components:

  • RegistrationLoginButtons
    • LoginButton

CIIP Application Disclaimer /resources/application-disclaimer

Expanded view of the CIIP program-specific applicant disclaimer. Identical text is displayed in a scrollable area above the signature interface for certifiers. A link to this page is included in those views, and in the certification request email, for an easier reading experience.

Shared components:
  • LegalDisclaimerText

'Page Not Found' page (aka. 404)

Shown when an invalid URL is visited. Links back to the homepage (which in turn for logged-in users, redirects back to their dashboard).

403 page (temporary; handles redirection after registration bug) /403

Temporary page to handle a specific issue with newly registered users sometimes not being automatically logged in after registration. This directs the user to click "Login" at the top of the page to complete their journey.

Unknown Error page, aka. ErrorBoundary (any URL)

Displays an error message directing users to report the error to the development team at ggircs@gov.bc.ca. Some error details are provided, which the user can copy into their bug report.

Unlike the other error pages which handle HTTP error status codes (network-level errors), this handles errors that may have originated on either client or server. It's not truly a page, but rather a component that may be displayed on any other page when an error that breaks the client-side code is triggered.

Note: An exception is that client-side errors on outdated browsers unsupported by React and Next will not trigger display of this view; those users will see a blank page instead.

Static Text Pages nested within /resources folder:

BCGov-wide Website Disclaimer /resources/disclaimer

Boilerplate website disclaimer obtained from DevHub.

BCGov-wide Privacy Statement /resources/privacy

Boilerplate website privacy statement obtained from DevHub.

BCGov-wide Copyright Statement /resources/copyright

Boilerplate website copyright statement obtained from DevHub.

Contact page /resources/contact

Provides basic contact information (CAS email address) for website and application support.


Note on required query parameters:

Asterisk* denotes routes with required query parameters. Without certain parameters appended to the URL (providing some necessary data for the view) as key-value pairs, an error page will be shown. The expected parameters differ between pages, and multiple query parameters are separated by an & character. An example is the application page, which requires the following string to be appended to the end of the URL /reporter/application:

?applicationId=someID&version=1&formResultId=anotherID

In the next iteration of CIIP we aim for better compliance with REST conventions by replacing required query parameters with dynamic routes that employ route parameters instead, thus triggering a 404 when missing (as opposed to the current 500 error page).

Globally shared components

  • DefaultLayout
    • Header
    • Subheader (only on a subset of pages)
    • Footer
  • LoadingSpinner
  • ToasterHelper
  • ErrorBoundary
  • PageRedirectHandler
Clone this wiki locally