v2.0.0.0000

This commit is contained in:
marmei
2019-08-02 20:12:09 +02:00
parent e396af91cb
commit e001b06b62
85 changed files with 22786 additions and 2 deletions

169
ts/configuration_ts.ts Normal file
View File

@@ -0,0 +1,169 @@
class WizardCategory {
DocumentID = "content"
createCategoryHeadline(value:string):any {
var element = document.createElement("H4")
element.innerHTML = value
return element
}
}
class WizardItem extends WizardCategory {
key:string
headline:string
constructor(key:string, headline:string) {
super()
this.headline = headline
this.key = key
}
createWizard():void {
var headline = this.createCategoryHeadline(this.headline)
var key = this.key
var content:PopupContent = new PopupContent()
var description:string
var doc = document.getElementById(this.DocumentID)
doc.innerHTML = ""
doc.appendChild(headline)
switch (key) {
case "tuner":
var text = new Array()
var values = new Array()
for (var i = 1; i <= 100; i++) {
text.push(i)
values.push(i)
}
var select = content.createSelect(text, values, "1", key)
select.setAttribute("class", "wizard")
select.id = key
doc.appendChild(select)
description = "{{.wizard.tuner.description}}"
break;
case "epgSource":
var text:any[] = ["PMS", "XEPG"]
var values:any[] = ["PMS", "XEPG"]
var select = content.createSelect(text, values, "XEPG", key)
select.setAttribute("class", "wizard")
select.id = key
doc.appendChild(select)
description = "{{.wizard.epgSource.description}}"
break
case "m3u":
var input = content.createInput("text", key, "")
input.setAttribute("class", "wizard")
input.id = key
doc.appendChild(input)
description = "{{.wizard.m3u.description}}"
break
case "xmltv":
var input = content.createInput("text", key, "")
input.setAttribute("class", "wizard")
input.id = key
doc.appendChild(input)
description = "{{.wizard.xmltv.description}}"
break
default:
console.log(key)
break;
}
var pre = document.createElement("PRE")
pre.innerHTML = description
doc.appendChild(pre)
console.log(headline, key)
}
}
function readyForConfiguration(wizard:number) {
var server:Server = new Server("getServerConfig")
server.request(new Object())
showElement("loading", false)
configurationWizard[wizard].createWizard()
}
function saveWizard() {
var cmd = "saveWizard"
var div = document.getElementById("content")
var config = div.getElementsByClassName("wizard")
var wizard = new Object()
for (var i = 0; i < config.length; i++) {
var name:string
var value:any
switch (config[i].tagName) {
case "SELECT":
name = (config[i] as HTMLSelectElement).name
value = (config[i] as HTMLSelectElement).value
// Wenn der Wert eine Zahl ist, wird dieser als Zahl gespeichert
if(isNaN(value)){
wizard[name] = value
} else {
wizard[name] = parseInt(value)
}
break
case "INPUT":
switch ((config[i] as HTMLInputElement).type) {
case "text":
name = (config[i] as HTMLInputElement).name
value = (config[i] as HTMLInputElement).value
wizard[name] = value
break
}
break
default:
// code...
break;
}
}
var data = new Object()
data["wizard"] = wizard
var server:Server = new Server(cmd)
server.request(data)
console.log(data)
}
// Wizard
var configurationWizard = new Array()
configurationWizard.push(new WizardItem("tuner", "{{.wizard.tuner.title}}"))
configurationWizard.push(new WizardItem("epgSource", "{{.wizard.epgSource.title}}"))
configurationWizard.push(new WizardItem("m3u", "{{.wizard.m3u.title}}"))
configurationWizard.push(new WizardItem("xmltv", "{{.wizard.xmltv.title}}"))