selectWordsAction

This commit is contained in:
silas
2018-10-16 10:20:13 +02:00
parent 204f94e740
commit 7fc54547c4
34 changed files with 238 additions and 35 deletions

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
<div><p></div>
<div><p data-translation=credits-sister-text><p data-translation=credits-coin-text data-translation-args='["https://www.freesfx.co.uk/"]'><p data-translation=credits-music-text data-translation-args='["https://audeeyah.de", "http://creativecommons.org/licenses/by/4.0/"]'></div>

View File

@@ -0,0 +1 @@
<div><h2>Impressum</h2><p>Silas Günther<br>Mariabrunnstraße 48<br>52064 Aachen<br>Deutschland<p>E-Mail: <a href=mailto:wordRotator@silas.link>wordRotator@silas.link</a><br><a href=contactMe class=link target=_blank>Kontaktformular</a></div>

View File

@@ -6866,7 +6866,7 @@ class CreditsSite extends WordRotatorBaseSite{
}
InitPromise.addPromise(app => {
app.addDeepLink("credits", PrivacyPolicySite);
app.addDeepLink("credits", CreditsSite);
});
class ChooseThemeDialog extends Dialog {
@@ -6997,6 +6997,78 @@ InitPromise.addPromise(function () {
SettingsSite.addSettingsFragment("settings", WordRotatorSettingFragment);
});
class SelectWordsSite extends UserSite{
constructor(siteManager) {
super(siteManager, "version/1/html/selectWords.html", null, "admin");
}
async onConstruct(args) {
let res = await super.onConstruct(args);
this.stats = (await DataManager.load("words"))["result"];
this.words = this.stats["wordsToCheck"];
return res;
}
onFirstStart() {
super.onFirstStart();
this.findBy("#not-checked").appendChild(document.createTextNode(this.stats["wordsNotChecked"]));
this.findBy("#checked").appendChild(document.createTextNode(this.stats["wordsChecked"]));
this.findBy("#not-sure").appendChild(document.createTextNode(this.stats["wordsUnsure"]));
this.findBy("#deleted").appendChild(document.createTextNode(this.stats["wordsDeleted"]));
let template = this.findBy("#word-template");
template.id = null;
template.remove();
let container = this.findBy("#word-container");
let numWords = this.words.length;
for (let i = 0; i < numWords; i++) {
let wordElement = Helper.cloneNode(template);
wordElement.dataset["id"] = -1;
this.setWord(wordElement, this.words[i]);
container.appendChild(wordElement);
wordElement.querySelector(".button-ok").addEventListener("click", async () => {
let newWord = (await DataManager.send("checkWord", {
"wordId":wordElement.dataset["id"],
"action":"1"
}))["result"];
this.setWord(wordElement, newWord[0]);
});
wordElement.querySelector(".button-unsure").addEventListener("click", async () => {
let newWord = (await DataManager.send("checkWord", {
"wordId":wordElement.dataset["id"],
"action":"2"
}))["result"];
this.setWord(wordElement, newWord[0]);
});
wordElement.querySelector(".button-delete").addEventListener("click", async () => {
let newWord = (await DataManager.send("checkWord", {
"wordId":wordElement.dataset["id"],
"action":"3"
}))["result"];
this.setWord(wordElement, newWord[0]);
});
}
}
setWord(wordElement, word){
console.log(wordElement, word);
wordElement.querySelector(".word").removeAllChildren().appendChild(document.createTextNode(word["word"]));
wordElement.dataset["id"] = word["id"];
}
}
InitPromise.addPromise(app => {
app.addDefaultAction(new UserAction("select-words", () => {
app.startSite(SelectWordsSite);
}, null, null, "admin"));
});
let basePath = "/pwa/wordRotator/public/";
if (window.location.pathname.includes("publicTest/"))
{

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
<div><div class=row><div class="column small-6">Noch nicht geprüft:</div><div class="column small-6" id=not-checked></div><div class="column small-6">Gecheckt:</div><div class="column small-6" id=checked></div><div class="column small-6">Unsicher:</div><div class="column small-6" id=not-sure></div><div class="column small-6">Gelöscht:</div><div class="column small-6" id=deleted></div></div><br><br><div id=word-container><div id=word-template class=row><div class="column small-12"><span class=word></span> <span class=right><button class="button button-ok">OK</button> <button class="button button-unsure">Unsicher</button> <button class="button button-delete">Entf.</button></span></div></div></div></div>