display current player

This commit is contained in:
Debian 2022-10-06 19:54:17 +00:00
parent bbcb9830e3
commit 58b24e702c
2 changed files with 24 additions and 2 deletions

View File

@ -37,7 +37,9 @@ if (array_key_exists("submitted", $_REQUEST)) {
} }
$sentences = fopen("./data/sentences.txt", "a") or die("unable to open sentences file"); $sentences = fopen("./data/sentences.txt", "a") or die("unable to open sentences file");
$content = "<span style='"; $content = "<span data-user='";
$content .= $_REQUEST["user"];
$content .= "' style='";
if ($botrequest) { if ($botrequest) {
$content .= "background-color: darksalmon; color: white;'>"; $content .= "background-color: darksalmon; color: white;'>";
@ -122,6 +124,8 @@ $config_data = json_decode($raw_json_config, false);
</div> </div>
<button onclick="onReloadClicked()" id="but-reload">aktualisieren</button> <button onclick="onReloadClicked()" id="but-reload">aktualisieren</button>
<br> <br>
<div id="login_area">
</div>
<div class="word_input_area"> <div class="word_input_area">
<input type="text" name="submitted" id="wordinput" placeholder="Nächstes Wort" autocomplete="off"> <button id="sendbut" class="send_button" onclick="sendWord()"> <input type="text" name="submitted" id="wordinput" placeholder="Nächstes Wort" autocomplete="off"> <button id="sendbut" class="send_button" onclick="sendWord()">
<?php <?php

20
owe.js
View File

@ -35,6 +35,8 @@ function loadSentences(alertIfNew = false, increaseUnread = true) {
var histurnspan = spans[spans.length - 3]; var histurnspan = spans[spans.length - 3];
//console.log(histurnspan.getAttribute("style")); //console.log(histurnspan.getAttribute("style"));
document.getElementById("wordinput").setAttribute("style", histurnspan.getAttribute("style")); document.getElementById("wordinput").setAttribute("style", histurnspan.getAttribute("style"));
initializeLoginArea();
}); });
}); });
} }
@ -61,6 +63,7 @@ function onReloadClicked() {
function sendWord() { function sendWord() {
var data = new FormData(); var data = new FormData();
data.append('submitted', encodeURI(document.getElementById("wordinput").value)); data.append('submitted', encodeURI(document.getElementById("wordinput").value));
data.append('user', getNextPlayer());
const Http = new XMLHttpRequest(); const Http = new XMLHttpRequest();
Http.open('POST', '.'); Http.open('POST', '.');
Http.onreadystatechange=(e)=>{ Http.onreadystatechange=(e)=>{
@ -101,6 +104,21 @@ function resetUnread() {
document.getElementsByTagName("title")[0].innerText = (config_data.title ? config_data.title : "One Word Each"); document.getElementsByTagName("title")[0].innerText = (config_data.title ? config_data.title : "One Word Each");
} }
function getNextPlayer() {
var spans = document.querySelector(".sentences").getElementsByTagName("span");
var lastspan = spans[spans.length - 1];
var lastplayer = lastspan.dataset.user;
var idx_next = (config_data.users.indexOf(lastplayer) + 1) % config_data.users.length;
return config_data.users[idx_next];
}
function initializeLoginArea() {
var loginArea = document.getElementById('login_area');
//loginArea.innerHTML = "Eingeloggt als NOCH NICHT IMPLEMENTIERT";
loginArea.innerHTML = ""; // first clear it out
loginArea.innerHTML += getNextPlayer() + " ist dran!";
}
window.onfocus = resetUnread; window.onfocus = resetUnread;
//setTimeout(loadSentences, 500); //setTimeout(loadSentences, 500);
@ -118,7 +136,7 @@ input.addEventListener("keyup", function(event) {
// Trigger the button element with a click // Trigger the button element with a click
document.getElementById("sendbut").click(); document.getElementById("sendbut").click();
} }
}); });
var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);