summaryrefslogtreecommitdiff
path: root/src/renderer/gameserver/server.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/renderer/gameserver/server.ts')
-rw-r--r--src/renderer/gameserver/server.ts88
1 files changed, 46 insertions, 42 deletions
diff --git a/src/renderer/gameserver/server.ts b/src/renderer/gameserver/server.ts
index 9bdfccd..edc7d01 100644
--- a/src/renderer/gameserver/server.ts
+++ b/src/renderer/gameserver/server.ts
@@ -1,58 +1,55 @@
-import GameServerProfile from './profile';
-import { shell, ipcRenderer } from 'electron';
-import { switchPage } from '../customEvents';
-import { NewsType } from './news';
-import { makeOnlineCounterList, OnlineListParser } from './onlineCount';
-import { socialLink } from './socialLink';
-import { PageController } from './serverView/controller';
+import GameServerProfile from "./profile";
+import { shell, ipcRenderer } from "electron";
+import { switchPage } from "../customEvents";
+import { NewsType } from "./news";
+import { makeOnlineCounterList, OnlineListParser } from "./onlineCount";
+import { socialLink } from "./socialLink";
+import { PageController } from "./serverView/controller";
export default class GameServer {
-
- public pageController:PageController;
+ public pageController: PageController;
constructor(
public profile: GameServerProfile,
public menuName: string,
public name: string,
- public shortDescription: string,// the server in 1-2 sentences
+ public shortDescription: string, // the server in 1-2 sentences
public newsPageUrl: string,
- public newsLatestPage: { url: string, type: NewsType },
- public backgrounds: { isVideo: boolean, file: string }[],
+ public newsLatestPage: { url: string; type: NewsType },
+ public backgrounds: { isVideo: boolean; file: string }[],
public icon: string,
public socialLinks: socialLink[],
public TOSLink: string,
- public OnlineList: { parser: OnlineListParser, url: string },
+ public OnlineList: { parser: OnlineListParser; url: string }
) {
this.pageController = new PageController(this);
}
getMenuEntry(): HTMLElement {
- const sidebarItem = document.createElement('div');
+ const sidebarItem = document.createElement("div");
sidebarItem.classList.add("sidebarItem");
//Online counter
- const OnlineCounterContainer = document.createElement('div');
+ const OnlineCounterContainer = document.createElement("div");
//OnlineCounterContainer.appendChild(makeOnlineCounterList(this));
sidebarItem.appendChild(OnlineCounterContainer);
//Title
- const title = document.createElement('div');
+ const title = document.createElement("div");
title.classList.add("title");
- const titleIMG = document.createElement('img');
+ const titleIMG = document.createElement("img");
titleIMG.src = `./media/server/${this.icon}`;
- const titleText = document.createElement('div');
+ const titleText = document.createElement("div");
titleText.innerText = this.menuName;
-
title.appendChild(titleIMG);
title.appendChild(titleText);
-
- title.addEventListener('click', () => {
- switchPage("SERVER", this.name, 'INFO');
+ title.addEventListener("click", () => {
+ switchPage("SERVER", this.name, "INFO");
});
- if (this.profile.address != 'noServer') {
+ if (this.profile.address != "noServer") {
let onlineBoxActive: boolean = false;
let onlineBoxSchouldBeActive: boolean = false;
let updateOnlineContainer = async () => {
@@ -65,11 +62,13 @@ export default class GameServer {
OnlineCounterContainer.appendChild(await makeOnlineCounterList(this));
}
console.log(onlineBoxSchouldBeActive);
- }
+ };
let SetUpdate = (state: boolean) => {
onlineBoxSchouldBeActive = state;
- setTimeout(() => { updateOnlineContainer(); }, 160);
+ setTimeout(() => {
+ updateOnlineContainer();
+ }, 160);
};
title.addEventListener("mouseover", () => {
@@ -92,21 +91,22 @@ export default class GameServer {
sidebarItem.appendChild(title);
//Collapsable
- const container = document.createElement('div');
+ const container = document.createElement("div");
container.classList.add("colapse");
- const info = document.createElement('div');
+ const info = document.createElement("div");
info.innerHTML = '<i class="fas fa-info fa-fw"></i>Information';
container.appendChild(info);
- info.addEventListener('click', () => {
+ info.addEventListener("click", () => {
switchPage("SERVER", this.name, "INFO");
});
- const news = document.createElement('div');
- news.innerHTML = '<i class="far fa-newspaper fa-fw"></i>News <i class="fas fa-external-link-alt" data-fa-transform="shrink-2"></i>';
+ const news = document.createElement("div");
+ news.innerHTML =
+ '<i class="far fa-newspaper fa-fw"></i>News <i class="fas fa-external-link-alt" data-fa-transform="shrink-2"></i>';
if (this.newsPageUrl && this.newsPageUrl !== null) {
- news.addEventListener('click', () => {
+ news.addEventListener("click", () => {
shell.openExternal(this.newsPageUrl);
});
} else {
@@ -115,24 +115,25 @@ export default class GameServer {
container.appendChild(news);
- const screenshots = document.createElement('div');
+ const screenshots = document.createElement("div");
screenshots.innerHTML = '<i class="fas fa-camera fa-fw"></i>Screenshots';
container.appendChild(screenshots);
- screenshots.addEventListener('click', () => {
+ screenshots.addEventListener("click", () => {
switchPage("SERVER", this.name, "SCREENSHOTS");
- })
- const preferences = document.createElement('div');
- if(this.profile.address != 'noServer'){
- preferences.innerHTML = '<i class="fas fa-sliders-h fa-fw"></i>Preferences';
- preferences.addEventListener('click', () => {
+ });
+ const preferences = document.createElement("div");
+ if (this.profile.address != "noServer") {
+ preferences.innerHTML =
+ '<i class="fas fa-sliders-h fa-fw"></i>Preferences';
+ preferences.addEventListener("click", () => {
switchPage("SERVER", this.name, "PREF");
});
container.appendChild(preferences);
}
sidebarItem.appendChild(container);
//event Target / interactivity
- const events = document.createElement('span');
+ const events = document.createElement("span");
events.classList.add("switch-page-event");
events.addEventListener("site-changed", (event: CustomEvent) => {
sidebarItem.classList.remove("selected");
@@ -140,7 +141,10 @@ export default class GameServer {
//news.classList.remove("selected");
screenshots.classList.remove("selected");
preferences.classList.remove("selected");
- if (event.detail.sitetype === "SERVER" && event.detail.page === this.name) {
+ if (
+ event.detail.sitetype === "SERVER" &&
+ event.detail.page === this.name
+ ) {
sidebarItem.classList.add("selected");
// if(event.detail.subPage === "NEWS") {
// news.classList.add("selected");
@@ -163,6 +167,6 @@ export default class GameServer {
const args: any = JSON.parse(JSON.stringify(this.profile));
args.username = localStorage.getItem("2_username_" + this.profile.address);
args.password = localStorage.getItem("2_pin_" + this.profile.address);
- ipcRenderer.send('play', args);
+ ipcRenderer.send("play", args);
}
-} \ No newline at end of file
+}