Hace tiempo que quería resolver el problema que se produce cuando un usuario impaciente pulsa más de una vez el botón en un formulario enviando datos. Dependiendo del tipo de proceso detrás de esta acción, las consecuencias pueden ser más o menos graves.
Imagina que compras en una página y al confirmar la compra, pulsas dos veces.
Resultado: si la página no controla esta acción, posiblemente acabes con dos cargos en tu tarjeta.
Esta mañana, googleando he encontrado una solución muy simple, eso sí, requiere Javascript:
Deshabilitar el botón una vez que se ha pulsado sobre él.
Ejemplo:
Lo cual se puede lograr mediante el siguiente código:
< input type="button" name="enviar_datos" value="Enviar datos" onClick="this.value='Espera...'; this.disabled=true; this.form.submit()" />
La “Propuesta de recomendaciones a la Administración General del Estado sobre utilización del software libre y de fuentes abiertas” ha sido elaborada por el Grupo de software libre en la Administración General del Estado, creado por el Consejo Superior de Informática y para el Impulso de la Administración Electrónica con el mandato de formular un conjunto de recomendaciones relativas a la utilización del software libre y de fuentes abiertas por la Administración General del Estado.
Otro párrafo que me complace reproducir:
13. Patentes
13.1 Se recomienda velar por que en el ordenamiento jurídico relativo a patentes, bien en el ámbito comunitario o bien en el ámbito nacional, los programas de ordenador queden fuera del ámbito de lo patentable, como están ahora según el artículo 52.2 de la Convención Europea de Patentes y la Ley 11/1986, de 20 de marzo, por la que se aprueba la Ley de Patentes de invención y modelos de utilidad.
El pleno del Parlamento Europeo de esta mañana, en el que se ha votado el proyecto de directiva sobre patentes, ha sido una buena muestra del mal momento que vive la construcción europea. Lo que los eurodiputados han votado hoy es el informe del francés Michel Rocard sobre la posición común adoptada por los 25 respecto a este tema. El eurodiputado proponía la aprobación de 21 enmiendas que modificaban el fondo de la norma o su rechazo total, opción que finalmente ha salido victoriosa.
La directiva ha sido rechazada por una mayoría aplastante de 648 votos a favor de la moción de rechazo, 14 en contra y 18 abstenciones.
Mientras se acumulan las manifestaciones de júbilo en barrapunto y en slashdot, hay quien piensa que habría sido mejor que la directiva hubiera sido aprobada con las 21 enmiendas (que excluían al software de las patentes) porque evitarían nuevas tentativas en el futuro; aunque también hay quien piensa justamente lo contrario, que después de este masivo rechazo, la comisión no hará una nueva propuesta de patentes de software.
En fin, hoy es un gran día para todos aquellos que creemos que el software, al igual que las ideas o el aire, no puede ser patentable.