// Henter filmene
loadMovie("baggrund.swf", _root.baggrund);
loadMovie("menu.swf", _root._menu);
//Loader XML til leksikon
leksXML = new XML();
leksXML.ignoreWhite = true;
leksXML.load("indhold.xml");
// Tekst loader (Virker!)----------------------------------------------------
// Jeg er nød til at loade teksten ind i tekstboksen for at formattere...
// Man kalder på denne funktion når man vil ha' tekst
// F.eks. _root.load_tekst("myter", "tekst1", this.myter.tekst);
// Der er desværre ingen anden workaround...
// (LoadVariables er simpelthen ikke funktionel nok, må bruge LoadVars class'en)
// Husk desuden at der SKAL være space rundt om ordene -> Ellers kan den ikke finde dem.
// (Den splitter det op ved mellemrum, hvis der ikke er mellemrum, læser den f.eks.
// <br>Thor, istedet for bare Thor)
function load_tekst(filnavn, kilde, path) {
// Så går vi igang... Med den hårde opgave at finde ord :(
// Det er skide irriterende at Flash ikke har en replace() funktion.
var tekst_handler = new LoadVars();
tekst_handler.onLoad = function() {
// Finder informationen i XML filen
XMLfix();
i = 0;
while (leksXML.childNodes[i]) {
if (leksXML.childNodes[i].nodeName == "ord") {
leksNode = leksXML.childNodes[i];
}
i++;
}
var temp = this[kilde];
var temp2 = "";
var split_array:Array = temp.split(" ");
for (var i = 0; i<split_array.length; i++) {
found = "";
z = 0;
while (leksNode.childNodes[z]) {
if (leksNode.childNodes[z].childNodes[1].childNodes[0].nodeValue == split_array[i]) {
found = leksNode.childNodes[z].childNodes[0].childNodes[0].nodeValue;
}
z++;
}
if (found) {
temp2 += " <a href='asfunction:_root.pophelp,"+found+"'><u>"+split_array[i]+"</u></a>";
} else {
temp2 += " "+split_array[i];
}
}
path.condenseWhite = true;
path.htmlText = temp2;
};
tekst_handler.load(filnavn);
}
load_tekst("test.txt", "tekst", this.test2.tekst);
test2._x = 50;
test2._y = 150;
// En bugfix (UPS... Men gider ikke rette hele koden, gør dette istedetfor)
function XMLfix() {
if (!isfixed) {
leksXML = leksXML.childNodes[0];
}
isfixed = 1;
}
// Kald den således:
// <a href="asfunction:_root.pophelp,[ID];"></a>
function pophelp(id) {
// Finder informationen i XML filen
XMLfix();
i = 0;
while (leksXML.childNodes[i]) {
if (leksXML.childNodes[i].nodeName == "ord") {
leksNode = leksXML.childNodes[i];
}
i++;
}
i = 0;
while (leksNode.childNodes[i]) {
if (leksNode.childNodes[i].childNodes[0].childNodes[0].nodeValue == id) {
this.pophelpbox.titel = "Leksikon: <b>"+leksNode.childNodes[i].childNodes[1].childNodes[0].nodeValue+"</b>";
this.pophelpbox.tekst = leksNode.childNodes[i].childNodes[3].childNodes[0].nodeValue;
}
i++;
}
// Tjekker lige om den går ud over skærmen, og sørger for at den ikke går ud over
// Er testet, og virker (Damn i'm good :o)
var xmouse = _xmouse;
var ymouse = _ymouse;
if ((xmouse+this.pophelpbox._width)>800) {
xmouse = xmouse-((xmouse+this.pophelpbox._width)-800+5);
}
if ((ymouse+this.pophelpbox._height)>600) {
ymouse = ymouse-((ymouse+this.pophelpbox._height)-600+8);
}
pophelpbox._x = xmouse;
pophelpbox._y = ymouse;
}
//Leksikon =)
//Det hele er programmeret -> Kun tekstbokse er krævet i leksikon boksen.
function leksikon(kategori) {
XMLfix();
i = 0;
while (leksXML.childNodes[i]) {
if (leksXML.childNodes[i].nodeName == "ord") {
leksNode = leksXML.childNodes[i];
}
i++;
}
//SLET MIG
test2.unloadMovie();
//SLUT SLET MIG
leksikonbox._x = 50;
leksikonbox._y = 150;
leksikonbox.tekst = "";
leksikon_liste(kategori);
}
// Skriver listen, og kategorien
function leksikon_liste(kategori) {
leksikonbox.liste = "";
leksikonbox.kategori = "Vælg en kategori";
i = 0;
while (leksXML.childNodes[i]) {
if (leksXML.childNodes[i].nodeName == "kategori") {
katNode = leksXML.childNodes[i];
}
i++;
}
i = 0;
while (katNode.childNodes[i]) {
katName = katNode.childNodes[i].nodeName;
leksikonbox.liste += "<b><a href='asfunction:_root.leksikon_liste,"+katName+"'> + "+katNode.childNodes[i].childNodes[0].nodeValue+"</a></b><br>";
z = 0;
s = 1;
while (leksNode.childNodes[z]) {
if (leksNode.childNodes[z].childNodes[2].childNodes[0].nodeValue == katName && katName == kategori) {
if (s) {
leksikonbox.kategori = "<b>Kategori: </b>"+katNode.childNodes[i].childNodes[0].nodeValue;
s = 0;
}
leksikonbox.liste += "<a href='asfunction:_root.leksikon_tekst,"+leksNode.childNodes[z].childNodes[0].childNodes[0].nodeValue+"'>- "+leksNode.childNodes[z].childNodes[1].childNodes[0].nodeValue+"</a><br>";
}
z++;
}
i++;
}
}
function leksikon_tekst(id) {
i = 0;
while (leksNode.childNodes[i]) {
if (leksNode.childNodes[i].childNodes[0].childNodes[0].nodeValue == id) {
leksikonbox.tekst = "<b>"+leksNode.childNodes[i].childNodes[1].childNodes[0].nodeValue+"</b><br>";
leksikonbox.tekst += leksNode.childNodes[i].childNodes[3].childNodes[0].nodeValue;
}
i++;
}
}