Skip to content

General: Unify filter UI/UX #10058

Open
Open
@florian-glombik

Description

@florian-glombik

Problem & Motivation

Right now we have multiple different approaches to implement filters in Artemis, neither do they look, nor do they work in the same way. This should be unified for a better User Exprience in Artemis.

Identified approaches

Filter indicator Filter active Filter inactive Default Appearance Functionality example
Blue Text with "Link" appearance Blue, different icon Blue inactive Modal No filter set = show everything, Filter set = only show elements that satisfy the filter conditions
Student Exercise / Lecture overview Student Exercise / Lecture overview 1 Student Exercise / Lecture overview 2
Button Green Grey active Popup, overlay Not really a filter, rather a selection of what to include (no "filter" selected = no results)
Student Statistics view - Performance in Exercises Performance in Exercises 1 Performance in Exercises 2
Button Blue - cannot be inactive active Popup, overlay Only show elements that satisy the filter conditions (one option for everything)
Exercises < Scores (Instructor feature) Exercises Scores 1 Exercises Scores 2
Button Green Grey inactive Modal (grey Background) No filter set = show everything, Filter set = only show elements that satisfy the filter conditions
Server Administration > Build Overview > Build Queue (Admin Feature) Build Queue 1 Build Queue 2
Icon Black Black inactive Integrated in view No filter set = show everything, Filter set = only show elements that satisfy the filter conditions
Exercise Communication Filter (student view, when working on exercise) Exercise Communication Filter

Further examples

Student Exercise / Lecture overview Student Exercise / Lecture overview 1 Student Exercise / Lecture overview 2
Student Statistics view - Overall points Overall points 1 Overall points 2
Student Statistics view - Performance in Exercises Performance in Exercises 1 Performance in Exercises 2
Lecture Overview (Instructors) Lecture Overview (Instructors) 1 Lecture Overview (Instructors) 2
User Management (admin feature) User Management (admin feature) 1 User Management (admin feature) 2
Exercises < Scores (Instructor feature) Exercises Scores 1 Exercises Scores 2
Server Administration > Build Overview > Build Queue (Admin Feature) Build Queue 1 Build Queue 2
course statistics Course Statistics 1 Course Statistics 2
Exercise Communication Filter (student view, when working on exercise) Exercise Communication Filter

Describe the solution you'd like

  1. Discuss and develop an approach to filters that combines the advantages of the currently different approaches
  2. Introduce a shared component for opening filters
  3. Find a way to unify the appearance of modals, maybe there can be an abstract shared filter component that enforces some layout?
  4. Replace all occurrences of filters in Artemis with the unified approach from step 1
    Based on a search for faFilter
    • src/main/webapp/app/admin/user-management (3 results)
    • src/main/webapp/app/exercises/programming/manage/grading/feedback-analysis (3 results)
    • src/main/webapp/app/exercises/shared/exercise-scores (3 results)
    • src/main/webapp/app/faq (3 results)
    • src/main/webapp/app/lecture (3 results)
    • src/main/webapp/app/localci/build-queue (3 results)
    • src/main/webapp/app/overview/course-conversations (2 results)
    • src/main/webapp/app/overview/course-conversations/course-wide-search (3 results)
    • src/main/webapp/app/overview/course-faq (3 results)
    • src/main/webapp/app/overview/course-statistics (3 results)
    • src/main/webapp/app/overview/discussion-section (1 result)
    • src/main/webapp/app/overview/visualizations/exercise-scores-chart (3 results)
    • src/main/webapp/app/shared/exercise-filter (3 results)
    • src/main/webapp/app/shared/metis (2 results)
    • src/main/webapp/app/shared/sidebar (5 results)
    • src/main/webapp/app/shared/statistics-graph (3 results)

Additional context

Current Artemis Version: 7.8.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    assessmentPull requests that affect the corresponding moduleclientPull requests that update TypeScript code. (Added Automatically!)communicationPull requests that affect the corresponding modulecorePull requests that affect the corresponding modulediscussionexamPull requests that affect the corresponding moduleexercisePull requests that affect the corresponding modulelecturePull requests that affect the corresponding moduleprogrammingPull requests that affect the corresponding modulerefactoringtextPull requests that affect the corresponding moduleuser-experiencePull request / issue that affects the UI/UX within Artemis

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions