1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
var request = new XMLHttpRequest();
function cargarEstilos() {
var api = '/cgi/api/styles';
request.open("GET", api, true);
request.send();
}
function listarEstilos(id, estilos, def) {
var select = document.getElementById(id);
for (var i=0; i < estilos.length; i++) {
var opt = document.createElement('option');
opt.value = estilos[i];
opt.textContent = estilos[i];
if (i == def) {
opt.selected = true;
}
select.appendChild(opt);
}
}
request.onreadystatechange = function() {
if (request.readyState == 4) {
var json = JSON.parse(request.responseText);
if (json.state == "success") {
listarEstilos('stylebbs', json.bbs_styles, json.bbs_styles_default);
listarEstilos('styleib', json.ib_styles, json.ib_styles_default);
}
}
};
function cambiarModo(e) {
var iframe = document.getElementById('examplebbs');
var estilo = document.getElementById('stylebbs').value;
if (this.dataset.view == '1') {
iframe.addEventListener('load', mostrarEstilo);
iframe.src = '/static/example/bbs2.html';
this.value = 'Ver modo frontal';
this.dataset.view = '2';
} else {
iframe.src = '/static/example/bbs1.html';
this.value = 'Ver modo respuesta';
this.dataset.view = '1';
}
}
function mostrarEstilo(e) {
var tipo = e.target.dataset.type;
if (e.target.tagName.toLowerCase() == 'iframe') {
var estilo = document.getElementById(('style'+tipo)).value;
var iframe = e.target;
} else {
var estilo = e.target.value;
var id = "example" + tipo;
var iframe = document.getElementById(id);
}
var css = iframe.contentDocument.getElementById('css');
var loc = "/static/css/";
if (tipo == 'bbs') {
loc += 'txt/';
}
css.href = loc + estilo.toLowerCase() + ".css";
}
function cargariframe(tipo) {
var iframe = document.createElement('iframe');
iframe.id = 'example' + tipo;
iframe.dataset.type = tipo;
iframe.addEventListener('load', cargarDatos);
iframe.src = '/static/example/' + tipo + '1.html';
var div = document.getElementById("desc" + tipo);
div.appendChild(document.createElement("br"));
div.appendChild(iframe);
}
function cargarDatos(e) {
var tipo = this.dataset.type;
var key = 'weabot_style_' + tipo;
if (localStorage.hasOwnProperty(key)) {
var estilo = localStorage.getItem(key);
document.getElementById(('style'+tipo)).value = estilo;
mostrarEstilo(e);
this.tabIndex = -1;
}
this.removeEventListener('load', cargarDatos);
}
function establecerEstilo(e) {
var key = e.target.dataset.key;
}
function init(tipo) {
cargariframe(tipo);
document.getElementById('style'+tipo).addEventListener('change', mostrarEstilo);
document.getElementById('set'+tipo).addEventListener('click', function() {
var key = 'weabot_style_' + tipo;
var estilo = document.getElementById(('style'+tipo)).value;
localStorage.setItem(key, estilo);
});
}
document.addEventListener("DOMContentLoaded", function() {
document.getElementById("escondeme").style.display = 'none';
cargarEstilos();
document.getElementById('switchview').addEventListener('click', cambiarModo);
init('bbs');
init('ib');
});
|