PROJUDI Colors

Conjunto de scripts para destacar os eventos no PROJUDI TJBA.

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         PROJUDI Colors
// @namespace    http://tampermonkey.net/
// @version      1.9
// @description  Conjunto de scripts para destacar os eventos no PROJUDI TJBA.
// @author       Levi
// @match        https://projudi.tjba.jus.br/*
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    // Função para mudar a cor do texto de Contestação
    function mudarCorContestacao() {
        const elementos = document.evaluate(
            "//font[contains(text(), 'Juntada de Petição de Contestação')]",
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementos.snapshotLength; i++) {
            const elemento = elementos.snapshotItem(i);
            elemento.style.color = '#A020F0';
        }
    }

    // Função para mudar a cor do texto de Habilitação
    function mudarCorHabilitacao() {
        const elementos = document.evaluate(
            "//font[contains(text(), 'Juntada de Petição de Requisição de Habilitação')]",
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementos.snapshotLength; i++) {
            const elemento = elementos.snapshotItem(i);
            elemento.style.color = '#0000FF';
        }
    }

    // Função para destacar "Julgada procedente em parte a ação"
    function destacarProcedenteEmParte() {
        const elements = document.querySelectorAll('b > font');

        for (const element of elements) {
            if (element.textContent.trim() === 'Julgada procedente em parte a ação') {
                element.style.color = 'white';
                element.parentElement.style.backgroundColor = '#006400';
            }
        }
    }

    // Função para mudar a cor do texto da Tutela/Liminar para vinho
    function mudarCorTutelaLiminar() {
        const elementos = document.evaluate(
            "//font[contains(text(), 'Urgência')]",
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementos.snapshotLength; i++) {
            const elemento = elementos.snapshotItem(i);
            elemento.style.color = '#ff0000';
        }
    }

    // Função para mudar a cor do texto de Juntada de Petição de Recurso e Análise de Recurso
    function mudarCorRecurso() {
        const elementos = document.evaluate(
            "//font[contains(text(), 'Petição de Recurso') or contains(text(), 'Análise de Recurso')]",
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementos.snapshotLength; i++) {
            const elemento = elementos.snapshotItem(i);
            elemento.style.color = '#eead2d';
        }
    }

    // Função para mudar a cor do texto de Substabelecimento
    function mudarCorSubstabelecimento() {
        const elementos = document.evaluate(
            "//font[contains(text(), 'Juntada de Petição de Substabelecimento')]",
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementos.snapshotLength; i++) {
            const elemento = elementos.snapshotItem(i);
            elemento.style.color = '#ffa500';
        }
    }

    // Função para destacar "Julgada improcedente a ação"
    function destacarImprocedente() {
        var elements = document.evaluate("//*[contains(text(), 'Julgada improcedente a ação')]", document, null, XPathResult.ANY_TYPE, null);

        var element = elements.iterateNext();
        while (element) {
            element.style.backgroundColor = "#ff0000";
            element.style.color = "white";

            element = elements.iterateNext();
        }
    }

    // Função para modificar o texto de Medida Liminar
    function modificarMedidaLiminar() {
        // Concedida a Medida Liminar
        let xpathConcedida = "//*[contains(text(), 'Concedida a Medida Liminar') or contains(text(),'Concedido a Medida Liminar') or contains(text(),'CONCEDIDA A MEDIDA LIMINAR') or contains(text(),'CONCEDIDO A MEDIDA LIMINAR')]";
        let elementosConcedida = document.evaluate(
            xpathConcedida,
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementosConcedida.snapshotLength; i++) {
            const elemento = elementosConcedida.snapshotItem(i);
            elemento.style.color = '#008000';
            elemento.style.textDecoration = 'underline';
        }

        // Não Concedida a Medida Liminar
        let xpathNaoConcedida = "//*[contains(text(), 'Não Concedida a Medida Liminar') or contains(text(),'Não Concedida') or contains(text(),'Não Concedido a Medida Liminar') or contains(text(),'NÃO CONCEDIDO A MEDIDA LIMINAR')]";
        let elementosNaoConcedida = document.evaluate(
            xpathNaoConcedida,
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementosNaoConcedida.snapshotLength; i++) {
            const elemento = elementosNaoConcedida.snapshotItem(i);
            elemento.style.color = '#b7410e';
        }
    }

    // Função para mudar a cor do texto de Extinção
    function mudarCorExtinto() {
        const elementos = document.evaluate(
            "//font[contains(text(), 'Extinto')]",
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementos.snapshotLength; i++) {
            const elemento = elementos.snapshotItem(i);
            elemento.style.color = '#000000';
        }
    }

    // Função para modificar o texto de Embargos de Declaração
    function modificarEmbargosDeclaracao() {
        // Embargos de Declaração Acolhidos
        let xpathAcolhidos = "//*[contains(text(), 'Embargos de Declaração Acolhidos') or contains(text(), 'EMBARGOS DE DECLARAÇÃO ACOLHIDOS')]";
        let elementosAcolhidos = document.evaluate(
            xpathAcolhidos,
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementosAcolhidos.snapshotLength; i++) {
            const elemento = elementosAcolhidos.snapshotItem(i);
            elemento.style.color = '#008000';
        }

        // Embargos de Declaração Não-acolhidos
        let xpathNaoAcolhidos = "//*[contains(text(), 'Embargos de Declaração Não-acolhidos') or contains(text(), 'EMBARGOS DE DECLARAÇÃO NÃO-ACOLHIDOS') or contains(text(), 'Embargos de Declaração Rejeitados') or contains(text(), 'EMBARGOS DE DECLARAÇÃO REJEITADOS')]";
        let elementosNaoAcolhidos = document.evaluate(
            xpathNaoAcolhidos,
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementosNaoAcolhidos.snapshotLength; i++) {
            const elemento = elementosNaoAcolhidos.snapshotItem(i);
            elemento.style.color = '#b7410e';
        }
    }

    // Função para mudar a cor do texto de Acordo
    function mudarCorAcordo() {
        const elementos = document.evaluate(
            "//font[contains(text(), 'Acordo')]",
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementos.snapshotLength; i++) {
            const elemento = elementos.snapshotItem(i);
            elemento.style.color = '#008080';
        }
    }

    // Função para modificar o texto "mero expediente" para cinza e sublinhado
    function modificarMeroExpediente() {
        let xpathMeroExpediente = "//*[contains(text(), 'mero expediente')]";
        let elementosMeroExpediente = document.evaluate(
            xpathMeroExpediente,
            document,
            null,
            XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
            null
        );

        for (let i = 0; i < elementosMeroExpediente.snapshotLength; i++) {
            const elemento = elementosMeroExpediente.snapshotItem(i);
            elemento.style.color = '#808080';
            elemento.style.textDecoration = 'underline';
        }
    }

    // Executa as funções quando a página carregar e imediatamente
    window.addEventListener('load', function() {
        mudarCorContestacao();
        mudarCorHabilitacao();
        destacarProcedenteEmParte();
        mudarCorTutelaLiminar();
        mudarCorRecurso();
        mudarCorSubstabelecimento();
        destacarImprocedente();
        modificarMedidaLiminar();
        mudarCorExtinto();
        modificarEmbargosDeclaracao();
        mudarCorAcordo();
        modificarMeroExpediente(); // Adicionado a função "mero expediente"
    });

    mudarCorContestacao();
    mudarCorHabilitacao();
    destacarProcedenteEmParte();
    mudarCorTutelaLiminar();
    mudarCorRecurso();
    mudarCorSubstabelecimento();
    destacarImprocedente();
    modificarMedidaLiminar();
    mudarCorExtinto();
    modificarEmbargosDeclaracao();
    mudarCorAcordo();
    modificarMeroExpediente(); // Adicionado a função "mero expediente"
})();