Integración de pasarela de pago de Redsys tipo “insite”

La integración de la pasarela de pago de Redsys en modo insite es bastante simple pero tiene algunos momentos wtf. Dejo aquí algunos apuntes para no volver a tropezar con ellos en el futuro:

  • Hay que hablar con el contacto del banco que nos ofrezca la pasarela y pasarle una lista con todos los dominios en los que vayamos a usarla, tanto de desarrollo como de producción. Esto es lo primero que hay que hacer, hasta que no nos habiliten esos dominios no nos aparecerá el formulario incrustado para meter los datos de la tarjeta.
  • No se pueden repetir números de pedido. Si lo hacemos la petición de id de operación se completará sin error pero nos devolverá un id de operación de -1.
  • El código de comercio y el número de terminal deben enviarse sin ceros a la izquierda, y el número de pedido debe pasarse como string, si se pasa como número se nos devolverá un error (no un código de error, el iframe solo devolverá la palabra Error).

Actualización: los dos últimos puntos no vienen indicados en la documentación de integración del Santander, pero sí vienen en la oficial de Redsys, así que lo mejor es usar esa.

Componentes dinámicos en Vue.js

Hay veces que en una aplicación de Vue tenemos una pantalla donde puede haber un número variable de componentes que el usuario puede configurar, por ejemplo en un dashboard o en una pantalla de definición de filtros.

En estos casos usar la sintaxis habitual para importar componentes se hace tedioso y es más sencillo utilizar el componente de Vue component y un sistema de carga dinámica. En esta página lo explican perfectamente.

TL,DR: en la parte de template definimos el componente:

component(:is="currentComponent")

Y definimos la propiedad computada así:

currentComponent()
{
    let name = "Aquí establecemos el nombre del componente a cargar";
    return () => import(`@/components/Ruta1/Ruta2/${name}`);     
}

Ñapa para que Vivaldi no descargue los ficheros que queremos abrir

Una pequeña pega que tiene Vivaldi es que si al pulsar el enlace de un fichero seleccionamos Abrir en vez de Guardar o Guardar como lo guarda siempre en el disco antes de abrirlo. El problema es que no lo guarda en una carpeta temporal, sino en la carpeta de descargas por defecto.

¿Por qué? Ni idea. Esto hace que al final tengamos en la carpeta de descargas muchos ficheros que no queríamos guardar, solo abrir. ¡Qué terribles estos problemas del primer mundo!

En fin, esto de momento no tiene solución pero se puede hacer una pequeña ñapa:

  • Abrimos vivaldi://settings/downloads/ y seleccionamos como carpeta de descarga por defecto /tmp
  • Desactivamos la opción Save Files to Default Location Without Asking

De esta forma Vivaldi nos preguntará si queremos Abrir, Guardar o Guardar como y ahora podremos decidir:

  • Si solo queremos abrir el fichero, pulsamos Abrir. Vivaldi descargará el fichero a /tmp y lo abrirá.
  • Si queremos guardarlo pulsamos Guardar como y especificamos manualmente dónde queremos guardarlo.

La opción Guardar queda entonces inútil, porque no tiene sentido guardar ningún fichero en /tmp, que es una carpeta que se vacía periódicamente.

Modo de recuperación para servidores de OVH

Si en algún momento la liamos con la configuración de nuestro servidor y nos quedamos sin poder acceder a él el proceso para recuperarlo es:

1.- Cambiamos en el panel de control el boot a “Rescue” (rescue-64).

2.- Reiniciamos el servidor, nos llegará por email la contraseña para acceder.

3.- Ejecutamos parted -l para ver qué unidades tenemos. Si tenemos un RAID nos interesa la que empieza por md, por ejemplo md127.

4.- Montamos esa unidad: mount /dev/md127 /mnt/

5.- Hacemos chroot: chroot /mnt/

6.- Buscamos el fichero de configuración donde la hayamos liado y corregimos el error.

7.- Cambiamos en el panel de control el boot a “Hard disk”.

8.- Reiniciamos el servidor y cruzamos los dedos…

Recuperar texto de documentos de Lotus Word Pro

