<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Phpost - Todos los foros]]></title>
		<link>https://phpost.es/</link>
		<description><![CDATA[Phpost - https://phpost.es]]></description>
		<pubDate>Wed, 15 Apr 2026 20:56:10 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Nueva etapa del proyecto: Refactorización completa]]></title>
			<link>https://phpost.es/thread-975.html</link>
			<pubDate>Wed, 15 Apr 2026 20:28:45 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=23">Miguel92</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-975.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Nueva etapa del proyecto: Refactorización completa</span></span></div>
<br />
Después de mucho tiempo modificando este proyecto, he llegado a un punto donde necesito tomar una decisión importante sobre su futuro. He estado añadiendo funcionalidades, parcheando errores y haciendo mejoras incrementales, pero ha llegado el momento de dar un paso atrás y reestructurar todo desde sus cimientos.<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">La situación actual</span></span><br />
Con el tiempo, el proyecto ha acumulado:<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Código legacy</span> que se arrastra desde versiones antiguas<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Estructura de base de datos</span> que no es óptima para las necesidades actuales<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Arquitectura inconsistente</span> con múltiples patrones mezclados<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Complejidad innecesaria</span> que dificulta el mantenimiento<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Themes desactualizados</span> que necesitan modernización<br />
</li>
</ul>
Todo esto hace que el proyecto sea más difícil de mantener, comprender y extender de lo que debería ser. (<span style="font-style: italic;" class="mycode_i">Como paso con ZCode V4 por el momento pausado</span>)<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">El plan de refactorización</span></span><br />
A partir de ahora, voy a enfocarme en:1. <span style="font-weight: bold;" class="mycode_b">Base de datos</span><ul class="mycode_list"><li>Rediseño completo del esquema<br />
</li>
<li>Normalización y optimización de tablas<br />
</li>
<li>Eliminación de campos obsoletos<br />
</li>
<li>Mejora en las relaciones entre entidades<br />
</li>
</ul>
2. <span style="font-weight: bold;" class="mycode_b">Arquitectura del código</span><ul class="mycode_list"><li>Reestructuración de clases y módulos<br />
</li>
<li>Implementación consistente de patrones de diseño<br />
</li>
<li>Separación clara de responsabilidades<br />
</li>
<li>Eliminación de dependencias circulares<br />
</li>
</ul>
3. <span style="font-weight: bold;" class="mycode_b">Simplificación</span><ul class="mycode_list"><li>Limpieza de código duplicado<br />
</li>
<li>Eliminación de funcionalidades no utilizadas<br />
</li>
<li>Refactorización de lógica compleja<br />
</li>
<li>Documentación mejorada (por verse, siempre me olvido)<br />
</li>
</ul>
4. <span style="font-weight: bold;" class="mycode_b">Modernización</span><ul class="mycode_list"><li>Aprovechamiento completo de características de PHP 8<br />
</li>
<li>Actualización de librerías y dependencias<br />
</li>
<li>Mejores prácticas de seguridad<br />
</li>
<li>Performance optimizada<br />
</li>
</ul>
5. <span style="font-weight: bold;" class="mycode_b">Themes</span><ul class="mycode_list"><li>Adaptación gradual de los themes existentes<br />
</li>
<li>Código más limpio y mantenible<br />
</li>
<li>Mejor estructura de componentes<br />
</li>
<li>Estilos más consistentes<br />
</li>
</ul>
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Consideraciones importantes</span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Compatibilidad</span><br />
No habrá compatibilidad hacia atrás durante este proceso. Los cambios en la base de datos y estructura del código romperán con versiones anteriores. Esto es necesario para poder hacer las mejoras que el proyecto necesita.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Estabilidad</span><br />
Durante este período de transición:<ul class="mycode_list"><li>Puede haber inestabilidad temporal<br />
</li>
<li>Algunas funcionalidades pueden estar temporalmente deshabilitadas<br />
</li>
<li>El proyecto puede volverse más pesado mientras migro componentes<br />
</li>
</ul>
<span style="font-weight: bold;" class="mycode_b">Tiempo</span><br />
Esta no es una tarea de días o semanas. Es un proceso que llevará tiempo hacer bien. Prefiero hacerlo correctamente que rápido.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">El objetivo final</span><br />
El objetivo de todo esto es tener un proyecto que sea:<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más comprensible</span> - Código claro que cualquiera pueda entender<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más simple</span> - Sin complejidad innecesaria ni código oscuro<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más mantenible</span> - Fácil de actualizar y extender<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más robusto</span> - Menos bugs, mejor manejo de errores<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más moderno</span> - Aprovechando las mejores prácticas actuales<br />
✅ <span style="font-weight: bold;" class="mycode_b">Mejor documentado</span> - Para que otros puedan contribuir<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Si quieres contribuir:</span><ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Espera</span> a que la nueva estructura esté lista<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Revisa la documentación</span> nueva cuando esté disponible<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Reporta issues</span> si encuentras algo en las versiones de desarrollo<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Ideas </span>claramente no hace falta que contribuyas con código, reparaciones, etc... Puedes dar ideas nuevas.<br />
</li>
</ul>
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Reflexión final</span></span>Sé que romper compatibilidad nunca es una decisión fácil, pero a veces es necesario para poder avanzar. He aprendido mucho modificando este proyecto, y parte de ese aprendizaje es reconocer cuándo algo necesita ser rehecho correctamente en lugar de seguir parcheando.<br />
Este es un compromiso con la calidad a largo plazo del proyecto. Puede que sea un camino difícil, pero al final tendremos algo mucho mejor.<br />
Gracias por su comprensión y apoyo. 🙏<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Última versión estable:</span> <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (creo que podría ser este, es del 2022)<br />
<span style="font-weight: bold;" class="mycode_b">Última versión anterior estable: </span><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (este es del 2019 php 7)<br />
<span style="font-weight: bold;" class="mycode_b">Última versión desarrollo: </span><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (subido 15.04.26, no contiene las imágenes de categorías, tiene otras .svg)]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Nueva etapa del proyecto: Refactorización completa</span></span></div>
<br />
Después de mucho tiempo modificando este proyecto, he llegado a un punto donde necesito tomar una decisión importante sobre su futuro. He estado añadiendo funcionalidades, parcheando errores y haciendo mejoras incrementales, pero ha llegado el momento de dar un paso atrás y reestructurar todo desde sus cimientos.<br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: medium;" class="mycode_size">La situación actual</span></span><br />
Con el tiempo, el proyecto ha acumulado:<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Código legacy</span> que se arrastra desde versiones antiguas<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Estructura de base de datos</span> que no es óptima para las necesidades actuales<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Arquitectura inconsistente</span> con múltiples patrones mezclados<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Complejidad innecesaria</span> que dificulta el mantenimiento<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Themes desactualizados</span> que necesitan modernización<br />
</li>
</ul>
Todo esto hace que el proyecto sea más difícil de mantener, comprender y extender de lo que debería ser. (<span style="font-style: italic;" class="mycode_i">Como paso con ZCode V4 por el momento pausado</span>)<br />
<br />
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">El plan de refactorización</span></span><br />
A partir de ahora, voy a enfocarme en:1. <span style="font-weight: bold;" class="mycode_b">Base de datos</span><ul class="mycode_list"><li>Rediseño completo del esquema<br />
</li>
<li>Normalización y optimización de tablas<br />
</li>
<li>Eliminación de campos obsoletos<br />
</li>
<li>Mejora en las relaciones entre entidades<br />
</li>
</ul>
2. <span style="font-weight: bold;" class="mycode_b">Arquitectura del código</span><ul class="mycode_list"><li>Reestructuración de clases y módulos<br />
</li>
<li>Implementación consistente de patrones de diseño<br />
</li>
<li>Separación clara de responsabilidades<br />
</li>
<li>Eliminación de dependencias circulares<br />
</li>
</ul>
3. <span style="font-weight: bold;" class="mycode_b">Simplificación</span><ul class="mycode_list"><li>Limpieza de código duplicado<br />
</li>
<li>Eliminación de funcionalidades no utilizadas<br />
</li>
<li>Refactorización de lógica compleja<br />
</li>
<li>Documentación mejorada (por verse, siempre me olvido)<br />
</li>
</ul>
4. <span style="font-weight: bold;" class="mycode_b">Modernización</span><ul class="mycode_list"><li>Aprovechamiento completo de características de PHP 8<br />
</li>
<li>Actualización de librerías y dependencias<br />
</li>
<li>Mejores prácticas de seguridad<br />
</li>
<li>Performance optimizada<br />
</li>
</ul>
5. <span style="font-weight: bold;" class="mycode_b">Themes</span><ul class="mycode_list"><li>Adaptación gradual de los themes existentes<br />
</li>
<li>Código más limpio y mantenible<br />
</li>
<li>Mejor estructura de componentes<br />
</li>
<li>Estilos más consistentes<br />
</li>
</ul>
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Consideraciones importantes</span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Compatibilidad</span><br />
No habrá compatibilidad hacia atrás durante este proceso. Los cambios en la base de datos y estructura del código romperán con versiones anteriores. Esto es necesario para poder hacer las mejoras que el proyecto necesita.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Estabilidad</span><br />
Durante este período de transición:<ul class="mycode_list"><li>Puede haber inestabilidad temporal<br />
</li>
<li>Algunas funcionalidades pueden estar temporalmente deshabilitadas<br />
</li>
<li>El proyecto puede volverse más pesado mientras migro componentes<br />
</li>
</ul>
<span style="font-weight: bold;" class="mycode_b">Tiempo</span><br />
Esta no es una tarea de días o semanas. Es un proceso que llevará tiempo hacer bien. Prefiero hacerlo correctamente que rápido.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">El objetivo final</span><br />
El objetivo de todo esto es tener un proyecto que sea:<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más comprensible</span> - Código claro que cualquiera pueda entender<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más simple</span> - Sin complejidad innecesaria ni código oscuro<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más mantenible</span> - Fácil de actualizar y extender<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más robusto</span> - Menos bugs, mejor manejo de errores<br />
✅ <span style="font-weight: bold;" class="mycode_b">Más moderno</span> - Aprovechando las mejores prácticas actuales<br />
✅ <span style="font-weight: bold;" class="mycode_b">Mejor documentado</span> - Para que otros puedan contribuir<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Si quieres contribuir:</span><ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Espera</span> a que la nueva estructura esté lista<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Revisa la documentación</span> nueva cuando esté disponible<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Reporta issues</span> si encuentras algo en las versiones de desarrollo<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Ideas </span>claramente no hace falta que contribuyas con código, reparaciones, etc... Puedes dar ideas nuevas.<br />
</li>
</ul>
<br />
<span style="font-size: medium;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Reflexión final</span></span>Sé que romper compatibilidad nunca es una decisión fácil, pero a veces es necesario para poder avanzar. He aprendido mucho modificando este proyecto, y parte de ese aprendizaje es reconocer cuándo algo necesita ser rehecho correctamente en lugar de seguir parcheando.<br />
Este es un compromiso con la calidad a largo plazo del proyecto. Puede que sea un camino difícil, pero al final tendremos algo mucho mejor.<br />
Gracias por su comprensión y apoyo. 🙏<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Última versión estable:</span> <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (creo que podría ser este, es del 2022)<br />
<span style="font-weight: bold;" class="mycode_b">Última versión anterior estable: </span><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (este es del 2019 php 7)<br />
<span style="font-weight: bold;" class="mycode_b">Última versión desarrollo: </span><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (subido 15.04.26, no contiene las imágenes de categorías, tiene otras .svg)]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Firma en fotos]]></title>
			<link>https://phpost.es/thread-974.html</link>
			<pubDate>Sat, 22 Mar 2025 18:44:15 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=17">moyo</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-974.html</guid>
			<description><![CDATA[<span style="font-size: medium;" class="mycode_size">Hola </span><span style="font-size: large;" class="mycode_size">¿</span><span style="font-size: medium;" class="mycode_size">cómo puedo mostrar la firma de usuario en la sección de fotos en particular en <span style="font-weight: bold;" class="mycode_b">.m_fotos_ver_content</span> </span><span style="font-size: large;" class="mycode_size">?</span>]]></description>
			<content:encoded><![CDATA[<span style="font-size: medium;" class="mycode_size">Hola </span><span style="font-size: large;" class="mycode_size">¿</span><span style="font-size: medium;" class="mycode_size">cómo puedo mostrar la firma de usuario en la sección de fotos en particular en <span style="font-weight: bold;" class="mycode_b">.m_fotos_ver_content</span> </span><span style="font-size: large;" class="mycode_size">?</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Noticia diferente por página]]></title>
			<link>https://phpost.es/thread-973.html</link>
			<pubDate>Tue, 04 Mar 2025 23:39:56 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=17">moyo</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-973.html</guid>
			<description><![CDATA[<span style="font-size: medium;" class="mycode_size">Si en el modulo de la noticia global está así:</span><br />
<br />
{if &#36;tsConfig.news}<br />
   {foreach from=&#36;tsConfig.news key=i item=n}<br />
      {&#36;n.not_body}<br />
   {/foreach}<br />
{/i}<br />
<br />
<span style="font-size: large;" class="mycode_size">Y en administración tengo 5 noticias activas.<br />
Pero quiero mostrar una noticia diferente en cada página por medio del <span style="font-weight: bold;" class="mycode_b">id </span>de la noticia, <span style="font-weight: bold;" class="mycode_b">¿Cómo lo hago?</span></span>]]></description>
			<content:encoded><![CDATA[<span style="font-size: medium;" class="mycode_size">Si en el modulo de la noticia global está así:</span><br />
<br />
{if &#36;tsConfig.news}<br />
   {foreach from=&#36;tsConfig.news key=i item=n}<br />
      {&#36;n.not_body}<br />
   {/foreach}<br />
{/i}<br />
<br />
<span style="font-size: large;" class="mycode_size">Y en administración tengo 5 noticias activas.<br />
Pero quiero mostrar una noticia diferente en cada página por medio del <span style="font-weight: bold;" class="mycode_b">id </span>de la noticia, <span style="font-weight: bold;" class="mycode_b">¿Cómo lo hago?</span></span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Aquí yace un Taringuero]]></title>
			<link>https://phpost.es/thread-972.html</link>
			<pubDate>Mon, 24 Feb 2025 14:31:10 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=1289">CCORNELI</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-972.html</guid>
			<description><![CDATA[Buenos días a todos.<br />
Mi nombre es Cristian, mi nickname es una unificación de nombre y apellido.<br />
<br />
Me uní recién a PHpost pero recuerdo que hace AÑOS tenía una cuenta donde escribía y enviaba páginas similares a Taringa (cuando todavía existía en NEW FULL USER) imaginensé ustedes.<br />
<br />
Soy de Argentina y espero pronto estar compartiendo mis proyectos.<br />
<br />
Sin más.<br />
Cordial saludo a todos.  <img src="https://phpost.es/images/smilies/heart.gif" alt="Heart" title="Heart" class="smilie smilie_70" />]]></description>
			<content:encoded><![CDATA[Buenos días a todos.<br />
Mi nombre es Cristian, mi nickname es una unificación de nombre y apellido.<br />
<br />
Me uní recién a PHpost pero recuerdo que hace AÑOS tenía una cuenta donde escribía y enviaba páginas similares a Taringa (cuando todavía existía en NEW FULL USER) imaginensé ustedes.<br />
<br />
Soy de Argentina y espero pronto estar compartiendo mis proyectos.<br />
<br />
Sin más.<br />
Cordial saludo a todos.  <img src="https://phpost.es/images/smilies/heart.gif" alt="Heart" title="Heart" class="smilie smilie_70" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Alguien tiene las comunidades responsive?]]></title>
			<link>https://phpost.es/thread-967.html</link>
			<pubDate>Sat, 11 Jan 2025 00:45:15 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=1116">edrien</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-967.html</guid>
			<description><![CDATA[Hola chicoas, alguien tiene las comunidades responsive?]]></description>
			<content:encoded><![CDATA[Hola chicoas, alguien tiene las comunidades responsive?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[No carga Imagen en Post y no carga el tema desde telefono movil]]></title>
			<link>https://phpost.es/thread-966.html</link>
			<pubDate>Tue, 07 Jan 2025 19:50:25 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=1229">crassito</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-966.html</guid>
			<description><![CDATA[No me carga la imagen en el post, la de portada si, pero la de la portada, y en el movil no me carga la pagina el diseño.[img]Registrate o inicia tu sesión para ver este contenido[/img]]]></description>
			<content:encoded><![CDATA[No me carga la imagen en el post, la de portada si, pero la de la portada, y en el movil no me carga la pagina el diseño.[img]Registrate o inicia tu sesión para ver este contenido[/img]]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Error Invalidad Request]]></title>
			<link>https://phpost.es/thread-964.html</link>
			<pubDate>Wed, 01 Jan 2025 13:36:29 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=40">York0x</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-964.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align">[img]Registrate o inicia tu sesión para ver este contenido[/img]</div>
<div style="text-align: justify;" class="mycode_align">Tanto en las notificaciones como en los MPs tengo ese error, no se a que se debe, he buscado en Google y según ellos el fallo es de PHP.<br />
<br />
Revisando el archivo "error_logs" no muestra el fallo, tampoco ha sido modificado ningún archivo.<br />
<br />
Versión de PHP: 7.4</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align">[img]Registrate o inicia tu sesión para ver este contenido[/img]</div>
<div style="text-align: justify;" class="mycode_align">Tanto en las notificaciones como en los MPs tengo ese error, no se a que se debe, he buscado en Google y según ellos el fallo es de PHP.<br />
<br />
Revisando el archivo "error_logs" no muestra el fallo, tampoco ha sido modificado ningún archivo.<br />
<br />
Versión de PHP: 7.4</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[MOD] Identificación con RRSS]]></title>
			<link>https://phpost.es/thread-959.html</link>
			<pubDate>Mon, 16 Dec 2024 21:02:43 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=23">Miguel92</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-959.html</guid>
			<description><![CDATA[Pedido: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">Identificación con RRSS</a><br />
Autor: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url"><span style="font-weight: bold;" class="mycode_b">York0x</span></a><br />
 <br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: large;" class="mycode_size">Identificación con <span style="font-weight: bold;" class="mycode_b">RRSS</span></span></div>
<br />
Bueno, en realidad es algo que había creado para ZCode, lo pude haber hecho con alguna librería php para facilitarlo, pero como solamente requeria algunos servicios, poner un monton de archivos para no usarlo, se me hacia una perdida de recursos innecesarios, por lo cual he decidido dejar: <span style="font-weight: bold;" class="mycode_b">Google</span>, <span style="font-weight: bold;" class="mycode_b">Discord</span>, <span style="font-weight: bold;" class="mycode_b">Github </span>y <span style="font-weight: bold;" class="mycode_b">Facebook</span>.<br />
<br />
<span style="font-style: italic;" class="mycode_i">A este '<span style="font-weight: bold;" class="mycode_b">MOD</span>' lo hice para <span style="font-weight: bold;" class="mycode_b">ZCode</span>, por lo cual algunas cosas deberán adaptarlos ustedes a su tema, como por ejemplo la configuración de las redes sociales.</span><br />
<br />
Solo colocaré <span style="text-decoration: underline;" class="mycode_u">enlaces de youtube para obtener las claves de cada uno</span>, ya que se convertiría en un tutorial demasiado extenso.<br />
<br />
Google: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Min. 12:49)<br />
Twitter: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Min. 26:03) [sin uso, por el momento]<br />
Facebook: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Min. 32:07)<br />
Discord: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Hasta el min 02:05)<br />
Github: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a><br />
<br />
En el servidor de discord accediendo a <span style="font-weight: bold;" class="mycode_b"><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">este mensaje</a></span> tendrás las formas de obtener las claves en modo guía, solo los pasos sin imágenes <span style="font-style: italic;" class="mycode_i">(y también están fijados en el canal "#actualizaciones")</span><br />
<br />
Lo que realmente necesitaremos usar es <span style="font-weight: bold;" class="mycode_b">Client-ID</span>, <span style="font-weight: bold;" class="mycode_b">Client-Secret</span> y en <span style="font-weight: bold;" class="mycode_b">RedirectURL/Callback</span> le colocarás la url que da la administración de tu sitio.<br />
<br />
1 - Ejecutar las siguentes consultas<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">CREATE&nbsp;TABLE&nbsp;</span><span style="color: #007700">IF&nbsp;</span><span style="color: #0000BB">NOT&nbsp;EXISTS&nbsp;</span><span style="color: #007700">`</span><span style="color: #DD0000">miembros_social</span><span style="color: #007700">`&nbsp;(<br />`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">int</span><span style="color: #007700">(</span><span style="color: #0000BB">11</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;AUTO_INCREMENT</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_user_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">int</span><span style="color: #007700">(</span><span style="color: #0000BB">11</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_name</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">20</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_nick</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">24</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_email</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">80</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br /></span><span style="color: #0000BB">PRIMARY&nbsp;KEY&nbsp;</span><span style="color: #007700">(`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`)<br />)&nbsp;</span><span style="color: #0000BB">ENGINE</span><span style="color: #007700">=</span><span style="color: #0000BB">MyISAM&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">CHARSET</span><span style="color: #007700">=</span><span style="color: #0000BB">latin1&nbsp;AUTO_INCREMENT</span><span style="color: #007700">=</span><span style="color: #0000BB">1&nbsp;</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">CREATE&nbsp;TABLE&nbsp;</span><span style="color: #007700">IF&nbsp;</span><span style="color: #0000BB">NOT&nbsp;EXISTS&nbsp;</span><span style="color: #007700">`</span><span style="color: #DD0000">settings_social</span><span style="color: #007700">`&nbsp;(<br />`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">int</span><span style="color: #007700">(</span><span style="color: #0000BB">11</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;AUTO_INCREMENT</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_name</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">22</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_client_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">tinytext&nbsp;NULL</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_client_secret</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">tinytext&nbsp;NULL</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_redirect_uri</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">tinytext&nbsp;NULL</span><span style="color: #007700">,<br /></span><span style="color: #0000BB">PRIMARY&nbsp;KEY&nbsp;</span><span style="color: #007700">(`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`)<br />)&nbsp;</span><span style="color: #0000BB">ENGINE</span><span style="color: #007700">=</span><span style="color: #0000BB">MyISAM&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">CHARSET</span><span style="color: #007700">=</span><span style="color: #0000BB">utf8&nbsp;AUTO_INCREMENT</span><span style="color: #007700">=</span><span style="color: #0000BB">1&nbsp;</span><span style="color: #007700">;&nbsp;<br /></span></code></div></div></div><br />
<br />
2 - Agregar en <span style="font-weight: bold;" class="mycode_b">.htaccess</span> debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">RewriteRule&nbsp;</span><span style="color: #007700">^</span><span style="color: #0000BB">agregar</span><span style="color: #007700">.</span><span style="color: #0000BB">php</span><span style="color: #007700">&#36;&nbsp;</span><span style="color: #0000BB">inc</span><span style="color: #007700">/</span><span style="color: #0000BB">php</span><span style="color: #007700">/</span><span style="color: #0000BB">agregar</span><span style="color: #007700">.</span><span style="color: #0000BB">php&nbsp;</span><span style="color: #007700">[</span><span style="color: #0000BB">QSA</span><span style="color: #007700">,</span><span style="color: #0000BB">L</span><span style="color: #007700">]&nbsp;<br /></span></code></div></div></div><br />
añadir esto<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #FF8000">#&nbsp;CALLBACK&nbsp;PARA&nbsp;REDES&nbsp;SOCIALES<br /></span><span style="color: #0000BB">RewriteRule&nbsp;</span><span style="color: #007700">^(</span><span style="color: #0000BB">github</span><span style="color: #007700">|</span><span style="color: #0000BB">discord</span><span style="color: #007700">|</span><span style="color: #0000BB">google</span><span style="color: #007700">|</span><span style="color: #0000BB">facebook</span><span style="color: #007700">|</span><span style="color: #0000BB">twitter</span><span style="color: #007700">)&#092;.</span><span style="color: #0000BB">php</span><span style="color: #007700">&#36;&nbsp;</span><span style="color: #0000BB">inc</span><span style="color: #007700">/</span><span style="color: #0000BB">callback</span><span style="color: #007700">/&#36;</span><span style="color: #0000BB">1.php&nbsp;</span><span style="color: #007700">[</span><span style="color: #0000BB">QSA</span><span style="color: #007700">,</span><span style="color: #0000BB">L</span><span style="color: #007700">]&nbsp;<br /></span></code></div></div></div><br />
<br />
3 - Agregar en <span style="font-weight: bold;" class="mycode_b">header.php</span> debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'tsConfig'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">settings</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
esto<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'SocialMager'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">OAuth</span><span style="color: #007700">());&nbsp;<br /></span></code></div></div></div><br />
<br />
4 - Ir a inc/class/<span style="font-weight: bold;" class="mycode_b">c.core.php</span> y arriba de la última llave <span style="font-weight: bold;" class="mycode_b">}</span> agregan lo siguiente<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">getEndPoints</span><span style="color: #007700">(</span><span style="color: #0000BB">string&nbsp;&#36;social&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">string&nbsp;&#36;type&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;getEndPoints&nbsp;</span><span style="color: #007700">=&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'github'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'authorize'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">token</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">revoke</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">user</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"user"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">discord</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">authorize</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;'</span><span style="color: #0000BB">Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'token'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'revoke'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'user'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido@me"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'scope'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"email&nbsp;identify"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'google'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'authorize'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">token</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">user</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">revoke</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido&nbsp;Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">facebook</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">authorize</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">token</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">revoke</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">user</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"email,public_profile"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&#36;getEndPoints[&#36;social][&#36;type];<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;/**<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Genera&nbsp;URLs&nbsp;de&nbsp;autorización&nbsp;OAuth&nbsp;para&nbsp;diferentes&nbsp;proveedores&nbsp;sociales.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;array&nbsp;Un&nbsp;array&nbsp;asociativo&nbsp;con&nbsp;el&nbsp;nombre&nbsp;del&nbsp;proveedor&nbsp;como&nbsp;clave&nbsp;y&nbsp;la&nbsp;URL&nbsp;de&nbsp;autorización&nbsp;como&nbsp;valor.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br />&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;function&nbsp;OAuth(string&nbsp;&#36;redirect&nbsp;=&nbsp;''):&nbsp;array&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Obtener&nbsp;la&nbsp;lista&nbsp;de&nbsp;proveedores&nbsp;OAuth<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;OAuths&nbsp;=&nbsp;result_array(db_exec([__FILE__,&nbsp;__LINE__],&nbsp;'</span><span style="color: #0000BB">query</span><span style="color: #DD0000">',&nbsp;'</span><span style="color: #0000BB">SELECT&nbsp;social_name</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">social_client_id</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">social_client_secret</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">social_redirect_uri&nbsp;FROM&nbsp;settings_social</span><span style="color: #DD0000">'));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;routes&nbsp;=&nbsp;[];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;(&#36;OAuths&nbsp;as&nbsp;&#36;auth)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Preparar&nbsp;los&nbsp;parámetros&nbsp;para&nbsp;la&nbsp;solicitud&nbsp;OAuth<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">client_id</span><span style="color: #DD0000">']&nbsp;=&nbsp;&#36;auth['</span><span style="color: #0000BB">social_client_id</span><span style="color: #DD0000">'];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">']&nbsp;=&nbsp;&#36;this-&gt;getEndPoints(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">'],&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">');<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">response_type</span><span style="color: #DD0000">']&nbsp;=&nbsp;(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">']&nbsp;===&nbsp;'</span><span style="color: #0000BB">github</span><span style="color: #DD0000">')&nbsp;?&nbsp;''&nbsp;:&nbsp;'</span><span style="color: #0000BB">code</span><span style="color: #DD0000">';<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">redirect_uri</span><span style="color: #DD0000">']&nbsp;=&nbsp;&#36;auth['</span><span style="color: #0000BB">social_redirect_uri</span><span style="color: #DD0000">'];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Eliminar&nbsp;el&nbsp;parámetro&nbsp;response_type&nbsp;si&nbsp;es&nbsp;'</span><span style="color: #0000BB">github</span><span style="color: #DD0000">'<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">']&nbsp;===&nbsp;'</span><span style="color: #0000BB">github</span><span style="color: #DD0000">')&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset(&#36;parameters['</span><span style="color: #0000BB">response_type</span><span style="color: #DD0000">']);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(in_array(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">'],&nbsp;['</span><span style="color: #0000BB">google</span><span style="color: #DD0000">',&nbsp;'</span><span style="color: #0000BB">discord</span><span style="color: #DD0000">']))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">prompt</span><span style="color: #DD0000">']&nbsp;=&nbsp;'</span><span style="color: #0000BB">consent</span><span style="color: #DD0000">';<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Construir&nbsp;la&nbsp;URL&nbsp;de&nbsp;autorización<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;queryString&nbsp;=&nbsp;http_build_query(array_filter(&#36;parameters));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;authorizeUrl&nbsp;=&nbsp;&#36;this-&gt;getEndPoints(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">'],&nbsp;'</span><span style="color: #0000BB">authorize</span><span style="color: #DD0000">');<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;routes[&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">']]&nbsp;=&nbsp;"&#36;authorizeUrl?&#36;queryString";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&#36;routes;<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
<br />
5 - Ir a inc/class/<span style="font-weight: bold;" class="mycode_b">c.cuenta.php</span> y justo debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">class&nbsp;</span><span style="color: #0000BB">tsCuenta&nbsp;</span><span style="color: #007700">{&nbsp;<br /></span></code></div></div></div><br />
agregan<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">private&nbsp;function&nbsp;</span><span style="color: #0000BB">getSocialUser</span><span style="color: #007700">(</span><span style="color: #0000BB">int&nbsp;&#36;user_id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Redes&nbsp;viculadas<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;socials&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">result_array</span><span style="color: #007700">(</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">([</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">__LINE__</span><span style="color: #007700">],&nbsp;</span><span style="color: #DD0000">'query'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"SELECT&nbsp;social_name&nbsp;as&nbsp;name&nbsp;FROM&nbsp;miembros_social&nbsp;WHERE&nbsp;social_user_id&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;user_id</span><span style="color: #DD0000">"</span><span style="color: #007700">));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;array_social&nbsp;</span><span style="color: #007700">=&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'discord'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'facebook'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'github'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'google'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach(</span><span style="color: #0000BB">&#36;socials&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;sn</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;name&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;sn</span><span style="color: #007700">[</span><span style="color: #DD0000">'name'</span><span style="color: #007700">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(isset(</span><span style="color: #0000BB">&#36;array_social</span><span style="color: #007700">[</span><span style="color: #0000BB">&#36;name</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;array_social</span><span style="color: #007700">[</span><span style="color: #0000BB">&#36;name</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;</span><span style="color: #0000BB">&#36;array_social</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
Luego dentro de la función<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">loadPerfil</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;user_id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">){&nbsp;<br /></span></code></div></div></div><br />
buscar<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;perfilInfo&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">unData</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;perfilInfo</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
y agregar debajo<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;perfilInfo</span><span style="color: #007700">[</span><span style="color: #DD0000">'socials'</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getSocialUser</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;user_id</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
<br />
6 - Luego en inc/class/<span style="font-weight: bold;" class="mycode_b">c.user.php</span> y arriba de la funcion<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">loginUser</span><span style="color: #007700">(...)&nbsp;<br /></span></code></div></div></div><br />
agregar lo siguiente<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">/*<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Desconectar&nbsp;la&nbsp;red&nbsp;social&nbsp;de&nbsp;nuestra&nbsp;cuenta<br />&nbsp;&nbsp;&nbsp;&nbsp;*/<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">unlinkAccount</span><span style="color: #007700">()&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">#&nbsp;Buscamos&nbsp;para&nbsp;desactivar<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;delete&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setSecure</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">'social'</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">is_member</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;data&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">(</span><span style="color: #DD0000">'fetch_assoc'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">([</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">__LINE__</span><span style="color: #007700">],&nbsp;</span><span style="color: #DD0000">'query'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"SELECT&nbsp;u.user_id,&nbsp;m.social_id,&nbsp;m.social_name&nbsp;FROM&nbsp;u_miembros&nbsp;AS&nbsp;u&nbsp;LEFT&nbsp;JOIN&nbsp;miembros_social&nbsp;AS&nbsp;m&nbsp;ON&nbsp;m.social_user_id&nbsp;=&nbsp;u.user_id&nbsp;WHERE&nbsp;u.user_id&nbsp;=&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">uid</span><span style="color: #007700">}</span><span style="color: #DD0000">&nbsp;AND&nbsp;m.social_name&nbsp;=&nbsp;'</span><span style="color: #0000BB">&#36;delete</span><span style="color: #DD0000">'&nbsp;LIMIT&nbsp;1"</span><span style="color: #007700">));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;sid&nbsp;</span><span style="color: #007700">=&nbsp;(int)</span><span style="color: #0000BB">&#36;data</span><span style="color: #007700">[</span><span style="color: #DD0000">'social_id'</span><span style="color: #007700">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Actualizamos&nbsp;la&nbsp;tabla<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">return&nbsp;(</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">([</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">__LINE__</span><span style="color: #007700">],&nbsp;</span><span style="color: #DD0000">'query'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"DELETE&nbsp;FROM&nbsp;miembros_social&nbsp;WHERE&nbsp;social_id&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;sid</span><span style="color: #DD0000">&nbsp;AND&nbsp;social_name&nbsp;=&nbsp;'</span><span style="color: #0000BB">&#36;delete</span><span style="color: #DD0000">'&nbsp;AND&nbsp;social_user_id&nbsp;=&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">uid</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">))&nbsp;?&nbsp;</span><span style="color: #0000BB">true&nbsp;</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">/**<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Se&nbsp;repiten&nbsp;en&nbsp;2&nbsp;funciones&nbsp;diferentes<br />&nbsp;&nbsp;&nbsp;&nbsp;*/<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">sessionUpdate</span><span style="color: #007700">(</span><span style="color: #0000BB">int&nbsp;&#36;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">bool&nbsp;&#36;rem&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Actualizamos&nbsp;la&nbsp;session<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">session</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">update</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;id</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;rem</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">TRUE</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">loadUser</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">DarMedalla</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
luego buscar en la funcion<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">loginUser</span><span style="color: #007700">(...)&nbsp;<br /></span></code></div></div></div><br />
buscamos<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">session</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">update</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;data</span><span style="color: #007700">[</span><span style="color: #DD0000">'user_id'</span><span style="color: #007700">],&nbsp;</span><span style="color: #0000BB">&#36;remember</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">TRUE</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">loadUser</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">DarMedalla</span><span style="color: #007700">();&nbsp;<br /></span></code></div></div></div><br />
y reemplazamos<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">sessionUpdate</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;data</span><span style="color: #007700">[</span><span style="color: #DD0000">'user_id'</span><span style="color: #007700">],&nbsp;</span><span style="color: #0000BB">&#36;remember</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
<br />
7 - Ir a inc/php/<span style="font-weight: bold;" class="mycode_b">admin.php</span> y arriba de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">}&nbsp;elseif(</span><span style="color: #0000BB">&#36;action&nbsp;</span><span style="color: #007700">==&nbsp;</span><span style="color: #DD0000">'configs'</span><span style="color: #007700">){&nbsp;<br /></span></code></div></div></div><br />
añadir<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Redes&nbsp;sociales<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">}&nbsp;elseif(</span><span style="color: #0000BB">&#36;action&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'socials'</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;CLASE&nbsp;MEDAL<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">require_once&nbsp;</span><span style="color: #0000BB">TS_CLASS&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"c.socials.php"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;tsSocials&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">tsSocials</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'tsNetsSocials'</span><span style="color: #007700">,&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'discord'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Discord'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'facebook'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Facebook'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'github'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Github'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'google'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Google'<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;tsTitle&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'Configurar&nbsp;redes&nbsp;sociales'</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(empty(</span><span style="color: #0000BB">&#36;act</span><span style="color: #007700">))&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'tsSocials'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getSocials</span><span style="color: #007700">());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Editar&nbsp;o&nbsp;Nuevo&nbsp;tema<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">elseif(</span><span style="color: #0000BB">in_array</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;act</span><span style="color: #007700">,&nbsp;[</span><span style="color: #DD0000">'editar'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'nueva'</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;tsTitle&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">ucfirst</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;act</span><span style="color: #007700">)&nbsp;.&nbsp;</span><span style="color: #DD0000">'&nbsp;red&nbsp;social'</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!empty(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">'save'</span><span style="color: #007700">])&nbsp;OR&nbsp;!empty(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">'edit'</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;social&nbsp;</span><span style="color: #007700">=&nbsp;(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'editar'</span><span style="color: #007700">)&nbsp;?&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">saveSocial</span><span style="color: #007700">()&nbsp;:&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newSocial</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">redirectTo</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">settings</span><span style="color: #007700">[</span><span style="color: #DD0000">'url'</span><span style="color: #007700">].</span><span style="color: #DD0000">'/admin/socials?save=true'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'editar'</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">"tsSocial"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getSocial</span><span style="color: #007700">());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'nuevo'</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">"tsError"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newSocial</span><span style="color: #007700">());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;elseif(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'borrar'</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">eliminarRed</span><span style="color: #007700">())&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">redirectTo</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">settings</span><span style="color: #007700">[</span><span style="color: #DD0000">'url'</span><span style="color: #007700">].</span><span style="color: #DD0000">'/admin/socials?save=true'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
<br />
8 - Ir a themes/TUTEMA/js/<span style="font-weight: bold;" class="mycode_b">admin.js</span> y agregar al final<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&#36;(</span><span style="color: #0000BB">document</span><span style="color: #007700">).</span><span style="color: #0000BB">ready</span><span style="color: #007700">(()&nbsp;=&gt;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">let&nbsp;redirectURI&nbsp;</span><span style="color: #007700">=&nbsp;&#36;(</span><span style="color: #DD0000">'#redirect_uri'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;if(empty(</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">val</span><span style="color: #007700">()))&nbsp;</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">val</span><span style="color: #007700">(`&#36;{</span><span style="color: #0000BB">global_data</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/discord.php</span><span style="color: #007700">`)<br />&nbsp;&nbsp;&nbsp;&#36;(</span><span style="color: #DD0000">'#social_name'</span><span style="color: #007700">).</span><span style="color: #0000BB">on</span><span style="color: #007700">(</span><span style="color: #DD0000">'change'</span><span style="color: #007700">,&nbsp;()&nbsp;=&gt;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">let&nbsp;replace&nbsp;</span><span style="color: #007700">=&nbsp;&#36;(</span><span style="color: #DD0000">'#social_name&nbsp;option:selected'</span><span style="color: #007700">).</span><span style="color: #0000BB">val</span><span style="color: #007700">()&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">val</span><span style="color: #007700">(`&#36;{</span><span style="color: #0000BB">global_data</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/</span><span style="color: #007700">&#36;{</span><span style="color: #0000BB">replace</span><span style="color: #007700">}</span><span style="color: #DD0000">.php</span><span style="color: #007700">`);<br />&nbsp;&nbsp;&nbsp;});<br />&nbsp;&nbsp;&nbsp;&#36;(</span><span style="color: #DD0000">"#botonCopiar"</span><span style="color: #007700">).</span><span style="color: #0000BB">on</span><span style="color: #007700">(</span><span style="color: #DD0000">"click"</span><span style="color: #007700">,&nbsp;function()&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">select</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">document</span><span style="color: #007700">.</span><span style="color: #0000BB">execCommand</span><span style="color: #007700">(</span><span style="color: #DD0000">"copy"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">window</span><span style="color: #007700">.</span><span style="color: #0000BB">getSelection</span><span style="color: #007700">().</span><span style="color: #0000BB">removeAllRanges</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;(</span><span style="color: #0000BB">this</span><span style="color: #007700">).</span><span style="color: #0000BB">html</span><span style="color: #007700">(</span><span style="color: #DD0000">"Redirect&nbsp;URL&nbsp;ha&nbsp;sido&nbsp;copiado&nbsp;correctamente!"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">setTimeout</span><span style="color: #007700">(()&nbsp;=&gt;&nbsp;&#36;(</span><span style="color: #0000BB">this</span><span style="color: #007700">).</span><span style="color: #0000BB">html</span><span style="color: #007700">(</span><span style="color: #DD0000">'Copiar'</span><span style="color: #007700">),&nbsp;</span><span style="color: #0000BB">5000</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;});<br />});&nbsp;<br /></span></code></div></div></div><br />
<br />
9 - Ir a themes/TUTEMA/js/<span style="font-weight: bold;" class="mycode_b">cuenta.js</span> al principio o final (donde quieran) agregan<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">desvincular</span><span style="color: #007700">(</span><span style="color: #0000BB">social</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&#36;.</span><span style="color: #0000BB">post</span><span style="color: #007700">(`&#36;{</span><span style="color: #0000BB">global_data</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/cuenta-desvincular.php</span><span style="color: #007700">`,&nbsp;{&nbsp;</span><span style="color: #0000BB">social&nbsp;</span><span style="color: #007700">},&nbsp;</span><span style="color: #0000BB">req&nbsp;</span><span style="color: #007700">=&gt;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">req</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">show</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">title</span><span style="color: #007700">(</span><span style="color: #DD0000">'Bien'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">body</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ha&nbsp;sido&nbsp;desvinculado&nbsp;correctamente.'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">buttons</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'Listo'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'mydialog.close();'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">center</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;});<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
10 - Ir a themes/TUTEMA/sections/<span style="font-weight: bold;" class="mycode_b">main_header.tpl</span> y arriba de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">link&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">tema</span><span style="color: #007700">.</span><span style="color: #0000BB">t_url</span><span style="color: #007700">}</span><span style="color: #DD0000">/estilos.css"&nbsp;</span><span style="color: #0000BB">rel</span><span style="color: #007700">=</span><span style="color: #DD0000">"stylesheet"&nbsp;</span><span style="color: #0000BB">type</span><span style="color: #007700">=</span><span style="color: #DD0000">"text/css"</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
esto<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">link&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">tema</span><span style="color: #007700">.</span><span style="color: #0000BB">t_url</span><span style="color: #007700">}</span><span style="color: #DD0000">/socialButton.css"&nbsp;</span><span style="color: #0000BB">rel</span><span style="color: #007700">=</span><span style="color: #DD0000">"stylesheet"&nbsp;</span><span style="color: #0000BB">type</span><span style="color: #007700">=</span><span style="color: #DD0000">"text/css"</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<br />
11 - Ir a themes/TUTEMA/templates/<span style="font-weight: bold;" class="mycode_b">t.admin.tpl</span> y debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{include&nbsp;</span><span style="color: #0000BB">file</span><span style="color: #007700">=</span><span style="color: #DD0000">'admin_mods/m.admin_configs.tpl'</span><span style="color: #007700">}&nbsp;<br /></span></code></div></div></div><br />
agregar<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{elseif&nbsp;</span><span style="color: #0000BB">&#36;tsAction&nbsp;</span><span style="color: #007700">==&nbsp;</span><span style="color: #DD0000">'socials'</span><span style="color: #007700">}<br />{include&nbsp;</span><span style="color: #0000BB">file</span><span style="color: #007700">=</span><span style="color: #DD0000">'admin_mods/m.admin_socials.tpl'</span><span style="color: #007700">}&nbsp;<br /></span></code></div></div></div><br />
<br />
12 - Ir a themes/TUTEMA/templates/admin_mods/<span style="font-weight: bold;" class="mycode_b">m.admin_sidebar.tpl</span> y debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">li&nbsp;id</span><span style="color: #007700">=</span><span style="color: #DD0000">"a_creditos"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"cat-title"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/admin/creditos"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Soporte&nbsp;y&nbsp;Cr</span><span style="color: #007700">&amp;</span><span style="color: #0000BB">eacute</span><span style="color: #007700">;</span><span style="color: #0000BB">ditos</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">li</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
añadir<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">li&nbsp;id</span><span style="color: #007700">=</span><span style="color: #DD0000">"a_socials"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"cat-title"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/admin/socials"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Configurar&nbsp;redes</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">li</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<br />
13 - Ir a themes/TUTEMA/template/modules/<span style="font-weight: bold;" class="mycode_b">m.cuenta_sidebar.tpl</span> (agregalo donde quieras)<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">""</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">h4</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Tus&nbsp;redes&nbsp;sociales</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">h4</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;{foreach&nbsp;</span><span style="color: #0000BB">from</span><span style="color: #007700">=</span><span style="color: #0000BB">&#36;SocialMager&nbsp;key</span><span style="color: #007700">=</span><span style="color: #0000BB">nombre&nbsp;item</span><span style="color: #007700">=</span><span style="color: #0000BB">social</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn-group-socials&nbsp;d-block"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn&nbsp;btn--</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"&nbsp;</span><span style="color: #0000BB">href</span><span style="color: #007700">=</span><span style="color: #DD0000">"{if&nbsp;</span><span style="color: #0000BB">&#36;tsPerfil</span><span style="color: #DD0000">.socials.</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #DD0000">}javascript:desvincular('</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">'){else}</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">}</span><span style="color: #DD0000">{/if}"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--icon"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"icon_social&nbsp;icon_</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--text"</span><span style="color: #007700">&gt;{if&nbsp;</span><span style="color: #0000BB">&#36;tsPerfil</span><span style="color: #007700">.</span><span style="color: #0000BB">socials</span><span style="color: #007700">.</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #0000BB">Desv</span><span style="color: #007700">{else}</span><span style="color: #0000BB">V</span><span style="color: #007700">{/if}</span><span style="color: #0000BB">incular&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;{</span><span style="color: #0000BB">foreachelse</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"empty"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Conexiones&nbsp;a&nbsp;tus&nbsp;redes&nbsp;sociales</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">pero&nbsp;aun&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">titulo</span><span style="color: #007700">}&nbsp;</span><span style="color: #0000BB">no&nbsp;las&nbsp;ha&nbsp;configurado</span><span style="color: #007700">!&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;{/foreach}<br />&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<br />
14 - Ir a themes/TUTEMA/template/<span style="font-weight: bold;" class="mycode_b">t.login.tpl</span> añaden, ya que con esto podrán iniciar sesión desde alguna red social<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{if&nbsp;</span><span style="color: #0000BB">&#36;SocialMager</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"buttons-social"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{foreach&nbsp;</span><span style="color: #0000BB">from</span><span style="color: #007700">=</span><span style="color: #0000BB">&#36;SocialMager&nbsp;key</span><span style="color: #007700">=</span><span style="color: #0000BB">nombre&nbsp;item</span><span style="color: #007700">=</span><span style="color: #0000BB">social</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn&nbsp;btn--</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">&nbsp;btn--only-icon&nbsp;btn-active"&nbsp;</span><span style="color: #0000BB">href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--icon"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"icon_social&nbsp;icon_</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--text"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Iniciar&nbsp;con&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{/foreach}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />{/if}&nbsp;<br /></span></code></div></div></div><br />
<br />
15 - Ir a themes/TUTEMA/template/<span style="font-weight: bold;" class="mycode_b">t.registro.tpl</span> añaden, ya que con esto podrán crear cuenta desde alguna red social<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{if&nbsp;</span><span style="color: #0000BB">&#36;SocialMager</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"buttons-social"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{foreach&nbsp;</span><span style="color: #0000BB">from</span><span style="color: #007700">=</span><span style="color: #0000BB">&#36;SocialMager&nbsp;key</span><span style="color: #007700">=</span><span style="color: #0000BB">nombre&nbsp;item</span><span style="color: #007700">=</span><span style="color: #0000BB">social</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn&nbsp;btn--</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">&nbsp;btn--only-icon&nbsp;btn-active"&nbsp;</span><span style="color: #0000BB">href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--icon"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"icon_social&nbsp;icon_</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--text"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Crear&nbsp;cuenta&nbsp;con&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{/foreach}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />{/if}&nbsp;<br /></span></code></div></div></div><br />
<br />
En el punto 14 y 15 tiene la clase 'btn--only-icon', el cual claramente muestra solo el icono, si quieren visualizar el texto deberán borrar dicha clase<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">Descargar los archivos </a></span><br />
c.socials.php en inc/class/<br />
m.admin_socials.tpl en themes/TUTEMA/templates/admin_mods<br />
socialButtons.css en themes/TUTEMA/]]></description>
			<content:encoded><![CDATA[Pedido: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">Identificación con RRSS</a><br />
Autor: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url"><span style="font-weight: bold;" class="mycode_b">York0x</span></a><br />
 <br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: large;" class="mycode_size">Identificación con <span style="font-weight: bold;" class="mycode_b">RRSS</span></span></div>
<br />
Bueno, en realidad es algo que había creado para ZCode, lo pude haber hecho con alguna librería php para facilitarlo, pero como solamente requeria algunos servicios, poner un monton de archivos para no usarlo, se me hacia una perdida de recursos innecesarios, por lo cual he decidido dejar: <span style="font-weight: bold;" class="mycode_b">Google</span>, <span style="font-weight: bold;" class="mycode_b">Discord</span>, <span style="font-weight: bold;" class="mycode_b">Github </span>y <span style="font-weight: bold;" class="mycode_b">Facebook</span>.<br />
<br />
<span style="font-style: italic;" class="mycode_i">A este '<span style="font-weight: bold;" class="mycode_b">MOD</span>' lo hice para <span style="font-weight: bold;" class="mycode_b">ZCode</span>, por lo cual algunas cosas deberán adaptarlos ustedes a su tema, como por ejemplo la configuración de las redes sociales.</span><br />
<br />
Solo colocaré <span style="text-decoration: underline;" class="mycode_u">enlaces de youtube para obtener las claves de cada uno</span>, ya que se convertiría en un tutorial demasiado extenso.<br />
<br />
Google: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Min. 12:49)<br />
Twitter: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Min. 26:03) [sin uso, por el momento]<br />
Facebook: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Min. 32:07)<br />
Discord: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a> (Hasta el min 02:05)<br />
Github: <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a><br />
<br />
En el servidor de discord accediendo a <span style="font-weight: bold;" class="mycode_b"><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">este mensaje</a></span> tendrás las formas de obtener las claves en modo guía, solo los pasos sin imágenes <span style="font-style: italic;" class="mycode_i">(y también están fijados en el canal "#actualizaciones")</span><br />
<br />
Lo que realmente necesitaremos usar es <span style="font-weight: bold;" class="mycode_b">Client-ID</span>, <span style="font-weight: bold;" class="mycode_b">Client-Secret</span> y en <span style="font-weight: bold;" class="mycode_b">RedirectURL/Callback</span> le colocarás la url que da la administración de tu sitio.<br />
<br />
1 - Ejecutar las siguentes consultas<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">CREATE&nbsp;TABLE&nbsp;</span><span style="color: #007700">IF&nbsp;</span><span style="color: #0000BB">NOT&nbsp;EXISTS&nbsp;</span><span style="color: #007700">`</span><span style="color: #DD0000">miembros_social</span><span style="color: #007700">`&nbsp;(<br />`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">int</span><span style="color: #007700">(</span><span style="color: #0000BB">11</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;AUTO_INCREMENT</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_user_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">int</span><span style="color: #007700">(</span><span style="color: #0000BB">11</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_name</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">20</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_nick</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">24</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_email</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">80</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br /></span><span style="color: #0000BB">PRIMARY&nbsp;KEY&nbsp;</span><span style="color: #007700">(`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`)<br />)&nbsp;</span><span style="color: #0000BB">ENGINE</span><span style="color: #007700">=</span><span style="color: #0000BB">MyISAM&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">CHARSET</span><span style="color: #007700">=</span><span style="color: #0000BB">latin1&nbsp;AUTO_INCREMENT</span><span style="color: #007700">=</span><span style="color: #0000BB">1&nbsp;</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">CREATE&nbsp;TABLE&nbsp;</span><span style="color: #007700">IF&nbsp;</span><span style="color: #0000BB">NOT&nbsp;EXISTS&nbsp;</span><span style="color: #007700">`</span><span style="color: #DD0000">settings_social</span><span style="color: #007700">`&nbsp;(<br />`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">int</span><span style="color: #007700">(</span><span style="color: #0000BB">11</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;AUTO_INCREMENT</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_name</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">varchar</span><span style="color: #007700">(</span><span style="color: #0000BB">22</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">NOT&nbsp;NULL&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_client_id</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">tinytext&nbsp;NULL</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_client_secret</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">tinytext&nbsp;NULL</span><span style="color: #007700">,<br />`</span><span style="color: #DD0000">social_redirect_uri</span><span style="color: #007700">`&nbsp;</span><span style="color: #0000BB">tinytext&nbsp;NULL</span><span style="color: #007700">,<br /></span><span style="color: #0000BB">PRIMARY&nbsp;KEY&nbsp;</span><span style="color: #007700">(`</span><span style="color: #DD0000">social_id</span><span style="color: #007700">`)<br />)&nbsp;</span><span style="color: #0000BB">ENGINE</span><span style="color: #007700">=</span><span style="color: #0000BB">MyISAM&nbsp;</span><span style="color: #007700">DEFAULT&nbsp;</span><span style="color: #0000BB">CHARSET</span><span style="color: #007700">=</span><span style="color: #0000BB">utf8&nbsp;AUTO_INCREMENT</span><span style="color: #007700">=</span><span style="color: #0000BB">1&nbsp;</span><span style="color: #007700">;&nbsp;<br /></span></code></div></div></div><br />
<br />
2 - Agregar en <span style="font-weight: bold;" class="mycode_b">.htaccess</span> debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">RewriteRule&nbsp;</span><span style="color: #007700">^</span><span style="color: #0000BB">agregar</span><span style="color: #007700">.</span><span style="color: #0000BB">php</span><span style="color: #007700">&#36;&nbsp;</span><span style="color: #0000BB">inc</span><span style="color: #007700">/</span><span style="color: #0000BB">php</span><span style="color: #007700">/</span><span style="color: #0000BB">agregar</span><span style="color: #007700">.</span><span style="color: #0000BB">php&nbsp;</span><span style="color: #007700">[</span><span style="color: #0000BB">QSA</span><span style="color: #007700">,</span><span style="color: #0000BB">L</span><span style="color: #007700">]&nbsp;<br /></span></code></div></div></div><br />
añadir esto<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #FF8000">#&nbsp;CALLBACK&nbsp;PARA&nbsp;REDES&nbsp;SOCIALES<br /></span><span style="color: #0000BB">RewriteRule&nbsp;</span><span style="color: #007700">^(</span><span style="color: #0000BB">github</span><span style="color: #007700">|</span><span style="color: #0000BB">discord</span><span style="color: #007700">|</span><span style="color: #0000BB">google</span><span style="color: #007700">|</span><span style="color: #0000BB">facebook</span><span style="color: #007700">|</span><span style="color: #0000BB">twitter</span><span style="color: #007700">)&#092;.</span><span style="color: #0000BB">php</span><span style="color: #007700">&#36;&nbsp;</span><span style="color: #0000BB">inc</span><span style="color: #007700">/</span><span style="color: #0000BB">callback</span><span style="color: #007700">/&#36;</span><span style="color: #0000BB">1.php&nbsp;</span><span style="color: #007700">[</span><span style="color: #0000BB">QSA</span><span style="color: #007700">,</span><span style="color: #0000BB">L</span><span style="color: #007700">]&nbsp;<br /></span></code></div></div></div><br />
<br />
3 - Agregar en <span style="font-weight: bold;" class="mycode_b">header.php</span> debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'tsConfig'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">settings</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
esto<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'SocialMager'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">OAuth</span><span style="color: #007700">());&nbsp;<br /></span></code></div></div></div><br />
<br />
4 - Ir a inc/class/<span style="font-weight: bold;" class="mycode_b">c.core.php</span> y arriba de la última llave <span style="font-weight: bold;" class="mycode_b">}</span> agregan lo siguiente<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">getEndPoints</span><span style="color: #007700">(</span><span style="color: #0000BB">string&nbsp;&#36;social&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">string&nbsp;&#36;type&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;getEndPoints&nbsp;</span><span style="color: #007700">=&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'github'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'authorize'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">token</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">revoke</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">user</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"user"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">discord</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">authorize</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;'</span><span style="color: #0000BB">Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'token'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'revoke'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'user'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido@me"</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'scope'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">"email&nbsp;identify"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'google'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'authorize'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">token</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">user</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">revoke</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido&nbsp;Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;],<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">facebook</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">authorize</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">token</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">revoke</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">user</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"Registrate&nbsp;o&nbsp;inicia&nbsp;tu&nbsp;sesión&nbsp;para&nbsp;ver&nbsp;este&nbsp;contenido",<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">'&nbsp;=&gt;&nbsp;"email,public_profile"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&#36;getEndPoints[&#36;social][&#36;type];<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;/**<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Genera&nbsp;URLs&nbsp;de&nbsp;autorización&nbsp;OAuth&nbsp;para&nbsp;diferentes&nbsp;proveedores&nbsp;sociales.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;array&nbsp;Un&nbsp;array&nbsp;asociativo&nbsp;con&nbsp;el&nbsp;nombre&nbsp;del&nbsp;proveedor&nbsp;como&nbsp;clave&nbsp;y&nbsp;la&nbsp;URL&nbsp;de&nbsp;autorización&nbsp;como&nbsp;valor.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/<br />&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;function&nbsp;OAuth(string&nbsp;&#36;redirect&nbsp;=&nbsp;''):&nbsp;array&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Obtener&nbsp;la&nbsp;lista&nbsp;de&nbsp;proveedores&nbsp;OAuth<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;OAuths&nbsp;=&nbsp;result_array(db_exec([__FILE__,&nbsp;__LINE__],&nbsp;'</span><span style="color: #0000BB">query</span><span style="color: #DD0000">',&nbsp;'</span><span style="color: #0000BB">SELECT&nbsp;social_name</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">social_client_id</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">social_client_secret</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">social_redirect_uri&nbsp;FROM&nbsp;settings_social</span><span style="color: #DD0000">'));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;routes&nbsp;=&nbsp;[];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;(&#36;OAuths&nbsp;as&nbsp;&#36;auth)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Preparar&nbsp;los&nbsp;parámetros&nbsp;para&nbsp;la&nbsp;solicitud&nbsp;OAuth<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">client_id</span><span style="color: #DD0000">']&nbsp;=&nbsp;&#36;auth['</span><span style="color: #0000BB">social_client_id</span><span style="color: #DD0000">'];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">']&nbsp;=&nbsp;&#36;this-&gt;getEndPoints(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">'],&nbsp;'</span><span style="color: #0000BB">scope</span><span style="color: #DD0000">');<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">response_type</span><span style="color: #DD0000">']&nbsp;=&nbsp;(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">']&nbsp;===&nbsp;'</span><span style="color: #0000BB">github</span><span style="color: #DD0000">')&nbsp;?&nbsp;''&nbsp;:&nbsp;'</span><span style="color: #0000BB">code</span><span style="color: #DD0000">';<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">redirect_uri</span><span style="color: #DD0000">']&nbsp;=&nbsp;&#36;auth['</span><span style="color: #0000BB">social_redirect_uri</span><span style="color: #DD0000">'];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Eliminar&nbsp;el&nbsp;parámetro&nbsp;response_type&nbsp;si&nbsp;es&nbsp;'</span><span style="color: #0000BB">github</span><span style="color: #DD0000">'<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">']&nbsp;===&nbsp;'</span><span style="color: #0000BB">github</span><span style="color: #DD0000">')&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset(&#36;parameters['</span><span style="color: #0000BB">response_type</span><span style="color: #DD0000">']);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(in_array(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">'],&nbsp;['</span><span style="color: #0000BB">google</span><span style="color: #DD0000">',&nbsp;'</span><span style="color: #0000BB">discord</span><span style="color: #DD0000">']))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;parameters['</span><span style="color: #0000BB">prompt</span><span style="color: #DD0000">']&nbsp;=&nbsp;'</span><span style="color: #0000BB">consent</span><span style="color: #DD0000">';<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Construir&nbsp;la&nbsp;URL&nbsp;de&nbsp;autorización<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;queryString&nbsp;=&nbsp;http_build_query(array_filter(&#36;parameters));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;authorizeUrl&nbsp;=&nbsp;&#36;this-&gt;getEndPoints(&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">'],&nbsp;'</span><span style="color: #0000BB">authorize</span><span style="color: #DD0000">');<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;routes[&#36;auth['</span><span style="color: #0000BB">social_name</span><span style="color: #DD0000">']]&nbsp;=&nbsp;"&#36;authorizeUrl?&#36;queryString";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;&#36;routes;<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
<br />
5 - Ir a inc/class/<span style="font-weight: bold;" class="mycode_b">c.cuenta.php</span> y justo debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">class&nbsp;</span><span style="color: #0000BB">tsCuenta&nbsp;</span><span style="color: #007700">{&nbsp;<br /></span></code></div></div></div><br />
agregan<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">private&nbsp;function&nbsp;</span><span style="color: #0000BB">getSocialUser</span><span style="color: #007700">(</span><span style="color: #0000BB">int&nbsp;&#36;user_id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Redes&nbsp;viculadas<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;socials&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">result_array</span><span style="color: #007700">(</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">([</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">__LINE__</span><span style="color: #007700">],&nbsp;</span><span style="color: #DD0000">'query'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"SELECT&nbsp;social_name&nbsp;as&nbsp;name&nbsp;FROM&nbsp;miembros_social&nbsp;WHERE&nbsp;social_user_id&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;user_id</span><span style="color: #DD0000">"</span><span style="color: #007700">));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;array_social&nbsp;</span><span style="color: #007700">=&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'discord'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'facebook'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'github'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'google'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #0000BB">false<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach(</span><span style="color: #0000BB">&#36;socials&nbsp;</span><span style="color: #007700">as&nbsp;</span><span style="color: #0000BB">&#36;sn</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;name&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;sn</span><span style="color: #007700">[</span><span style="color: #DD0000">'name'</span><span style="color: #007700">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(isset(</span><span style="color: #0000BB">&#36;array_social</span><span style="color: #007700">[</span><span style="color: #0000BB">&#36;name</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;array_social</span><span style="color: #007700">[</span><span style="color: #0000BB">&#36;name</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;</span><span style="color: #0000BB">&#36;array_social</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
Luego dentro de la función<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">loadPerfil</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;user_id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">){&nbsp;<br /></span></code></div></div></div><br />
buscar<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;perfilInfo&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">unData</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;perfilInfo</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
y agregar debajo<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;perfilInfo</span><span style="color: #007700">[</span><span style="color: #DD0000">'socials'</span><span style="color: #007700">]&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getSocialUser</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;user_id</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
<br />
6 - Luego en inc/class/<span style="font-weight: bold;" class="mycode_b">c.user.php</span> y arriba de la funcion<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">loginUser</span><span style="color: #007700">(...)&nbsp;<br /></span></code></div></div></div><br />
agregar lo siguiente<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">/*<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Desconectar&nbsp;la&nbsp;red&nbsp;social&nbsp;de&nbsp;nuestra&nbsp;cuenta<br />&nbsp;&nbsp;&nbsp;&nbsp;*/<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">unlinkAccount</span><span style="color: #007700">()&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">#&nbsp;Buscamos&nbsp;para&nbsp;desactivar<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;delete&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">setSecure</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">'social'</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">is_member</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;data&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">(</span><span style="color: #DD0000">'fetch_assoc'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">([</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">__LINE__</span><span style="color: #007700">],&nbsp;</span><span style="color: #DD0000">'query'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"SELECT&nbsp;u.user_id,&nbsp;m.social_id,&nbsp;m.social_name&nbsp;FROM&nbsp;u_miembros&nbsp;AS&nbsp;u&nbsp;LEFT&nbsp;JOIN&nbsp;miembros_social&nbsp;AS&nbsp;m&nbsp;ON&nbsp;m.social_user_id&nbsp;=&nbsp;u.user_id&nbsp;WHERE&nbsp;u.user_id&nbsp;=&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">uid</span><span style="color: #007700">}</span><span style="color: #DD0000">&nbsp;AND&nbsp;m.social_name&nbsp;=&nbsp;'</span><span style="color: #0000BB">&#36;delete</span><span style="color: #DD0000">'&nbsp;LIMIT&nbsp;1"</span><span style="color: #007700">));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;sid&nbsp;</span><span style="color: #007700">=&nbsp;(int)</span><span style="color: #0000BB">&#36;data</span><span style="color: #007700">[</span><span style="color: #DD0000">'social_id'</span><span style="color: #007700">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Actualizamos&nbsp;la&nbsp;tabla<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">return&nbsp;(</span><span style="color: #0000BB">db_exec</span><span style="color: #007700">([</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">__LINE__</span><span style="color: #007700">],&nbsp;</span><span style="color: #DD0000">'query'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"DELETE&nbsp;FROM&nbsp;miembros_social&nbsp;WHERE&nbsp;social_id&nbsp;=&nbsp;</span><span style="color: #0000BB">&#36;sid</span><span style="color: #DD0000">&nbsp;AND&nbsp;social_name&nbsp;=&nbsp;'</span><span style="color: #0000BB">&#36;delete</span><span style="color: #DD0000">'&nbsp;AND&nbsp;social_user_id&nbsp;=&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">uid</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">))&nbsp;?&nbsp;</span><span style="color: #0000BB">true&nbsp;</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">/**<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;Se&nbsp;repiten&nbsp;en&nbsp;2&nbsp;funciones&nbsp;diferentes<br />&nbsp;&nbsp;&nbsp;&nbsp;*/<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">sessionUpdate</span><span style="color: #007700">(</span><span style="color: #0000BB">int&nbsp;&#36;id&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">bool&nbsp;&#36;rem&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Actualizamos&nbsp;la&nbsp;session<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">session</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">update</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;id</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;rem</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">TRUE</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">loadUser</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">DarMedalla</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
luego buscar en la funcion<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">loginUser</span><span style="color: #007700">(...)&nbsp;<br /></span></code></div></div></div><br />
buscamos<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">session</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">update</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;data</span><span style="color: #007700">[</span><span style="color: #DD0000">'user_id'</span><span style="color: #007700">],&nbsp;</span><span style="color: #0000BB">&#36;remember</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">TRUE</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">loadUser</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">DarMedalla</span><span style="color: #007700">();&nbsp;<br /></span></code></div></div></div><br />
y reemplazamos<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&#36;this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">sessionUpdate</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;data</span><span style="color: #007700">[</span><span style="color: #DD0000">'user_id'</span><span style="color: #007700">],&nbsp;</span><span style="color: #0000BB">&#36;remember</span><span style="color: #007700">);&nbsp;<br /></span></code></div></div></div><br />
<br />
7 - Ir a inc/php/<span style="font-weight: bold;" class="mycode_b">admin.php</span> y arriba de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">}&nbsp;elseif(</span><span style="color: #0000BB">&#36;action&nbsp;</span><span style="color: #007700">==&nbsp;</span><span style="color: #DD0000">'configs'</span><span style="color: #007700">){&nbsp;<br /></span></code></div></div></div><br />
añadir<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #0000BB">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Redes&nbsp;sociales<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">}&nbsp;elseif(</span><span style="color: #0000BB">&#36;action&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'socials'</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;CLASE&nbsp;MEDAL<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">require_once&nbsp;</span><span style="color: #0000BB">TS_CLASS&nbsp;</span><span style="color: #007700">.&nbsp;</span><span style="color: #DD0000">"c.socials.php"</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;tsSocials&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;</span><span style="color: #0000BB">tsSocials</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'tsNetsSocials'</span><span style="color: #007700">,&nbsp;[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'discord'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Discord'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'facebook'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Facebook'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'github'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Github'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'google'&nbsp;</span><span style="color: #007700">=&gt;&nbsp;</span><span style="color: #DD0000">'Google'<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;tsTitle&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'Configurar&nbsp;redes&nbsp;sociales'</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(empty(</span><span style="color: #0000BB">&#36;act</span><span style="color: #007700">))&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">'tsSocials'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getSocials</span><span style="color: #007700">());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #FF8000">//&nbsp;Editar&nbsp;o&nbsp;Nuevo&nbsp;tema<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">elseif(</span><span style="color: #0000BB">in_array</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;act</span><span style="color: #007700">,&nbsp;[</span><span style="color: #DD0000">'editar'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'nueva'</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;tsTitle&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">ucfirst</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;act</span><span style="color: #007700">)&nbsp;.&nbsp;</span><span style="color: #DD0000">'&nbsp;red&nbsp;social'</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!empty(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">'save'</span><span style="color: #007700">])&nbsp;OR&nbsp;!empty(</span><span style="color: #0000BB">&#36;_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">'edit'</span><span style="color: #007700">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">&#36;social&nbsp;</span><span style="color: #007700">=&nbsp;(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'editar'</span><span style="color: #007700">)&nbsp;?&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">saveSocial</span><span style="color: #007700">()&nbsp;:&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newSocial</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">redirectTo</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">settings</span><span style="color: #007700">[</span><span style="color: #DD0000">'url'</span><span style="color: #007700">].</span><span style="color: #DD0000">'/admin/socials?save=true'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'editar'</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">"tsSocial"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">getSocial</span><span style="color: #007700">());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'nuevo'</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">&#36;smarty</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">assign</span><span style="color: #007700">(</span><span style="color: #DD0000">"tsError"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">newSocial</span><span style="color: #007700">());<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;elseif(</span><span style="color: #0000BB">&#36;act&nbsp;</span><span style="color: #007700">===&nbsp;</span><span style="color: #DD0000">'borrar'</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">&#36;tsSocials</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">eliminarRed</span><span style="color: #007700">())&nbsp;</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">redirectTo</span><span style="color: #007700">(</span><span style="color: #0000BB">&#36;tsCore</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">settings</span><span style="color: #007700">[</span><span style="color: #DD0000">'url'</span><span style="color: #007700">].</span><span style="color: #DD0000">'/admin/socials?save=true'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br /></span></code></div></div></div><br />
<br />
8 - Ir a themes/TUTEMA/js/<span style="font-weight: bold;" class="mycode_b">admin.js</span> y agregar al final<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&#36;(</span><span style="color: #0000BB">document</span><span style="color: #007700">).</span><span style="color: #0000BB">ready</span><span style="color: #007700">(()&nbsp;=&gt;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">let&nbsp;redirectURI&nbsp;</span><span style="color: #007700">=&nbsp;&#36;(</span><span style="color: #DD0000">'#redirect_uri'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;if(empty(</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">val</span><span style="color: #007700">()))&nbsp;</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">val</span><span style="color: #007700">(`&#36;{</span><span style="color: #0000BB">global_data</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/discord.php</span><span style="color: #007700">`)<br />&nbsp;&nbsp;&nbsp;&#36;(</span><span style="color: #DD0000">'#social_name'</span><span style="color: #007700">).</span><span style="color: #0000BB">on</span><span style="color: #007700">(</span><span style="color: #DD0000">'change'</span><span style="color: #007700">,&nbsp;()&nbsp;=&gt;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">let&nbsp;replace&nbsp;</span><span style="color: #007700">=&nbsp;&#36;(</span><span style="color: #DD0000">'#social_name&nbsp;option:selected'</span><span style="color: #007700">).</span><span style="color: #0000BB">val</span><span style="color: #007700">()&nbsp;;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">val</span><span style="color: #007700">(`&#36;{</span><span style="color: #0000BB">global_data</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/</span><span style="color: #007700">&#36;{</span><span style="color: #0000BB">replace</span><span style="color: #007700">}</span><span style="color: #DD0000">.php</span><span style="color: #007700">`);<br />&nbsp;&nbsp;&nbsp;});<br />&nbsp;&nbsp;&nbsp;&#36;(</span><span style="color: #DD0000">"#botonCopiar"</span><span style="color: #007700">).</span><span style="color: #0000BB">on</span><span style="color: #007700">(</span><span style="color: #DD0000">"click"</span><span style="color: #007700">,&nbsp;function()&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">redirectURI</span><span style="color: #007700">.</span><span style="color: #0000BB">select</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">document</span><span style="color: #007700">.</span><span style="color: #0000BB">execCommand</span><span style="color: #007700">(</span><span style="color: #DD0000">"copy"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">window</span><span style="color: #007700">.</span><span style="color: #0000BB">getSelection</span><span style="color: #007700">().</span><span style="color: #0000BB">removeAllRanges</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36;(</span><span style="color: #0000BB">this</span><span style="color: #007700">).</span><span style="color: #0000BB">html</span><span style="color: #007700">(</span><span style="color: #DD0000">"Redirect&nbsp;URL&nbsp;ha&nbsp;sido&nbsp;copiado&nbsp;correctamente!"</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">setTimeout</span><span style="color: #007700">(()&nbsp;=&gt;&nbsp;&#36;(</span><span style="color: #0000BB">this</span><span style="color: #007700">).</span><span style="color: #0000BB">html</span><span style="color: #007700">(</span><span style="color: #DD0000">'Copiar'</span><span style="color: #007700">),&nbsp;</span><span style="color: #0000BB">5000</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;});<br />});&nbsp;<br /></span></code></div></div></div><br />
<br />
9 - Ir a themes/TUTEMA/js/<span style="font-weight: bold;" class="mycode_b">cuenta.js</span> al principio o final (donde quieran) agregan<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">function&nbsp;</span><span style="color: #0000BB">desvincular</span><span style="color: #007700">(</span><span style="color: #0000BB">social</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&#36;.</span><span style="color: #0000BB">post</span><span style="color: #007700">(`&#36;{</span><span style="color: #0000BB">global_data</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/cuenta-desvincular.php</span><span style="color: #007700">`,&nbsp;{&nbsp;</span><span style="color: #0000BB">social&nbsp;</span><span style="color: #007700">},&nbsp;</span><span style="color: #0000BB">req&nbsp;</span><span style="color: #007700">=&gt;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">req</span><span style="color: #007700">)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">show</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">title</span><span style="color: #007700">(</span><span style="color: #DD0000">'Bien'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">body</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ha&nbsp;sido&nbsp;desvinculado&nbsp;correctamente.'</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">buttons</span><span style="color: #007700">(</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'Listo'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'mydialog.close();'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">true</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">mydialog</span><span style="color: #007700">.</span><span style="color: #0000BB">center</span><span style="color: #007700">();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;});<br />}&nbsp;<br /></span></code></div></div></div><br />
<br />
10 - Ir a themes/TUTEMA/sections/<span style="font-weight: bold;" class="mycode_b">main_header.tpl</span> y arriba de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">link&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">tema</span><span style="color: #007700">.</span><span style="color: #0000BB">t_url</span><span style="color: #007700">}</span><span style="color: #DD0000">/estilos.css"&nbsp;</span><span style="color: #0000BB">rel</span><span style="color: #007700">=</span><span style="color: #DD0000">"stylesheet"&nbsp;</span><span style="color: #0000BB">type</span><span style="color: #007700">=</span><span style="color: #DD0000">"text/css"</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
esto<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">link&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">tema</span><span style="color: #007700">.</span><span style="color: #0000BB">t_url</span><span style="color: #007700">}</span><span style="color: #DD0000">/socialButton.css"&nbsp;</span><span style="color: #0000BB">rel</span><span style="color: #007700">=</span><span style="color: #DD0000">"stylesheet"&nbsp;</span><span style="color: #0000BB">type</span><span style="color: #007700">=</span><span style="color: #DD0000">"text/css"</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<br />
11 - Ir a themes/TUTEMA/templates/<span style="font-weight: bold;" class="mycode_b">t.admin.tpl</span> y debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{include&nbsp;</span><span style="color: #0000BB">file</span><span style="color: #007700">=</span><span style="color: #DD0000">'admin_mods/m.admin_configs.tpl'</span><span style="color: #007700">}&nbsp;<br /></span></code></div></div></div><br />
agregar<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{elseif&nbsp;</span><span style="color: #0000BB">&#36;tsAction&nbsp;</span><span style="color: #007700">==&nbsp;</span><span style="color: #DD0000">'socials'</span><span style="color: #007700">}<br />{include&nbsp;</span><span style="color: #0000BB">file</span><span style="color: #007700">=</span><span style="color: #DD0000">'admin_mods/m.admin_socials.tpl'</span><span style="color: #007700">}&nbsp;<br /></span></code></div></div></div><br />
<br />
12 - Ir a themes/TUTEMA/templates/admin_mods/<span style="font-weight: bold;" class="mycode_b">m.admin_sidebar.tpl</span> y debajo de<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">li&nbsp;id</span><span style="color: #007700">=</span><span style="color: #DD0000">"a_creditos"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"cat-title"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/admin/creditos"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Soporte&nbsp;y&nbsp;Cr</span><span style="color: #007700">&amp;</span><span style="color: #0000BB">eacute</span><span style="color: #007700">;</span><span style="color: #0000BB">ditos</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">li</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
añadir<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">li&nbsp;id</span><span style="color: #007700">=</span><span style="color: #DD0000">"a_socials"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"cat-title"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">url</span><span style="color: #007700">}</span><span style="color: #DD0000">/admin/socials"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Configurar&nbsp;redes</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">li</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<br />
13 - Ir a themes/TUTEMA/template/modules/<span style="font-weight: bold;" class="mycode_b">m.cuenta_sidebar.tpl</span> (agregalo donde quieras)<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">""</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">h4</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Tus&nbsp;redes&nbsp;sociales</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">h4</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;{foreach&nbsp;</span><span style="color: #0000BB">from</span><span style="color: #007700">=</span><span style="color: #0000BB">&#36;SocialMager&nbsp;key</span><span style="color: #007700">=</span><span style="color: #0000BB">nombre&nbsp;item</span><span style="color: #007700">=</span><span style="color: #0000BB">social</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn-group-socials&nbsp;d-block"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn&nbsp;btn--</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"&nbsp;</span><span style="color: #0000BB">href</span><span style="color: #007700">=</span><span style="color: #DD0000">"{if&nbsp;</span><span style="color: #0000BB">&#36;tsPerfil</span><span style="color: #DD0000">.socials.</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #DD0000">}javascript:desvincular('</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">'){else}</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">}</span><span style="color: #DD0000">{/if}"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--icon"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"icon_social&nbsp;icon_</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--text"</span><span style="color: #007700">&gt;{if&nbsp;</span><span style="color: #0000BB">&#36;tsPerfil</span><span style="color: #007700">.</span><span style="color: #0000BB">socials</span><span style="color: #007700">.</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #0000BB">Desv</span><span style="color: #007700">{else}</span><span style="color: #0000BB">V</span><span style="color: #007700">{/if}</span><span style="color: #0000BB">incular&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;{</span><span style="color: #0000BB">foreachelse</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"empty"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Conexiones&nbsp;a&nbsp;tus&nbsp;redes&nbsp;sociales</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">pero&nbsp;aun&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;tsConfig</span><span style="color: #007700">.</span><span style="color: #0000BB">titulo</span><span style="color: #007700">}&nbsp;</span><span style="color: #0000BB">no&nbsp;las&nbsp;ha&nbsp;configurado</span><span style="color: #007700">!&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;{/foreach}<br />&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;&nbsp;<br /></span></code></div></div></div><br />
<br />
14 - Ir a themes/TUTEMA/template/<span style="font-weight: bold;" class="mycode_b">t.login.tpl</span> añaden, ya que con esto podrán iniciar sesión desde alguna red social<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{if&nbsp;</span><span style="color: #0000BB">&#36;SocialMager</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"buttons-social"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{foreach&nbsp;</span><span style="color: #0000BB">from</span><span style="color: #007700">=</span><span style="color: #0000BB">&#36;SocialMager&nbsp;key</span><span style="color: #007700">=</span><span style="color: #0000BB">nombre&nbsp;item</span><span style="color: #007700">=</span><span style="color: #0000BB">social</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn&nbsp;btn--</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">&nbsp;btn--only-icon&nbsp;btn-active"&nbsp;</span><span style="color: #0000BB">href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--icon"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"icon_social&nbsp;icon_</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--text"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Iniciar&nbsp;con&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{/foreach}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />{/if}&nbsp;<br /></span></code></div></div></div><br />
<br />
15 - Ir a themes/TUTEMA/template/<span style="font-weight: bold;" class="mycode_b">t.registro.tpl</span> añaden, ya que con esto podrán crear cuenta desde alguna red social<br />
 <br />
<div class="codeblock phpcodeblock"><div class="title">Código PHP:</div><div class="body"><div dir="ltr"><code><span style="color: #007700">{if&nbsp;</span><span style="color: #0000BB">&#36;SocialMager</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">div&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"buttons-social"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{foreach&nbsp;</span><span style="color: #0000BB">from</span><span style="color: #007700">=</span><span style="color: #0000BB">&#36;SocialMager&nbsp;key</span><span style="color: #007700">=</span><span style="color: #0000BB">nombre&nbsp;item</span><span style="color: #007700">=</span><span style="color: #0000BB">social</span><span style="color: #007700">}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn&nbsp;btn--</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">&nbsp;btn--only-icon&nbsp;btn-active"&nbsp;</span><span style="color: #0000BB">href</span><span style="color: #007700">=</span><span style="color: #DD0000">"</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;social</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--icon"</span><span style="color: #007700">&gt;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"icon_social&nbsp;icon_</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}</span><span style="color: #DD0000">"</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">span&nbsp;</span><span style="color: #007700">class=</span><span style="color: #DD0000">"btn--text"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Crear&nbsp;cuenta&nbsp;con&nbsp;</span><span style="color: #007700">{</span><span style="color: #0000BB">&#36;nombre</span><span style="color: #007700">}&lt;/</span><span style="color: #0000BB">span</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{/foreach}<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;/</span><span style="color: #0000BB">div</span><span style="color: #007700">&gt;<br />{/if}&nbsp;<br /></span></code></div></div></div><br />
<br />
En el punto 14 y 15 tiene la clase 'btn--only-icon', el cual claramente muestra solo el icono, si quieren visualizar el texto deberán borrar dicha clase<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">Descargar los archivos </a></span><br />
c.socials.php en inc/class/<br />
m.admin_socials.tpl en themes/TUTEMA/templates/admin_mods<br />
socialButtons.css en themes/TUTEMA/]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Identificación con RRSS]]></title>
			<link>https://phpost.es/thread-958.html</link>
			<pubDate>Mon, 16 Dec 2024 14:30:06 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=40">York0x</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-958.html</guid>
			<description><![CDATA[¡Hola a todos! 👋<br />
He estado pensando en una mejora que podría hacer más fácil y accesible nuestra comunidad de PHPost: implementar la posibilidad de registrarse e iniciar sesión usando redes sociales como Facebook, Google, Twitter, entre otras.<br />
 <br />
💡 <span style="font-weight: bold;" class="mycode_b">¿Por qué sería útil?</span><ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Más rápido y sencillo:</span> No sería necesario llenar formularios largos, solo unos clics y listo.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Mayor comodidad:</span> Muchas personas prefieren usar una cuenta existente en lugar de recordar otro usuario/contraseña.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Aumenta la cantidad de usuarios:</span> La facilidad de registro podría atraer a más personas a unirse y participar en la comunidad.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Actualización del sistema:</span> Esto también haría que PHPost se mantenga actualizado con tendencias modernas en plataformas web.<br />
</li>
</ul>
]]></description>
			<content:encoded><![CDATA[¡Hola a todos! 👋<br />
He estado pensando en una mejora que podría hacer más fácil y accesible nuestra comunidad de PHPost: implementar la posibilidad de registrarse e iniciar sesión usando redes sociales como Facebook, Google, Twitter, entre otras.<br />
 <br />
💡 <span style="font-weight: bold;" class="mycode_b">¿Por qué sería útil?</span><ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Más rápido y sencillo:</span> No sería necesario llenar formularios largos, solo unos clics y listo.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Mayor comodidad:</span> Muchas personas prefieren usar una cuenta existente en lugar de recordar otro usuario/contraseña.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Aumenta la cantidad de usuarios:</span> La facilidad de registro podría atraer a más personas a unirse y participar en la comunidad.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Actualización del sistema:</span> Esto también haría que PHPost se mantenga actualizado con tendencias modernas en plataformas web.<br />
</li>
</ul>
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Efecto de Nieve con JavaScript]]></title>
			<link>https://phpost.es/thread-954.html</link>
			<pubDate>Sun, 01 Dec 2024 22:29:54 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=1204">EZZIFY</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-954.html</guid>
			<description><![CDATA[¡Hola a todos!<br />
Esta mañana, mientras navegaba por aqui, me encontré con un interesante efecto de veladoras que me inspiró a desarrollar un pequeño código que genera un efecto de nieve.<br />
Quiero compartirlo con ustedes, ya que puede darle un toque especial a sus sitios web.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Ligero:</span><br />
El script pesa apenas 3 KB sin minificar, por lo que no impactará significativamente en el rendimiento de tu sitio.<br />
<span style="font-weight: bold;" class="mycode_b">Responsivo:</span><br />
El número de copos de nieve se ajusta automáticamente según el tamaño de la pantalla, con un máximo de 200 copos para evitar sobrecargas.<br />
<span style="font-weight: bold;" class="mycode_b">Interactivo:</span><br />
si un usuario hace clic en uno, este se elimina. Esto garantiza que no interfiera con la interacción del usuario en tu sitio, como hacer clic en botones o enlaces.<br />
<span style="font-weight: bold;" class="mycode_b">Fácil de personalizar:</span><br />
El código está diseñado para ser sencillo y claro, permitiéndote personalizar fácilmente aspectos como tamaño, velocidad o cantidad de copos.<br />
<span style="font-weight: bold;" class="mycode_b">Seguro y optimizado:</span><br />
Incluye medidas para evitar la sobrecarga del DOM, gracias a un manejo eficiente de temporizadores y la limpieza de elementos no necesarios.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Demo:</span><br />
<a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Instalación:</span><br />
<ol type="1" class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Copia el fragmento de código</span> y pégalo en tu archivo HTML.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Ubicación recomendada:</span><br />
Puedes colocarlo dentro de las etiquetas <br />
&lt;head&gt; o al final de &lt;body&gt;, dependiendo de tus necesidades:<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Dentro de </span><span style="font-weight: bold;" class="mycode_b">&lt;head&gt;</span> <br />
si quieres que los estilos y animaciones estén disponibles desde el inicio de la carga de la página.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Dentro de </span><span style="font-weight: bold;" class="mycode_b">&lt;body&gt;</span><br />
 si prefieres cargar el efecto después del contenido principal.<br />
</li>
</ul>
</li>
</ol>
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>&lt;script&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;(async function () {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const loadStyles = () =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const style = document.createElement("style");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.innerHTML = `.snowflake {position: fixed;width: 11px;height: 11px;background: white;border-radius: 50%;animation: fall linear infinite;top: -16px;transition: width 0.6s ease, height 0.6s ease;}.small-snowflakes .snowflake {width: 7px;height: 7px;}@keyframes fall {0% {transform: translate(var(--start-x), -10px) scale(var(--scale));opacity: var(--opacity);}50% {transform: translate(var(--end-x), var(--mid-y)) scale(var(--scale));opacity: var(--opacity);}100% {transform: translate(var(--end-x-final), 100vh) scale(var(--scale));opacity: 0;}}`;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.head.appendChild(style);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const generateSnowflakes = () =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const screenWidth = window.innerWidth;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const baseCount = 200;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const snowflakeCount = Math.min(baseCount, Math.floor(screenWidth / 5));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (let i = 0; i &lt; snowflakeCount; i++) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const snowflake = document.createElement('div');<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.className = 'snowflake';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const startX = Math.random() * 100 + 'vw';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--start-x', startX);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--end-x', `calc(&#36;{startX} + &#36;{(Math.random() - 0.5) * 20}vw)`);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--end-x-final', `calc(&#36;{startX} + &#36;{(Math.random() - 0.5) * 10}vw)`);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--mid-y', Math.random() * 50 + 50 + '%');<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--scale', Math.random() * 0.5 + 0.5);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--opacity', Math.random() * 0.5 + 0.5);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.animationDuration = Math.random() * 15 + 10 + 's';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.animationDelay = Math.random() * -30 + 's';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.body.appendChild(snowflake);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clearTimeout(window.snowTimer);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.snowTimer = setTimeout(() =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.body.classList.add('small-snowflakes');<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}, 3000);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const debounceResize = (func, delay = 300) =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;let timer;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return function (...args) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clearTimeout(timer);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timer = setTimeout(() =&gt; func.apply(this, args), delay);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const init = () =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loadStyles();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;generateSnowflakes();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.body.addEventListener('click', event =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (event.target.classList.contains('snowflake')) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;event.target.remove();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const handleResize = debounceResize(() =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.querySelectorAll('.snowflake').forEach(snowflake =&gt; snowflake.remove());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;generateSnowflakes();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.addEventListener('resize', handleResize);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while (true) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (document.readyState === 'complete') {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;init();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;await new Promise(resolve =&gt; setTimeout(resolve, 100));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;})();<br />
&lt;/script&gt;</code></div></div>]]></description>
			<content:encoded><![CDATA[¡Hola a todos!<br />
Esta mañana, mientras navegaba por aqui, me encontré con un interesante efecto de veladoras que me inspiró a desarrollar un pequeño código que genera un efecto de nieve.<br />
Quiero compartirlo con ustedes, ya que puede darle un toque especial a sus sitios web.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Ligero:</span><br />
El script pesa apenas 3 KB sin minificar, por lo que no impactará significativamente en el rendimiento de tu sitio.<br />
<span style="font-weight: bold;" class="mycode_b">Responsivo:</span><br />
El número de copos de nieve se ajusta automáticamente según el tamaño de la pantalla, con un máximo de 200 copos para evitar sobrecargas.<br />
<span style="font-weight: bold;" class="mycode_b">Interactivo:</span><br />
si un usuario hace clic en uno, este se elimina. Esto garantiza que no interfiera con la interacción del usuario en tu sitio, como hacer clic en botones o enlaces.<br />
<span style="font-weight: bold;" class="mycode_b">Fácil de personalizar:</span><br />
El código está diseñado para ser sencillo y claro, permitiéndote personalizar fácilmente aspectos como tamaño, velocidad o cantidad de copos.<br />
<span style="font-weight: bold;" class="mycode_b">Seguro y optimizado:</span><br />
Incluye medidas para evitar la sobrecarga del DOM, gracias a un manejo eficiente de temporizadores y la limpieza de elementos no necesarios.<br />
<br />
<span style="font-weight: bold;" class="mycode_b">Demo:</span><br />
<a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Instalación:</span><br />
<ol type="1" class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Copia el fragmento de código</span> y pégalo en tu archivo HTML.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Ubicación recomendada:</span><br />
Puedes colocarlo dentro de las etiquetas <br />
&lt;head&gt; o al final de &lt;body&gt;, dependiendo de tus necesidades:<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Dentro de </span><span style="font-weight: bold;" class="mycode_b">&lt;head&gt;</span> <br />
si quieres que los estilos y animaciones estén disponibles desde el inicio de la carga de la página.<br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Dentro de </span><span style="font-weight: bold;" class="mycode_b">&lt;body&gt;</span><br />
 si prefieres cargar el efecto después del contenido principal.<br />
</li>
</ul>
</li>
</ol>
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>&lt;script&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;(async function () {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const loadStyles = () =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const style = document.createElement("style");<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style.innerHTML = `.snowflake {position: fixed;width: 11px;height: 11px;background: white;border-radius: 50%;animation: fall linear infinite;top: -16px;transition: width 0.6s ease, height 0.6s ease;}.small-snowflakes .snowflake {width: 7px;height: 7px;}@keyframes fall {0% {transform: translate(var(--start-x), -10px) scale(var(--scale));opacity: var(--opacity);}50% {transform: translate(var(--end-x), var(--mid-y)) scale(var(--scale));opacity: var(--opacity);}100% {transform: translate(var(--end-x-final), 100vh) scale(var(--scale));opacity: 0;}}`;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.head.appendChild(style);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const generateSnowflakes = () =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const screenWidth = window.innerWidth;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const baseCount = 200;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const snowflakeCount = Math.min(baseCount, Math.floor(screenWidth / 5));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (let i = 0; i &lt; snowflakeCount; i++) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const snowflake = document.createElement('div');<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.className = 'snowflake';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const startX = Math.random() * 100 + 'vw';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--start-x', startX);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--end-x', `calc(&#36;{startX} + &#36;{(Math.random() - 0.5) * 20}vw)`);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--end-x-final', `calc(&#36;{startX} + &#36;{(Math.random() - 0.5) * 10}vw)`);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--mid-y', Math.random() * 50 + 50 + '%');<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--scale', Math.random() * 0.5 + 0.5);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.setProperty('--opacity', Math.random() * 0.5 + 0.5);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.animationDuration = Math.random() * 15 + 10 + 's';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;snowflake.style.animationDelay = Math.random() * -30 + 's';<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.body.appendChild(snowflake);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clearTimeout(window.snowTimer);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.snowTimer = setTimeout(() =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.body.classList.add('small-snowflakes');<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}, 3000);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const debounceResize = (func, delay = 300) =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;let timer;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return function (...args) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clearTimeout(timer);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timer = setTimeout(() =&gt; func.apply(this, args), delay);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const init = () =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loadStyles();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;generateSnowflakes();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.body.addEventListener('click', event =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (event.target.classList.contains('snowflake')) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;event.target.remove();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const handleResize = debounceResize(() =&gt; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.querySelectorAll('.snowflake').forEach(snowflake =&gt; snowflake.remove());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;generateSnowflakes();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.addEventListener('resize', handleResize);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while (true) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (document.readyState === 'complete') {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;init();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;await new Promise(resolve =&gt; setTimeout(resolve, 100));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;})();<br />
&lt;/script&gt;</code></div></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Les Presento Rompela!]]></title>
			<link>https://phpost.es/thread-950.html</link>
			<pubDate>Thu, 21 Nov 2024 00:14:30 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=260">jocker</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-950.html</guid>
			<description><![CDATA[<span style="font-weight: bold;" class="mycode_b">bueno ya creo que todos ya saben de mi y de mis webs<br />
bueno despues de estar tanto tiempo en las sombras quise volver a resubir una web que tenia hace años atras<br />
ya creo que muchos conocieron a   <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">Rompela!</a>  una web que sus tiempos fue grande y deje de albergar ...<br />
bueno la re abri nuevamente y quien quiera unirse bien y<br />
de a poco ire haciendola crecer<br />
estamos arrancando con el script de @<a id="mention_23" href="user-23.html" class="mentionme_mention" title="perfil Miguel92'es"><span style="color: #75397d;font-weight: bold;text-shadow: 0 0 .9em #75397d;"><strong><i class="fas fa-laptop-code" style="margin-right: 5px;"></i>Miguel92</strong></span></a>#23  el cual encuentro bueno y estable y sera el que quedara en la web<br />
<br />
unete a rompela.net<br />
<br />
[img]Registrate o inicia tu sesión para ver este contenido[/img]</span>]]></description>
			<content:encoded><![CDATA[<span style="font-weight: bold;" class="mycode_b">bueno ya creo que todos ya saben de mi y de mis webs<br />
bueno despues de estar tanto tiempo en las sombras quise volver a resubir una web que tenia hace años atras<br />
ya creo que muchos conocieron a   <a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">Rompela!</a>  una web que sus tiempos fue grande y deje de albergar ...<br />
bueno la re abri nuevamente y quien quiera unirse bien y<br />
de a poco ire haciendola crecer<br />
estamos arrancando con el script de @<a id="mention_23" href="user-23.html" class="mentionme_mention" title="perfil Miguel92'es"><span style="color: #75397d;font-weight: bold;text-shadow: 0 0 .9em #75397d;"><strong><i class="fas fa-laptop-code" style="margin-right: 5px;"></i>Miguel92</strong></span></a>#23  el cual encuentro bueno y estable y sera el que quedara en la web<br />
<br />
unete a rompela.net<br />
<br />
[img]Registrate o inicia tu sesión para ver este contenido[/img]</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[¿Cómo mostrar la portada en la página del post?]]></title>
			<link>https://phpost.es/thread-932.html</link>
			<pubDate>Fri, 27 Sep 2024 03:05:02 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=17">moyo</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-932.html</guid>
			<description><![CDATA[<span style="font-size: large;" class="mycode_size">¿Cómo mostrar la portada en la página del post?</span><br />
<br />
Teniendo lo siguiente:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>&lt;img title="{&#36;p.post_title}" src="{&#36;tsConfig.url}/files/portadas/toup{&#36;p.post_portada}P240X180.jpg"&gt;</code></div></div>]]></description>
			<content:encoded><![CDATA[<span style="font-size: large;" class="mycode_size">¿Cómo mostrar la portada en la página del post?</span><br />
<br />
Teniendo lo siguiente:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>&lt;img title="{&#36;p.post_title}" src="{&#36;tsConfig.url}/files/portadas/toup{&#36;p.post_portada}P240X180.jpg"&gt;</code></div></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Error Administración]]></title>
			<link>https://phpost.es/thread-930.html</link>
			<pubDate>Mon, 23 Sep 2024 09:21:37 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=296">Krsh</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-930.html</guid>
			<description><![CDATA[Hola, me di cuenta que me salen varios errores en la administración, quería saber si alguien me puede ayudar a resolver, los errores son en varias secciones<br />
<br />
Sesiones: <br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetAdminStats() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:145 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 145</code></div></div><br />
<br />
Blacklist<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::getBlackList() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:157 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 157</code></div></div><br />
<br />
Censuras:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::getBadWords() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:174 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 174</code></div></div><br />
<br />
Todos los post;<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetAdminPosts() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:135 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 135</code></div></div><br />
<br />
Sesiones:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetSessions() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:191 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 191</code></div></div><br />
<br />
Cambio de nick:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::getChangeNicks() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:150 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 150</code></div></div><br />
<br />
alguien me pudiera ayudar a saber porque paso? <br />
les adjunto mi archivo de admin.php<br />
<div style="padding:4px 0px;"><span class="inline-block vmiddle">
<img src="https://phpost.es/images/attachtypes/php.png" title="PHP File" alt=".php" />
</span>
<a  class="vmiddle inline-block" href="attachment.php?aid=7" target="_blank">admin.php</a> <span class="smalltext float_right">Tamaño: <span class="inline-block vmiddle">17.99 KB</span>&nbsp;&nbsp;Descargas: <span class="inline-block vmiddle">2</span></span>
</div>
]]></description>
			<content:encoded><![CDATA[Hola, me di cuenta que me salen varios errores en la administración, quería saber si alguien me puede ayudar a resolver, los errores son en varias secciones<br />
<br />
Sesiones: <br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetAdminStats() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:145 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 145</code></div></div><br />
<br />
Blacklist<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::getBlackList() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:157 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 157</code></div></div><br />
<br />
Censuras:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::getBadWords() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:174 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 174</code></div></div><br />
<br />
Todos los post;<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetAdminPosts() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:135 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 135</code></div></div><br />
<br />
Sesiones:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetSessions() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:191 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 191</code></div></div><br />
<br />
Cambio de nick:<br />
 <br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>Fatal error: Uncaught Error: Call to undefined method tsAdmin::getChangeNicks() in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php:150 Stack trace: #0 {main} thrown in D:&#92;xampp&#92;htdocs&#92;inc&#92;php&#92;admin.php on line 150</code></div></div><br />
<br />
alguien me pudiera ayudar a saber porque paso? <br />
les adjunto mi archivo de admin.php<br />
<div style="padding:4px 0px;"><span class="inline-block vmiddle">
<img src="https://phpost.es/images/attachtypes/php.png" title="PHP File" alt=".php" />
</span>
<a  class="vmiddle inline-block" href="attachment.php?aid=7" target="_blank">admin.php</a> <span class="smalltext float_right">Tamaño: <span class="inline-block vmiddle">17.99 KB</span>&nbsp;&nbsp;Descargas: <span class="inline-block vmiddle">2</span></span>
</div>
]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Hola a todos]]></title>
			<link>https://phpost.es/thread-927.html</link>
			<pubDate>Mon, 16 Sep 2024 01:23:26 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=1116">edrien</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-927.html</guid>
			<description><![CDATA[Hola a todos me presento, soy Edrien, un nuevo usuario en el foro.]]></description>
			<content:encoded><![CDATA[Hola a todos me presento, soy Edrien, un nuevo usuario en el foro.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[V5C]]></title>
			<link>https://phpost.es/thread-925.html</link>
			<pubDate>Sun, 08 Sep 2024 21:07:57 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://phpost.es/member.php?action=profile&uid=4">Chctrpgo</a>]]></dc:creator>
			<guid isPermaLink="false">https://phpost.es/thread-925.html</guid>
			<description><![CDATA[Hola, os dejo otra V5, para el que la quiera usar o lo que sea.<br />
<br />
<span style="color: #e74c3c;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Nota:</span></span> El tema es del 2012, le he tenido que actualizar todos los archivos para que funcione, puede que tenga algún error de una página que no haya visto o se me haya escapado algo, cualquier error dejarlo aquí y cuando tenga tiempo lo soluciono.<br />
<br />
<br />
<span style="color: #2980b9;" class="mycode_color"><span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Capturas</span></span></span><br />
<div style="text-align: center;" class="mycode_align">[img]Registrate o inicia tu sesión para ver este contenido[/img]</div>
 <br />
<div style="text-align: center;" class="mycode_align">[img]Registrate o inicia tu sesión para ver este contenido[/img]</div>
<br />
<br />
<br />
<span style="color: #2980b9;" class="mycode_color"><span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">DEMO</span></span></span><br />
<a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a><br />
<br />
<br />
<span style="color: #2980b9;" class="mycode_color"><span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Descarga</span></span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Mediafire</span><br />
<a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a>]]></description>
			<content:encoded><![CDATA[Hola, os dejo otra V5, para el que la quiera usar o lo que sea.<br />
<br />
<span style="color: #e74c3c;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">Nota:</span></span> El tema es del 2012, le he tenido que actualizar todos los archivos para que funcione, puede que tenga algún error de una página que no haya visto o se me haya escapado algo, cualquier error dejarlo aquí y cuando tenga tiempo lo soluciono.<br />
<br />
<br />
<span style="color: #2980b9;" class="mycode_color"><span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Capturas</span></span></span><br />
<div style="text-align: center;" class="mycode_align">[img]Registrate o inicia tu sesión para ver este contenido[/img]</div>
 <br />
<div style="text-align: center;" class="mycode_align">[img]Registrate o inicia tu sesión para ver este contenido[/img]</div>
<br />
<br />
<br />
<span style="color: #2980b9;" class="mycode_color"><span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">DEMO</span></span></span><br />
<a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a><br />
<br />
<br />
<span style="color: #2980b9;" class="mycode_color"><span style="font-size: x-large;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b">Descarga</span></span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">Mediafire</span><br />
<a href="http://Registrate%20o%20inicia%20tu%20sesión%20para%20ver%20este%20contenido" target="_blank" rel="noopener" class="mycode_url">http://Registrate o inicia tu sesión par... contenido</a>]]></content:encoded>
		</item>
	</channel>
</rss>