Dar cor às cores

Started by FragaCampos, February 19, 2013, 12:04:06 AM

Previous topic - Next topic

FragaCampos

Bom, como o próprio título indica, gostaria de dar cores à lista de dropdown das cores, quando se está a criar uma mensagem.
Eu tinha isto no SMF 1 e sei que tinha algo a ver com este código. Aguém sabe como adaptar isto pra o SMF 2?

TaijovuNeji

Abra o arquivo GenericControls.template.php

Procure por esse código:

/ Print a drop down list for all the colors we allow!
if (!isset($context['disabled_tags']['color']))
echo ',
{
sType: \'select\',
sName: \'sel_color\',
oOptions: {
\'\': ', JavaScriptEscape($txt['change_color']), ',
\'black\': ', JavaScriptEscape($txt['black']), ',
\'red\': ', JavaScriptEscape($txt['red']), ',
\'yellow\': ', JavaScriptEscape($txt['yellow']), ',
\'pink\': ', JavaScriptEscape($txt['pink']), ',
\'green\': ', JavaScriptEscape($txt['green']), ',
\'orange\': ', JavaScriptEscape($txt['orange']), ',
\'purple\': ', JavaScriptEscape($txt['purple']), ',
\'blue\': ', JavaScriptEscape($txt['blue']), ',
\'beige\': ', JavaScriptEscape($txt['beige']), ',
\'brown\': ', JavaScriptEscape($txt['brown']), ',
\'teal\': ', JavaScriptEscape($txt['teal']), ',
\'navy\': ', JavaScriptEscape($txt['navy']), ',
\'maroon\': ', JavaScriptEscape($txt['maroon']), ',
\'limegreen\': ', JavaScriptEscape($txt['lime_green']), ',
\'white\': ', JavaScriptEscape($txt['white']), '
}
}';


Em cada linha com a cor, coloque um <span> com o atributo style definindo a cor que vc quer que o texto tenho, abaixo posto um código com um exemplo do vermelho com a cor:

/ Print a drop down list for all the colors we allow!
if (!isset($context['disabled_tags']['color']))
echo ',
{
sType: \'select\',
sName: \'sel_color\',
oOptions: {
\'\': ', JavaScriptEscape($txt['change_color']), ',
\'black\': ', JavaScriptEscape($txt['black']), ',
\'red\': <span style="color: red">', JavaScriptEscape($txt['red']), '</span>,
\'yellow\': ', JavaScriptEscape($txt['yellow']), ',
\'pink\': ', JavaScriptEscape($txt['pink']), ',
\'green\': ', JavaScriptEscape($txt['green']), ',
\'orange\': ', JavaScriptEscape($txt['orange']), ',
\'purple\': ', JavaScriptEscape($txt['purple']), ',
\'blue\': ', JavaScriptEscape($txt['blue']), ',
\'beige\': ', JavaScriptEscape($txt['beige']), ',
\'brown\': ', JavaScriptEscape($txt['brown']), ',
\'teal\': ', JavaScriptEscape($txt['teal']), ',
\'navy\': ', JavaScriptEscape($txt['navy']), ',
\'maroon\': ', JavaScriptEscape($txt['maroon']), ',
\'limegreen\': ', JavaScriptEscape($txt['lime_green']), ',
\'white\': ', JavaScriptEscape($txt['white']), '
}
}';


Eu não tive como testar aqui, mas é pra funcionar.. MAS, se não funcionar, me avisa XD

Hospedagem 20GB, Cpanel, Windows ou Linux, com suporte a PHP ou ASP, R$ 30,00 por mes ou 290 por ano


meu site: http://www.dungeonmakers.com.br/forum
Não atendo PM para pedidos de suporte/ajuda. Para isso existe o forum!!!

Costa

Isso é javascript. Não deve funcionar.
Hugo "Costa" Fernandes - PT SMF
Todas as MP's a pedir ajuda são sujeitas a radioactividade, microondas, queimadas e atiradas borda fora.

