Fixed styling & added game server to profile #130
This commit is contained in:
@@ -3,6 +3,7 @@ import { Level, LevelFilter } from "./level.model";
|
||||
import { Server, ServerFilter } from "./server.model";
|
||||
import { UserJoinedServer } from "./user_joined_server.model";
|
||||
import { UserJoinedVoiceChannel } from "./user_joined_voice_channel.model";
|
||||
import { UserJoinedGameServer } from "./user_joined_game_server.model";
|
||||
|
||||
export interface User extends Data {
|
||||
id?: number;
|
||||
@@ -22,7 +23,7 @@ export interface User extends Data {
|
||||
joinedVoiceChannels?: UserJoinedVoiceChannel[];
|
||||
|
||||
userJoinedGameServerCount?: number;
|
||||
userJoinedGameServers?: [];
|
||||
userJoinedGameServers?: UserJoinedGameServer[];
|
||||
}
|
||||
|
||||
export interface UserFilter {
|
||||
|
11
kdb-web/src/app/models/data/user_joined_game_server.model.ts
Normal file
11
kdb-web/src/app/models/data/user_joined_game_server.model.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import { Data } from "./data.model";
|
||||
import { User } from "./user.model";
|
||||
|
||||
export interface UserJoinedGameServer extends Data {
|
||||
id: number;
|
||||
gameServer: string;
|
||||
user: User;
|
||||
time: number;
|
||||
joinedOn: string;
|
||||
leavedOn: string;
|
||||
}
|
@@ -122,6 +122,7 @@ export class Queries {
|
||||
userJoinedGameServers {
|
||||
id
|
||||
gameServer
|
||||
time
|
||||
joinedOn
|
||||
leavedOn
|
||||
}
|
||||
|
@@ -224,7 +224,7 @@
|
||||
|
||||
<ng-template pTemplate="emptymessage">
|
||||
<tr>
|
||||
<td colspan="7">{{'admin.auth_users.no_entries_found' | translate}}</td>
|
||||
<td colspan="9">{{'admin.auth_users.no_entries_found' | translate}}</td>
|
||||
</tr>
|
||||
</ng-template>
|
||||
|
||||
|
@@ -19,6 +19,7 @@ import { AuthRolePipe } from './pipes/auth-role.pipe';
|
||||
import { IpAddressPipe } from './pipes/ip-address.pipe';
|
||||
import { BoolPipe } from './pipes/bool.pipe';
|
||||
import { PanelMenuModule } from 'primeng/panelmenu';
|
||||
import { PanelModule } from "primeng/panel";
|
||||
|
||||
|
||||
|
||||
@@ -47,6 +48,7 @@ import { PanelMenuModule } from 'primeng/panelmenu';
|
||||
TranslateModule,
|
||||
DynamicDialogModule,
|
||||
PanelMenuModule,
|
||||
PanelModule,
|
||||
],
|
||||
exports: [
|
||||
ButtonModule,
|
||||
@@ -66,6 +68,7 @@ import { PanelMenuModule } from 'primeng/panelmenu';
|
||||
TranslateModule,
|
||||
DynamicDialogModule,
|
||||
PanelMenuModule,
|
||||
PanelModule,
|
||||
AuthRolePipe,
|
||||
IpAddressPipe,
|
||||
BoolPipe,
|
||||
|
@@ -238,7 +238,7 @@
|
||||
<ng-template pTemplate="emptymessage">
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<td colspan="7">{{'view.server.members.no_entries_found' | translate}}</td>
|
||||
<td colspan="10">{{'view.server.members.no_entries_found' | translate}}</td>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
</ng-template>
|
||||
|
@@ -77,51 +77,73 @@
|
||||
</div>
|
||||
|
||||
<div class="content-divider"></div>
|
||||
<div class="content-row">
|
||||
<h3>{{'view.server.profile.joined_voice_channel.header' | translate}}</h3>
|
||||
</div>
|
||||
|
||||
<div *ngFor="let join of user.joinedVoiceChannels;">
|
||||
<div class="content-row">
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_voice_channel.time' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.time}} {{'general.hours' | translate}}</div>
|
||||
</div>
|
||||
<p-panel header="{{'view.server.profile.joined_voice_channel.header' | translate}}" [toggleable]="true">
|
||||
<div *ngFor="let join of user.joinedVoiceChannels;">
|
||||
<div class="content-row">
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_voice_channel.time' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.time}} {{'general.hours' | translate}}</div>
|
||||
</div>
|
||||
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_voice_channel.channel' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.channelName}}</div>
|
||||
</div>
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_voice_channel.channel' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.channelName}}</div>
|
||||
</div>
|
||||
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_voice_channel.joined_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.joinedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'common.joined_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.joinedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_voice_channel.leaved_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.leavedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'common.leaved_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.leavedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="content-divider"></div>
|
||||
<div class="content-row">
|
||||
<h3>{{'view.server.profile.joined_server.header' | translate}}</h3>
|
||||
</div>
|
||||
</p-panel>
|
||||
<p-panel header="{{'view.server.profile.joined_game_server.header' | translate}}" [toggleable]="true">
|
||||
<div *ngFor="let join of user.userJoinedGameServers;">
|
||||
<div class="content-row">
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_game_server.time' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.time}} {{'general.hours' | translate}}</div>
|
||||
</div>
|
||||
|
||||
<div *ngFor="let join of user.joinedServers;">
|
||||
<div class="content-row">
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_server.joined_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.joinedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_game_server.name' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.gameServer}}</div>
|
||||
</div>
|
||||
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'view.server.profile.joined_server.leaved_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.leavedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'common.joined_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.joinedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'common.leaved_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.leavedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</p-panel>
|
||||
|
||||
<p-panel header="{{'view.server.profile.joined_server.header' | translate}}" [toggleable]="true">
|
||||
<div *ngFor="let join of user.joinedServers;">
|
||||
<div class="content-row">
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'common.joined_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.joinedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
|
||||
<div class="content-column">
|
||||
<div class="content-data-name">{{'common.leaved_at' | translate}}:</div>
|
||||
<div class="content-data-value">{{join.leavedOn | date:'dd.MM.yyyy HH:mm:ss'}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</p-panel>
|
||||
</div>
|
||||
</div>
|
||||
|
Reference in New Issue
Block a user