Este script lo uso en el caso que necesito marcar todos los checks en una página web. Lo aplico usando la extensión de Chrome User JavaScript and CSS.
domingo, agosto 02, 2026
Script javascript para marcar todos los checkbox
martes, mayo 12, 2026
Usar campo de entidad padre en reporte o informe
martes, mayo 05, 2026
Cómo bloquear países en WHM con Imunify 360
Configuración del bloqueo geográfico de tráfico desde WHM usando Imunify360. Restricción de acceso por país en servidores cPanel. Imunify360 incluye una función de bloqueo geográfico que permite restringir el acceso al servidor según el país de origen del tráfico. Esta configuración se gestiona directamente desde WHM, sin necesidad de editar reglas de firewall manualmente. El proceso cubre cómo acceder al módulo de Imunify360 dentro de WHM, identificar la sección de gestión de listas negras por país, y aplicar el bloqueo de forma efectiva. La configuración tiene efecto inmediato sobre las conexiones entrantes. Este tipo de restricción es útil para reducir tráfico no deseado, intentos de acceso desde regiones sin actividad legítima, y mejorar la postura general de seguridad del servidor sin configuraciones adicionales en el sistema operativo.
viernes, abril 17, 2026
Quitar saltos de línea en campos de un csv
martes, noviembre 25, 2025
Funciones ocultas para utilizar en reportes de EspoCRM
En este archivo se pueden encontrar funciones para filtrar los reportes que se usan en el paquete avanzado de EspoCRM.
Por ejemplo me sirvió para obtener registros modificados dentro de los últimos 15 minutos:
LESS_THAN_OR_EQUAL:(
TIMESTAMPDIFF_MINUTE:(
modifiedAt,
NOW:()
),
15
)
viernes, noviembre 21, 2025
ALERT: (0) Could not handle 'order' for 'Entidad'
El error está relacionado a la falta del parámetro de ordenamiento (probablemente bug de Espo ya que en la documentación se ve que es opcional), por ejemplo:
$idActivoPuente=record\findRelatedOne('Entidad', id, 'relacion');
Produce el error:
ALERT: (0) Could not handle 'order' for 'EntidadRelacionada'
Se soluciona agregando el parámetro faltante (por ejemplo createdAt):
$idActivoPuente=record\findRelatedOne('Entidad', id, 'relacion', 'createdAt', 'asc');
jueves, noviembre 20, 2025
Obtener datos de una entidad
No hagas esto en EspoCRM
$dato1 = record\attribute('Entidad', $id, 'campo1');
$dato2 = record\attribute('Entidad', $id, 'campo2');
Cada vez se trae un dato ¡Se realiza una consulta a la base de datos!
En reemplazo haz esto
$o = record\fetch('Account', $accountId);
if ($o) {
$dato1 = object\get($o, 'campo1');
$dato2 = object\get($o, 'campo2');
}
ref: https://docs.espocrm.com/administration/formula/record/#recordfetch
martes, diciembre 24, 2024
FastCopy: La Herramienta Definitiva para Copiar Archivos Rápidamente
Copiar archivos puede parecer una tarea sencilla, pero cuando se trata de manejar grandes volúmenes de datos o múltiples archivos pequeños, el sistema de copiado predeterminado de Windows puede quedarse corto en velocidad y eficiencia. Aquí es donde entra en acción FastCopy, una herramienta diseñada específicamente para realizar transferencias de archivos con la máxima velocidad y flexibilidad. En este artículo, te contaremos por qué FastCopy es una de las opciones más recomendadas para optimizar tus tareas de copiado.
¿Qué es FastCopy?
FastCopy es una aplicación gratuita y ligera para Windows que te permite copiar, mover o sincronizar archivos de manera más rápida y eficiente que el copiador estándar del sistema operativo. Su diseño optimizado aprovecha al máximo el rendimiento de tu hardware, asegurando una velocidad sobresaliente incluso en escenarios exigentes.
Características Clave de FastCopy
Velocidad Extrema
FastCopy realiza operaciones de lectura y escritura por separado, lo que elimina los tiempos muertos y maximiza la velocidad de transferencia, especialmente entre diferentes discos duros o SSD.Configuración Personalizada
- Define el tamaño del búfer para adaptarlo a tu hardware.
- Excluye o incluye archivos específicos con base en patrones.
- Configura reglas de sobrescritura basadas en fechas o tamaños.
Soporte para Grandes Cantidades de Archivos
Mientras que otros programas pueden ralentizarse al copiar cientos o miles de archivos pequeños, FastCopy maneja estas situaciones con facilidad.Sincronización de Directorios
¿Necesitas mantener carpetas sincronizadas? FastCopy incluye opciones avanzadas para asegurarte de que solo se transfieran los archivos que han cambiado.Verificación de Integridad
Verifica que los archivos copiados sean idénticos a los originales mediante checksums.Consumo Eficiente de Recursos
Diseñado para ser liviano, FastCopy utiliza una cantidad mínima de memoria y CPU, lo que lo hace ideal para sistemas con recursos limitados.
¿Por Qué Elegir FastCopy?
- Migración de Datos: Ideal para transferir grandes volúmenes de información entre discos o dispositivos.
- Respaldos: Asegura que tus copias de seguridad sean rápidas y confiables.
- Transferencia de Archivos Pequeños: Su rendimiento sobresale donde otras herramientas luchan.
- Flexibilidad: Puedes personalizar cada detalle de la operación según tus necesidades.
Cómo Usar FastCopy
Descarga e Instalación:
Descarga la herramienta desde su sitio oficial: fastcopy.jp. La instalación es rápida y no incluye software adicional.Interfaz Simple:
FastCopy presenta una interfaz minimalista que permite seleccionar:- Directorio de origen.
- Directorio de destino.
- Tipo de operación: copiar, mover o sincronizar.
Personalización Opcional:
Ajusta el tamaño del búfer, selecciona archivos específicos o utiliza exclusiones avanzadas si es necesario.Inicia el Proceso:
Haz clic en el botón "Execute" y deja que FastCopy haga el trabajo.
Comparación con el Copiador Nativo de Windows
| Característica | Windows | FastCopy |
|---|---|---|
| Velocidad | Media | Alta |
| Personalización | Limitada | Avanzada |
| Consumo de Recursos | Moderado | Bajo |
| Manejo de Archivos Pequeños | Regular | Excelente |
| Verificación de Integridad | No Disponible | Disponible |
lunes, mayo 15, 2023
ChatGPT describiéndose en una poesía
lunes, agosto 08, 2016
El random no es lo que es...
jueves, mayo 12, 2016
Snippet: Validar rut con html5 forms
<input type="text" name="rut" required="required" pattern="\d{3,8}-[\d|kK]{1}" title="Debe ser un Rut válido"/>
miércoles, marzo 02, 2016
YOiT - Crea divertidos avisos clasificados
En pocos pasos, eliges hasta cuatro fotografías, ingresando título, precio y descripción. Luego, la aplicación te mostrará diferentes plantillas a elección, permitiendote cambiar el color del texto, la fuente y la distribución de las fotografías seleccionadas.
El resultado, es una imagen tipo collage que contiene toda la información detallada en ella.
lunes, abril 06, 2015
CarbonCopy - Gestor de comunicación y proyectos basado en contextos
CarbonCopy es un gestor de proyectos que intenta adaptarse a la estructura comunicacional de equipos de trabajo o una empresa.
- Contextos jerárquicos.
- Creación de contextos públicos, privados y cerrados.
- Ver la actividad histórica por cuenta, contexto, tema, fecha y usuario.
- Es 99% NoSql
- Posee una linea de tiempo para ver tareas futuras.
- Extender la aplicación con componentes y secciones.
- Editor Wysiwyg,
- Es open source.
- Soporta inglés y español.
- Posee atajos de teclado.
- Entre otros.
sábado, marzo 15, 2014
Laravel: Recargar assets automáticamente en el navegador si tienen cambios
Pueden obtener el archivo modificado acá:
https://github.com/porquero/framework/commit/e4589e1c63933ac47c0706013cc29aa4148654d8
jueves, febrero 13, 2014
¿Cuán Kanban eres?
Con ese feedback es difícil "medir" el impacto del uso de Kanban. Por que una cosa es promover las ventajas que se prometen al utilizar esta metodología pero no cuán Kanban es tu implementación.
Hasta que me encuentro con el concepto "Depth of Kanban" y, ¡aleluya! ¡Encontré la respuesta a mi inquietud!. Con esta herramienta puedo saber cómo va la implementación de la metodología y en qué se debe trabajar, ya que Kanban y Kaizen deben ir en paralelo -según mi opinión-.
Les dejo esta herramienta (por si no la conocían) que reúne las métricas para medir "cuán Kanban" es tu equipo.
viernes, noviembre 08, 2013
Evitar ir atrás en la navegación cuando se usa [backspace] en un input tipo number
Además se completa la operación, eliminando el último número tipeado.
$('input[type=number]').on('keydown', function(e) {
var key = e.which || e.keyCode || e.charCode;
if (key === 8) {
var s = $(this).val();
s = s.substring(0, s.length - 1);
$(this).val(s);
return false;
}
});
sábado, febrero 16, 2013
Esquema para crear objetos instanciable para javascript con jQuery
// Helper. Sólo usarlo una vez. Esto resuelve varios problemas con objetos en js.
if ( typeof Object.create !== 'function' ) {
Object.create = function( obj ) {
function F() {};
F.prototype = obj;
return new F();
};
}
// Esquema para objetos javascript.
(function(){
var OBJ_NAME = {
props: {},
init: function(props){
this.props = $.extend({}, this.props, props);
return this;
}
};
// Para instanciar y ejecutar constructor.
new_OBJ_NAME = function(props){
var REL_OBJ_NAME = Object.create(OBJ_NAME);
return REL_OBJ_NAME.init(props);
};
})();
// Uso.
props = {/* Las propiedades*/};
obj = new_OBJ_NAME(props);
(function(){
var mi_objeto = {
props: {prop1 : 1, prop2 : 2},
init: function(props){
this.props = $.extend({}, this.props, props);
return this;
},
sumar: function(){
return this.props.prop1 + this.props.prop2;
}
};
new_mi_objeto = function(props){
var mi_objeto_instanciado = Object.create(mi_objeto);
return mi_objeto_instanciado.init(props);
};
})();
// Uso.
// Usamos propiedades por defecto.
obj1 = new_mi_objeto();
console.log(obj1.sumar());
// Usamos propiedades personalizadas.
props = {prop1 : 1234, prop2 : 8876};
obj2 = new_mi_objeto(props);
console.log(obj2.sumar());
Créditos
martes, agosto 28, 2012
Xubuntu: Monitor dual con VGA primario
Pero el post no me daba con la solución. Seguí indagando en la configuración y realicé algunos cambios y al fin pude dejar Mi monitor VGA como primario y el de mi Notebook como secundario:
- Ir a Configuración > Editor de configuración
- Fijarse que se esté en el canal 'Displays'
- Desplegar propiedad 'Default'
- Debiesen aparecer 2 sub-propiedades. Mi caso: LVDS1 (Notebook) y VGA1 (Monitor externo)
- Tomar el valor de X del monitor que dejarás como principal (VGA1)
- VGA1 > Resolution. Mi caso: 1920x1080
- Cambiar las propiedades en en monitor secundario (LVDS1)
- LVDS1 > Position > X: 1920 (Tomamos el valor X del punto 4.1)
- Cerra sesión y entrar nuevamente
martes, agosto 14, 2012
martes, mayo 22, 2012
Get new and modified files from n days ago
If you use cvs system, you need to export files first
(using svn)*
svn export files/path export/path
* Maybe you need to use before
svn add * --force
Go to export/path and get the last new/modified files you want
cd export/path find . -mtime -N -ctime -N | cpio -vdump ../final_files
N are the days that you want to get, so if you need to get files from 7 days ago then you write:
find . -mtime -7 -ctime -7 | cpio -vdump ../final_files








