-
Tema Identi (Cat/Vip) 202...
Foro: Diseños Terminados
Último mensaje por: Tronlar
Hace 24 minutos
» Respuestas: 27
» Vistas: 5,906 -
Nueva etapa del proyecto:...
Foro: Noticias y Novedades
Último mensaje por: Videmax
04-27-2026, 03:41 AM
» Respuestas: 4
» Vistas: 242 -
V6 Original/Dark/Memes (A...
Foro: Diseños Terminados
Último mensaje por: Tronlar
04-24-2026, 07:15 AM
» Respuestas: 25
» Vistas: 5,733 -
Aquí yace un Taringuero
Foro: Presentaciones
Último mensaje por: Tronlar
04-23-2026, 06:24 AM
» Respuestas: 2
» Vistas: 162 -
Taringa V7 V3 (2023)
Foro: Diseños Terminados
Último mensaje por: Tronlar
04-23-2026, 06:18 AM
» Respuestas: 32
» Vistas: 5,266 -
Hola a todos
Foro: Presentaciones
Último mensaje por: Tronlar
04-23-2026, 06:05 AM
» Respuestas: 1
» Vistas: 105 -
presento TELFULL
Foro: Preséntanos tu web
Último mensaje por: Tronlar
04-19-2026, 04:01 PM
» Respuestas: 14
» Vistas: 1,222 -
Firma en fotos
Foro: Ayuda y Soporte
Último mensaje por: moyo
03-22-2025, 06:44 PM
» Respuestas: 0
» Vistas: 60 -
Noticia diferente por pág...
Foro: Ayuda y Soporte
Último mensaje por: moyo
03-05-2025, 04:13 AM
» Respuestas: 2
» Vistas: 145 -
MEGABlog V1.5 (Act 1.3)
Foro: Diseños Terminados
Último mensaje por: Tronlar
01-17-2025, 11:13 AM
» Respuestas: 8
» Vistas: 1,825
- Mensajes del foro:1,761
- Temas del foro:557
- Miembros:1,008
- Último miembro:go88baby
¡Hola a todos!
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.
Quiero compartirlo con ustedes, ya que puede darle un toque especial a sus sitios web.
Ligero:
El script pesa apenas 3 KB sin minificar, por lo que no impactará significativamente en el rendimiento de tu sitio.
Responsivo:
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.
Interactivo:
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.
Fácil de personalizar:
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.
Seguro y optimizado:
Incluye medidas para evitar la sobrecarga del DOM, gracias a un manejo eficiente de temporizadores y la limpieza de elementos no necesarios.
Demo:
http://Registrate o inicia tu sesión par... contenido
Instalación:
- Copia el fragmento de código y pégalo en tu archivo HTML.
- Ubicación recomendada:
Puedes colocarlo dentro de las etiquetas
<head> o al final de <body>, dependiendo de tus necesidades:- Dentro de <head>
si quieres que los estilos y animaciones estén disponibles desde el inicio de la carga de la página.
- Dentro de <body>
si prefieres cargar el efecto después del contenido principal.
- Dentro de <head>
<script>
(async function () {
const loadStyles = () => {
const style = document.createElement("style");
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;}}`;
document.head.appendChild(style);
};
const generateSnowflakes = () => {
const screenWidth = window.innerWidth;
const baseCount = 200;
const snowflakeCount = Math.min(baseCount, Math.floor(screenWidth / 5));
for (let i = 0; i < snowflakeCount; i++) {
const snowflake = document.createElement('div');
snowflake.className = 'snowflake';
const startX = Math.random() * 100 + 'vw';
snowflake.style.setProperty('--start-x', startX);
snowflake.style.setProperty('--end-x', `calc(${startX} + ${(Math.random() - 0.5) * 20}vw)`);
snowflake.style.setProperty('--end-x-final', `calc(${startX} + ${(Math.random() - 0.5) * 10}vw)`);
snowflake.style.setProperty('--mid-y', Math.random() * 50 + 50 + '%');
snowflake.style.setProperty('--scale', Math.random() * 0.5 + 0.5);
snowflake.style.setProperty('--opacity', Math.random() * 0.5 + 0.5);
snowflake.style.animationDuration = Math.random() * 15 + 10 + 's';
snowflake.style.animationDelay = Math.random() * -30 + 's';
document.body.appendChild(snowflake);
}
clearTimeout(window.snowTimer);
window.snowTimer = setTimeout(() => {
document.body.classList.add('small-snowflakes');
}, 3000);
};
const debounceResize = (func, delay = 300) => {
let timer;
return function (...args) {
clearTimeout(timer);
timer = setTimeout(() => func.apply(this, args), delay);
};
};
const init = () => {
loadStyles();
generateSnowflakes();
document.body.addEventListener('click', event => {
if (event.target.classList.contains('snowflake')) {
event.target.remove();
}
});
const handleResize = debounceResize(() => {
document.querySelectorAll('.snowflake').forEach(snowflake => snowflake.remove());
generateSnowflakes();
});
window.addEventListener('resize', handleResize);
};
while (true) {
if (document.readyState === 'complete') {
init();
break;
}
await new Promise(resolve => setTimeout(resolve, 100));
}
})();
</script>
bueno ya creo que todos ya saben de mi y de mis webs
bueno despues de estar tanto tiempo en las sombras quise volver a resubir una web que tenia hace años atras
ya creo que muchos conocieron a Rompela! una web que sus tiempos fue grande y deje de albergar ...
bueno la re abri nuevamente y quien quiera unirse bien y
de a poco ire haciendola crecer
estamos arrancando con el script de @Miguel92#23 el cual encuentro bueno y estable y sera el que quedara en la web
unete a rompela.net
[img]Registrate o inicia tu sesión para ver este contenido[/img]
¿Cómo mostrar la portada en la página del post?
Teniendo lo siguiente:
<img title="{$p.post_title}" src="{$tsConfig.url}/files/portadas/toup{$p.post_portada}P240X180.jpg">
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
Sesiones:
Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetAdminStats() in D:\xampp\htdocs\inc\php\admin.php:145 Stack trace: #0 {main} thrown in D:\xampp\htdocs\inc\php\admin.php on line 145Blacklist
Fatal error: Uncaught Error: Call to undefined method tsAdmin::getBlackList() in D:\xampp\htdocs\inc\php\admin.php:157 Stack trace: #0 {main} thrown in D:\xampp\htdocs\inc\php\admin.php on line 157Censuras:
Fatal error: Uncaught Error: Call to undefined method tsAdmin::getBadWords() in D:\xampp\htdocs\inc\php\admin.php:174 Stack trace: #0 {main} thrown in D:\xampp\htdocs\inc\php\admin.php on line 174Todos los post;
Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetAdminPosts() in D:\xampp\htdocs\inc\php\admin.php:135 Stack trace: #0 {main} thrown in D:\xampp\htdocs\inc\php\admin.php on line 135Sesiones:
Fatal error: Uncaught Error: Call to undefined method tsAdmin::GetSessions() in D:\xampp\htdocs\inc\php\admin.php:191 Stack trace: #0 {main} thrown in D:\xampp\htdocs\inc\php\admin.php on line 191Cambio de nick:
Fatal error: Uncaught Error: Call to undefined method tsAdmin::getChangeNicks() in D:\xampp\htdocs\inc\php\admin.php:150 Stack trace: #0 {main} thrown in D:\xampp\htdocs\inc\php\admin.php on line 150alguien me pudiera ayudar a saber porque paso?
les adjunto mi archivo de admin.php
Hola a todos me presento, soy Edrien, un nuevo usuario en el foro.
Hola, os dejo otra V5, para el que la quiera usar o lo que sea.
Nota: 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.
Capturas
DEMO
http://Registrate o inicia tu sesión par... contenido
Descarga
Mediafire
http://Registrate o inicia tu sesión par... contenido
Captura
Demo
http://Registrate o inicia tu sesión par... contenido
Descarga
Mediafire
http://Registrate o inicia tu sesión par... contenido
Google Drive
http://Registrate o inicia tu sesión par... contenido
Hola a todos, les comparto una forma que he realizado para cambiar de versión de PHP de forma más automática y no tan manual, lo único molesto será descargar, buscar y reemplazar algunas cosas, pero una vez hecho esto, ya no será problema.
(cabe recalcar, que hoy me acabó de que existe laragon)
Bueno, lo primero es descargar la versión que se desee de forma "portable", ya que vamos a requerir algunas carpetas, por ejemplo esta versión:
PHP 8.2.12 (zip desde SourceForge)
Otras versiones Xampp/Files (windows)
Las carpetas que necesitaremos:
apache/
mysql/
php/
Pueden crear una carpeta llama versiones y dentro de ella crear la carpeta con la versión que tenga, en mi caso es
versiones_php
-- /7.4.33
-- /8.2.12
Ahora en esas carpetas hay que buscar lo que deben reemplazar, si usan un editor como VSCode, Sublime text u otro, pueden buscar y reemplazar por lote.
Buscar (igual esto esta en un solo archivo, apache/conf/extra/httpd-xampp.conf)
\\xampp\\
Reemplazar (más bien, agregar la unidad donde tengan instalado el xampp)
C:\\xampp\\
Luego hacer lo mismo, pero buscando
/xampp/
Y exactamente lo mismo que el anterior
C:/xampp/
Ya que tengan modificados, crear un archivo y lo pueden guardar como "cambiar_version.bat" o como quieran llamarlo pero con .bat, y en el agregan lo siguiente.
@echo off
:menu
cls
echo ====# Desde este .bat podras cambiar de version rapido!
echo.
echo # 1 - Cambiar Version de PHP
echo # 2 - Salir
echo.
set /p OPTION=ESCOGE UNA OPCION:
if "%OPTION%"=="1" goto change_php_version
if "%OPTION%"=="2" goto out_of_cmd
goto menu
:change_php_version
cls
echo ==========================================================================
echo Desde aca podras cambiar la version de tu PHP sin problemas y rapido
echo ==========================================================================
echo.
echo # 1 - PHP v7.4.33 (carpeta '7.4.33')
echo # 2 - PHP v8.2.12 (carpeta '8.2.12')
echo.
echo ====# ANTES DE EMPEZAR DEBES TENER LOS SERVICIOS DE XAMPP DETENIDOS #====
echo.
set /p SELECT_VERSION=ESCOGE UNA OPCION:
if "%SELECT_VERSION%"=="1" set SELECT_VERSION=7.4.33
if "%SELECT_VERSION%"=="2" set SELECT_VERSION=8.2.12
cls
echo ====# Eliminando Apache...
rd /s /q C:\xampp\apache
echo.
echo ====# Copiando archivos de Apache (PHP %SELECT_VERSION%)
xcopy /e /i /y /q C:\versiones_php\%SELECT_VERSION%\apache C:\xampp\apache
echo.
echo.
echo ====# Eliminando PHP...
rd /s /q C:\xampp\php
echo.
echo ====# Copiando archivos de PHP %SELECT_VERSION%
xcopy /e /i /y /q C:\versiones_php\%SELECT_VERSION%\php C:\xampp\php
echo.
echo.
echo ====# Copiando archivos de MySQL (PHP %SELECT_VERSION%)
xcopy /s /e /c /k /-y /h /q C:\versiones_php\%SELECT_VERSION%\mysql C:\xampp\mysql
goto menu
:out_of_cmd
cls
echo.
echo CERRANDO SISTEMA
echo.
exit
Ahora, en esta parte debe tener el mismo nombre que las carpetas de las versiones escogidas, en mi caso es
if "%SELECT_VERSION%"=="1" set SELECT_VERSION=7.4.33 (nombre de la carpeta)
if "%SELECT_VERSION%"=="2" set SELECT_VERSION=8.2.12 (nombre de la carpeta)
Acá es desde donde va a copiar en donde lo va a copiar, en mi caso lo tengo en C:\ más practico para mí. Pero si lo tiene en otra ubicación deberán poner la ruta de dicha ubicación modificando esto C:\versiones_php\
xcopy /e /i C:\versiones_php\%SELECT_VERSION% C:\xampp
NOTA: Esto reemplazará los archivos existentes, se que en xampp/mysql/data se guardan las bases de datos y que estarán las bases de sus proyectos, estos no serán tocados, ni reemplazados, por que no los tiene las versiones de xampp, estas son las únicas 'carpetas' que hay dentro de mysql/data/
[img]Registrate o inicia tu sesión para ver este contenido[/img]
Para usarlo, lo ejecutan como administrador y verán lo siguiente:
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
Una vez que termina, volverá al menú principal, este proceso tardará unos minutos...
[img]Registrate o inicia tu sesión para ver este contenido[/img][img]Registrate o inicia tu sesión para ver este contenido[/img]
Hagan copia de seguridad a sus bases, por si acaso, si desconfían, pueden buscar información sobre lo que hace cada línea.
Comandos en CMD: xcopy, echo, rd, cls, if, set-option, goto
PD: Si en su versión actual de xampp tienen alguna configuración de php.ini, les sugiero que se lo apliquen a las versiones o versión que tengan.
Espero que les sirva, úsenlo con cuidado!
Hola.
Muchos ( entre ellos yo ) hemos intentado colocar este mod sin éxito ninguno: http://Registrate o inicia tu sesión par... contenido
Asique allí voy con la solución:
1 - En inc/ext/bbcode.inc.php buscan
array('tag' => 'url', 'replace' => '<a href="{param}" target="_blank">{param}</a>', 'parse' => false, 'validParam' => $urlValidator),
array('tag' => 'url', 'replace' => '<a href="{option}" target="_blank">{param}</a>', 'option' => true, 'validOption' => $urlValidator),
Y lo reemplazamos por:
array('tag' => 'url', 'replace' => '<a href="{param}" target="_blank" data-encode="true">{param}</a>', 'parse' => false, 'validParam' => $urlValidator),
array('tag' => 'url', 'replace' => '<a href="{option}" target="_blank" data-encode="true">{param}</a>', 'option' => true, 'validOption' => $urlValidator),
Al final de tutema/js/funciones.js agregamos:
function base64_encode(string) {
let type = "undefined" != typeof window && window.btoa;
return type ? window.btoa(unescape(encodeURIComponent(string))) : Buffer.from(string,"binary").toString("base64");
}
$(document).ready(function(){
$('a[data-encode="true"]').each(function(){
let url = $(this).attr('href');
$(this).attr({
href: `${global_data.url}/go/?p=` + base64_encode(url)
});
});
});
Y tras ello subimos la carpeta de @Tronlar#1 (Subimos los archivos a sus respectivas rutas)
http://Registrate o inicia tu sesión par... contenido
Hola gente. Espero que estén bien. Pueden llamarme Weber, es el apodo que elegí cuando empecé a trastear con este Script, y que uso también en algunas redes sociales. 
Desde 2013 que administro un sitio con el venerado Script con un tema creado por To-Up que hasta hoy no encuentro el origen. 
Llegué acá después de hablar con Isidro porque se había caído el .net. Dijo que en algún momento volvería pero me sugirió que venga para acá que encontraría compañía. 
Por lo que veo llevan bastante tiempo, así que voy a ir leyendo un poco cada dia. 
Gracias.

