var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var WizardCategory = /** @class */ (function () { function WizardCategory() { this.DocumentID = "content"; } WizardCategory.prototype.createCategoryHeadline = function (value) { var element = document.createElement("H4"); element.innerHTML = value; return element; }; return WizardCategory; }()); var WizardItem = /** @class */ (function (_super) { __extends(WizardItem, _super); function WizardItem(key, headline) { var _this = _super.call(this) || this; _this.headline = headline; _this.key = key; return _this; } WizardItem.prototype.createWizard = function () { var headline = this.createCategoryHeadline(this.headline); var key = this.key; var content = new PopupContent(); var description; 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 = ["PMS", "XEPG"]; var values = ["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("placeholder", "{{.wizard.m3u.placeholder}}"); 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("placeholder", "{{.wizard.xmltv.placeholder}}"); 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); }; return WizardItem; }(WizardCategory)); function readyForConfiguration(wizard) { var 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; var value; switch (config[i].tagName) { case "SELECT": name = config[i].name; value = config[i].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].type) { case "text": name = config[i].name; value = config[i].value; if (value.length == 0) { var msg = name.toUpperCase() + ": " + "{{.alert.missingInput}}"; alert(msg); return; } wizard[name] = value; break; } break; default: // code... break; } } var data = new Object(); data["wizard"] = wizard; var 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}}"));