"At least someone appreciates the fact that I am doing and not thinking..."
"Laziness is counter-revolutionary."

TaijovuNeji

#3
E daí que é javascript? Pelo que vi no código, aquela parte reconhece tag html, por isso pedi para ele testar
Hospedagem 20GB, Cpanel, Windows ou Linux, com suporte a PHP ou ASP, R$ 30,00 por mes ou 290 por ano


meu site: http://www.dungeonmakers.com.br/forum
Não atendo PM para pedidos de suporte/ajuda. Para isso existe o forum!!!

FragaCampos

Obrigado, TaijovuNeji, mas não funciona. Os botões BBC desaparecem todos se fizer isso. :-\

Costa

Quote from: TaijovuNeji on February 19, 2013, 12:44:15 PM
E daí que é javascript? Pelo que vi no código, aquela parte reconhece tag html, por isso pedi para ele testar
Explica-me aí onde viste que aquela parte reconhece html com o escape do js ali pelo meio. Devo estar cego.
Hugo "Costa" Fernandes - PT SMF
Todas as MP's a pedir ajuda são sujeitas a radioactividade, microondas, queimadas e atiradas borda fora.

"At least someone appreciates the fact that I am doing and not thinking..."
"Laziness is counter-revolutionary."

TaijovuNeji

Realmente tinha razão costa, aquela porcaria não reconhece html, nem colocando na função do javascript, eu achei que reconhecia, errar é humano, a não ser que vc seja um Deus, e nunca erre, não precisava ser tão ignorante nas suas mensagens, se não vai ajudar, então não atrapalhe.


Bom, amigo FragaCampos, eu consegui fazer o que vc pediu, testei no meu próprio forum e funcionou bem, veja o que deves fazer:


Abra o arquivo Themes/default/scripts/editor.js ... procure por:

sOptions += '<option value="' + sSelectValue.php_htmlspecialchars() + '">' + oCurButton.oOptions[sSelectValue].php_htmlspecialchars() + '</option>';



Substitua por:


sOptions += '<option value="' + sSelectValue.php_htmlspecialchars() + '" class="editor_' + sSelectValue.php_htmlspecialchars() + '">' + oCurButton.oOptions[sSelectValue].php_htmlspecialchars() + '</option>';



Isso irá atribuir classes css em cada option do select, ficando assim:


<select style="margin-bottom: 1ex; font-size: x-small;" id="BBCBox_message_select_0_11" name="sel_color">
<option value="">Alterar a Cor</option>
<option class="editor_black" value="black">Preto</option>
<option class="editor_red" value="red">Vermelho</option>
<option class="editor_yellow" value="yellow">Amarelo</option>
<option class="editor_pink" value="pink">Rosa</option>
<option class="editor_green" value="green">Verde</option>
<option class="editor_orange" value="orange">Laranja</option>
<option class="editor_purple" value="purple">Púrpura</option>
<option class="editor_blue" value="blue">Azul</option>
<option class="editor_beige" value="beige">Bege</option>
<option class="editor_brown" value="brown">Castanho</option>
<option class="editor_teal" value="teal">Teal</option>
<option class="editor_navy" value="navy">Azul Marinho</option>
<option class="editor_maroon" value="maroon">Marrom</option>
<option class="editor_limegreen" value="limegreen">Verde Lima</option>
<option class="editor_white" value="white">Branco</option>
</select>



Veja que para a cor Vermelha por exemplo, foi criada a classe "editor_red".


Agora, basta ir no style.css do seu template e colocar a class css para tratar cada cor, abaixo um exemplo que defini para a cor vermelha:


.editor_red{
   color: red;
}



Fazendo isso, vc pode colocar também o texto em itálico, negrito, sublinhado, e várias outras coisas


Se não entendeu, me pergunta que te explico, e desta vez GARANTO que funciona, pois testei tudo aqui antes de postar
Hospedagem 20GB, Cpanel, Windows ou Linux, com suporte a PHP ou ASP, R$ 30,00 por mes ou 290 por ano


