opt-cc/static/src/app/services/logs/logs.service.ts

72 lines
2.8 KiB
TypeScript

import {Injectable} from '@angular/core';
import {AppConfig} from '../../app.config';
import {HttpGateway} from '../http-gateway';
import {HttpParams} from '@angular/common/http';
@Injectable()
export class LogsService {
constructor(private httpGateway: HttpGateway,
private config: AppConfig) {
}
getFullLog(warId: string) {
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId);
}
getBudgetLogs(warId: string, fraction = '') {
const params = new HttpParams();
params.append('fraction', fraction);
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId + '/budget', params);
}
getRespawnLogs(warId: string, playerName = '') {
const params = new HttpParams();
params.append('player', playerName);
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId + '/respawn', params);
}
getPointsLogs(warId: string, fraction = '') {
const params = new HttpParams();
params.append('fraction', fraction);
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId + '/points', params);
}
getReviveLogs(warId: string, medicName = '', patientName = '', fraction = '', stabilizedOnly = false, reviveOnly = false) {
const params = new HttpParams();
params.append('medic', medicName);
params.append('patient', patientName);
params.append('fraction', fraction);
params.append('stabilized', stabilizedOnly ? 'true' : '');
params.append('revive', reviveOnly ? 'true' : '');
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId + '/revive', params);
}
getKillLogs(warId: string, shooterName = '', targetName = '', fraction = '', friendlyFireOnly = false, notFriendlyFireOnly = false) {
const params = new HttpParams();
params.append('shooter', shooterName);
params.append('target', targetName);
params.append('fraction', fraction);
params.append('friendlyFire', friendlyFireOnly ? 'true' : '');
params.append('noFriendlyFire', notFriendlyFireOnly ? 'true' : '');
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId + '/kills', params);
}
getTransportLogs(warId: string, driverName = '', passengerName = '', fraction = '') {
const params = new HttpParams();
params.append('driver', driverName);
params.append('passenger', passengerName);
params.append('fraction', fraction);
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId + '/transport', params);
}
getFlagLogs(warId: string, playerName = '', fraction = '', captureOnly = false, defendOnly = false) {
const params = new HttpParams();
params.append('player', playerName);
params.append('fraction', fraction);
params.append('capture', captureOnly ? 'true' : '');
params.append('defend', defendOnly ? 'true' : '');
return this.httpGateway.get(this.config.apiLogsPath + '/' + warId + '/flag', params);
}
}