Archive

Archive for November, 2006

ExportPlugin casi apunto

November 19th, 2006 No comments

Alex ha hecho un gran trabajo modificando la interfície del Export y acabando todo el tema del server-side en PHP.

El webserbvice y el javascript están listos. Ahora sólo queda el párser de Dídac, ya que la versión que teníamos de éste no funcionaba correctamente.

Una vez lo modifique, la release del Export Plugin para tiddlywiki será un hecho.
¡Bien!

Categories: exportdfwiki, pdf, tiddlywiki Tags:

Cielo Holandés

November 19th, 2006 No comments


Era así y de muchos otros colores.
Difícil de olvidar.

Categories: amsterdam, viajes Tags:

Pequeño Respiro

November 15th, 2006 1 comment

Vuelvo el Domingo.
Me voy a Amsterdam :)

Categories: vacaciones Tags:

Limitaciones de AJAX

November 15th, 2006 2 comments

Todo lo que escribí ayer en el post sobre AJAX SÓLO funciona si trabajamos localmente.

AJAX no puede trabajar con servidores externos a menos que estemos trabajando de manera local. Ludo ha sido quien me ha advertido sobre ésto. Gracias!

Así que para exportar contenidos de una tiddly ésta tendrá que descargarse primero y luego exportar los datos al servidor local.

Mientrastanto, ya he acabo la parte de AJAX y de la Tiddly de nuestro ExportPlugin. Ahora queda la parte de PHP dentro del server de Moodle.

Categories: ajax, exportdfwiki, pfc Tags:

POSTeando con AJAX

November 14th, 2006 1 comment

He implementado las funciones del objeto XMLHttpRequest en nuestro Export plugin des de “casi” cero porque:

(1) Tenemos que pasar la información a exportar por POST ya que por GET no cabría (los tiddlers pueden ser enormes).
(2) La información irá a una URL externa.
(EDIT 15-11-06: ATENCIÓN, trabajar con una URL externa en AJAX sólo es posible si trabajamos con una página que esté guardada localmente. Si metemos la página en un server tendremos problemas de seguridad!).
(3) El Exportplugin original no tiene funciones AJAX implementadas.
(4) Así aprovechamos para aprender un poquito más de esta cosa tan “virguera” que es el AJAX ;)

Voy a explicar un poco cómo me lo he montado y los problemas que he tenido.

Empecemos con las implementaciones que hicimos para wikibook, con el ya típico:

function GetXmlHttpObject()
{
var objXMLHttp=null;
if (window.XMLHttpRequest)
{
objXMLHttp=new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
objXMLHttp=new ActiveXObject(“Microsoft.XMLHTTP”);
}
return objXMLHttp;
}

Ahora ya podremos crear el objecto XMLHttpRequest sin problemas generados por nuestro querido amigo El Micro$oft.

Pero lo queremos pasar por POST. Y además hacia una URL externa. Allá vamos.

Creamos nuestro objeto XMLHttpRequest y le asociamos la función que queremos que haga. En nuestro caso, la función la llamamos stateExportToMoodle:

xmlHttp=GetXmlHttpObject();
xmlHttp.onreadystatechange=stateExportToMoodle;

Vayamos a tratar lo del tema de la URL externa. Deberemos tener en cuenta a los usuarios preocupados por su seguridad, privacidad y, en general, libertad (usuarios de navegadores tipo netscape), ya que a éstos navegadores se les tiene que decir, explícitamente, que el objeto XMLHttpRequest accederá de manera excepcional a una URL externa. Para el resto de usuarios, los del IE, no hace falta.

if (typeof(netscape)!=”undefined”) {
try { netscape.security.PrivilegeManager.enablePrivilege(“UniversalBrowserRead”);}
catch (e) { alert(e.description?e.description:e.toString()); }
}

Si el usuario no tiene permisos para dejar que el objecto XMLHttpRequest acceda a página externas saltará un bonito y toca huevos alert.

Ahora el tema del POST. Abriremos la conexión con nuestra url con el método POST:

xmlHttp.open(“POST”,url);

