¿Se puede hacer? [Colorpick]

Started by Aboul, March 05, 2014, 06:48:20 PM

Previous topic - Next topic

Aboul

Bueno queria saber si era posible colocar una especie de colorpick en el foro pero que el usuario escoja los codigos hexadecimales para ponerlos en el color de su theme...

Un ejemplo:
Que salga el nav y una barra que diga escoge tu color, el usuario regular ponga por ejemplo #c4c4c4 y el theme cambie a ese color.


Patrick D

Desde mi punto de vista sí. Podría hacerse permanente en usuarios usando el smf_members para guardar el color que elije cada usuario o para visitantes con cookies. Mas allá de eso, hay muchas formas de hacerlo. Yo creo que lo haría así, suponiendo que ya esté hecha la parte de seleccionar el color y se guarde en la db:

index.template.php

global $smcFunc, $db_prefix, $context;
$sql = $smcFunc['db_query']('','SELECT color_theme FROM '.$db_prefix.'members WHERE id_member = "'.$context['user']['id'].'"');
while($var = $smcFunc['db_fetch_assoc']($sql)) {
echo '
<style>
.color_theme {
background: '.$var['color_theme'].' !important;
}
</style>
}


Luego sólo tendrías que cambiar, suponiendo que tienes un div windowbg y quieres ponerle el color de fondo:
<div class="windowbg"></div>
por
<div class="windowbg color_theme"></div>


Espero que te sirva, no lo he probado pero no veo porqué no iba a funcionar. Es la forma que se me ocurre, pero seguro que hay muchas más y más simples, un saludo.

vicram10

hacer consultas a la BD en los templates no es recomendable..
pero esta dentro de lo que quiere el usuario, solo que se debe modificar mejor para que la misma no deje vulnerable su SMF..

1van10

¿Con Javascript lo mismo si sería viable no? Porque leer info de un div y reescribirlo no es muy complicado con js

Advertisement: