I’m trying to read my most recent post from my blog into my flash movie. It seems to work, but sometimes it’s delayed, and sometimes it doesn’t load at all. Here is my code. If someone can take a look and give me some direction I would be very helpful.
P.S. I’m kind of a newbie to flash still, so my code is probably very messy/inefficient, if anybody has any tips overall, that would be great!
//this will contain all the event details from the xml file
var titleArray:Array = new Array();
var linkArray:Array = new Array();
var descriptArray:Array = new Array();
var dateArray:Array = new Array();
var rssTotal:Number;
//create the XML object and populate with event details
var rssXML:XML = new XML();
rssXML.ignoreWhite = true;
var rssRootNode:XMLNode;
rssXML.onLoad = function(success:Boolean) {
if (success) {
rssRootNode = this.firstChild.firstChild;
rssTotal = rssRootNode.childNodes.length;
titleArray.push(rssRootNode.childNodes[6].childNodes[0].firstChild.nodeValue);
linkArray.push(rssRootNode.childNodes[6].childNodes[1].firstChild.nodeValue);
dateArray.push(rssRootNode.childNodes[6].childNodes[3].firstChild.nodeValue);
descriptArray.push(rssRootNode.childNodes[6].childNodes[7].firstChild.nodeValue);
populateBlog();
} else {
trace("error loading xml file");
}
};
rssXML.load("http://mav-media.com/blog/?feed=rss2");
function populateBlog():Void {
oldString = dateArray[0];
oldString = oldString.split("2008")[0];
content_mc.body_mc.blog_mc.title_txt.htmlText = "<b>"+titleArray[0]+"</b>";
content_mc.body_mc.blog_mc.desc_txt.htmlText = descriptArray[0].truncate(340);
content_mc.body_mc.blog_mc.date_txt.htmlText = "<b>"+oldString+" 2008</b>";
}
content_mc.body_mc.preloader_mc.onEnterFrame = function() {
content_mc.body_mc.blog_mc._alpha = 0;
var todo:Number = rssXML.getBytesTotal();
var done:Number = rssXML.getBytesLoaded();
if (todo == done) {
trace("XML LOADED");
TweenFilterLite.to(content_mc.body_mc.blog_mc,.3,{_alpha:100});
delete this.onEnterFrame;
this._visible = false;
} else {
if (todo) {
content_mc.body_mc.preloader_mc.mask_mc._xscale = (Math.round(100/todo*done));
trace(content_mc.body_mc.preloader_mc.mask_mc._xscale);
}
}
};