Y ahora viene la parte importante: debemos definir el Content type de nuestra cabecera del XMLHttpRequest, ya que sinó, la url que lo reciba no sabrá cómo tratarlo y no sabrá que contendrá datos en POST. Así que necesitamos lo siguiente:

xmlHttp.setRequestHeader(‘Content-Type’, ‘application/x-www-form-urlencoded’);

Ahora tan sólo queda enviar el objeto. Supongamos que queremos enviar el objeto con dos parámetros post: sel y wikiname. La cosa sería así:

xmlHttp.send(“sel=valorsel&wikiname=valorwikiname”);

Y ya está. Lo que hagáis con la función stateExportToMoodle ya será cosa vuestra. Yo, de momento, sólo la he usado para comprobar que, efectivamente, todo funciona perfectamente.

Los principales problemas que he tenido han sido:
- No tenía permisos para llamar a una URL externa. No sabía que debía solicitarlos.
- Añadir el campo de la cabecera del XMLHttpRequest para que la página de destino supiera reconocer los datos del POST.

Espero que os haya sido útil.
AJAX power!

Categories: ajax, exportdfwiki, pfc Tags:

Perfect!

November 14th, 2006 1 comment

Pata negra:

[youtube=http://www.youtube.com/watch?v=vxUxH27cFA8]

Categories: concerts, music, sargon Tags:

Interfaz del Exportplugin

November 13th, 2006 No comments

Entre Álex y yo hemos hecho una primera interfaz de nuestro nuevo Export. Hemos limpiado el código del original y le hemos añadido un par de opciones exclusivas para moodle y su wiki.

Hemos tenido problemas ya que había conflictos con los nombres de los elementos HTML del plugin original y el nuestro. Pero ya pasó.

El código a inserir a la wiki está hecho por el dfwikiteam, ahora sólo queda llamarlo correctamente y conectar con el plugin.

El tema de seguridad ya está implementado en el webservice, así que esto debería ser rápido.

Manos a la obra!

Categories: exportdfwiki, pfc Tags:

Tags HTML e Imports

November 13th, 2006 No comments

Didac ha hecho un buen trabajo con el parser. Ya ha traducido los tags html “” por los caracteres correctos. Finalmente la tiddly muestra los tags en HTML correctamente.

En una primera versión, un texto en negrita y cursiva (como éste) rebentaba, pero Didac es rápido, y ya lo ha solucionado.

Por último, para poder ver correctamente los tags HTML importados a una tiddlywiki, se necesita el plugin de HTML para la tiddlywiki. Se encuentra aquí.

Voy a contactar con Ludo.
Una nueva release está lista.

Categories: importdfwiki, pfc Tags:

Gracias

November 11th, 2006 3 comments

A todos los que estuvísteis ayer compartiendo una noche tan especial. Sargon os saluda y os lo debe todo.

Categories: concerts, music, sargon Tags:

Problemas importando

November 11th, 2006 No comments

Los tags en html no le gustan a nuestro querido plugin. Se los come. En un principio pensamos que era problema del parser de Didac, pero no es así. El parser saca los tags perfectamente, pero, una vez en el plugin “desaparecen”. Porque tienen que ser tratados.

Alex ha estado mirando info y ha encontrado el núcleo del problema (con su solución). Copio y pego:

El pluglin funciona de puta madre, lo que pasa eske peta porke lo ke nos parsea el dídac lo metemos en un string que luego la tiddly reconoce como html (de ahí los saca la funcion readItemsFromHTML), y en html los carácteres especiales como “<” petan, se han de codificar previamente de otra forma.

Ya verás, si en vez de tener en la página el tag pones va a petar igual, por eso petan todos los tags de la forma .

En cambio, si importas una página que haya sido editada con el “html editor” y no con el “dfwiki editor”, como en la base de datos de moodle está guardado como html puro y duro, los caracteres especiales ya estan substituidos (x ejemplo el “” como “&gt”) y la importación furula bien. Tengo una foto que lo demuestra

Así que volvemos a pasar el problema a Didac y seguimos con el export. De momento éste ha sido modificidao de tal manera que hace petar toda la tiddly. Pero nada, esto se arregla en breve!

Espero.

Categories: exportdfwiki, importdfwiki, pfc Tags: