From 5d79474cc66383ecbfcef6366f63a34c3af21cbf Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 11 Apr 2019 10:56:29 +0200 Subject: Add debug component to help admins to fix IP issues --- .../app/+admin/system/debug/debug.component.html | 19 +++++++++++++ .../app/+admin/system/debug/debug.component.scss | 6 +++++ .../src/app/+admin/system/debug/debug.component.ts | 31 ++++++++++++++++++++++ .../src/app/+admin/system/debug/debug.service.ts | 25 +++++++++++++++++ client/src/app/+admin/system/debug/index.ts | 2 ++ 5 files changed, 83 insertions(+) create mode 100644 client/src/app/+admin/system/debug/debug.component.html create mode 100644 client/src/app/+admin/system/debug/debug.component.scss create mode 100644 client/src/app/+admin/system/debug/debug.component.ts create mode 100644 client/src/app/+admin/system/debug/debug.service.ts create mode 100644 client/src/app/+admin/system/debug/index.ts (limited to 'client/src/app/+admin/system/debug') diff --git a/client/src/app/+admin/system/debug/debug.component.html b/client/src/app/+admin/system/debug/debug.component.html new file mode 100644 index 000000000..f35414b37 --- /dev/null +++ b/client/src/app/+admin/system/debug/debug.component.html @@ -0,0 +1,19 @@ +
+

IP

+ +

PeerTube thinks your public IP is {{ debug?.ip }}.

+ +

If this is not your correct public IP, please consider fixing it because:

+ + +

To fix it:

+

+
diff --git a/client/src/app/+admin/system/debug/debug.component.scss b/client/src/app/+admin/system/debug/debug.component.scss new file mode 100644 index 000000000..90addd284 --- /dev/null +++ b/client/src/app/+admin/system/debug/debug.component.scss @@ -0,0 +1,6 @@ +@import '_variables'; +@import '_mixins'; + +.root { + font-size: 14px; +} diff --git a/client/src/app/+admin/system/debug/debug.component.ts b/client/src/app/+admin/system/debug/debug.component.ts new file mode 100644 index 000000000..8a77f79f7 --- /dev/null +++ b/client/src/app/+admin/system/debug/debug.component.ts @@ -0,0 +1,31 @@ +import { Component, OnInit } from '@angular/core' +import { Notifier } from '@app/core' +import { Debug } from '@shared/models/server' +import { DebugService } from '@app/+admin/system/debug/debug.service' + +@Component({ + templateUrl: './debug.component.html', + styleUrls: [ './debug.component.scss' ] +}) +export class DebugComponent implements OnInit { + debug: Debug + + constructor ( + private debugService: DebugService, + private notifier: Notifier + ) { + } + + ngOnInit (): void { + this.load() + } + + load () { + this.debugService.getDebug() + .subscribe( + debug => this.debug = debug, + + err => this.notifier.error(err.message) + ) + } +} diff --git a/client/src/app/+admin/system/debug/debug.service.ts b/client/src/app/+admin/system/debug/debug.service.ts new file mode 100644 index 000000000..6c722d177 --- /dev/null +++ b/client/src/app/+admin/system/debug/debug.service.ts @@ -0,0 +1,25 @@ +import { catchError } from 'rxjs/operators' +import { HttpClient } from '@angular/common/http' +import { Injectable } from '@angular/core' +import { Observable } from 'rxjs' +import { environment } from '../../../../environments/environment' +import { RestExtractor, RestService } from '../../../shared' +import { Debug } from '@shared/models/server' + +@Injectable() +export class DebugService { + private static BASE_DEBUG_URL = environment.apiUrl + '/api/v1/server/debug' + + constructor ( + private authHttp: HttpClient, + private restService: RestService, + private restExtractor: RestExtractor + ) {} + + getDebug (): Observable { + return this.authHttp.get(DebugService.BASE_DEBUG_URL) + .pipe( + catchError(err => this.restExtractor.handleError(err)) + ) + } +} diff --git a/client/src/app/+admin/system/debug/index.ts b/client/src/app/+admin/system/debug/index.ts new file mode 100644 index 000000000..7fc7a0721 --- /dev/null +++ b/client/src/app/+admin/system/debug/index.ts @@ -0,0 +1,2 @@ +export * from './debug.component' +export * from './debug.service' -- cgit v1.2.3