[Resolvido] Alteração de tema novo menu

Bom dia a todos!

Na nova aplicação de menu do scriptcase versão 9.10, onde eu encontro a opção de criação/edição de temas do menu?

Bom dia! Nesta Versão 9.10 ainda não colocaram esta opção no menu. Agora tem outra opção, mas ela não fica gravada com a última alteração do usuário. Portanto, para resolver parcialmente, você poderia criar os temas e salvá-los no banco, conforme deseja fazer criando temas variados e próprios para: Grid, Form ou outro tipo específico. Assim que fizer o login do Usuário, obtenha os tipos de Temas definidos para o usuário e utilize-o no evento OnScriptInit de cada aplicação, de acordo com o tipo. Veja por exemplo: sc_set_theme(‘BlueBerry’); Espero ter ajudado.

Uma outra dica que é muito interessante é utilizar em: APLICAÇÃO -> Edição Expressa. Vai mudar por atacado vários programas. Selecione o que deseja fazer, por exemplo: Layout/Temas e vá escolhendo os tipos de programas. Seguindo… verá que serão apresentados todos os temas do SC, assim poderá escolher e variar os TEMAS nas aplicações já existentes. Porém para cada usuário poder escolher o seu tema, ou até mudá-lo, como eu disse antes, coloque os temas para o Usuário escolher, até mesmo, durante o LOGIN, assim fica tranquilo.

Nelson, não sei se interpretei mal ou me expressei errado, mas no caso eu quero editar o tema da aplicação menu, Eu(administrador) não o usuário, por exemplo, para os formulários eu possuo a criação de temas personalizados, onde defino a cor dos campos, bg e etc…
Quero fazer a mesma coisa para o menu, lá possui alguns temas, como Dark coffee, cobalt e etc… queria criar um próprio tema para o menu. No caso eu só queria saber se existe essa opção e se existe onde ela se localiza.

Hoje não existe a opção de editar/criar o tema do menu, irá sair nas próximas atualizações!

Eu altero ele completamente no CSS.
Em Eventos > OnApplicationInit.
Fecho o PHP e abro o estilo, no final abro o PHP novamente.
Fica assim por exemplo:

?>
<style>
.nav-content .tabs > li > a.active {
    background: #2c7ae5 !important;
    margin-right: 5px !important;
}
</style>
<?
1 Curtida

Top Fabio! Deu certo aqui com sua ideia, obrigado!

Fiz da seguinte forma:

?>    
<style>
    *[data-aetheme=dark-midnight] {
        --theme-color-primary: #2B3D4A !important;
        --theme-color-secondary: #BDB58C !important;
        --theme-color-accent: #2B3D4A !important;
        --theme-color-muted: #BDB58C !important;
    }	
</style>
<?

Pessoal, minha idéia é mudar a Logo dinamicamente conforme o usuário escolha um Tema.

Para isso eu precisaria saber qual o Tema está sendo usado PELO MENU, no momento.

Procurei em variáveis de sessões e não encontro esse tema definido, encontro apenas o tema Geral que estão definidas no Geral das Aplicações.

$tema_atual = $_SESSION['scriptcase']['str_theme']; // não aparece
$tema_atual = $_SESSION['scriptcase']['str_schema']; // aparece somente a Geral

Procurei então, usando a macro e tbém me trouxe o tema Geral das Aplicações:

$tema_atual = sc_get_theme();
echo "<script>console.log('Tema atual: " . $tema_atual . "');</script>";

Aí a dúvida:
Como descobrir o tema que está sendo usado NO MENU em tempo de execução?

A troca de tema do novo menu não gera um ajax para guardar o tema selecionado. Esse tema é salvo em Cookie. Não confio em fazer uma rotina PHP para esse objetivo, o que recomendo é que se use JS e observe qual o valor da tag data-aetheme no elemento .ae-menubar. Isso vai informar com certeza qual tema está sendo usado.

Algo melhor ainda é escrever CSS personalizado para substituir background-image no elemento em que deseja mostrar a imagem desejada de acordo com o tema. Assim como a resposta do @Jaime disse, você pode usar:

<style>
    *[data-aetheme={TEMA_DESEJADO_AQUI}] {SEU_ELEMENTO_AQUI} {
        background-image: url({URL_DA_SUA_IMAGEM_AQUI});
    }	
</style>
1 Curtida

Lembrando que seu elemento selecionado deve estar dentro de algum outro que tenha a tag data-aetheme.

1 Curtida