meu site: http://www.dungeonmakers.com.br/forum
Não atendo PM para pedidos de suporte/ajuda. Para isso existe o forum!!!

Costa

Quote from: TaijovuNeji on February 19, 2013, 01:27:17 PM
Realmente tinha razão costa, aquela porcaria não reconhece html, nem colocando na função do javascript, eu achei que reconhecia, errar é humano, a não ser que vc seja um Deus, e nunca erre, não precisava ser tão ignorante nas suas mensagens, se não vai ajudar, então não atrapalhe.
Não fui ignorante. Dei logo a entender que não ia funcionar da maneira que disseste. E tu continuaste a dizer que ia funcionar, e eu voltei a dizer que não. Não atrapalhei, pelo contrário, fiz-te ver o óbvio.

O ignorante foste tu que teimaste em dizer que funcionava daquela maneira, quando na verdade não funciona.
Tenho lá culpa que precises de despejar a frustração de estares errado a chamar os outros de ignorantes.
Hugo "Costa" Fernandes - PT SMF
Todas as MP's a pedir ajuda são sujeitas a radioactividade, microondas, queimadas e atiradas borda fora.

"At least someone appreciates the fact that I am doing and not thinking..."
"Laziness is counter-revolutionary."

TaijovuNeji

#8
Estava a te perguntar o pq de não reconhecer por ser javascript, achei que reconhecia.
Vc falou "Devo estar cego" dando sentido de ironia no que disse, ou seja, foi ignorante sim, pois também diz que continuei a insistir que ia funcionar, eu não fiquei insistindo, só disse uma única vez. E não ajudou em nada falando que não ia funcionar, o FragaCampos mesmo poderia me dizer que não funcionou ao testar o código (como ele realmente fez).

Bom, não perderei meu tempo discutindo com vc, irei apagar novas mensagens que fujam do objetivo deste tópico
Hospedagem 20GB, Cpanel, Windows ou Linux, com suporte a PHP ou ASP, R$ 30,00 por mes ou 290 por ano


meu site: http://www.dungeonmakers.com.br/forum
Não atendo PM para pedidos de suporte/ajuda. Para isso existe o forum!!!

vms

Existe aqui um MOD que faz isso ou sou eu que não estou a perceber o que pretendes  :-[

http://custom.simplemachines.org/mods/index.php?mod=1624

TaijovuNeji

Boa dica amigo vms, talvez esse mod resolva o problema dele, vamos ver se ele prefere modificar somente as cores fazendo o que ensinei ou instalar esse mod
Hospedagem 20GB, Cpanel, Windows ou Linux, com suporte a PHP ou ASP, R$ 30,00 por mes ou 290 por ano


meu site: http://www.dungeonmakers.com.br/forum
Não atendo PM para pedidos de suporte/ajuda. Para isso existe o forum!!!

FragaCampos

Bom, realmente, esse mod faz o que pretendo. Alguém o deve ter adaptado, porque há três semanas testei-o e não estava a funcionar...  :-\

Caro, TaijovuNeji, muito obrigado pela tua dica.
Testei e está a funcionar perfeitamente. Peço desculpa pelo trabalho que te dei.  :(
Pelo menos fica aqui a dica para quem se interessar.

Abraço.

FragaCampos

Ah, já sei qual era o problema. O mod só funciona em firefox. Em chrome e IE não funciona...
Bom, sendo assim, fico-me mesmo pela dica do TaijovuNeji. ;)

TaijovuNeji

Olá amigo, não precisa se desculpar não, estamos aí para ajudar ^^
Qualquer dúvida ou problema que tiver, é só avisar

Tópico dado como resolvido, caso ainda tenha alguma dúvida ou problema, fique a vontade para marcar como não resolvido
Hospedagem 20GB, Cpanel, Windows ou Linux, com suporte a PHP ou ASP, R$ 30,00 por mes ou 290 por ano


meu site: http://www.dungeonmakers.com.br/forum
Não atendo PM para pedidos de suporte/ajuda. Para isso existe o forum!!!

Advertisement: