blob: 985090a9fa87c61e977b0b25f7ec9ae2a5524acf (
plain) (
tree)
|
|
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');
});
|