Ahoj.
Zacal som sa hrat s XUL a tak som v tom zacal robit projekt ktory potrebujem, totiz kolaborativny todo list (proste todo list pre viac uzivatelov). Cize aj sa naucim XUL aj spravim to co mi treba. Ak uz nahodou take nieco exituje tak nevadi, ja si potrebujem spravit svoje.
Uz je to takmer hotove, v podstate jedine co mi chyba je pridavanie novych uloh. T.j. v xul komponentoch si nieco ponastavujem, do textu napisem popis ulohy a kliknem na tlacitko uloz. V tomto bode neviem ako dalej.
Screenshot:
Vo finale by to mala byt asi takato zostava:
databaza postgres (100% hotove)
nejake cgi skripty (90% hotove)
xul stranky (chyba uz len to pridavanie)
Aby ste to mohli vyskusat aj bez databazy a cgi skriptov tak som tie rdf datasource spravil ako staticke subory, mozete to normalne otvorit vo firefoxe z disku, mne to funguje (napr: firefox main.xul).
Stiahnut si to mozete tu: http://senzory.ahoj.sk/todo-2.0-demo.tar.gz (ma to 3kB)
Vopred vdaka za vase reakcie.
Pomoze mi niekto s vyvojom kolaborativneho todo listu?
Malym nahliadnutim do zdrojakov som zistil, ze offline verzia nemoze samozrejme nikdy fungovat, pretoze Vy mate online datove zdroje, teda rdf subory generujete na servery. Pokial by ste chceli zachovat tuto architekturu, tak novu ulohu budete pravdepodobne pridavat pomocou XMLHttpRequest(technika Ajax), teda normalny getovym dotazom na server. Pre zaciatok doporucujem zacat pouzivat velmi uzitocnu kniznicu http://jslib.mozdev.org/(neviem ci je uz aj pre firefox 2.0, ale bez problemov ju po potlaceni kompatibility pouzivam aj v 2.0) No a po uspesnom ukonceni dotazu, by ste mali obnovit vsetky komponenty, ktore sa generuju z online datovych zdrojov a to prikazom rebuild alebo refresh na prislusnom builderi toho prvku. Specialne pre ten strom Vam doporucujem si velmi dobre prestudovat tuto stranku, pretoze spravanie jednotlivych typov stromov sa velmi lisia. http://www.xulplanet.com/references/ele ... _tree.html Dalej by som doporucoval si prestudovat tento tutorial http://xulplanet.com/tutorials/xultu/ najma kapitolu o rdf.
K tomu projektu.. osobne by som zvolil troska inu cestu. A to taku, ze by som komunikoval so serverom pomocou Ajaxu a pridaval si prijate data do svojho lokalneho datoveho zdroja(rdf), opat velmi pomoze kniznica jslib.
Tiez by som doporucil preskumat stranky http://developer.mozilla.org/en/docs/Main_Page
No a keby nastal nejaky problem, tak samozrejme pomoze http://www.google.com alebo hladanie v zdrojakoch, ci uz pomocou googlu alebo pomocou http://lxr.mozilla.org
Uviedol som iba niekolko najdolezitejsich odkazov. Pokial by ste mali zaujem ste o nejake stranky k tejto tematike, pozrite sa na http://www.czilla.cz/mozcestnik/?sect=12
K tomu projektu.. osobne by som zvolil troska inu cestu. A to taku, ze by som komunikoval so serverom pomocou Ajaxu a pridaval si prijate data do svojho lokalneho datoveho zdroja(rdf), opat velmi pomoze kniznica jslib.
Tiez by som doporucil preskumat stranky http://developer.mozilla.org/en/docs/Main_Page
No a keby nastal nejaky problem, tak samozrejme pomoze http://www.google.com alebo hladanie v zdrojakoch, ci uz pomocou googlu alebo pomocou http://lxr.mozilla.org
Uviedol som iba niekolko najdolezitejsich odkazov. Pokial by ste mali zaujem ste o nejake stranky k tejto tematike, pozrite sa na http://www.czilla.cz/mozcestnik/?sect=12
Kód: Vybrať všetko
function ulohaNova()
{
var r = new XMLHttpRequest();
r.onreadystatechange = function()
{
if (r.readyState == 4)
{
}
}
// na nasledujucom prikaze to padne
r.open("POST","http://localhost/cgi-bin/uloz.cgi",true);
r.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
r.send('n_nazov=toto_je_nazov&n_popis=toto_je_popis');
}
Mno handler r.onreadystatechange musite nastavovat az po zavolani r.open, pretoze r.open zmaze vsetky nastavene handleri.
Vami opisovana chyba nastala podla mojho nazoru z dovodu bezpecnostnych obmedzeni. Ten xul mate ako rozsirenie, ako "remote xul"(webova stranka v xule) alebo ho mate namapovane v aplikacii ako rozsirenie(adresar so subormi, kt. sa tvari ako nainstalovane rozsirenie - vhodne pre vyvoj)? Ako mate v xule vlozeny ten js kod? Z lokalneho suboru, zo servera na localhoste alebo priamo v xule?
Vami opisovana chyba nastala podla mojho nazoru z dovodu bezpecnostnych obmedzeni. Ten xul mate ako rozsirenie, ako "remote xul"(webova stranka v xule) alebo ho mate namapovane v aplikacii ako rozsirenie(adresar so subormi, kt. sa tvari ako nainstalovane rozsirenie - vhodne pre vyvoj)? Ako mate v xule vlozeny ten js kod? Z lokalneho suboru, zo servera na localhoste alebo priamo v xule?