// JavaScript Document
supporters = {
	embedHeadlines : function(){
		var arr = $$('.dedication');
		if(arr.length>0){
			for(h=0;h<arr.length;h++){
				var flashvars = {htmlContent: encodeURIComponent(supporters.cleanHTML(arr[h]))};
				var params = {wmode:"opaque", menu:"false"};
				var attributes = {styleclass:"dedication"};
				swfobject.embedSWF("flash/supporter.swf", arr[h].identify(), arr[h].getStyle('width'), arr[h].getStyle('height'), "8","expressInstall.swf", flashvars, params, attributes);
			}
		}	
	},
	cleanHTML : function(node) {
		var nodeNamesWeIgnore = "accessKey|coords|noWrap|dataFormatAs|disabled|dataSrc|object|dataFld|language|compact|contentEditable|inherit|tabIndex|align|clear|shape|charset|urn|rel|rev|dir|css";
		var result = "";
		switch (node.nodeType) {
		  case 3:
			var textValue = node.nodeValue;
			textValue = textValue.replace(/\t/g, "");
			textValue = textValue.replace(/\n/g, "");
			textValue = textValue.replace(/\r/g, "");
			result += textValue;
			break;
		  case 1:
			result += "<" + node.nodeName.toLowerCase();
			if (node.attributes != null) {
				if (node.attributes.length > 0) {
					for (var i = 0; i < node.attributes.length; i++) {
						var nodeName = node.attributes.item(i).nodeName;
						if (node.attributes.item(i).value != "null" &&
							nodeNamesWeIgnore.indexOf(nodeName) == -1) {
							result += " " + node.attributes.item(i).nodeName;
							result += "=\"";
							result += node.attributes.item(i).value + "\"";
						}
					}
				}
			}
			if (node.childNodes != null) {
				if (node.childNodes.length > 0) {
					result += ">";
					for (var j = 0; j < node.childNodes.length; j++) {
						result += supporters.cleanHTML(node.childNodes[j]);
					}
					result += "</" + node.nodeName.toLowerCase() + ">";
				} else {
					result += "/>";
				}
			}
			break;
		  default:;
		}
		return result;
	}
}
Event.observe(window, 'load', function(){
	supporters.embedHeadlines();
});