Hola Ogig.
Pero he de decir que no me gusta nada esa colección enorme de funciones y todas hacen casi lo mismo. Hay que buscar el mínimo denominador común.
Sí, de eso me di cuenta desde el principio, pero me movía en el dilema de hacerlo todo superconciso, o permitir que personas con conocimientos no muy avanzados de Javascript (como yo) pudiesen identificar y aislar sin demasiada dificultad funciones específicas que necesitasen. De hecho al principio me lo plantee de forma que cada función fuese independiente y autosuficiente respecto a las demás (salvando las necesarias funciones 'requested', claro).
Pero bueno, como ya tenemos versiones para todos los gustos, y creo que inteligibles para cualquier nivel de conocimientos JS, creo que no hay problema en avanzar, y a mí me vendrá bien para ir aprendiendo más.
Voy a estudiar tu fiddle (por cierto, chapó por ese conversor), y a ver qué me sale.
Eso sí, el problema que veo ahora es que un usuario final no podría usar una divisa que no esté listada en BtcConv.currencies. Antes eso no importaba, siempre que el usuario introdujese la cotización del BTC respecto a esa divisa.
Sobre el tema que habláis de usar la api de mtgox o blockchain, es perfectamente posible, pero no desde el código del cliente. En principio los navegadores usan la "Same Origin Policy" y no te dejan cargar datos vía JS que no sean del servidor que sirvió el script. (hay excepciones y truquitos como websockets y webrtc, pero bueno). Lo mejor es hacer en el server un llamada cada X tiempo a blockchain.info y servir esos datos al cliente desde nuestro propio server.
Sí, eso he leído. En el post #12 dejé una referencia a un hilo en el que hablan sobre ello, y facilitan un script PHP que se encarga de hacer esas llamadas periódicas y almacenarlas en una base de datos o archivo.
El problema que se me plantea con esas llamadas cada cierto tiempo es el siguiente: Si voy a hacer un conversor entiendo que el usuario busca exactitud en los datos que le voy a facilitar. Y si el resultado se basa en datos que fueron leídos 50 minutos antes, pues no es muy exacto ¿no? (pueden haber cambiado mucho las cosas en 50 minutos). Para mostrar información sobre la cotización en una página entiendo que se haga así. Pero para un conversor del que el usuario espera la máxima exactitud posible la verdad es que me choca un poco hacerlo así. Buff, no sé. Estoy más liado que la pata de un romano.
Por otro lado está el tema de si leer los datos de Mt.Gox (es lo que pide mucha gente) o leer los de Blockchain (como sugirió an0therlr3) que se supone que son valores ponderados de entre distintos exchanges (aunque no sé de qué exchages se trata exactamente). Quizás la mejor opción sería que el propio usuario seleccionase qué datos usar para la conversión.
Suelo estar en #bitcoin-es en freenode así que pásate/pasaros por ahí para hablar en profundidad cualquier tema.
Perfecto, lo tengo en cuenta. Muchas zenkius.