5 Commits

3 changed files with 25 additions and 7 deletions

View File

@@ -1,6 +1,6 @@
# Simulador Mob-Out ARI-POLI-UPE # Simulador Mob-Out ARI-POLI-UPE
- Autor do Plugin wordpress - Copyright (C) 2026, Versão 1.2.20260629 - Autor do Plugin wordpress - Copyright (C) 2026, Versão 1.3.20260629
> Ruben Carlo Benante <rcb@beco.cc>\ > Ruben Carlo Benante <rcb@beco.cc>\
> Data: 2026-06-29 > Data: 2026-06-29

View File

@@ -1 +1 @@
Plugin simulador-mob-out-ari-poli v1.2.20260629 Plugin simulador-mob-out-ari-poli v1.3.20260629

View File

@@ -3,7 +3,7 @@
Plugin Name: Simulador Mob-Out ARI-POLI Plugin Name: Simulador Mob-Out ARI-POLI
Plugin URI: https://code.beco.cc/beco/simulador-mob-out-ari-poli Plugin URI: https://code.beco.cc/beco/simulador-mob-out-ari-poli
Description: Calculadora de pré-seleção para mobilidade OUT da ARI/POLI-UPE, exibida via shortcode [simulador_mob]. Description: Calculadora de pré-seleção para mobilidade OUT da ARI/POLI-UPE, exibida via shortcode [simulador_mob].
Version: 1.2.20260629 Version: 1.3.20260629
Author: Ruben Carlo Benante Author: Ruben Carlo Benante
Author URI: https://beco.cc Author URI: https://beco.cc
License: GPLv3 or later License: GPLv3 or later
@@ -216,12 +216,19 @@ function outras_brafitec($es, $ms, $est, $apy, $acy, $cy, $ly, $ry, $ea, $pa, $c
function simulador_mob_shortcode() { function simulador_mob_shortcode() {
\wp_enqueue_script( 'mathjax' );
if ($_SERVER['REQUEST_METHOD'] == 'POST'){ if ($_SERVER['REQUEST_METHOD'] == 'POST'){
//var_dump($_POST); //var_dump($_POST);
if (isset($_POST["calcular"])) { if (isset($_POST["calcular"])) {
validar_entrada(); validar_entrada();
global $entradas; global $entradas;
if ($entradas["programa"] != 4){ if ($entradas["media"] <= 0){
// Media curricular e a base da nota (peso 5 no Padrao V2, peso 7 no
// BRAFITEC). Sem ela, evita exibir uma nota baixa enganosa.
global $h, $h_brafitec;
$h = $h_brafitec = "Preencha a média curricular para calcular a nota.";
} elseif ($entradas["programa"] != 4){
global $o, $ro, $s, $y, $a, $h, $entradas; global $o, $ro, $s, $y, $a, $h, $entradas;
$ro = nota_reprovacoes($entradas["repro_rec"], $entradas["repro_nrec"]); $ro = nota_reprovacoes($entradas["repro_rec"], $entradas["repro_nrec"]);
$o = nota_historico($entradas["porcentagem"], $ro, $entradas["media"]); $o = nota_historico($entradas["porcentagem"], $ro, $entradas["media"]);
@@ -642,14 +649,12 @@ foreach ($sie_niveis as $sie_rotulo => $sie_valor) {
<input type="submit" name="calcular" id="calcular" value="Calcular nota"> <input type="submit" name="calcular" id="calcular" value="Calcular nota">
<br><br> <br><br>
<input type="reset" value="Reiniciar dados"> <input type="reset" value="Reiniciar dados" onclick="window.location.href='<?php echo \esc_url( \get_permalink() ); ?>';" />
<br> <br>
</form> </form>
</div> </div>
</div> </div>
<script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML"></script>
<script type="text/javascript"> <script type="text/javascript">
function start() { function start() {
var inputReproRec = document.querySelector("#repro_rec"); var inputReproRec = document.querySelector("#repro_rec");
@@ -719,4 +724,17 @@ start();
return ob_get_clean(); return ob_get_clean();
} }
function register_assets() {
// MathJax 3 renderiza as formulas $$...$$. Registrado aqui e carregado via
// wp_enqueue_script() so quando o shortcode aparece na pagina; no rodape e async.
\wp_register_script(
'mathjax',
'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js',
array(),
'3',
array( 'in_footer' => true, 'strategy' => 'async' )
);
}
\add_action( 'wp_enqueue_scripts', __NAMESPACE__ . '\\register_assets' );
\add_shortcode( 'simulador_mob', __NAMESPACE__ . '\\simulador_mob_shortcode' ); \add_shortcode( 'simulador_mob', __NAMESPACE__ . '\\simulador_mob_shortcode' );