Lotus Word Pro era un procesador de textos que venía con una impresora que compré en el año 96, y que permitía hacer composiciones bastante chulas, así que lo usé durante varios años y tengo bastantes documentos guardados en ese formato.

La mayoría los fui convirtiendo a Word con el propio programa pero aún me quedan bastantes documentos en el formato de Lotus, con extensión lwp.

He encontrado una herramienta en un FTP de Lotus llamada KeyView for Lotus que permite abrir los ficheros LWP sin tener el Word Pro instalado, y así podemos copiar y pegar el texto a un programa moderno. Con Wine funciona perfectamente.

Por si acaso el servidor FTP cierra dejo aquí una copia, espero que no se molesten 🙂

Australia

Por algún motivo este artículo ya no se puede encontrar en Cracked, y solo lo he podido encontrar en la Wayback Machine, así que lo reproduzco aquí porque una joya así no se puede perder.

Australia is a wonderful, beautiful island continent home to a peaceful, happy, and loving people… that Mother Nature hates so much she can taste stabbing.

You can say Octopuses or Octopodes all you want; if it’s good enough for The Beatles, it’s good enough for Cracked.

Just The Facts

  1. Australia is the largest island nation in the world, straddling the border of the Pacific and Indian Ocean.
  2. It has a rich and exotic ecosystem supporting fantastic flora and fauna…all of which were unfortunately eaten by the monsters that live there.
  3. Its primary spoken language is screaming.

From the Abyss It Is Birthed

Back in the 1770s the British Empire discovered Australia and, after finding it generally unfit for human habitation, proceeded to send all of their criminals and generally unwanted peasants there…because basic human empathy was not to be invented until the year 1821.

After somehow managing to survive on Monster Island for over a century, it was considered only fair to grant the Australian citizens their freedom and on January 1st, 1901, Australia gained federation of its colonies, and The Commonwealth of Australia was born.

Things in Australia that Will Kill You

Everything. No, seriously: Everything.

First there’s the wildlife: If something appears to be cute and harmless in Australia, then we promise you – it has only evolved that way to lure you close enough for the thousands of ravenous, prehensile blade-tongues to descended upon you.

Then there’s the Geography: Consisting mostly of arid, dry desert, (populated by over 100 venomous species of snake,) the harsh local climate is peppered with small, livable areas presumably just to lull human beings into a false sense of security.

Ah, but the tropical beaches, you say! Surely the paradise on Earth that is the Australian beach makes up for an entire continent of biological weapons. And it’s true: Australia is known for having some of the best beaches in the world…all you have to worry about are the Saltwater Crocs, Great White Sharks, poisonous Stonefish, or being stung by the Box Jellyfish: The deadliest and most painful sting of any Jellyfish species in the world.

Your best bet is just to stay in the city then, right? Enjoy the local culture; go visit the capital of Canberra, or visit beautiful Sydney and see the wonder of the Opera house. And that’s totally safe: Just remember to wear protective clothing, stay in well travelled areas, always know the nearest path to a hospital, and just generally try not to exist – because Australia is also home to over 280 species of poisonous spider, including that aforementioned Sydney Funnel Web Spider. What, did you think it was just a name? No, it lives in cities, in garages, in tool sheds and houses – it even swims. IT FUCKING SWIMS.

Seriously: Everything in Australia evolved solely to kill everything else in Australia – and you show up with your soft, unarmored skin, tiny, rounded teeth, and ridiculously non-poisonous spit and expect a vacation?

You just walked into Mother Nature’s Thunderdome, friend. And in this analogy, you’re not Max; you’re the dead retard.

Things in Australia that Will Not Kill You

….

Hugh Jackman seems nice.

Permitir tráfico web en instancias de Oracle Cloud

Oracle Cloud nos permite usar dos instancias (básicas, pero bastante decentes) gratis de por vida. El proceso de creación es similar al resto de proveedores cloud, y aquí hay una guía muy completa.

El motivo de esta entrada es por si en el futuro se me olvida que una vez abiertos los puertos 80 y 443 en la lista de seguridad de la VCN de nuestra instancia hay además que abrirlos en el firewall de Ubuntu:

sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 443 -j ACCEPT
sudo netfilter-persistent save