15 de Agosto de 2022, 23:12:22

Autor Tema: Ayuda con Javascript  (Leído 2961 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Amkier

  • Un oasis de calma y tranquilidad.
  • Veterano
  • Conde(sa)
  • *****
  • Mensajes: 631
  • Para el que no lo sepa soy ParisDeTroya *.*
  • Ally: Eternal
  • Clan: Storm Raiders
  • Equipo: Major Arcana Robe.
  • Nivel: 99
  • Prof: Webmaster
  • Subclases: Diseñador Grafico
Ayuda con Javascript
« en: 05 de Diciembre de 2012, 00:58:44 »
Hola a todos!

Pues básicamente lo que necesito hacer es cambiar una clave en mi sitio llamada "autoop"
Esta clave me da acceso de moderador si efectivamente estoy logueado en el servicio.

Código: [Seleccionar]
<script type="text/javascript">var tinychat = { room: "taringcam", autoop: "AQUIESTALOQUEDEBOCAMBIAR", colorbk: "0xffffff", join: "auto", api: "list"};</script><script src="http://tinychat.com/js/embed.js"></script>
Lo que debo hacer es cambiar precisamente el valor de: autoop: "AQUIESTALOQUEDEBOCAMBIAR" por el autoop de el sitio http://es.tinychat.com/taringcam que suele cambiar periódicamente y que es distinto dependiendo el usuario.

Entonces necesito alguna herramienta para que revise la otra web, busque el valor de autoop y lo coloque en el script de forma dinámica ya que es uno para cada uno y es uno cada cierto tiempo.

En caso de ir a la web y no encontrar clave autoop que devuelva un mensaje de error.

Yo encontré algo que se supone cumple esta función pero sin embargo no he conseguido utilizarlo:

Código: [Seleccionar]
javascript:(function(){
    if (window.location.host != "tinychat.com") {
        alert('Redirecting you to tinychat to get needed information.\nPlease hit the bookmarklet again once the page is loaded.');
        window.location = "tinychatroomurl";
    } else {
        if(document.body.innerHTML.search("autoop") > 0 && document.body.innerHTML.search("avatarhash") > 0 && document.body.innerHTML.search("account:")) {
            var autoop = document.body.innerHTML.substr(document.body.innerHTML.search("autoop")+9,32);
            var avatarhash = document.body.innerHTML.substr(document.body.innerHTML.search("avatarhash")+13,32);
            var account = document.body.innerHTML.substr(document.body.innerHTML.search("account:")+10,30);
                account = account.substr(0,account.search("avatarhash:")-3);
            alert('Thanks, Redirecting you back to roomname');
           window.location = "embedurl?autoop=" + autoop +"&avatarhash=" + avatarhash + "&account=" + account;
        } else {
            alert('You are either not a moderator of this room or you are not logged in.');
        }
    }
})();

Gracias por cualquier ayuda que me puedan brindar.

Desconectado Amkier

  • Un oasis de calma y tranquilidad.
  • Veterano
  • Conde(sa)
  • *****
  • Mensajes: 631
  • Para el que no lo sepa soy ParisDeTroya *.*
  • Ally: Eternal
  • Clan: Storm Raiders
  • Equipo: Major Arcana Robe.
  • Nivel: 99
  • Prof: Webmaster
  • Subclases: Diseñador Grafico
Re:Ayuda con Javascript
« Respuesta #1 en: 07 de Diciembre de 2012, 12:24:51 »
Al final conseguí hacerlo con cURL :)

Solo tenia que cargar la web por cURL buscar la funcion darle un get convertir el resultado a una nueva variable ($autoop) y cambiar mi campo en el script en lugar del hash del autoop la variable ahora $autoop, meterlo en un frame y hacer que se cargue luego de 3 segundos para que curl tenga tiempo super de sobra para hacer eso y mientras una gif de cargando u swf, aun no decido xD