|
|
@ -1,20 +1,18 @@ |
|
|
{% load i18n %} |
|
|
{% load i18n %} |
|
|
{% load common_tags %} |
|
|
{% load common_tags %} |
|
|
|
|
|
|
|
|
{% load render_bundle from webpack_loader %} |
|
|
{% load render_bundle from webpack_loader %} |
|
|
{% load webpack_static from webpack_loader %} |
|
|
{% load webpack_static from webpack_loader %} |
|
|
|
|
|
|
|
|
<!DOCTYPE HTML> |
|
|
<!DOCTYPE HTML> |
|
|
<!--[if IE 8]> <html class="no-js lt-ie9" lang="pt-br"> <![endif]--> |
|
|
|
|
|
<!--[if gt IE 8]><!--> |
|
|
|
|
|
<html lang="pt-br"> |
|
|
<html lang="pt-br"> |
|
|
<!--<![endif]--> |
|
|
|
|
|
<head> |
|
|
<head> |
|
|
<meta charset="UTF-8"> |
|
|
<meta charset="UTF-8"> |
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
|
<!-- TODO: does it need this head_title here? --> |
|
|
|
|
|
<title>{% block head_title %}{% trans 'SAPL - Sistema de Apoio ao Processo Legislativo' %}{% endblock %}</title> |
|
|
<title>{% block head_title %}{% trans 'SAPL - Sistema de Apoio ao Processo Legislativo' %}{% endblock %}</title> |
|
|
|
|
|
|
|
|
|
|
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet"> |
|
|
|
|
|
|
|
|
{% block webpack_loader_css %} |
|
|
{% block webpack_loader_css %} |
|
|
{% render_chunk_vendors 'css' %} |
|
|
{% render_chunk_vendors 'css' %} |
|
|
{% render_bundle 'global' 'css' %} |
|
|
{% render_bundle 'global' 'css' %} |
|
|
@ -22,237 +20,189 @@ |
|
|
{% endblock webpack_loader_css %} |
|
|
{% endblock webpack_loader_css %} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<style type="text/css"> |
|
|
</head> |
|
|
html, body { |
|
|
|
|
|
max-width: 100%; |
|
|
<body class="min-vh-100 d-flex flex-column p-2"> |
|
|
overflow-x: hidden; |
|
|
|
|
|
} |
|
|
|
|
|
@media screen { |
|
|
|
|
|
ul, li { |
|
|
|
|
|
list-style-type: none; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
</style> |
|
|
|
|
|
</head> |
|
|
|
|
|
<body class="painel-principal"> |
|
|
|
|
|
<audio type="hidden" id="audio" src="{% webpack_static 'audio/ring.mp3' %}"></audio> |
|
|
<audio type="hidden" id="audio" src="{% webpack_static 'audio/ring.mp3' %}"></audio> |
|
|
|
|
|
|
|
|
<div class="d-flex justify-content-center"> |
|
|
<div class="container-fluid"> |
|
|
<h1 id="sessao_plenaria" class="title text-title"></h1> |
|
|
<div class="row g-3"> |
|
|
</div> |
|
|
|
|
|
<div class="row "> |
|
|
<div class="col-md-9 separador-vertical pe-4"> |
|
|
<div class="col text-center"> |
|
|
<div class="painel p-3 h-100 d-flex flex-column"> |
|
|
<span id="sessao_plenaria_data" class="text-value"></span> |
|
|
<h1 id="sessao_plenaria" class="text-title fw-bold text-uppercase"></h1> |
|
|
|
|
|
<div id="parlamentares"> |
|
|
</div> |
|
|
</div> |
|
|
<div class="col text-center"> |
|
|
|
|
|
<span id="sessao_plenaria_hora_inicio" class="text-value"></span> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="row justify-content-center"> |
|
|
<div class="col-md-3 d-flex flex-column gap-3"> |
|
|
<div class="col-1"> |
|
|
|
|
|
<img src="" id="logo-painel" class="logo-painel" alt=""/> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
<div class="row justify-content-center"> |
|
|
<div class="painel p-3 d-flex flex-column" id="obs_materia_div"> |
|
|
<h2 class="text-danger"><span id="message"></span></h2> |
|
|
<div class="flex-grow-1"> |
|
|
</div> |
|
|
<h2 id="mat_em_votacao" class="text-subtitle text-center mb-3 pb-1">Matéria em Votação</h2> |
|
|
|
|
|
<span id="materia_legislativa_texto" class="fs-4 text-white d-block mb-1"></span> |
|
|
|
|
|
<span id="materia_legislativa_ementa" class="fs-6 fst-italic opacity-75 text-white"></span> |
|
|
|
|
|
|
|
|
<div class="row"> |
|
|
<div class="mt-2 text-warning" style="font-size: 0.9rem;"> |
|
|
<div class="col text-center"><span class="text-value data-hora" id="date"></span></div> |
|
|
<span id="observacao_materia"></span> |
|
|
<div class="col text-center"><span class="text-value data-hora" id="relogio"></span></div> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
<div id="resultado_votacao" class="text-title mt-auto text-center d-block fs-2"></div> |
|
|
<div class=""> |
|
|
|
|
|
<div class="d-flex justify-content-start"> |
|
|
|
|
|
<div class="col-md-4"> |
|
|
|
|
|
<div class="text-center painel"> |
|
|
|
|
|
<h2 class="text-subtitle">Parlamentares</h2> |
|
|
|
|
|
<span id="parlamentares" class="text-value text-center"></span> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="d-flex col-md-8 painels"> |
|
|
|
|
|
<div class="col-md-6 text-center painel" id="aparecer_oradores"> |
|
|
<div class="text-center painel" id="aparecer_oradores"> |
|
|
<h2 class="text-subtitle">Oradores</h2> |
|
|
<h4 class="text-subtitle">Oradores</h4> |
|
|
<span id="orador"></span> |
|
|
<div id="orador"></div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="col-md-6 text-left painel"> |
|
|
<div class="painel d-flex flex-column"> |
|
|
<div class="d-flex align-items-left justify-content-left mb-2"> |
|
|
<div id="box_cronometros" class="w-100"> |
|
|
<h2 class="text-subtitle mb-0">Cronômetros</h2> |
|
|
<h4 class="text-center text-subtitle mb-3">Cronômetro</h4> |
|
|
<button class="btn btn-sm btn-secondary ms-2" onclick="changeFontSize('box_cronometros', -1)"> |
|
|
<div class="d-flex align-items-center justify-content-center" style="height: 80px;"> |
|
|
A- |
|
|
<table class="table-custom w-100 mb-0"> |
|
|
</button> |
|
|
<tbody> |
|
|
<button class="btn btn-sm btn-secondary ms-2" onclick="changeFontSize('box_cronometros', 1)"> |
|
|
<tr id="row_discurso"> |
|
|
A+ |
|
|
<td class="fs-3">Discurso</td> |
|
|
</button> |
|
|
<td class="text-end"><span id="cronometro_discurso" |
|
|
|
|
|
class="fw-bold font-monospace fs-1">00:00:00</span></td> |
|
|
|
|
|
</tr> |
|
|
|
|
|
<tr id="row_aparte" style="display: none;"> |
|
|
|
|
|
<td class="fs-3 text-warning">Aparte</td> |
|
|
|
|
|
<td class="text-end"><span id="cronometro_aparte" |
|
|
|
|
|
class="fw-bold font-monospace fs-1 text-warning">00:00:00</span></td> |
|
|
|
|
|
</tr> |
|
|
|
|
|
<tr id="row_ordem" style="display: none;"> |
|
|
|
|
|
<td class="fs-3 text-info">Questão de Ordem</td> |
|
|
|
|
|
<td class="text-end"><span id="cronometro_ordem" |
|
|
|
|
|
class="fw-bold font-monospace fs-1 text-info">00:00:00</span></td> |
|
|
|
|
|
</tr> |
|
|
|
|
|
<tr id="row_consideracoes" style="display: none;"> |
|
|
|
|
|
<td class="fs-3">Consid. Finais</td> |
|
|
|
|
|
<td class="text-end"><span id="cronometro_consideracoes" |
|
|
|
|
|
class="fw-bold font-monospace fs-1">00:00:00</span></td> |
|
|
|
|
|
</tr> |
|
|
|
|
|
</tbody> |
|
|
|
|
|
</table> |
|
|
</div> |
|
|
</div> |
|
|
<div class="text-value" id="box_cronometros"> |
|
|
|
|
|
Discurso: <span id="cronometro_discurso"></span><br> |
|
|
|
|
|
Aparte: <span id="cronometro_aparte"></span><br> |
|
|
|
|
|
Questão de Ordem: <span id="cronometro_ordem"></span><br> |
|
|
|
|
|
Considerações Finais: <span id="cronometro_consideracoes"></span> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="col-md-6 text-left painel" id="resultado_votacao_div"> |
|
|
<div class="painel p-3 d-flex flex-column" id="resultado_votacao_div"> |
|
|
<div class="d-flex align-items-left justify-content-left mb-2"> |
|
|
<div id="box_votacao" class="w-100"> |
|
|
<h2 class="text-subtitle mb-0">Resultado</h2> |
|
|
<table class="table-custom w-100 mb-0" id="tabela_resultados"> |
|
|
<button class="btn btn-sm btn-secondary ms-2" onclick="changeFontSize('box_votacao', -1)"> |
|
|
<tbody id="votacao"></tbody> |
|
|
A- |
|
|
</table> |
|
|
</button> |
|
|
|
|
|
<button class="btn btn-sm btn-secondary ms-2" onclick="changeFontSize('box_votacao', 1)"> |
|
|
|
|
|
A+ |
|
|
|
|
|
</button> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div id="box_votacao"> |
|
|
|
|
|
<span id="votacao" class="text-value"></span> |
|
|
|
|
|
<span id="resultado_votacao" lass="text-title"></span> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="col-md-6 text-center painel" id="obs_materia_div"> |
|
|
<div class="painel position-relative bottom-0 hora-brasao"> |
|
|
<h2 class="text-subtitle" id="mat_em_votacao">Matéria em Votação</h2> |
|
|
<div class="row justify-content-center align-items-center"> |
|
|
<span id="materia_legislativa_texto" class="text-value"></span> |
|
|
<div class="col-4 text-center" id="logo-container"> |
|
|
<br> |
|
|
<img src="" id="logo-painel" class="logo-painel" alt="Brasão" /> |
|
|
<span id="materia_legislativa_ementa" class="text-value"></span> |
|
|
</div> |
|
|
<br> |
|
|
<div class="col-4 text-center" id="relogio-container"> |
|
|
<span id="observacao_materia" class="text-value"></span> |
|
|
<span class="fs-1 fw-bold" id="relogio"></span> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="col-md-6 text-center painel" id="tema_solene_div" style="display: none"> |
|
|
|
|
|
<h2 class="text-subtitle">Tema da Sessão Solene</h2> |
|
|
|
|
|
<span id="sessao_solene_tema" class="text-value"></span> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</body> |
|
|
|
|
|
|
|
|
|
|
|
{% block webpack_loader_js %} |
|
|
|
|
|
{% render_chunk_vendors 'js' %} |
|
|
</body> |
|
|
{% render_bundle 'global' 'js' %} |
|
|
|
|
|
{% render_bundle 'painel' 'js' %} |
|
|
{% block webpack_loader_js %} |
|
|
{% endblock webpack_loader_js %} |
|
|
{% render_chunk_vendors 'js' %} |
|
|
|
|
|
{% render_bundle 'global' 'js' %} |
|
|
{% block webpack_loader_chunks_js %} |
|
|
{% render_bundle 'painel' 'js' %} |
|
|
{% endblock webpack_loader_chunks_js %} |
|
|
{% endblock webpack_loader_js %} |
|
|
|
|
|
|
|
|
<script type="text/javascript"> |
|
|
{% block webpack_loader_chunks_js %} |
|
|
|
|
|
{% endblock webpack_loader_chunks_js %} |
|
|
$(document).ready(function() { |
|
|
|
|
|
|
|
|
|
|
|
// As constantes decisões sobre a existência ou não do horário de verão, |
|
|
<script type="text/javascript"> |
|
|
// assim como que data de início e termino do mesmo, fizeram com que fosse necessário |
|
|
|
|
|
// substituir a chamada a Date() por um esquema mais elaborado, onde se |
|
|
$(document).ready(function () { |
|
|
// recupera o offset do UTC (-3 GMT, no caso de Brasília) e seta-se |
|
|
|
|
|
// manualmente. Esta informação vem do servidor, desta forma não ficamos |
|
|
|
|
|
// na dependência da atualização de browser, pois tanto o Date() em JS |
|
|
|
|
|
// quanto as libs python (django.utils.timezone, datetime, pytz, etc) |
|
|
|
|
|
// lêem do tzdata, que precisa ser atualizado toda vez que o governo |
|
|
|
|
|
// brasileiro modifica alguma coisa relacionada ao horário de verão. |
|
|
|
|
|
// Recuperando essa informação do servidor só teremos que atualizar as |
|
|
|
|
|
// libs tzdata (Linux) e pytz (Python) uma vez. Além disso, o uso da |
|
|
|
|
|
// biblioteca moment.js é recomendada, pois ela trata data e hora |
|
|
|
|
|
// melhor que o Date() do JS. |
|
|
|
|
|
|
|
|
|
|
|
$("#date").append(moment().format("DD/MM/YY")); |
|
|
$("#date").append(moment().format("DD/MM/YY")); |
|
|
|
|
|
|
|
|
var offset = parseFloat({{ utc_offset }}); |
|
|
var offset = parseFloat({{ utc_offset }}); |
|
|
|
|
|
var isPolling = false; |
|
|
|
|
|
var cronometroVisivel = '#row_discurso'; |
|
|
|
|
|
|
|
|
//TODO: replace by a fancy jQuery clock |
|
|
|
|
|
function checkTime(i) { |
|
|
function checkTime(i) { |
|
|
if (i<10) {i = "0" + i}; // add zero in front of numbers < 10 |
|
|
if (i < 10) { i = "0" + i }; |
|
|
return i; |
|
|
return i; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
function startTime() { |
|
|
function startTime() { |
|
|
var today = moment.utc().utcOffset(offset).format("HH:mm:ss"); |
|
|
var today = moment.utc().utcOffset(offset).format("HH:mm:ss"); |
|
|
$("#relogio").text(today) |
|
|
$("#relogio").text(today) |
|
|
var t = setTimeout(function(){ |
|
|
setTimeout(startTime, 500); |
|
|
startTime() |
|
|
|
|
|
}, 500); |
|
|
|
|
|
} |
|
|
} |
|
|
startTime(); |
|
|
startTime(); |
|
|
|
|
|
|
|
|
var audioAlertFinish = document.getElementById("audio"); |
|
|
var audioAlertFinish = document.getElementById("audio"); |
|
|
|
|
|
|
|
|
$('#cronometro_discurso').runner({ |
|
|
// Função para formatar o tempo do cronômetro |
|
|
autostart: false, |
|
|
function formatCronometro(value) { |
|
|
countdown: true, |
|
|
let h = Math.floor((value / 1000) / 3600); |
|
|
startAt: {{ 'discurso'|cronometro_to_seconds }} * 1000, |
|
|
|
|
|
stopAt: 0, |
|
|
|
|
|
milliseconds: false, |
|
|
|
|
|
format: function(value) { |
|
|
|
|
|
let h = Math.floor((value/1000) / 3600); |
|
|
|
|
|
h = checkTime(h); |
|
|
h = checkTime(h); |
|
|
let m = Math.floor((value/1000) % 3600 / 60); |
|
|
let m = Math.floor((value / 1000) % 3600 / 60); |
|
|
m = checkTime(m); |
|
|
m = checkTime(m); |
|
|
let s = Math.floor((value/1000) % 3600 % 60); |
|
|
let s = Math.floor((value / 1000) % 3600 % 60); |
|
|
s = checkTime(s); |
|
|
s = checkTime(s); |
|
|
return h.toString() + ":" + m.toString() + ":" + s.toString(); |
|
|
return h.toString() + ":" + m.toString() + ":" + s.toString(); |
|
|
} |
|
|
} |
|
|
}).on('runnerFinish', function(eventObject, info){ |
|
|
|
|
|
|
|
|
// Inicializar os cronômetros |
|
|
|
|
|
$('#cronometro_discurso').runner({ |
|
|
|
|
|
autostart: false, |
|
|
|
|
|
countdown: true, |
|
|
|
|
|
startAt: {{ 'discurso'| cronometro_to_seconds }} * 1000, |
|
|
|
|
|
stopAt: 0, |
|
|
|
|
|
milliseconds: false, |
|
|
|
|
|
format: formatCronometro |
|
|
|
|
|
}).on('runnerFinish', function () { |
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
$('#cronometro_aparte').runner({ |
|
|
$('#cronometro_aparte').runner({ |
|
|
autostart: false, |
|
|
autostart: false, |
|
|
countdown: true, |
|
|
countdown: true, |
|
|
startAt: {{ 'aparte'|cronometro_to_seconds }} * 1000, |
|
|
startAt: {{ 'aparte'| cronometro_to_seconds }} * 1000, |
|
|
stopAt: 0, |
|
|
stopAt: 0, |
|
|
milliseconds: false, |
|
|
milliseconds: false, |
|
|
format: function(value) { |
|
|
format: formatCronometro |
|
|
let h = Math.floor((value/1000) / 3600); |
|
|
}).on('runnerFinish', function () { |
|
|
h = checkTime(h); |
|
|
|
|
|
let m = Math.floor((value/1000) % 3600 / 60); |
|
|
|
|
|
m = checkTime(m); |
|
|
|
|
|
let s = Math.floor((value/1000) % 3600 % 60); |
|
|
|
|
|
s = checkTime(s); |
|
|
|
|
|
return h.toString() + ":" + m.toString() + ":" + s.toString(); |
|
|
|
|
|
} |
|
|
|
|
|
}).on('runnerFinish', function(eventObject, info){ |
|
|
|
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
$('#cronometro_ordem').runner({ |
|
|
$('#cronometro_ordem').runner({ |
|
|
autostart: false, |
|
|
autostart: false, |
|
|
countdown: true, |
|
|
countdown: true, |
|
|
startAt: {{ 'ordem'|cronometro_to_seconds }} * 1000, |
|
|
startAt: {{ 'ordem'| cronometro_to_seconds }} * 1000, |
|
|
stopAt: 0, |
|
|
stopAt: 0, |
|
|
milliseconds: false, |
|
|
milliseconds: false, |
|
|
format: function(value) { |
|
|
format: formatCronometro |
|
|
let h = Math.floor((value/1000) / 3600); |
|
|
}).on('runnerFinish', function () { |
|
|
h = checkTime(h); |
|
|
|
|
|
let m = Math.floor((value/1000) % 3600 / 60); |
|
|
|
|
|
m = checkTime(m); |
|
|
|
|
|
let s = Math.floor((value/1000) % 3600 % 60); |
|
|
|
|
|
s = checkTime(s); |
|
|
|
|
|
return h.toString() + ":" + m.toString() + ":" + s.toString(); |
|
|
|
|
|
} |
|
|
|
|
|
}).on('runnerFinish', function(eventObject, info){ |
|
|
|
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
$('#cronometro_consideracoes').runner({ |
|
|
$('#cronometro_consideracoes').runner({ |
|
|
autostart: false, |
|
|
autostart: false, |
|
|
countdown: true, |
|
|
countdown: true, |
|
|
startAt: {{ 'consideracoes'|cronometro_to_seconds }} * 1000, |
|
|
startAt: {{ 'consideracoes'| cronometro_to_seconds }} * 1000, |
|
|
stopAt: 0, |
|
|
stopAt: 0, |
|
|
milliseconds: false, |
|
|
milliseconds: false, |
|
|
format: function(value) { |
|
|
format: formatCronometro |
|
|
let h = Math.floor((value/1000) / 3600); |
|
|
}).on('runnerFinish', function () { |
|
|
h = checkTime(h); |
|
|
|
|
|
let m = Math.floor((value/1000) % 3600 / 60); |
|
|
|
|
|
m = checkTime(m); |
|
|
|
|
|
let s = Math.floor((value/1000) % 3600 % 60); |
|
|
|
|
|
s = checkTime(s); |
|
|
|
|
|
return h.toString() + ":" + m.toString() + ":" + s.toString(); |
|
|
|
|
|
} |
|
|
|
|
|
}).on('runnerFinish', function(eventObject, info){ |
|
|
|
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
@ -261,16 +211,16 @@ |
|
|
var aparte_previous; |
|
|
var aparte_previous; |
|
|
var consideracoes_previous; |
|
|
var consideracoes_previous; |
|
|
|
|
|
|
|
|
var counter = 1; |
|
|
function poll() { |
|
|
(function poll() { |
|
|
// Evitar múltiplas chamadas simultâneas |
|
|
|
|
|
if (isPolling) return; |
|
|
|
|
|
isPolling = true; |
|
|
|
|
|
|
|
|
$.ajax({ |
|
|
$.ajax({ |
|
|
url: "{% url 'sapl.painel:dados_painel' sessao_id %}", |
|
|
url: "{% url 'sapl.painel:dados_painel' sessao_id %}", |
|
|
type: "GET", |
|
|
type: "GET", |
|
|
success: function(data) { |
|
|
success: function (data) { |
|
|
$("#sessao_plenaria").text(data["sessao_plenaria"]) |
|
|
$("#sessao_plenaria").text(data["sessao_plenaria"]) |
|
|
$("#sessao_plenaria_data").text("Data Início: " + data["sessao_plenaria_data"]) |
|
|
|
|
|
$("#sessao_plenaria_hora_inicio").text("Hora Início: " + data["sessao_plenaria_hora_inicio"]) |
|
|
|
|
|
$("#sessao_solene_tema").text(data["tema_solene"]) |
|
|
|
|
|
if (data["status_painel"] == false) { |
|
|
if (data["status_painel"] == false) { |
|
|
$("#message").text("PAINEL ENCONTRA-SE FECHADO"); |
|
|
$("#message").text("PAINEL ENCONTRA-SE FECHADO"); |
|
|
} |
|
|
} |
|
|
@ -278,21 +228,30 @@ |
|
|
$("#message").text(""); |
|
|
$("#message").text(""); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (data["sessao_solene"]){ |
|
|
if (data["sessao_solene"]) { |
|
|
$("#resultado_votacao_div").hide(); |
|
|
$("#resultado_votacao_div").hide(); |
|
|
$("#obs_materia_div").hide(); |
|
|
$("#obs_materia_div").hide(); |
|
|
$('#tema_solene_div').show(); |
|
|
$('#tema_solene_div').show(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (data["brasao"] != null) |
|
|
if (data["brasao"] != null) { |
|
|
$("#logo-painel").attr("src", data["brasao"]); |
|
|
$("#logo-painel").attr("src", data["brasao"]); |
|
|
|
|
|
$("#logo-container").show(); |
|
|
|
|
|
$("#relogio-container") |
|
|
|
|
|
.removeClass("col-12 mt-5") |
|
|
|
|
|
.addClass("col-4"); |
|
|
|
|
|
} else { |
|
|
|
|
|
$("#logo-container").hide(); |
|
|
|
|
|
$("#relogio-container") |
|
|
|
|
|
.removeClass("col-4") |
|
|
|
|
|
.addClass("col-12 mt-5"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
var presentes = $("#parlamentares"); |
|
|
var presentes = $("#parlamentares"); |
|
|
var votacao = $("#votacao"); |
|
|
var votacao = $("#votacao"); |
|
|
var oradores = $("#orador") |
|
|
var oradores = $("#orador") |
|
|
$("#votacao").text(''); |
|
|
$("#votacao").empty(); |
|
|
presentes.children().remove(); |
|
|
presentes.children().remove(); |
|
|
votacao.children().remove(); |
|
|
|
|
|
oradores.children().remove(); |
|
|
oradores.children().remove(); |
|
|
|
|
|
|
|
|
var oradores_list = data["oradores"]; |
|
|
var oradores_list = data["oradores"]; |
|
|
@ -300,31 +259,73 @@ |
|
|
|
|
|
|
|
|
if (data["status_painel"] == true) { |
|
|
if (data["status_painel"] == true) { |
|
|
mostrar_voto = data["mostrar_voto"]; |
|
|
mostrar_voto = data["mostrar_voto"]; |
|
|
presentes.append('<table id="parlamentares_list">'); |
|
|
|
|
|
|
|
|
presentes.append('<div class="container-fluid" id="parlamentares_container">'); |
|
|
|
|
|
presentes.append('<div class="parlamentares-grid" id="parlamentares_row">'); |
|
|
|
|
|
var votoSim = 0; |
|
|
|
|
|
var votoNao = 0; |
|
|
|
|
|
var votoAbster = 0; |
|
|
|
|
|
|
|
|
$.each(presentes_list, function (index, parlamentar) { |
|
|
$.each(presentes_list, function (index, parlamentar) { |
|
|
|
|
|
var votoClass = ''; |
|
|
|
|
|
var votoText = ''; |
|
|
|
|
|
|
|
|
|
|
|
if (parlamentar.voto == 'Sim') { |
|
|
|
|
|
votoClass = 'voto-sim'; |
|
|
|
|
|
votoText = 'S'; |
|
|
|
|
|
votoSim += 1; |
|
|
|
|
|
} else if (parlamentar.voto == 'Não') { |
|
|
|
|
|
votoClass = 'voto-nao'; |
|
|
|
|
|
votoText = 'N'; |
|
|
|
|
|
votoNao += 1 |
|
|
|
|
|
} else if (parlamentar.voto == 'Abstenção') { |
|
|
|
|
|
votoClass = 'voto-abstencao'; |
|
|
|
|
|
votoText = 'A'; |
|
|
|
|
|
votoAbster += 1 |
|
|
|
|
|
} else if (parlamentar.voto == 'Voto Informado' && mostrar_voto == false) { |
|
|
|
|
|
votoClass = 'voto-informado'; |
|
|
|
|
|
votoText = 'I'; |
|
|
|
|
|
} else if (parlamentar.voto) { |
|
|
|
|
|
votoText = parlamentar.voto; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (parlamentar.fotografia) { |
|
|
|
|
|
fotografia = parlamentar.fotografia |
|
|
|
|
|
} else { |
|
|
|
|
|
fotografia = "{% webpack_static 'img/avatar.png' %}" |
|
|
|
|
|
} |
|
|
|
|
|
var cardHtml = ` |
|
|
|
|
|
<div class="parlamentar-card mt-3 ${votoClass}"> |
|
|
|
|
|
<div class="voto-faixa"> |
|
|
|
|
|
<p> |
|
|
|
|
|
${votoText} |
|
|
|
|
|
</p> |
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
<div class="foto-container"> |
|
|
|
|
|
<img src="${fotografia}" alt="${parlamentar.nome}"> |
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
if (parlamentar.voto == 'Voto Informado' && mostrar_voto == false){ |
|
|
<div class="mt-2 text-center"> |
|
|
$('#parlamentares_list').append('<tr><td style="padding-right:20px; color:yellow" >' + |
|
|
<div class="nome">${parlamentar.nome}</div> |
|
|
parlamentar.nome + |
|
|
<div class="partido">${parlamentar.partido}</div> |
|
|
'</td> <td style="padding-right:20px; color:yellow">' + |
|
|
</div> |
|
|
parlamentar.partido + '</td> <td style="padding-right:20px; color:yellow">' |
|
|
</div> |
|
|
+ '</td></tr>') |
|
|
`; |
|
|
} |
|
|
|
|
|
else{ |
|
|
|
|
|
$('#parlamentares_list').append(show_voto(parlamentar)) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$('#parlamentares_row').append(cardHtml); |
|
|
}); |
|
|
}); |
|
|
presentes.append('</table>') |
|
|
|
|
|
|
|
|
|
|
|
if (data["oradores"].length > 0){ |
|
|
presentes.append('</div>'); |
|
|
|
|
|
presentes.append('</div>'); |
|
|
|
|
|
|
|
|
|
|
|
if (data["oradores"].length > 0) { |
|
|
$('#aparecer_oradores').show(); |
|
|
$('#aparecer_oradores').show(); |
|
|
oradores.append('<table id="oradores_list">'); |
|
|
oradores.append('<table id="oradores_list">'); |
|
|
$.each(oradores_list, function (index, orador) { |
|
|
$.each(oradores_list, function (index, orador) { |
|
|
$('#oradores_list').append('<tr><td style="padding-right:20px; color:white" >' + |
|
|
$('#oradores_list').append('<tr><td style="padding-right:20px; color:white" >' + |
|
|
orador.numero + 'º  ' + |
|
|
orador.numero + 'º - ' + |
|
|
orador.nome +'</td></tr>') |
|
|
orador.nome + '</td></tr>') |
|
|
}); |
|
|
}); |
|
|
oradores.append('</table>'); |
|
|
oradores.append('</table>'); |
|
|
} |
|
|
} |
|
|
@ -332,40 +333,40 @@ |
|
|
$('#aparecer_oradores').hide(); |
|
|
$('#aparecer_oradores').hide(); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
else{ |
|
|
else { |
|
|
presentes.append('<span style="color:white" id="parlamentares_list">'); |
|
|
presentes.append('<span class="text-white" id="parlamentares_list">'); |
|
|
$('#parlamentares_list').append( |
|
|
$('#parlamentares_list').append( |
|
|
'<center>A listagem de parlamentares só aparecerá quando o painel estiver aberto.</center>') |
|
|
'<center>A listagem de parlamentares só aparecerá quando o painel estiver aberto.</center>') |
|
|
presentes.append('</span>'); |
|
|
presentes.append('</span>'); |
|
|
|
|
|
|
|
|
oradores.append('<span style="color:white" id="oradores_list">'); |
|
|
oradores.append('<span class="text-white" id="oradores_list">'); |
|
|
$('#oradores_list').append( |
|
|
$('#oradores_list').append( |
|
|
'<center>A listagem de oradores só aparecerá quando o painel estiver aberto.</center>') |
|
|
'<center>A listagem de oradores só aparecerá quando o painel estiver aberto.</center>') |
|
|
oradores.append('</span>'); |
|
|
oradores.append('</span>'); |
|
|
|
|
|
|
|
|
votacao.append('<span id="votacao">'); |
|
|
votacao.append('<tr><td colspan="2" class="text-center">A votação só aparecerá quando o painel estiver aberto</td></tr>'); |
|
|
$("#votacao").append('<center>A votação só aparecerá quando o painel estiver aberto</center>'); |
|
|
|
|
|
votacao.append('</span>'); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if(data["status_painel"]){ |
|
|
if (data["status_painel"]) { |
|
|
if (data['materia_legislativa_texto']){ |
|
|
if (data['materia_legislativa_texto']) { |
|
|
var votacao = $("#votacao"); |
|
|
var votacao = $("#votacao"); |
|
|
|
|
|
var total_votos = votoSim + votoNao + votoAbster |
|
|
|
|
|
|
|
|
votacao.append("<li>Sim: " + data["numero_votos_sim"] + "</li>"); |
|
|
votacao.append("<tr><td>Presentes</td><td>" + data["num_presentes"] + "</td></tr>"); |
|
|
votacao.append("<li>Não: " + data["numero_votos_nao"] + "</li>"); |
|
|
votacao.append("<tr><td>Sim</td><td class='table-sim'>" + votoSim + "</td></tr>"); |
|
|
votacao.append("<li>Abstenções: " + data["numero_abstencoes"] + "</li>"); |
|
|
votacao.append("<tr><td>Não</td><td class='table-nao'>" + votoNao + "</td></tr>"); |
|
|
votacao.append("<li>Presentes: " + data["num_presentes"] + "</li>"); |
|
|
votacao.append("<tr><td>Abstenções</td><td class='table-abstencao'>" + votoAbster + "</td></tr>"); |
|
|
votacao.append("<li>Total votos: " + data["total_votos"] + "</li>"); |
|
|
votacao.append("<tr><td><strong>Total votos</strong></td><td class='table-total'><strong>" + total_votos + "</strong></td></tr>"); |
|
|
} |
|
|
} |
|
|
else{ |
|
|
else { |
|
|
$("#votacao").append('<center>Não há votação, pois não há nenhuma matéria aberta ou já votada.</center>'); |
|
|
votacao.append('<tr><td colspan="2" class="text-center">Não há votação, pois não há nenhuma matéria aberta ou já votada.</td></tr>'); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Gerenciar cronômetros |
|
|
var discurso_current = data["cronometro_discurso"]; |
|
|
var discurso_current = data["cronometro_discurso"]; |
|
|
if (!discurso_previous){ |
|
|
if (!discurso_previous) { |
|
|
discurso_previous = '' |
|
|
discurso_previous = ''; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (discurso_current != discurso_previous) { |
|
|
if (discurso_current != discurso_previous) { |
|
|
@ -374,8 +375,8 @@ |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
var aparte_current = data["cronometro_aparte"]; |
|
|
var aparte_current = data["cronometro_aparte"]; |
|
|
if (!aparte_previous){ |
|
|
if (!aparte_previous) { |
|
|
aparte_previous = '' |
|
|
aparte_previous = ''; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (aparte_current != aparte_previous) { |
|
|
if (aparte_current != aparte_previous) { |
|
|
@ -384,8 +385,8 @@ |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
var ordem_current = data["cronometro_ordem"]; |
|
|
var ordem_current = data["cronometro_ordem"]; |
|
|
if (!ordem_previous){ |
|
|
if (!ordem_previous) { |
|
|
ordem_previous = '' |
|
|
ordem_previous = ''; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (ordem_current != ordem_previous) { |
|
|
if (ordem_current != ordem_previous) { |
|
|
@ -394,8 +395,8 @@ |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
var consideracoes_current = data["cronometro_consideracoes"]; |
|
|
var consideracoes_current = data["cronometro_consideracoes"]; |
|
|
if (!consideracoes_previous){ |
|
|
if (!consideracoes_previous) { |
|
|
consideracoes_previous = '' |
|
|
consideracoes_previous = ''; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (consideracoes_current != consideracoes_previous) { |
|
|
if (consideracoes_current != consideracoes_previous) { |
|
|
@ -403,120 +404,134 @@ |
|
|
consideracoes_previous = consideracoes_current; |
|
|
consideracoes_previous = consideracoes_current; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if($('#cronometro_discurso').runner('info').formattedTime == "00:00:30") { |
|
|
var discursoRunning = $('#cronometro_discurso').runner('info').running; |
|
|
|
|
|
var ordemRunning = $('#cronometro_ordem').runner('info').running; |
|
|
|
|
|
var aparteRunning = $('#cronometro_aparte').runner('info').running; |
|
|
|
|
|
var consideracoesRunning = $('#cronometro_consideracoes').runner('info').running; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (ordemRunning) { |
|
|
|
|
|
cronometroVisivel = '#row_ordem'; |
|
|
|
|
|
} else if (aparteRunning) { |
|
|
|
|
|
cronometroVisivel = '#row_aparte'; |
|
|
|
|
|
} else if (consideracoesRunning) { |
|
|
|
|
|
cronometroVisivel = '#row_consideracoes'; |
|
|
|
|
|
} else if (discursoRunning) { |
|
|
|
|
|
cronometroVisivel = '#row_discurso'; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
var todosCronometros = ['#row_discurso', '#row_aparte', '#row_ordem', '#row_consideracoes']; |
|
|
|
|
|
|
|
|
|
|
|
$.each(todosCronometros, function (index, id) { |
|
|
|
|
|
if (id === cronometroVisivel) { |
|
|
|
|
|
$(id).show(); |
|
|
|
|
|
} else { |
|
|
|
|
|
$(id).hide(); |
|
|
|
|
|
} |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
if ($('#cronometro_discurso').runner('info').formattedTime == "00:00:30") { |
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if($('#cronometro_aparte').runner('info').formattedTime == "00:00:30") { |
|
|
if ($('#cronometro_aparte').runner('info').formattedTime == "00:00:30") { |
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if($('#cronometro_ordem').runner('info').formattedTime == "00:00:30") { |
|
|
if ($('#cronometro_ordem').runner('info').formattedTime == "00:00:30") { |
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if($('#cronometro_consideracoes').runner('info').formattedTime == "00:00:30") { |
|
|
if ($('#cronometro_consideracoes').runner('info').formattedTime == "00:00:30") { |
|
|
audioAlertFinish.play(); |
|
|
audioAlertFinish.play(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if(data['sessao_finalizada']){ |
|
|
if (data['sessao_finalizada']) { |
|
|
$("#obs_materia_div").hide(); |
|
|
$("#obs_materia_div").hide(); |
|
|
$("#resultado_votacao_div").hide(); |
|
|
$("#resultado_votacao_div").hide(); |
|
|
} |
|
|
} |
|
|
else if (data['materia_legislativa_texto']){ |
|
|
else if (data['materia_legislativa_texto']) { |
|
|
if (data["status_painel"] == true){ |
|
|
if (data["status_painel"] == true) { |
|
|
$("#materia_legislativa_texto").text(data["materia_legislativa_texto"]); |
|
|
$("#materia_legislativa_texto").text(data["materia_legislativa_texto"]); |
|
|
|
|
|
texto = data['materia_legislativa_ementa'] |
|
|
|
|
|
if (texto.length > 151) { |
|
|
|
|
|
$("#materia_legislativa_ementa").text(texto.substr(0, 145).concat('...')); |
|
|
|
|
|
} |
|
|
|
|
|
else { |
|
|
$("#materia_legislativa_ementa").text(data["materia_legislativa_ementa"]); |
|
|
$("#materia_legislativa_ementa").text(data["materia_legislativa_ementa"]); |
|
|
} |
|
|
} |
|
|
else{ |
|
|
} |
|
|
|
|
|
else { |
|
|
$("#materia_legislativa_texto").text('A Matéria em votação só aparecerá quando o painel estiver aberto'); |
|
|
$("#materia_legislativa_texto").text('A Matéria em votação só aparecerá quando o painel estiver aberto'); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
else{ |
|
|
else { |
|
|
$("#materia_legislativa_texto").text('Não há nenhuma matéria votada ou para votação.'); |
|
|
$("#materia_legislativa_texto").text('Não há nenhuma matéria votada ou para votação.'); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (data['observacao_materia'] && data["status_painel"] == true){ |
|
|
if (data['observacao_materia'] && data["status_painel"] == true) { |
|
|
var texto = data['observacao_materia']; |
|
|
var texto = data['observacao_materia']; |
|
|
if(texto.length > 151) { |
|
|
if (texto.length > 151) { |
|
|
$("#observacao_materia").text(texto.substr(0, 145).concat('(...)')); |
|
|
$("#observacao_materia").text(texto.substr(0, 145).concat('(...)')); |
|
|
} |
|
|
} |
|
|
else{ |
|
|
else { |
|
|
$("#observacao_materia").text(texto); |
|
|
$("#observacao_materia").text(texto); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
else{ |
|
|
else { |
|
|
$("#observacao_materia").text(''); |
|
|
$("#observacao_materia").text(''); |
|
|
} |
|
|
} |
|
|
if (data['tipo_resultado'] && data['status_painel'] == true){ |
|
|
if (data['tipo_resultado'] && data['status_painel'] == true) { |
|
|
if(data['tipo_votacao'] != 'Leitura' && !data['sessao_finalizada'] && !data["sessao_solene"]){ |
|
|
if (data['tipo_votacao'] != 'Leitura' && !data['sessao_finalizada'] && !data["sessao_solene"]) { |
|
|
$("#resultado_votacao").css("color", "#45919D"); |
|
|
$("#resultado_votacao").css("color", "#45919D"); |
|
|
$("#mat_em_votacao").text("Matéria em Votação"); |
|
|
$("#mat_em_votacao").text("Matéria em Votação"); |
|
|
$("#resultado_votacao_div").show(); |
|
|
$("#resultado_votacao_div").show(); |
|
|
} |
|
|
} |
|
|
else{ |
|
|
else { |
|
|
$("#resultado_votacao_div").hide(); |
|
|
$("#resultado_votacao_div").hide(); |
|
|
$("#mat_em_votacao").text("Matéria em Leitura"); |
|
|
$("#mat_em_votacao").text("Matéria em Leitura"); |
|
|
} |
|
|
} |
|
|
console.log(data["tipo_resultado"], data['tipo_votacao']); |
|
|
|
|
|
$("#resultado_votacao").text(data["tipo_resultado"]); |
|
|
$("#resultado_votacao").text(data["tipo_resultado"]); |
|
|
|
|
|
|
|
|
var resultado_votacao_upper = $("#resultado_votacao").text().toUpperCase(); |
|
|
var resultado_votacao_upper = $("#resultado_votacao").text().toUpperCase(); |
|
|
console.log(resultado_votacao_upper, data['tipo_resultado']); |
|
|
if (resultado_votacao_upper.search("APROV") != -1) { |
|
|
if (resultado_votacao_upper.search("APROV") != -1){ |
|
|
|
|
|
$("#resultado_votacao").css("color", "#7CFC00"); |
|
|
$("#resultado_votacao").css("color", "#7CFC00"); |
|
|
$("#mat_em_votacao").text("Matéria Votada"); |
|
|
$("#mat_em_votacao").text("Matéria Votada"); |
|
|
} |
|
|
} |
|
|
else if (resultado_votacao_upper.search("REJEIT") != -1){ |
|
|
else if (resultado_votacao_upper.search("REJEIT") != -1) { |
|
|
$("#resultado_votacao").css("color", "red"); |
|
|
$("#resultado_votacao").css("color", "red"); |
|
|
$("#mat_em_votacao").text("Matéria Votada"); |
|
|
$("#mat_em_votacao").text("Matéria Votada"); |
|
|
} |
|
|
} |
|
|
else if (resultado_votacao_upper.search("LIDA") != -1){ |
|
|
else if (resultado_votacao_upper.search("LIDA") != -1) { |
|
|
$("#mat_em_votacao").text("Matéria Lida"); |
|
|
$("#mat_em_votacao").text("Matéria Lida"); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
else{ |
|
|
else { |
|
|
$("#resultado_votacao").text(''); |
|
|
$("#resultado_votacao").text(''); |
|
|
if(data['tipo_votacao'] != 'Leitura') |
|
|
if (data['tipo_votacao'] != 'Leitura') |
|
|
$("#mat_em_votacao").text("Matéria em Votação"); |
|
|
$("#mat_em_votacao").text("Matéria em Votação"); |
|
|
else{ |
|
|
else { |
|
|
$("#mat_em_votacao").text("Matéria em Leitura"); |
|
|
$("#mat_em_votacao").text("Matéria em Leitura"); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
|
error: function (xhr, status, error) { |
|
|
|
|
|
console.error("Erro no polling:", error); |
|
|
}, |
|
|
}, |
|
|
error: function(err) { |
|
|
complete: function () { |
|
|
console.error(err); |
|
|
isPolling = false; |
|
|
|
|
|
setTimeout(poll, 500); |
|
|
}, |
|
|
}, |
|
|
dataType: "json", |
|
|
timeout: 20000 |
|
|
complete: setTimeout(function() {poll()}, 500), |
|
|
|
|
|
timeout: 20000 // TODO: decrease |
|
|
|
|
|
}) |
|
|
|
|
|
})(); |
|
|
|
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
function show_voto(parlamentar) { |
|
|
|
|
|
color = 'white' |
|
|
|
|
|
if (parlamentar.voto == "Sim"){ |
|
|
|
|
|
color = 'green' |
|
|
|
|
|
} |
|
|
|
|
|
else if (parlamentar.voto == "Não"){ |
|
|
|
|
|
color = 'red' |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
return ('<tr> <td style="padding-right:20px">' + |
|
|
// Iniciar polling |
|
|
`<font color="`+color+`">${parlamentar.nome}</font> </td> <td style="padding-right:20px">` + |
|
|
poll(); |
|
|
`<font color="`+color+`">${parlamentar.partido}</font> </td> <td style="padding-right:20px">` + |
|
|
|
|
|
`<font color="`+color+`">${parlamentar.voto}</font> </td></tr>`) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
function changeFontSize(elementId, increment) { |
|
|
}); |
|
|
let element = document.getElementById(elementId); |
|
|
|
|
|
if (element) { |
|
|
|
|
|
let currentSize = parseFloat(window.getComputedStyle(element, null).getPropertyValue('font-size')); |
|
|
|
|
|
element.style.fontSize = (currentSize + increment) + 'px'; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
</script> |
|
|
</script> |
|
|
</html> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</html> |