7c956d1481
* WIP: svelte menu * temp * temp * New menu svelte * Migration of report menu in svelte * Migration of registerCustomMenu for Menu in Svelte Refactor subMenuStore Suppression of old MenuScene and ReportMenu * Suppression of HTML files that aren't use anymore * fix deeployer * First pass on css * First pass on css * Second pass on css and reportMenu * Second pass on css and reportMenu * Second pass on css and reportMenu * Third pass on css and reportMenu * Correction following test * Contact page only if environment variable exist * Update service worker Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com> * Change requested * Change requested Co-authored-by: kharhamel <oognic@gmail.com> Co-authored-by: Gregoire Parant <g.parant@thecodingmachine.com>
55 lines
1.6 KiB
Svelte
55 lines
1.6 KiB
Svelte
<script lang="ts">
|
|
import {showReportScreenStore, userReportEmpty} from "../../Stores/ShowReportScreenStore";
|
|
import {gameManager} from "../../Phaser/Game/GameManager";
|
|
|
|
export let userUUID: string | undefined;
|
|
let reportMessage: string;
|
|
let hiddenError = true;
|
|
|
|
function submitReport() {
|
|
if (reportMessage === '') {
|
|
hiddenError = true;
|
|
} else {
|
|
hiddenError = false;
|
|
if( userUUID === undefined) {
|
|
console.error('User UUID is not valid.');
|
|
return;
|
|
}
|
|
gameManager.getCurrentGameScene().connection?.emitReportPlayerMessage(userUUID, reportMessage);
|
|
showReportScreenStore.set(userReportEmpty)
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<div class="report-container-main">
|
|
<h3>Report</h3>
|
|
<p>Send a report message to the administrators of this room. They may later ban this user.</p>
|
|
<form>
|
|
<section>
|
|
<label>
|
|
<span>Your message: </span>
|
|
<textarea type="text" class="nes-textarea" bind:value={reportMessage}></textarea>
|
|
</label>
|
|
<p hidden="{hiddenError}">Report message cannot to be empty.</p>
|
|
</section>
|
|
<section>
|
|
<button type="submit" class="nes-btn is-error" on:click={submitReport}>Report this user</button>
|
|
</section>
|
|
</form>
|
|
</div>
|
|
|
|
<style lang="scss">
|
|
div.report-container-main {
|
|
text-align: center;
|
|
|
|
textarea {
|
|
height: clamp(100px, 15vh, 300px);
|
|
}
|
|
}
|
|
|
|
@media only screen and (max-height: 630px) {
|
|
div.report-container-main textarea {
|
|
height: 50px;
|
|
}
|
|
}
|
|
</style> |