diff options
Diffstat (limited to 'src/renderer/serverView.ts')
-rw-r--r-- | src/renderer/serverView.ts | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/src/renderer/serverView.ts b/src/renderer/serverView.ts index 2250680..225d092 100644 --- a/src/renderer/serverView.ts +++ b/src/renderer/serverView.ts @@ -2,14 +2,38 @@ import { ipcRenderer, shell } from 'electron'; import GameServer from './gameserver/server'; import { switchPage } from './CustomEvents'; +import CheckNAcceptTOS from './gameserver/TOSCheck'; +import { acceptLastTOS } from './gameserver/TOSCheck'; + let GameServerList:GameServer[] = null; let SelectedGameserver:GameServer = null; const playBtn:HTMLButtonElement = document.getElementById('play') as (HTMLButtonElement); -playBtn.addEventListener('click', () => { - SelectedGameserver.play(); -}); +const TOSDialog:HTMLDialogElement = document.getElementById('TOSDialog') as (HTMLDialogElement); +playBtn.addEventListener('click', async () => { + if( await CheckNAcceptTOS(SelectedGameserver)){ + SelectedGameserver.play(); + } else { + //Open Please accept TOS window + TOSDialog.showModal(); + } +}); +const TOSCancel:HTMLButtonElement = document.getElementById('TOSCancel') as (HTMLButtonElement); +TOSCancel.addEventListener('click', function() { + TOSDialog.close(); +}); +const TOSOpen:HTMLButtonElement = document.getElementById('TOSOpen') as (HTMLButtonElement); +TOSOpen.addEventListener('click', function(e) { + e.preventDefault(); + shell.openExternal(SelectedGameserver.TOSLink); +}); +const TOSAccept:HTMLButtonElement = document.getElementById('TOSAccept') as (HTMLButtonElement); +TOSAccept.addEventListener('click', function() { + acceptLastTOS(SelectedGameserver); + SelectedGameserver.play(); + TOSDialog.close(); +}); const sidebarReference = document.getElementById('sidebar'); let clickableMenueEntries:HTMLElement[]=[]; |