Commit 958e3e19 authored by Tom Käsler's avatar Tom Käsler

Merge branch 'prepare-1.3' into 'master'

Prepare 1.3

See merge request !405
parents 4b031087 0fdfa398
Pipeline #31697 canceled with stages
in 1 minute and 54 seconds
# Changelog
## 1.3
Changes to the role system:
* Removes the distinction between participant and lecturer on login
* Adds a user home where all related sessions are listed
* Adds a moderator role
Moderated comment board:
* Creators of sessions can add moderators (via room settings)
* Creators and moderators have access to the moderator board
* Two modes of moderating:
* Default: new comments are auto-acknowledged and are visible on the normal comment board
* Whitelist: new comments are only visible in the moderator board and need acknowledgement
Other Changes:
* Comments can now be marked as wrong
* Comments can get banned (to the moderator board, see above)
* User can delete his account
* Improve wording
**This version is brought to you by:**
Project management: Klaus Quibeldey-Cirkel
Lead programming: Tom "tekay" Käsler, Lukas Mauß
## 1.2.1
Bug Fixes:
* Fix icons in room view for both roles
......
# 1.3
## Improved role system
### Break up role concept by not needing to log into specific roles
### Moderators
- implement moderators that have the same access rights (without being able to delete the room) as the owner of a room
- add dialog to room to manage moderators
- add blacklist/whitelist mode for comments
- implement moderator view to monitor/manage incoming comments
# 1.4
## Performance improvements
- Production server performance analysis
- production server performance analysis
- improve on handling STOMP subscribtions
## Web Accessibility Initiative
## Barrier-free
- adhere to WCAG 2.1 for accessibility
# No version planned
# 1.5
## Configuration
- load some configs from the backend
## Bonus
- mark room as "bonus" on creation
- bonus rooms save the users id on comment and answer creation
## Tests
- add automated testing for use cases
## New feedback view
## Feedback
- implement a circle for the feedback
- add a freeze option to stop the feedback
## Message flow
- add message channels for domain objects
- channels provide information on new content, feedback, etc
## Content
- improve on the UX
- add a markup language for the text
- improve on the theme/style
{
"name": "arsnova-lite",
"version": "1.3.0-SNAPSHOT",
"version": "1.4.0-SNAPSHOT",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
......
{
"name": "arsnova-lite",
"version": "1.3.0-SNAPSHOT",
"version": "1.4.0-SNAPSHOT",
"license": "MIT",
"scripts": {
"ng": "ng",
......
......@@ -36,57 +36,66 @@
{{ 'room-page.moderators' | translate}}
</button>
</mat-menu>
<button mat-icon-button class="corner-icons" [matMenuTriggerFor]="settingsMenu">
<mat-icon class="corner-icon" matTooltip="{{ 'room-page.session-settings' | translate}}">settings</mat-icon>
</button>
<div fxLayout="column">
<button mat-icon-button class="corner-icons" [matMenuTriggerFor]="settingsMenu">
<mat-icon class="corner-icon" matTooltip="{{ 'room-page.session-settings' | translate}}">settings</mat-icon>
</button>
<button mat-icon-button class="corner-icons" routerLink="/creator/room/{{ room.shortId }}/statistics">
<mat-icon class="corner-icon" matTooltip="{{ 'room-page.answer-statistics' | translate}}">insert_chart
</mat-icon>
</button>
</div>
</div>
<mat-card-content *ngIf="room.description" fxLayoutAlign="center">
<h4>
{{ room.description.trim() }}
</h4>
</mat-card-content>
<mat-grid-list cols="{{viewModuleCount}}" rowHeight="1:1">
<mat-grid-tile>
<button mat-icon-button
routerLink="/creator/room/{{ room.shortId }}/comments">
<mat-icon matBadge="{{commentCounter}}" class="main-icon"
[ngClass]="{'desktop' : deviceType === 'desktop'}">question_answer</mat-icon>
<h3>{{ 'room-page.comments' | translate}}</h3> <!-- *ngIf="deviceType === 'desktop'" -->
</button>
</mat-grid-tile>
<mat-grid-tile *ngIf="moderationEnabled">
<button mat-icon-button routerLink="/moderator/room/{{ room.shortId }}/moderator/comments">
<mat-icon matBadge="{{moderatorCommentCounter}}" class="main-icon"
[ngClass]="{'desktop' : deviceType === 'desktop'}">gavel
</mat-icon>
<h3>{{ 'room-page.moderating-stream' | translate}}</h3> <!-- *ngIf="deviceType === 'desktop'" -->
</button>
</mat-grid-tile>
<!-- <mat-grid-tile>
<button mat-icon-button routerLink="/creator/room/{{ room.shortId }}/feedback-barometer">
<mat-icon class="smallerIcon" [ngClass]="{'desktop' : deviceType === 'desktop'}">thumbs_up_down
</mat-icon>
<h3 *ngIf="deviceType === 'desktop'">{{ 'room-page.live-feedback' | translate}}</h3>
</button>
</mat-grid-tile> -->
</mat-grid-list>
<!-- <mat-grid-list cols="2" rowHeight="2:1" class="second">
<mat-grid-tile>
<button mat-icon-button
routerLink="/creator/room/{{ room.shortId }}/create-content">
<mat-icon class="main-icon" [ngClass]="{'desktop' : deviceType === 'desktop'}">note_add</mat-icon>
<h3 *ngIf="deviceType === 'desktop'">{{ 'room-page.create-content' | translate}}</h3>
</button>
</mat-grid-tile>
<mat-grid-tile>
<button mat-icon-button routerLink="/creator/room/{{ room.shortId }}/statistics">
<mat-icon class="main-icon" [ngClass]="{'desktop' : deviceType === 'desktop'}">insert_chart</mat-icon>
<h3 *ngIf="deviceType === 'desktop'">{{ 'room-page.answer-statistics' | translate}}</h3>
</button>
</mat-grid-tile>
</mat-grid-list>
<div fxLayout="column" fxLayoutAlign="center">
<div fxLayout="row">
<span class="fill-remaining-space"></span>
<mat-grid-list cols="{{viewModuleCount}}" rowHeight="2:1">
<mat-grid-tile>
<button mat-icon-button routerLink="/creator/room/{{ room.shortId }}/comments">
<mat-icon matBadge="{{commentCounter}}" class="main-icon"
[ngClass]="{'desktop' : deviceType === 'desktop'}">question_answer
</mat-icon>
<h3 *ngIf="deviceType === 'desktop'">{{ 'room-page.comments' | translate}}</h3>
</button>
</mat-grid-tile>
<mat-grid-tile *ngIf="moderationEnabled">
<button mat-icon-button routerLink="/moderator/room/{{ room.shortId }}/moderator/comments">
<mat-icon matBadge="{{moderatorCommentCounter}}" class="main-icon"
[ngClass]="{'desktop' : deviceType === 'desktop'}">gavel
</mat-icon>
<h3 *ngIf="deviceType === 'desktop'">{{ 'room-page.moderating-stream' | translate}}</h3>
</button>
</mat-grid-tile>
</mat-grid-list>
<span class="fill-remaining-space"></span>
</div>
<div fxLayout="row">
<span class="fill-remaining-space"></span>
<mat-grid-list cols="2" rowHeight="2:1" class="second">
<mat-grid-tile>
<button mat-icon-button routerLink="/creator/room/{{ room.shortId }}/feedback-barometer">
<mat-icon class="main-icon" [ngClass]="{'desktop' : deviceType === 'desktop'}">thumbs_up_down
</mat-icon>
<h3 *ngIf="deviceType === 'desktop'">{{ 'room-page.live-feedback' | translate}}</h3>
</button>
</mat-grid-tile>
<mat-grid-tile>
<button mat-icon-button routerLink="/creator/room/{{ room.shortId }}/create-content">
<mat-icon class="main-icon" [ngClass]="{'desktop' : deviceType === 'desktop'}">note_add</mat-icon>
<h3 *ngIf="deviceType === 'desktop'">{{ 'room-page.create-content' | translate}}</h3>
</button>
</mat-grid-tile>
</mat-grid-list>
<span class="fill-remaining-space"></span>
</div>
</div>
<app-content-groups *ngIf="room && room.contentGroups" [contentGroups]="room.contentGroups"></app-content-groups> -->
<app-content-groups *ngIf="room && room.contentGroups" [contentGroups]="room.contentGroups"></app-content-groups>
</mat-card>
<div *ngIf="!isLoading && !room">{{ 'room-page.room-not-found' | translate }}</div>
......
......@@ -15,7 +15,7 @@ mat-card-content > :first-child {
}
.mat-icon-button {
width: 60%; // 100%
width: 60%;
height: 75%;
color: var(--primary)!important;
transition: all 0.3s;
......@@ -25,14 +25,16 @@ mat-card-content > :first-child {
}
.desktop {
font-size: 65px;
height: 65px;
width: 65px;
font-size: 80px;
height: 80px;
width: 80px;
margin-bottom: 5%;
}
.corner-icons {
width: 40px;
height: 40px;
margin-bottom: 5%;
}
.corner-icon {
......@@ -42,25 +44,11 @@ mat-card-content > :first-child {
line-height: 100%;
}
/*.main-icon{
.main-icon{
font-size: 60px;
height: 60px;
width: 60px;
line-height: 100%!important;
}*/
.main-icon{
font-size: 80px;
height: 80px;
width: 80px;
line-height: 100%!important;
}
.smallerIcon {
font-size: 55px;
height: 55px;
width: 55px;
line-height: 100%!important;
}
.room-short-id {
......@@ -72,6 +60,7 @@ mat-card-content > :first-child {
mat-grid-list {
margin-bottom: 5px !important;
width: 90%;
}
.second {
......@@ -98,6 +87,7 @@ h4 {
mat-card-header {
min-height: 80px;
height: 10%!important;
margin-bottom: 10%!important;
}
mat-card-title {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment