Correction form review and checks
This commit is contained in:
parent
232fd33ec8
commit
5cac4f52bc
4 changed files with 57 additions and 43 deletions
|
@ -2,7 +2,7 @@
|
||||||
import InputTextGlobalMessage from "./InputTextGlobalMessage.svelte";
|
import InputTextGlobalMessage from "./InputTextGlobalMessage.svelte";
|
||||||
import UploadAudioGlobalMessage from "./UploadAudioGlobalMessage.svelte";
|
import UploadAudioGlobalMessage from "./UploadAudioGlobalMessage.svelte";
|
||||||
import {gameManager} from "../../Phaser/Game/GameManager";
|
import {gameManager} from "../../Phaser/Game/GameManager";
|
||||||
import {Game} from "../../Phaser/Game/Game";
|
import type {Game} from "../../Phaser/Game/Game";
|
||||||
|
|
||||||
export let game: Game;
|
export let game: Game;
|
||||||
let inputSendTextActive = true;
|
let inputSendTextActive = true;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {ConsoleGlobalMessageManagerFocusStore, ConsoleGlobalMessageManagerVisibleStore } from "../../Stores/ConsoleGlobalMessageManagerStore";
|
import {ConsoleGlobalMessageManagerFocusStore, ConsoleGlobalMessageManagerVisibleStore } from "../../Stores/ConsoleGlobalMessageManagerStore";
|
||||||
import {onMount} from "svelte";
|
import {onMount} from "svelte";
|
||||||
import {Game} from "../../Phaser/Game/Game";
|
import type {Game} from "../../Phaser/Game/Game";
|
||||||
import {GameManager} from "../../Phaser/Game/GameManager";
|
import {GameManager} from "../../Phaser/Game/GameManager";
|
||||||
import type {PlayGlobalMessageInterface} from "../../Connexion/ConnexionModels";
|
import type {PlayGlobalMessageInterface} from "../../Connexion/ConnexionModels";
|
||||||
import {AdminMessageEventTypes} from "../../Connexion/AdminMessagesService";
|
import {AdminMessageEventTypes} from "../../Connexion/AdminMessagesService";
|
||||||
|
@ -33,10 +33,12 @@
|
||||||
export let game: Game;
|
export let game: Game;
|
||||||
export let gameManager: GameManager;
|
export let gameManager: GameManager;
|
||||||
|
|
||||||
|
let gameScene;
|
||||||
let gameScene = game.scene.getScene(gameManager.currentGameSceneName);
|
if (gameManager.currentGameSceneName) {
|
||||||
|
gameScene = gameManager.getCurrentGameScene(game.scene.getScene(gameManager.currentGameSceneName));
|
||||||
|
}
|
||||||
let quill;
|
let quill;
|
||||||
let INPUT_CONSOLE_MESSAGE = 'quill';
|
let INPUT_CONSOLE_MESSAGE;
|
||||||
|
|
||||||
const MESSAGE_TYPE = AdminMessageEventTypes.admin;
|
const MESSAGE_TYPE = AdminMessageEventTypes.admin;
|
||||||
|
|
||||||
|
@ -53,7 +55,7 @@
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
quill.on('selection-change', function (range, oldRange, source) {
|
quill.on('selection-change', function (range, oldRange) {
|
||||||
if (range === null && oldRange !== null) {
|
if (range === null && oldRange !== null) {
|
||||||
ConsoleGlobalMessageManagerFocusStore.set(false);
|
ConsoleGlobalMessageManagerFocusStore.set(false);
|
||||||
} else if (range !== null && oldRange === null)
|
} else if (range !== null && oldRange === null)
|
||||||
|
@ -67,17 +69,15 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function SendTextMessage() {
|
function SendTextMessage() {
|
||||||
const elements = document.getElementsByClassName('ql-editor');
|
const text = quill.getText(0, quill.getLength());
|
||||||
const quillEditor = elements.item(0);
|
|
||||||
if (!quillEditor) {
|
|
||||||
throw "Error get quill node";
|
|
||||||
}
|
|
||||||
const GlobalMessage: PlayGlobalMessageInterface = {
|
const GlobalMessage: PlayGlobalMessageInterface = {
|
||||||
id: "1", // FIXME: use another ID?
|
id: "1", // FIXME: use another ID?
|
||||||
message: quillEditor.innerHTML,
|
message: text,
|
||||||
type: MESSAGE_TYPE
|
type: MESSAGE_TYPE
|
||||||
};
|
};
|
||||||
quillEditor.innerHTML = '';
|
|
||||||
|
quill.deleteText(0, quill.getLength());
|
||||||
gameScene.connection.emitGlobalMessage(GlobalMessage);
|
gameScene.connection.emitGlobalMessage(GlobalMessage);
|
||||||
disableConsole();
|
disableConsole();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {HtmlUtils} from "../../WebRtc/HtmlUtils";
|
import {HtmlUtils} from "../../WebRtc/HtmlUtils";
|
||||||
import {Game} from "../../Phaser/Game/Game";
|
import type {Game} from "../../Phaser/Game/Game";
|
||||||
import {GameManager} from "../../Phaser/Game/GameManager";
|
import {GameManager} from "../../Phaser/Game/GameManager";
|
||||||
import {ConsoleGlobalMessageManagerFocusStore, ConsoleGlobalMessageManagerVisibleStore} from "../../Stores/ConsoleGlobalMessageManagerStore";
|
import {ConsoleGlobalMessageManagerFocusStore, ConsoleGlobalMessageManagerVisibleStore} from "../../Stores/ConsoleGlobalMessageManagerStore";
|
||||||
import {AdminMessageEventTypes} from "../../Connexion/AdminMessagesService";
|
import {AdminMessageEventTypes} from "../../Connexion/AdminMessagesService";
|
||||||
|
@ -14,21 +14,25 @@
|
||||||
export let game: Game;
|
export let game: Game;
|
||||||
export let gameManager: GameManager;
|
export let gameManager: GameManager;
|
||||||
|
|
||||||
let gameScene = game.scene.getScene(gameManager.currentGameSceneName);
|
let gameScene;
|
||||||
|
if (gameManager.currentGameSceneName) {
|
||||||
|
gameScene = gameManager.getCurrentGameScene(game.scene.getScene(gameManager.currentGameSceneName));
|
||||||
|
}
|
||||||
let fileinput;
|
let fileinput;
|
||||||
let filename: string;
|
let filename: string;
|
||||||
let filesize: string;
|
let filesize: string;
|
||||||
|
let errorfile: boolean;
|
||||||
|
|
||||||
const UPLOAD_CONSOLE_MESSAGE = 'input-upload-music';
|
|
||||||
const AUDIO_TYPE = AdminMessageEventTypes.audio;
|
const AUDIO_TYPE = AdminMessageEventTypes.audio;
|
||||||
|
|
||||||
|
|
||||||
async function SendAudioMessage() {
|
async function SendAudioMessage() {
|
||||||
const inputAudio = HtmlUtils.getElementByIdOrFail<HTMLInputElement>(UPLOAD_CONSOLE_MESSAGE);
|
const inputAudio = HtmlUtils.getElementByIdOrFail<HTMLInputElement>("input-send-audio");
|
||||||
const selectedFile = inputAudio.files ? inputAudio.files[0] : null;
|
const selectedFile = inputAudio.files ? inputAudio.files[0] : null;
|
||||||
if (!selectedFile) {
|
if (!selectedFile) {
|
||||||
throw 'no file selected';
|
errorfile = true;
|
||||||
}
|
throw 'no file selected';
|
||||||
|
}
|
||||||
|
|
||||||
const fd = new FormData();
|
const fd = new FormData();
|
||||||
fd.append('file', selectedFile);
|
fd.append('file', selectedFile);
|
||||||
|
@ -45,7 +49,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function inputAudioFile(event: Event) {
|
function inputAudioFile(event: Event) {
|
||||||
console.log('Input');
|
|
||||||
const eventTarget : EventTargetFiles = (event.target as EventTargetFiles);
|
const eventTarget : EventTargetFiles = (event.target as EventTargetFiles);
|
||||||
if(!eventTarget || !eventTarget.files || eventTarget.files.length === 0){
|
if(!eventTarget || !eventTarget.files || eventTarget.files.length === 0){
|
||||||
return;
|
return;
|
||||||
|
@ -58,6 +61,7 @@
|
||||||
|
|
||||||
filename = file.name;
|
filename = file.name;
|
||||||
filesize = getFileSize(file.size);
|
filesize = getFileSize(file.size);
|
||||||
|
errorfile = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getFileSize(number: number) {
|
function getFileSize(number: number) {
|
||||||
|
@ -85,9 +89,41 @@
|
||||||
{#if filename != undefined}
|
{#if filename != undefined}
|
||||||
<label for="input-send-audio">{filename} : {filesize}</label>
|
<label for="input-send-audio">{filename} : {filesize}</label>
|
||||||
{/if}
|
{/if}
|
||||||
|
{#if errorfile}
|
||||||
|
<p class="err">No file selected. You need to upload a file before sending it.</p>
|
||||||
|
{/if}
|
||||||
<input type="file" id="input-send-audio" bind:this={fileinput} on:change={(e) => {inputAudioFile(e)}}>
|
<input type="file" id="input-send-audio" bind:this={fileinput} on:change={(e) => {inputAudioFile(e)}}>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-action">
|
<div class="btn-action">
|
||||||
<button class="nes-btn is-primary" on:click|preventDefault={SendAudioMessage}>Send</button>
|
<button class="nes-btn is-primary" on:click|preventDefault={SendAudioMessage}>Send</button>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
//UploadAudioGlobalMessage
|
||||||
|
.section-input-send-audio {
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.section-input-send-audio .input-send-audio {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.section-input-send-audio #input-send-audio{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.section-input-send-audio div.input-send-audio label{
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.section-input-send-audio div.input-send-audio p.err {
|
||||||
|
color: #ce372b;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.section-input-send-audio div.input-send-audio img{
|
||||||
|
height: 150px;
|
||||||
|
cursor: url('style/images/cursor_pointer.png'), pointer;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -57,26 +57,4 @@ div.main-console.nes-container {
|
||||||
.section-input-send-text .ql-toolbar{
|
.section-input-send-text .ql-toolbar{
|
||||||
background: white;
|
background: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
//UploadAudioGlobalMessage
|
|
||||||
.section-input-send-audio {
|
|
||||||
margin: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section-input-send-audio .input-send-audio {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section-input-send-audio #input-send-audio{
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section-input-send-audio div.input-send-audio label{
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.section-input-send-audio div.input-send-audio img{
|
|
||||||
height: 150px;
|
|
||||||
cursor: url('./images/cursor_pointer.png'), pointer;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue