/* Podcast.com: Kosso 2007 : Sys JS   */



//function urchinTracker(){



//}


// 00:37 18 Dec 05
// 00:35 06 Jan 06 - tidy up
// 15:10 08 Jan 06 - fix flickr bug and back function madness

window.onload=function(){

	if (document.getElementById('flashplayer') != null) {
		document.getElementById('flashplayer').currentHeight = 88;
	}

}


function goNifty(feedUrl,target){

	// This is triggered after a feed injection

	// Feed loaded
	// alert('loaded: '+feedUrl);
	
	if(target=='feed'){
		eraseCookie('kossrss');
		createCookie('kossrss',feedUrl,1);
	}

// removed a load of stuff here	

	return;


}

function checkCommentsForm(theForm) {
	var why = "";
	why += checkName(theForm.name.value);
	why += checkEmail(theForm.email.value);
	why += checkComment(theForm.comment.value);
		if (why != "") {
		alert(why);
		return false;
	}
	return true;

}

function checkName (strng) {
	var error = "";
	if (strng == "") {
		error = "Please enter your name.\n";
	}
	if (strng.length > 50) {
		error = "Wow! Long name! Could you please use a shortened version. Thanks.\n";
	}
	//var illegalChars = /\W/;
	// allow only letters, numbers, and underscores
	//if (illegalChars.test(strng)) {
	//	error = "The name entered contains illegal characters.\n";
	//} 
	return error;
}


function confirmBuddy()
{
	var agree=confirm('Are you sure you add this user as a buddy? \nThis will add a quick link to their homepage,\nfolders and playlist on your page.');
	if (agree)
		return true;
	else
		return false;
}


function confirmBuddyDelete()
{
	var agree=confirm('Are you sure you want to remove this buddy?');
	if (agree)
		return true;
	else
		return false;
}



function confirmDeleteFeed()
{
	var agree=confirm('Are you sure you wish to DELETE THIS FEED? \n ALL REFERENCES TO THIS FEED IN ANY USER FOLDERS \n WILL ALSO BE DELETED!!');
	if (agree)
		return true;
	else
		return false;
}


function checkComment(strng) {
	var error = "";
	if (strng == "") {
		error = "Please provide a comment.\n";
	}
	var illegalChars = /\`\^\{\}/;
	if (illegalChars.test(strng)) {
		error = "The comment entered contains illegal characters.\n";
	} 
	return error;
}


function checkEmail(strng) {
	var error = "";
	var emailFilter=/^.+@.+\..{2,3}$/;
	if (!(emailFilter.test(strng))) { 
		error = "Please enter a valid email address.\n";
	}
	var illegalChars= /[\(\)\<\>\,\;\:\\\/\"\[\]]/
	if (strng.match(illegalChars)) {
		error = "The email address contains illegal characters.\n";
	}

	return error;
}




function messageBlockStyle(){
	Rounded("div.blockmessage","tr tl","#FFF","#EEE");
}

function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

function chkLoadMessage(target) {

	if(!target) {
		return false;
	}
	
	if(!document.getElementById('loadMessage')) {
		document.getElementById(target).innerHTML = '<div id="loadMessage"></div>';
	}
	
	return true;
}


function feedMe(url,target,typ,flag,feedTitle,all) {
	
	adHit();
	
	if(target!='tagForm' && typ != 'search'){	
		// replace ALL ampersands with %26
		url = url.replace(/&/g,"%26");
		
		//url = url.replace(/|/g,"%26");
		//url = escape(url);
	
	}


	if(target=='feed' || target=='directory' || target=='contentcenter' ){	
		scroll(0,0);
	}

	var isFresh = '';

	if(typ=='fresh'){
	
		document.getElementById(target).innerHTML = '<center>&nbsp;<br /><img hspace=\"10\" align=\"top\" src=\"/images/starspin2.gif\"><br /><br /><br /><h2>finding most recently <br />updated items in this folder...<br /><span style=\"font-size:10px;\">please wait</span></h2></center>';

		isFresh = '&fresh=1';	

	}


	if(typ=='flickr' && target=='flickrbit'){
		
		//alert(target);
		var injectorScript = '/_service/inject_flickr_thumb.php';
		var fullUrl = injectorScript + '?tag=' + url;
		
	
	} else if(target=='feed'){
		//alert(target);

		//document.getElementById('movieplayer').innerHTML = "";

		var injectorScript = '/_service/inject_feeder.php';



		// add injector php script and append feed GET parameter	

			if(document.getElementById('showexplicit').checked){
				var xxx = '&showExplicit=true';
			} else {
				var xxx = '';			
			}

		//K rem	// Check for show enclosures only checkbox
		//	if(document.getElementById('showpodcheck').checked){

				//alert('enclosures only');
		//		var fullUrl = injectorScript + '?showEnc=true&inject=true&feedId=' + typ + xxx + isFresh + '&feed=' + url;


		//	} else {
				
				var fullUrl = injectorScript + '?inject=true&feedId=' + typ + xxx + '&feed=' + url;

		//	}
		
			if(all==1){
			
				fullUrl = fullUrl + '&viewAll=1';
			
			}

			if(typ=='fresh'){
				//document.getElementById(target).innerHTML = '<center>&nbsp;<br /><img hspace=\"10\" align=\"top\" src=\"/images/starspin2.gif\"><br /><br /><br /><h2>collecting fresh feeds...</h2></center>';
			} else {
				//document.getElementById(target).innerHTML = '<center>&nbsp;<br /><br /><br /><img hspace=\"10\" align=\"top\" src=\"/images/feedme.gif\"><br /><img hspace=\"6\" src=\"/images/loadbar_ora1.gif\"><br /><br /><h3>preparing feed...</h3></center>';
				
				chkLoadMessage(target);
				
				document.getElementById('loadMessage').innerHTML = '<h3><img align=\"absmiddle\" hspace=\"6\" src=\"/images/rss2.gif\"><img align=\"absmiddle\" hspace=\"10\" src=\"/images/loadbar_ora1.gif\">preparing feed &nbsp;<span style=\"font-size:10px;\">please wait</span></h3>';
			//	document.getElementById('loadMessage').style.border = 'solid 1px #ff9900';
			//	document.getElementById('loadMessage').style.background = '#ffbb00';
				document.getElementById('loadMessage').style.backgroundImage="url('/images/loadingbg2.gif')";
				document.getElementById('loadMessage').style.color = '#222';
				document.getElementById('loadMessage').style.padding = '5px';
			}
			
	
			
	

	
	} else if(target=='crumbs'){
		//alert(target);

		var injectorScript = '/_service/crumbs.php';
		// add injector php script and append feed GET parameter	
		if(typ){
			var fullUrl = injectorScript + '?node=' + typ;
		} else {
			var fullUrl = injectorScript + '?node=1';
		}
		//var fullUrl = injectorScript + '?feed=' + url;
		//var fullUrl = injectorScript;
		//document.getElementById(target).innerHTML = '<img hspace=\"6\" align=\"left\" src=\"/images/xml.gif\"><img hspace=\"6\" align=\"left\" src=\"/images/loadbar1.gif\"><br clear=\"all\" /><br /><h3>preparing feed...</h3>';
		
	} else if(target=='directory'){
	
		//alert(typ);
		// ##############################
		
		if(typ=='manager'){
		
			// dnd Manager

			//alert('manager');
			var fullUrl = url;
			
			//RMC: disabled 08-10-03
			//animResize('flashplayer','h',88,1);
			

		} else {		
		
			// typ = nodeId here
			
			
			document.getElementById(target).innerHTML = '<br clear=\"all\" /><img vspace=\"1\" hspace=\"5\" align=\"absmiddle\" src=\"/images/loadbar_red1.gif\"><b>loading folder...</b><br />' + document.getElementById(target).innerHTML;
			
			//RMC: disabled 08-10-03
			//animResize('flashplayer','h',360,88);
			
			var injectorScript = '/_service/opml_render1.php';
			if(typ){
				//alert('woo');
				var fullUrl = injectorScript + '?branch=' + typ + '&node=' +typ;
			} else {
				var fullUrl = injectorScript + '?branch=1';
				//alert('yo');
			}

			// the url param is used for the feed Id if this is linked form the pip page to 
			// display the subscribers and paths
			if(url!='tap'){
			
				if(typ){
					// url is feedUrl
					// updating directory after addtofolder
					// addFeedToFolder(feedUrl,nodeId,feedId,feedTitle)
					// feedMe(data,'directory',Id,fid,fTitle);
					
					// feedRefresh(feedUrl,feedId,feedTitle)
					// alert('ahoy!  :'+flag+' : '+feedTitle+' : '+url);
					// feedMe(url,'feed',flag,'',feedTitle);
					feedRefresh(url,flag,feedTitle)
					
					// i want feed url 
					
					
					
				} else {
					// url is feedId
					// LIST SUBSCRIBERS
					//alert('feed:'+url);
					var fullUrl = injectorScript + '?feedId=' + url;
				}
			}
			
			
			
			

			//alert(fullUrl);
		}

	
	} else if(target=='blogcalblock'){
		//alert(target);

		

		var injectorScript = '/_service/blogcalendar.php';
		// add injector php script and append feed GET parameter	
			

			var fullUrl = injectorScript + '?injected=1&idate=' + url + '&channelId=' + typ;
			//var fullUrl = injectorScript;
			
			//alert(fullUrl);


	} else if(target=='blogblock'){
		//alert(target);

		

		var injectorScript = '/inc/blog.php';
		// add injector php script and append feed GET parameter	

		var fullUrl = injectorScript + '?injected=1&idate=' + url + '&channelId=' + typ;
		//var fullUrl = injectorScript;
			
	
		//alert(fullUrl);

	} else if(url=='tagList'){

		var injectorScript = '/_service/tags.php';
		//alert(url);
		var fullUrl = injectorScript + '?tag=' + typ + '&offset=' + flag;
	
	} else if (target=='contentcenter'){
	
		if(typ != 'search'){
		
			chkLoadMessage(target);
			
			document.getElementById('loadMessage').innerHTML = '<h3 style=\"text-align:center;color:#5E5E76;\"><img hspace=\"6\" src=\"/images/loadbar_red1.gif\">loading page... &nbsp;<span class=\"smallFont\">please wait</span></h3>';
			//document.getElementById('loadMessage').style.border = 'solid 1px #CCCCFF';
			document.getElementById('loadMessage').style.background = '#C2DDFD';
		
			document.getElementById('loadMessage').style.backgroundImage="url('/images/loadingbgblu2.gif')";

			document.getElementById('loadMessage').style.color = '#222';
			document.getElementById('loadMessage').style.padding = '5px';	
		
		} else {
		
			//alert('search: '+url);
			
			
			document.getElementById('busy').src = '/images/busy_anim.gif';
			
			url = url.replace(/\|/g,"&");
		
		}
	
	
	
		var fullUrl = url;
	

	} else {
	
	
	

		//alert(url);

		var fullUrl = url;


	} 

	if(flag=='month'){

		//alert('oi');
		fullUrl = fullUrl + '&monthView=1';
		

	}

	if(typ=='manager'){
		// old wysiwyg text field stuff
		//initRTE("/images/postform/", "/includes/", "", true);

	}
	
	
	
	if(typ=='tag' || url == 'tagList'){
	
		chkLoadMessage(target);
		
		document.getElementById('loadMessage').innerHTML = '<h3 style=\"color:#5E5E76;\"><img align=\"absmiddle\" hspace=\"6\" src=\"/images/busy_anim.gif\"><img align=\"absmiddle\" hspace=\"6\" src=\"/images/tag.gif\">loading tagged feeds &nbsp;<span class=\"smallFont\">please wait</span></h3>';
		//document.getElementById('loadMessage').style.border = 'solid 1px #CCCCFF';
		document.getElementById('loadMessage').style.background = '#C2DDFD';
		
		document.getElementById('loadMessage').style.backgroundImage="url('/images/loadingbgblu2.gif')";

		document.getElementById('loadMessage').style.color = '#222';
		document.getElementById('loadMessage').style.padding = '5px';	
	
	
	
	}
	


	
	// native XMLHttpRequest object
	req = null;
	
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = function() {feedDone(target,url,typ,feedTitle,flag);};
		req.open("GET", fullUrl, true);
		req.send(null);
		// IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = function() {feedDone(target,url,typ,feedTitle,flag);};
			req.open("GET", fullUrl, true);
			req.send();
		}
	}
}    

function feedDone(target,url,typ,feedTitle,flag) {
	var results = "";
	//document.getElementById(target).innerHTML = "";
	// only if req is "loaded"

	if (req.readyState == 4) {

	//alert(feedTitle);

	// only if "OK"
		if (req.status == 200) {
			results = req.responseText;
			
			document.getElementById('busy').src = '/images/busy_trans.gif';
			
			document.getElementById(target).innerHTML = results;
			// Set the rounded corner styling
			if(target=='feed'){
				// set a feed cookie here

				createCookie('lastFeedId',typ,1);
				
				// google analytics
				urchinTracker("/show/" + typ );
				
				
				
				if(feedTitle!=undefined){
					document.title = feedTitle + ' @ podcast.com';
				} else {
				
				
					document.title = 'podcast.com';
				}

				goNifty(url,target);
			} else if(target=='directory'){
				// set a node cookie here

				createCookie('lastNodeId',typ,1);
				
				
				if(typ=='manager'){
				
					//alert('setupTree ' + flag);
					
					//setupTree(flag);
					if(flag!='flash'){
						treeObj = new JSDragDropTree();
						treeObj.setTreeId('dhtmlgoodies_tree2');
						treeObj.setMaximumDepth(14);
						treeObj.setMessageMaximumDepthReached('Maximum depth reached'); // If you want to show a message when maximum depth is reached, i.e. on drop.
						treeObj.initTree();
						//treeObj.expandAll();
						treeObj.showHideNode(false,'node'+ flag);
						
					}
	
					
				
				}
				
				
				urchinTracker("/branch/" + typ );

				//feedMe(url,'crumbs',typ);


			} else if(target=='branchman'){
				goNifty(url,target);
				document.getElementById('directoryblock').innerHTML = "DIRECTORY";
			} else if(target=='messageblock'){
				messageBlockStyle();

			} else if(target=='contentcenter'){


				document.title = 'podcast.com';

				//document.getElementById('stats').innerHTML = "";

				//initRTE("/images/postform/", "", "", true);


				// uses updated rte editor script richtext.js
				//if(typ=='manager'){
				//	document.getElementById('descriptionEditor').innerHTML = writePodText('theDescription', 'this is a test for the blog editor', 445, 200, true, false);
				//}
				
				
				if(typ=='editor'){
				
					// cant seem to get tinyMCE working yet
					//alert('edit');
					//tinyMCE.init({
					//mode : "textareas"
					//});

				
				} else {
				
					urchinTracker("/contentcenter/?url=" + url );
					
				}
				//goNifty(url,target);


			}

			
			if(target=='bigright'){

				// hmm madness
				if(typ==undefined){
					//alert('typ:'+typ);
					document.getElementById('crumbs').innerHTML = "<h2><a class='flickr' href=\'javascript:resetBigRight();\'> &lt;&lt; switch back to normal directory browsing mode </a></h2>";
				} else {

					//alert('yo:'+typ);
					//feedMe(url,'crumbs',typ);
					feedMe('tap','directory',typ);


				}
				//if(readCookie('lastNodeId')!=null){

					// feedMe('root','directory',readCookie('lastNodeId'));
					//alert(readCookie('lastNodeId'));
				//}

				//if(readCookie('lastFeedId')!=null){

				//	feedMe('root','directory',readCookie('lastNodeId'));

				//}


				urchinTracker("/bigright/?url=" + url );
				goNifty(url,target);


			}
			

			if(target=='blogblock'){


				urchinTracker("/blogblock/?url=" + url );
				goNifty(url,target);


			}

			if(target!='import'){	
				//scroll(0,0);
			}

		} else {

			// document.getElementById(target).innerHTML="error:\n" + req.statusText + "\n  - feed: "+ url;
			document.getElementById(target).innerHTML="There was an error collecting the feed from <br />"+ url;

			if(target!='import'){	
				//scroll(0,0);
			}
		}

		
	}
}

////////////
// dnd tree

//--------------------------------
// Save functions
//--------------------------------
var ajaxObjects = new Array();

// Use something like this if you want to save data by Ajax.
function saveMyTree()
{
	saveString = treeObj.getNodeOrders();
	var ajaxIndex = ajaxObjects.length;
	ajaxObjects[ajaxIndex] = new sack();
	var url = '/_service/saveNodes.php?saveString=' + saveString;
	ajaxObjects[ajaxIndex].requestFile = url;	// Specifying which file to get
	ajaxObjects[ajaxIndex].onCompletion = function() { saveComplete(ajaxIndex); } ;	// Specify function that will be executed after file has been found
	ajaxObjects[ajaxIndex].runAJAX();		// Execute AJAX function
}
function saveComplete(index)
{
	alert(ajaxObjects[index].response);
}

// Call this function if you want to save it by a form.
function saveMyTree_byForm()
{
	document.myForm.elements['saveString'].value = treeObj.getNodeOrders();
	document.myForm.submit();
}

function setupTree(nodeId){

	treeObj = new JSDragDropTree();
	treeObj.setTreeId('dhtmlgoodies_tree2');
	treeObj.setMaximumDepth(14);
	treeObj.setMessageMaximumDepthReached('Maximum depth reached'); // If you want to show a message when maximum depth is reached, i.e. on drop.
	treeObj.initTree();
	//treeObj.expandAll();
	treeObj.showHideNode(false,'node'+ nodeId);


}




// end dnd tree




function flickrMe(url,target) {
	
	// replace ALL ampersands with %26
	url = url.replace(/&/g,"%26");
		
	//alert(target);
	var injectorScript = '/_service/inject_flickr_thumb.php';
	var fullUrl = injectorScript + '?tag=' + url;
	
	// native XMLHttpRequest object
	req = null;
	
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = function() {flickrDone(target,url);};
		req.open("GET", fullUrl, true);
		req.send(null);
		// IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = function() {flickrDone(target,url);};
			req.open("GET", fullUrl, true);
			req.send();
		}
	}
}    

function flickrDone(target,url) {
	var results = "";
	if (req.readyState == 4) {
	// only if "OK"
		if (req.status == 200) {
			results = req.responseText;
			document.getElementById(target).innerHTML = results;
			// Set the rounded corner styling
			scroll(0,0);
		} else {
			// document.getElementById(target).innerHTML="error:\n" + req.statusText + "\n  - feed: "+ url;
			//document.getElementById(target).innerHTML="There was an error collecting the feed from <br />"+ url;
			scroll(0,0);
		}	
	}
}

///////////


// test
function clearMe(target) {
	document.getElementById(target).innerHTML = '.......cleared';
}


function closePlayer() {
	document.getElementById('movieplayer').innerHTML = '';
}

function closeAddFeed(id) {
	document.getElementById('import_' + id).innerHTML = '';
}



function closeMessage() {
	document.getElementById('messageblock').innerHTML = '';
}



function importOpml(url) {
	if(url!=""){

		opmlInclude(url,'directory');

	} else {

		alert('please enter the url to an OPML file full of RSS feeds');

	}

}


function importRss(url) {
	if(url!=""){

		urchinTracker("/import/?feed=" + url );
		
		feedMe(url,'feed');

	} else {

		alert('please enter the url to an RSS feed');

	}

}


function feedLocal(url, target, delay) {
scroll(0,0);
  document.getElementById(target).innerHTML = 'waiting...';
  if (window.XMLHttpRequest) {
    req = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    req = new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (req != undefined) {
    req.onreadystatechange = function() {feedLocalDone(url, target, delay);};
    req.open("GET", url, true);
    req.send("");
  }
}  

function feedLocalDone(url, target, delay) {
  if (req.readyState == 4) { // only if req is "loaded"
    if (req.status == 200) { // only if "OK"
      document.getElementById(target).innerHTML = req.responseText;
    } else {
      document.getElementById(target).innerHTML="ahah error:\n"+req.statusText;
    }
    if (delay != undefined) {
       setTimeout("feedLocal(url,target,delay)", delay); // resubmit after delay
	    //server should ALSO delay before responding
    }
  }
}


// OPML directory injection inclusion


function opmlInclude(url,target,include,notitle) {

	// target here is also the node id

	//scroll(0,0);
	// replace ALL ampersands with %26
	url = url.replace(/&/g,"%26");
	//url = escape(url);
	
	//if(target=='directory'){
	
		//alert(target);
		
		var injectorScript = '/_service/opml_render1.php';
		
		// var injectorScript = '/_service/opml_importer.php';
		// add injector php script and append feed GET parameter	

		//alert(target);

		var includeType = '';
		
			if(include){
				fullUrl = fullUrl + '&i=x';
				//document.getElementById(target).innerHTML = '<img align=\"left\" src=\"/images/opml1.gif\" /><img vspace=\"1\" hspace=\"1\" align=\"left\" src=\"/images/loadbar_red1.gif\">loading OPML for inclusion...';
				document.getElementById(target).innerHTML = document.getElementById(target).innerHTML + '<div style=\'margin:0px;padding:0px;border:1px solid #fff;\' id=\"opmlloader_'+target+'\"><br clear=\'left\' /><img vspace=\"1\" hspace=\"1\" align=\"left\" src=\"/images/loadbar_red1.gif\"><br clear=\'left\' /></div>';
				//document.getElementById(target).innerHTML = document.getElementById(target).innerHTML + '<div style=\'margin:1px;\' id=\"opmlloader_'+target+'\"><br clear=\'left\' /><img vspace=\"1\" hspace=\"1\" align=\"left\" src=\"/images/loadbar_red1.gif\"><br clear=\'left\' /></div>';

				

				if(include=='u'){
		
					includeType = '&includeType=u';			
					
				} else if(include=='i'){
				
					includeType = '&includeType=i';			
					
				
				} else if(include=='e'){
				
					includeType = '&includeType=e';	
				
				}

			} else {

				//document.getElementById(target).innerHTML = '<br clear=\"left\" /><img align=\"left\" src=\"/images/blanker.gif\" /><img align=\"left\" src=\"/images/blanker.gif\" /><img align=\"left\" src=\"/images/opml1.gif\" /><img vspace=\"4\" hspace=\"10\" align=\"left\" src=\"images/loadbar_red1.gif\"><br /><br /><br /><h4>Connecting to OPML directory tree</h4>';
				document.getElementById(target).innerHTML = '<br clear=\"left\" /><img align=\"left\" src=\"/images/opml1.gif\" /><img vspace=\"4\" hspace=\"1\" align=\"left\" src=\"images/loadbar_red1.gif\">';

			}
			
			if(notitle) {
				notitleStr = '&notitle=1';
			} else {
				notitleStr = '';
			}
			var fullUrl = injectorScript + '?roo=x&target=' + target + includeType + '&opmlurl=' + url + notitleStr;
			
			
		//feedMe(url,'crumbs',typ);
			
	
	//}

	
	// native XMLHttpRequest object
	oreq = null;
	
	if (window.XMLHttpRequest) {
		oreq = new XMLHttpRequest();
		oreq.onreadystatechange = function() {opmlDone(target,url);};
		oreq.open("GET", fullUrl, true);
		oreq.send(null);
		// IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		oreq = new ActiveXObject("Microsoft.XMLHTTP");
		if (oreq) {
			oreq.onreadystatechange = function() {opmlDone(target,url);};
			oreq.open("GET", fullUrl, true);
			oreq.send();
		}
	}
} 

function opmlDone(target,url) {
	var results = "";


//scroll(0,0);


	//document.getElementById(target).innerHTML = "";
	// only if req is "loaded"
	if (oreq.readyState == 4) {
	// only if "OK"
		if (oreq.status == 200) {
			results = oreq.responseText;
			if(target!='directory'){
				
				var incBlock = 'incblock_'+target;

				//document.getElementById(target).innerHTML = 'target' + document.getElementById(target).innerHTML;
	
				//document.getElementById('opmlloader_'+target).innerHTML = '<div state=\'open\' id=\'' + incBlock + '\'><br clear=\'left\' />'+results+'<br clear=\'left\' /></div>';

			//	document.getElementById('opmlloader_'+target).innerHTML = '<div state=\'open\' id=\'' + incBlock + '\'><a target=\'_blank\' class=\'plain\' href=\'' + url + '\'><img align=\'middle\' border=\'0\' hspace=\'2\' src=\'/images/opml_red.gif\' /> Imported OPML link</a><br />'+results+'<br clear=\'left\' /></div>';
	//document.getElementById('opmlloader_'+target).innerHTML = '<div style=\'border:1px solid #fff;\' state=\'open\' id=\'' + incBlock + '\'><br clear=\'all\' />'+results+'</div>'; // removed a br all here
	document.getElementById('opmlloader_'+target).innerHTML = '<div style=\'margin:1px;\' state=\'open\' id=\'' + incBlock + '\'><br clear=\'all\' />'+results+'</div>'; // removed a br all here
	
	
	//alert(results);

				//document.getElementById('opmlloader_'+target).innerHTML += results + '';
				
				document.getElementById('opml_inc_'+target).href = 'javascript:toggleInclusion(\'' + incBlock + '\');';
				
				//document.getElementById('opml_textinc_'+target).href = 'javascript:toggleInclusion(\'' + incBlock + '\');';
				

				document.getElementById('opml_image_'+target).src = '/images/folderopen.gif';

			// hike the page back up
			
				urchinTracker("/opmlInclusion/?url=" + url );
				


			} else {
			//alert('debug');
			document.getElementById(target).innerHTML = results;
			}
			// Set the rounded corner styling
			
			//if(target=='directory'){
			//	feedMe(url,'crumbs');
			//}

		} else {

			// document.getElementById(target).innerHTML="error:\n" + req.statusText + "\n  - feed: "+ url;
			document.getElementById(target).innerHTML="There was an error collecting the opml from <br />"+ url;
		}
	}
}




function toggleInclusion(theId){

//alert(theId);
var thisId = theId.substr(9);

	if(document.getElementById(theId).state == 'closed'){
		document.getElementById(theId).state = 'open';
		document.getElementById(theId).style.display='block';
		
		
		
		//alert(theId.substr(9));
		document.getElementById('opml_image_'+thisId).src='/images/folderopen.gif';

	} else {
		document.getElementById(theId).state = 'closed';
		document.getElementById(theId).style.display='none';
		
		//alert(thisId);
		document.getElementById('opml_image_'+thisId).src='/images/folderclosed.gif';

	}

}



// for uploder

function setField(theField,val,theType,theSize){
//alert(theType);
// This function is called by the Flash uploader on completion of the file upload - using getURL('javascript:setField(....)');

	document.getElementById(theField).value = val;

	document.getElementById('theEnclosureUrl').value = val;
	document.getElementById('theEnclosureType').value = theType;
	document.getElementById('theEnclosureLength').value = theSize;

	document.getElementById('enclosureDiv').innerHTML = '<div style=\"border:1px solid #eee;padding:5px;margin:5px;\"><strong>uploaded file enclosure:</strong><br />url : ' + val + '<br />type : ' + theType + '<br />size : ' + theSize + '<br clear=\"left\"/></div>';

}


function gogo(){


	alert(document.podBlogForm.theDescription.value);


}


function submitForm() {

	//alert("theTitle = " + document.podBlogForm.theTitle.value);
	//alert("theDescription = " + document.podBlogForm.theDescription.value);
	//alert("theEnclosure = " + document.podBlogForm.theEnclosureUrl.value + "\ntype = " + document.podBlogForm.theEnclosureType.value + "\nlength = " + document.podBlogForm.theEnclosureLength.value);

	if(document.podBlogForm.theTitle.value==''){
	
		alert('Please enter a title for this post');
		return false;
	}

	if(document.podBlogForm.theDescription.value==''){
	
		alert('Please enter some body text for this post\nThis is used as the item description');
		return false;
	}


	//change the following line to true to submit form
	return false;

}


//  
function delTag(tid,fid,tagText){
	var agree=confirm('are you sure you want to delete your tag ['+tagText+'] from this feed?');
	
	if (agree)
		//alert('ok!');
		postLink('/_service/tagManager.php','tagBox',tid, fid);
	
		

}


function addFeed(feedUrl,nodeId,feedId,feedTitle){
	var agree=confirm('Do you want to add \''+feedTitle+'\' your feed folders? \nAfter adding this feed you will be taken to your \nhome feed folder.');
	
	if (agree)
		//alert('ok!');
		addFeedToFolder(feedUrl,nodeId,feedId,feedTitle);
	
		

}



function addFeedToFolder(feedUrl,nodeId,feedId,feedTitle){

	if(feedUrl==''){
	
		alert('error - no feed!');
		return 0;
	
	}
	
	overlay('dim','overlay',0);
	

	var target = 'directory';
	document.getElementById(target).innerHTML = '<img hspace=\"6\" vspace=\"6\" src=\"/images/LOGO_spinner.gif\"><h2>adding feed to your root folder...</h2>' + document.getElementById(target).innerHTML;
	
	var url = '/_service/addFeed.php';

	var postParams = 'graft='+nodeId+'&url='+escape(feedUrl);

	
	// ###### native XMLHttpRequest object 
	req = null;	
	
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = function() {postLinkDone('directory',feedUrl,nodeId,feedId,feedTitle);};
		req.open("POST", url, true);
		req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
		req.send(postParams);

	// IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = function() {postLinkDone('directory',feedUrl,nodeId,feedId,feedTitle);};
			req.open("POST", url, true);
			req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 

			req.send(postParams);

		}
	}
	

}



function addFolder(folderId,folderTitle,curatorName){
	var agree=confirm('Do you want to add a link \nto '+curatorName+'\'s folder called \''+folderTitle+'\' to your directory? \nAfter adding this, you will be shown your folders.');
	
	if (agree)
		//alert('ok!');
		addFolderLink(folderId,folderTitle,curatorName);
		
}



function addFolderLink(folderId,folderTitle,curatorName){

	if(folderId==''){
	
		alert('error - no folder id!');
		return 0;
	
	}
	if(folderTitle==''){
		
		alert('error - no folder title!');
		return 0;
		
	}
	
	if(curatorName==''){
		
		alert('error - no curator name!');
		return 0;
		
	}
	
	overlay('dim','overlay',0);
	
	var target = 'directory';
	document.getElementById(target).innerHTML = '<img hspace=\"6\" vspace=\"6\" src=\"/images/LOGO_spinner.gif\"><h2>connecting folders...</h2>' + document.getElementById(target).innerHTML;
	
	var url = '/_service/addFolder.php';

	var postParams = 'folderId='+folderId+'&folderTitle='+escape(folderTitle);
	
	//alert(postParams);
	
	// ###### native XMLHttpRequest object 
	req = null;	
	
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = function() {addFolderLinkDone('directory',folderId,escape(folderTitle),curatorName);};
		req.open("POST", url, true);
		req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
		req.send(postParams);

	// IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = function() {addFolderLinkDone('directory',folderId,escape(folderTitle),curatorName);};
			req.open("POST", url, true);
			req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 

			req.send(postParams);

		}
	}	

}


function addFolderLinkDone(target,folderId,folderTitle,curatorName) {

	var results = "";
	//document.getElementById(target).innerHTML = "";
	// only if req is "loaded"

	if(req.readyState == 4)	{

		//
		if (req.status == 200) { 
			
			results = req.responseText;

			// results is the folder ID we sent to - ie the users root

			// alert("OK. folder added :" + results);

			overlay('undim','overlay',0);
								
			feedMe('tap','directory',results);
			
					
			
			
		} else {
		
		
			alert("add folder error!");
			overlay('undim','overlay',0);
		
		}
	
	}
	
}




function postLink(url,target,dat,fid) {


	
	if(target=='linkServiceReply'){

		var linkTitle = escape(document.getElementById('linkTitle').value);
		var linkUrl = escape(document.getElementById('linkUrl').value);
		var linkCatId = document.getElementById('linkCatId').value;
		var linkDesc = escape(document.getElementById('linkDesc').value);
		var setDate = document.getElementById('setDate').value;

		if(setDate!=''){
			setDate = '&setDate='+setDate;
		}
		
		//alert(escape(linkUrl));

		if(linkTitle==''){
			document.getElementById(target).innerHTML='<b>Error: Please enter a title for the link</b>';		
			return false;
		}

		if(linkDesc==''){
			document.getElementById(target).innerHTML='<b>Error: Please enter a description for the link</b>';		
			return false;
		}


		if(linkUrl.substring(0,4)!='http'){
			document.getElementById(target).innerHTML='<b>Error: Please enter a web URL to link to!</b>';		
			return false;
		}

		var postParams = 'action=add&linkTitle='+linkTitle+'&linkUrl='+linkUrl+'&linkCatId='+linkCatId+'&linkDesc='+linkDesc+setDate;

	} else if(target=='catselect'){

		var categoryName = document.getElementById('categoryName').value;
		if(categoryName==''){
			return false;
		}

		document.getElementById('linkCatId').disabled = true;

		//document.getElementById('categoryName').value = '';

		var postParams = 'categoryName=' + categoryName + '&action=add';

		if(dat=='edit'){
		
			var  postParams = 'categoryName=' + categoryName + '&action=edit&catId='+document.getElementById('linkCatId').value;

			//alert(document.getElementById('linkCatId').value);

		} 

	} else if(target=='feedbackReply'){

		var commentsType = escape(document.getElementById('commentsType').value);
		var commentsName = escape(document.getElementById('commentsName').value);
		var commentsEmail = document.getElementById('commentsEmail').value;
		var commentsText = escape(document.getElementById('commentsText').value);
		var podcastFeedUrl = escape(document.getElementById('podcastFeedUrl').value);
		var podcastSiteUrl = escape(document.getElementById('podcastSiteUrl').value);

		var feedbackCheck = escape(document.getElementById('feedbackCheck').value);
		
		if(feedbackCheck!='podcast'){
			document.getElementById(target).innerHTML='<b>Error: Please enter the security word</b>';		
			return false;

		}


				
		if(commentsName==''){
			scroll(0,0);
		
			document.getElementById(target).innerHTML='<b>Error: Please enter your name</b>';		
			return false;
		}

		if(commentsText==''){
		
			scroll(0,0);
		
			document.getElementById(target).innerHTML='<b>Error: Please enter some comments</b>';		
			return false;
		}

		if(podcastFeedUrl!=''){
			if(podcastFeedUrl.substring(0,4)!='http'){
				document.getElementById(target).innerHTML='<b>Error: Please enter an RSS feed URL - including http://</b>';		
				return false;
			}
		}

		if(podcastSiteUrl!=''){
			if(podcastSiteUrl.substring(0,4)!='http'){
				document.getElementById(target).innerHTML='<b>Error: Please enter your podcast site URL - including http://</b>';		
				return false;
			}
		}




		var postParams = 'checkOK=OK&commentsType='+commentsType+'&commentsName='+commentsName+'&commentsEmail='+commentsEmail+'&commentsText='+commentsText+'&podcastFeedUrl='+podcastFeedUrl+'&podcastSiteUrl='+podcastSiteUrl;

	} else if(target=='ChannelsFeedbackReply'){

		var EmailFrom = escape(document.getElementById('EmailFrom').value);
		var Name = escape(document.getElementById('Name').value);
		var Howheard = document.getElementById('Howheard').value;
		var Subject = escape(document.getElementById('Subject').value);
		var Message = escape(document.getElementById('Message').value);
				
		if(Message==''){
		
			scroll(0,0);
		
			document.getElementById(target).innerHTML='<b>Error: Please enter your message</b>';		
			return false;
		}

		var postParams = 'EmailFrom='+EmailFrom+'&Name='+Name+'&Howheard='+Howheard+'&Subject='+Subject+'&Message='+Message;

	} else if(target=='ChannelsInquiryReply'){

		var EmailFrom = escape(document.getElementById('EmailFrom').value);
		var Name = escape(document.getElementById('Name').value);
		var Company = document.getElementById('Company').value;
		var Title = escape(document.getElementById('Title').value);
		var Phone = escape(document.getElementById('Phone').value);
		var Message = escape(document.getElementById('Message').value);
		var podcastFeedUrl = escape(document.getElementById('podcastFeedUrl').value);
		var podcastSiteUrl = escape(document.getElementById('podcastSiteUrl').value);

		if(Name==''){
		
			scroll(0,0);
		
			document.getElementById(target).innerHTML='<b>Error: Please enter your name</b>';		
			return false;
		}
				
		if(EmailFrom==''){
		
			scroll(0,0);
		
			document.getElementById(target).innerHTML='<b>Error: Please enter your email address.</b>';		
			return false;
		}

		if(podcastSiteUrl==''){
			if(podcastSiteUrl.substring(0,4)!='http'){
				document.getElementById(target).innerHTML='<b>Error: Please enter your podcast site URL - including http://</b>';		
				return false;
			}
		}

		var postParams = 'EmailFrom='+EmailFrom+'&Name='+Name+'&Company='+Company+'&Title='+Title+'&Phone='+Phone+'&Message='+Message+'&podcastFeedUrl='+podcastFeedUrl+'&podcastSiteUrl='+podcastSiteUrl;

	} else if(target.substring(0,6)=='import'){
	
	

		
		//alert(target.substring(0,6));

		// OPML IMPORTER POST
		// add rss feed addition? testing
	
		var theUrl = escape(document.getElementById('url').value);
		var graft = escape(document.getElementById('graft').value);
		var folder = escape(document.getElementById('folder').value);
		
		//alert(theUrl);
		
		if(graft=='' || theUrl=='' || theUrl == 'http%3A//'){
			alert('Please enter a url');
			return false;
		}
		

		// i should add error checking here
	
		var postParams = 'data='+dat+'&folder='+folder+'&url='+theUrl+'&graft='+graft;


		if(dat=='opml'){

			//alert('importing opml!' + target);
			// IMPORTING OPML
			document.getElementById(target).innerHTML='';
			document.getElementById(target).innerHTML = 'importing opml <br clear=\"all\" /><img hspace=\"6\" align=\"left\" src=\"/images/loadbar_red1.gif\">';

			// return false;
			
			overlay('dim','overlay',0);
			
			// 

		} else if(dat=='rss'){
			// ADDING RSS FEED
			overlay('dim','overlay',0);
			
			document.getElementById(target).innerHTML='';
			document.getElementById(target).innerHTML = '<br clear=\"all\" /><h2>adding feed</h2><img hspace=\"6\" vspace=\"6\" align=\"left\" src=\"/images/LOGO_spinner.gif\">';
			
			

		} 


	
	} else if(target=='mypod'){
	
		// member adding feed from their home page
		
		var theUrl = escape(document.getElementById('myurl').value);
		// the folder id to add to - set to the members root nodeid
		var graft = escape(document.getElementById('mygraft').value);
		// this is blank for now
		var folder = escape(document.getElementById('myfolder').value);
		
		//alert(theUrl);
		
		if(graft=='' || theUrl=='' || theUrl == 'http%3A//'){
			alert('Please enter a url');
			return false;
		}
		

		// i should add error checking here
	
		var postParams = 'data='+dat+'&folder='+folder+'&url='+theUrl+'&graft='+graft;


		if(dat=='opml'){

			//alert('importing opml!' + target);
			// IMPORTING OPML
			document.getElementById(target).innerHTML='';
			document.getElementById(target).innerHTML = '<h2>importing OPML...</h2>';

			// return false;
			
			overlay('dim','overlay',0);
			
			// 

		} else if(dat=='rss'){
			// ADDING RSS FEED
			overlay('dim','overlay',0);
			
			document.getElementById(target).innerHTML='';
			document.getElementById(target).innerHTML = '<h2>adding RSS feed...</h2>';
			
			

		} 


	
	} else if(target=='tagForm'){

		var theFeedId = document.getElementById('fid').value;
		var graft = theFeedId;
		var theNewTags = document.getElementById('newTags').value;

		//alert(newTags);

		//var postParams = 'data='+dat+'&folder='+folder+'&url='+theUrl+'&graft='+graft;
		
		// postLink('/_service/tags.php','tagForm','tags')
		
		// url,target,dat
		
		
		var postParams = 'command=addTags&feedId='+theFeedId+'&newTags='+theNewTags;
		
		//alert(postParams);
		//alert(url);

	
	} else if(target=='tagBox'){
		// deleting tag

		
		var graft = fid;
		var postParams = 'command=delTag&feedId='+fid+'&tagId='+dat;
		
		//alert(postParams);
		//alert('del feedid:'+fid+', tagId:'+dat);

	
	} else if(target=='directory'){
		// deleting tag

		
		var graft = fid;
		var postParams = 'command=delTag&feedId='+fid+'&tagId='+dat;
		
		//alert(postParams);
		//alert('del feedid:'+fid+', tagId:'+dat);

	
	} else if(target=='pinger'){
		// pinging feed
		// 'pingService.php','pinger','http://feedurl'

		if(dat.substring(0,7)!='http://'){
		
			document.getElementById(target).innerHTML='please enter a url to an rss feed starting with http:// ';
			return;
		
		}
		
		if(dat=='http://'){
				
			document.getElementById(target).innerHTML='please enter the url to an rss feed';
			return;
				
		}

		
		if(document.getElementById("terms").checked) {

			var userId = document.getElementById("userId").value;
		
			var postParams = 'url='+dat+'&terms=1&userId='+userId;
		
			document.getElementById(target).innerHTML='';
			document.getElementById(target).innerHTML = '<img vspace=\"6\" hspace=\"6\" align=\"absmiddle\" src=\"/images/loadbar1.gif\"> pinging feed...';

			//alert(url);
		} else {
			document.getElementById(target).innerHTML='';
			
			url = '/_service/feedback_form_reply.php';
			target = 'pingerReply';

			var commentsType = 'Feed Submit';
			var commentsName = document.getElementById("userName").value;
			var commentsEmail = document.getElementById("userEmail").value;
			var commentsText = 'Request podcast be added.';
			var podcastFeedUrl = dat;
			var podcastSiteUrl = dat;


			var postParams = 'checkOK=OK&commentsType='+commentsType+'&commentsName='+commentsName+'&commentsEmail='+commentsEmail+'&commentsText='+commentsText+'&podcastFeedUrl='+podcastFeedUrl+'&podcastSiteUrl='+podcastSiteUrl;
		}
		

	
	}
	
	
	
	
	// ###### native XMLHttpRequest object 
	req = null;	

	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = function() {postLinkDone(target,dat,graft);};
		req.open("POST", url, true);
		req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
		req.send(postParams);

	// IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = function() {postLinkDone(target,dat,graft);};
			req.open("POST", url, true);
			req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
			
			req.send(postParams);
			
		}
	}


} 

function postLinkDone(target,data,Id,fId,fTitle) {




	var results = "";

	//document.getElementById(target).innerHTML = "";
	// only if req is "loaded"
	if(req.readyState == 1){
		
	
	
		if(target=='linkServiceReply'){
		
			document.getElementById(target).innerHTML='';
			document.getElementById(target).innerHTML = 'Loading...';
			
		} else if(target.substring(0,6)=='import'){
		
			//if(data=='opml'){
			//	alert('opml!' + target);
			//	document.getElementById(target).innerHTML='';
			//	document.getElementById(target).innerHTML = 'importing opml <br clear=\"all\" /><img hspace=\"6\" align=\"left\" src=\"/images/loadbar1.gif\">';
			//} else if(data=='rss'){
			//	document.getElementById(target).innerHTML='';
			//	document.getElementById(target).innerHTML = 'adding feed <br clear=\"all\" /><img hspace=\"6\" align=\"left\" src=\"/images/loadbar1.gif\">';
			//} 
			
			
			
		}
		
		if(target=='tagForm'){
		
			document.getElementById(target).innerHTML='';
			document.getElementById(target).innerHTML = 'adding tags <br clear=\"all\" /><img hspace=\"6\" align=\"left\" src=\"/images/loadbar1.gif\">';

				
		}
		
		
	}
	if(req.readyState == 4)	{
	
	//alert(fTitle);

		if (req.status == 200) { 
	
			results = req.responseText;
			
			document.getElementById(target).innerHTML='';
			//document.getElementById(target).innerHTML = results;

			if(target=='catselect'){
				document.getElementById('catadd').style.display='inline';
				//document.getElementById('categoryName').value='';
				document.getElementById('addcat').style.display='none';
			} else if (target=='linkServiceReply'){
				
				if(results!=0){
					document.getElementById('linkCatId').disabled = false;
					document.getElementById('linkTitle').value = '';
					document.getElementById('linkUrl').value = '';
					document.getElementById('linkDesc').value = '';
					document.getElementById('setDate').value = '';
				
					feedMe('/includes/cal2.php','movieplayer');
					//feedMe('/_service/link_form.php','contentcenter');								
				} else {
					document.getElementById('linkCatId').disabled = false;
					document.getElementById(target).innerHTML = "error : please try again";
				}
			} else if (target=='feedbackReply'){

				if(results!=0){
						
					document.getElementById('feedBackForm').innerHTML = "Thanks for your feedback. We appreciate your time helping us to make the system better!";

							
				} else {
					document.getElementById(target).innerHTML = "There was an error processing your comments";
				}
				
			} else if (target=='pingerReply'){

				if(results!=0){
						
					document.getElementById('pingerReply').innerHTML = "The podcast has been submitted. Please wait a day or two for the submission to be confirmed and posted. Thanks for your input!";

							
				} else {
					document.getElementById(target).innerHTML = "There was an error processing your feed submission. Please try again.";
				}
				
			} else if (target=='ChannelsFeedbackReply'){

				if(results!=0){
						
					document.getElementById('feedBackForm').innerHTML = "<p>Your message has been sent. Thank you for your feedback.</p>";

							
				} else {
					document.getElementById(target).innerHTML = "There was an error processing your comments";
				}

			} else if (target=='ChannelsInquiryReply'){

				if(results!=0){
						
					document.getElementById('feedBackForm').innerHTML = "<p>Your message has been sent. Thank you for your inquiry. A member of the Podcast.com team will contact you shortly.</p>";

							
				} else {
					document.getElementById(target).innerHTML = "There was an error processing your comments";
				}
				
			} else if(target.substring(0,6)=='import'){

				//alert('ok!');
				//if(data=='opml'){
					
					
					//alert('done! '+Id);
					
					alert('done! you will now be taken to the folder you imported in to');
					
					overlay('undim','overlay',0);
					
					feedMe('tap','directory',Id);
					
				//}
				// else rss
				//
				
			
			
			} else if(target=='mypod'){

				//alert('ok!');
				//if(data=='opml'){
					//alert('done! '+Id);
					
					document.getElementById('myurl').value = 'http://';
					
					//alert('done! lets reload your folder');
					overlay('undim','overlay',0);
					feedMe('tap','directory',Id);
					
				//}
				// else rss
				//
			
			
			}  else if(target=='tagForm' || target=='tagBox'){
				
				//alert('yay');
				feedMe('/_service/tags.php?fid='+Id,'tagBox');
							
			} else if(target=='directory' && Id!=''){
				//alert('yay');
				// refresh user root directory/folder 
				// after addFeedToFolder function
				
				//feedMe(data,'feed');
				
				//feedMePassThru(data,'feed');
				// KOZ
				// reload the folder - needs 'directory' and Id
				// Id = nodeId
				// this needs to pass over the feed details so it can load the feed after refreshing the folders 
				feedMe(data,'directory',Id,fId,fTitle);
				// target,data,Id,fId,fTitle
				
				
				// feedRefresh(data,fId,fTitle);
				
							
			} else if(target=='pinger'){
				
				document.getElementById(target).innerHTML = results;
				document.getElementById('pingFeedUrl').value = 'http://';
						
			}


		}
	}
}


////////////


function feedRefresh(feedUrl,feedId,feedTitle) {
	// for feeds only in the feed div
	// replace ALL ampersands with %26
	feedUrl = feedUrl.replace(/&/g,"%26");
	//url = escape(url);
	scroll(0,0);

	var injectorScript = '/_service/inject_feeder.php';
	// add injector php script and append feed GET parameter	

	if(document.getElementById('showexplicit').checked){
		var xxx = '&showExplicit=true';
	} else {
		var xxx = '';			
	}
	
	var fullUrl = injectorScript + '?inject=true&feedId=' + feedId + xxx + '&feed=' + feedUrl;

	
	document.getElementById('loadMessage').innerHTML = '<h3><img align=\"absmiddle\" hspace=\"6\" src=\"/images/rss2.gif\"><img align=\"absmiddle\" hspace=\"10\" src=\"/images/loadbar_ora1.gif\">refreshing feed &nbsp;<span style=\"font-size:10px;\">please wait</span></h3>';
	//	document.getElementById('loadMessage').style.border = 'solid 1px #ff9900';
	//	document.getElementById('loadMessage').style.background = '#ffbb00';
	document.getElementById('loadMessage').style.backgroundImage="url('/images/loadingbg2.gif')";
	document.getElementById('loadMessage').style.color = '#222';
	document.getElementById('loadMessage').style.padding = '5px';

	// native XMLHttpRequest object
	dreq = null;

	if (window.XMLHttpRequest) {
		dreq = new XMLHttpRequest();
		dreq.onreadystatechange = function() {feedRefreshDone(feedUrl,feedId,feedTitle);};
		dreq.open("GET", fullUrl, true);
		dreq.send(null);
		// IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		dreq = new ActiveXObject("Microsoft.XMLHTTP");
		if (dreq) {
			dreq.onreadystatechange = function() {feedRefreshDone(feedUrl,feedId,feedTitle);};
			dreq.open("GET", fullUrl, true);
			dreq.send();
		}
	}
}    

function feedRefreshDone(url,id,feedTitle) {
	var results = "";
	//document.getElementById(target).innerHTML = "";
	// only if req is "loaded"
	if (dreq.readyState == 4) {
		//alert(feedTitle);
		// only if "OK"
		if (dreq.status == 200) {
			
			overlay('undim','overlay',0);
				
			results = dreq.responseText;
			document.getElementById('feed').innerHTML = results;
			// set a feed cookie here
			createCookie('lastFeedId',id,1);
			// google analytics
			urchinTracker("/show/" + id );
			if(feedTitle!=undefined){
				document.title = feedTitle + ' @ podcast.com';
			} else {
				document.title = 'podcast.com';
			}
			
			
			
			
			

		} else {
			document.getElementById('feed').innerHTML="There was an error collecting the feed from <br />"+ url;
			scroll(0,0);
		}
	}
}










////////////


function feedMePassThru(url,target){

	feedMe(url,target);

}


//function for forcing form submission
function checkEnter(e){
	var characterCode
	if(e && e.which){
		e = e;
		characterCode = e.which;
	} else {
		e = event;
		characterCode = e.keyCode;
	}
	
	if(characterCode == 13){
		postLink('/_service/link_form_reply.php','linkServiceReply');
		return false;
	}
	return true;

}

function checkEnterTag(e){
	var characterCode
	if(e && e.which){
		e = e;
		characterCode = e.which;
	} else {
		e = event;
		characterCode = e.keyCode;
	}
	
	if(characterCode == 13){
		postLink('/_service/tagManager.php','tagForm','tags');
		return false;
	}
	return true;

}


function checkEnterSearch(e){
	var characterCode
	if(e && e.which){
		e = e;
		characterCode = e.which;
	} else {
		e = event;
		characterCode = e.keyCode;
	}
	
	if(characterCode == 13){
		goSearchPod();
		return false;
	}
	return true;

}


function checkEnterMemberSearch(e){
	var characterCode
	if(e && e.which){
		e = e;
		characterCode = e.which;
	} else {
		e = event;
		characterCode = e.keyCode;
	}
	
	if(characterCode == 13){
		goSearchMembers();
		return false;
	}
	return true;

}



function enterCat(e){
	var characterCode
	if(e && e.which){
		e = e;
		characterCode = e.which;
	} else {
		e = event;
		characterCode = e.keyCode;
	}
	
	if(characterCode == 13){
		postLink('/_service/link_form_reply.php','catselect');
		return false;
	}
	return true;

}

function tree(nodeText){

	if(document.getElementById(nodeText).state == 'open'){
		document.getElementById(nodeText).state = 'closed';
		document.getElementById(nodeText).style.display='none';

		document.getElementById('icon_'+nodeText).src='/images/folderclosed.gif';

	} else {
		document.getElementById(nodeText).state = 'open';
		document.getElementById(nodeText).style.display='block';

		document.getElementById('icon_'+nodeText).src='/images/folderopen.gif';


	}

}

function toggleChicklets(){

	if(document.getElementById('chicklets').state == 'open'){
		document.getElementById('chicklets').state = 'closed';
		document.getElementById('chicklets').style.display='none';

		document.getElementById('chickslink').className = 'showadvbut';

	} else {
		document.getElementById('chicklets').state = 'open';
		document.getElementById('chicklets').style.display='block';

		document.getElementById('chickslink').className = 'hideadvbut';


	}

}

function togglePlaylist(){

	if(document.getElementById('playlist').state == 'open'){
		document.getElementById('playlist').state = 'closed';
		document.getElementById('playlist').style.display='none';

		document.getElementById('playlistbutton').className = 'showplaylistbut';

		if(document.getElementById('rightBannerBlock')) {
			document.getElementById('rightBannerBlock').style.display='block';
		}

	} else {
		document.getElementById('playlist').state = 'open';
		document.getElementById('playlist').style.display='block';

		document.getElementById('playlistbutton').className = 'hideplaylistbut';

		if(document.getElementById('rightBannerBlock')) {
			document.getElementById('rightBannerBlock').style.display='none';
		}

	}

}

function podSearch(){

	var searchQuery = 'http://podcast.com/_service/searcher.php?q=' + document.getElementById('q').value;

	feedMe(searchQuery,'feed');

}


function doWidthChangeMem(elem,startWidth,endWidth,steps,intervals,powr) {
//Width changer with Memory by www.hesido.com
    if (elem.widthChangeMemInt)
	window.clearInterval(elem.widthChangeMemInt);
    var actStep = 0;
    elem.widthChangeMemInt = window.setInterval(
	function() {
	  elem.currentWidth = easeInOut(startWidth,endWidth,steps,actStep,powr);
	  elem.style.width = elem.currentWidth + "px";
	  actStep++;
	  if (actStep > steps) window.clearInterval(elem.widthChangeMemInt);
	}
	,intervals)
}

function doHeightChangeMem(elem,startHeight,endHeight,steps,intervals,powr) {
//Width changer with Memory by www.hesido.com
    if (elem.heightChangeMemInt)
	window.clearInterval(elem.heightChangeMemInt);
    var actStep = 0;
    elem.heightChangeMemInt = window.setInterval(
	function() {
	  elem.currentHeight = easeInOut(startHeight,endHeight,steps,actStep,powr);
	  elem.style.height = elem.currentHeight + "px";
	  actStep++;
	  if (actStep > steps) window.clearInterval(elem.heightChangeMemInt);
	}
	,intervals)
}



function easeInOut(minValue,maxValue,totalSteps,actualStep,powr) {
	//Generic Animation Step Value Generator By www.hesido.com
	var delta = maxValue - minValue;
	var stepp = minValue+(Math.pow(((1 / totalSteps) * actualStep), powr) * delta);
	return Math.ceil(stepp)
}




function animResize(elem,wh,start,end,flag) {

	
	if((searchVersion("MSIE 6") || searchVersion("MSIE 5")) && flag!='F'){
		//animResize('flashEmbed',wh,start,end,'F');
	}
			
			
	// element id , w or h, start param, end param

	if(wh=='h'){

		if (!document.getElementById(elem).currentHeight) document.getElementById(elem).currentHeight = start; //if no mem is set, set it first;

		//doHeightChangeMem(document.getElementById(elem),document.getElementById(elem).currentHeight,end,10,10,0.533);




	} else if(wh=='w'){

		if (!document.getElementById(elem).currentWidth) document.getElementById(elem).currentWidth = start; //if no mem is set, set it first;
		//doWidthChangeMem(document.getElementById(elem),document.getElementById(elem).currentWidth,end,10,10,0.533);


	}
	
	scroll(0,0);

}

function displayMessage(url)
{

	messageObj.setSource(url);
	messageObj.setCssClassMessageBox(false);
	messageObj.setSize(400,200);
	messageObj.setShadowDivVisible(true);	// Enable shadow for these boxes
	messageObj.display();
}

function displayStaticMessage(messageContent,cssClass)
{
	messageObj.setHtmlContent(messageContent);
	messageObj.setSize(300,150);
	messageObj.setCssClassMessageBox(cssClass);
	messageObj.setSource(false);	// no html source since we want to use a static message here.
	messageObj.setShadowDivVisible(false);	// Disable shadow for these boxes
	messageObj.display();


}

function closeMessage()
{
	messageObj.close();
}


function toggleDescription(episode){



	//alert('disp:'+document.getElementById('desc_'+episode).style.display);



	if (document.getElementById('desc_'+episode).style.display =='none'){
	

		document.getElementById('tog'+episode).src = '/images/bigminus.gif';
		document.getElementById('desc_'+episode).style.display = 'block'

	} else {
		document.getElementById('tog'+episode).src = '/images/bigplus.gif';
		document.getElementById('desc_'+episode).style.display = 'none'

	}
}



function searchVersion(dataString) {
// check for "dataString" in the browser details - return true or false
		var index = navigator.userAgent.indexOf(dataString);
		if (index == -1) return false;

		return true;
}
	
	
	


///////////////////////////
/************************************************************************************************************
(C) www.dhtmlgoodies.com, July 2006

Update log:
	August, 8th, 2006: Replaced getLeftPos and getTopPos methods. 

This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website.	

Terms of use:
You are free to use this script as long as the copyright message is kept intact. However, you may not
redistribute, sell or repost it without our permission.

Thank you!
	
www.dhtmlgoodies.com
Alf Magne Kalleland
	
************************************************************************************************************/
		
var JSTreeObj;
var treeUlCounter = 0;
var nodeId = 1;
		
	/* Constructor */
	function JSDragDropTree()
	{
		var idOfTree;
		var imageFolder;
		var folderImage;
		var plusImage;
		var minusImage;
		var maximumDepth;
		var dragNode_source;
		var dragNode_parent;
		var dragNode_sourceNextSib;
		var dragNode_noSiblings;
		var ajaxObjects;
		
		var dragNode_destination;
		var floatingContainer;
		var dragDropTimer;
		var dropTargetIndicator;
		var insertAsSub;
		var indicator_offsetX;
		var indicator_offsetX_sub;
		var indicator_offsetY;
		
		this.imageFolder = '/images/';
		this.folderImage = 'dhtmlgoodies_folder.gif';
		this.plusImage = 'dhtmlgoodies_plus.gif';
		this.minusImage = 'dhtmlgoodies_minus.gif';
		this.maximumDepth = 6;
		var messageMaximumDepthReached;
		var filePathRenameItem;
		var filePathDeleteItem;
		
		var renameAllowed;
		var deleteAllowed;
		var currentlyActiveItem;
		var contextMenu;
		var currentItemToEdit;		// Reference to item currently being edited(example: renamed)
		var helpObj;
		
		this.contextMenu = false;
		this.floatingContainer = document.createElement('UL');
		this.floatingContainer.style.position = 'absolute';
		this.floatingContainer.style.display='none';
		this.floatingContainer.id = 'floatingContainer';
		this.insertAsSub = false;
		document.body.appendChild(this.floatingContainer);
		this.dragDropTimer = -1;
		this.dragNode_noSiblings = false;
		this.currentItemToEdit = false;
		
		if(document.all){
			this.indicator_offsetX = 2;	// Offset position of small black lines indicating where nodes would be dropped.
			this.indicator_offsetX_sub = 4;
			this.indicator_offsetY = 2;
		}else{
			this.indicator_offsetX = 1;	// Offset position of small black lines indicating where nodes would be dropped.
			this.indicator_offsetX_sub = 3;
			this.indicator_offsetY = 2;			
		}
		if(navigator.userAgent.indexOf('Opera')>=0){
			this.indicator_offsetX = 2;	// Offset position of small black lines indicating where nodes would be dropped.
			this.indicator_offsetX_sub = 3;
			this.indicator_offsetY = -7;				
		}

		this.messageMaximumDepthReached = ''; // Use '' if you don't want to display a message 
		
		this.renameAllowed = true;
		this.deleteAllowed = true;
		this.currentlyActiveItem = false;
		this.filePathRenameItem = 'folderTree_updateItem.php';
		this.filePathDeleteItem = 'folderTree_updateItem.php';
		this.ajaxObjects = new Array();
		this.helpObj = false;
		
	}
	
	
	/* JSDragDropTree class */
	JSDragDropTree.prototype = {
		// {{{ addEvent()
	    /**
	     *
	     *  This function adds an event listener to an element on the page.
	     *
	     *	@param Object whichObject = Reference to HTML element(Which object to assigne the event)
	     *	@param String eventType = Which type of event, example "mousemove" or "mouseup"
	     *	@param functionName = Name of function to execute. 
	     * 
	     * @public
	     */	
		addEvent : function(whichObject,eventType,functionName)
		{ 
		  if(whichObject.attachEvent){ 
		    whichObject['e'+eventType+functionName] = functionName; 
		    whichObject[eventType+functionName] = function(){whichObject['e'+eventType+functionName]( window.event );} 
		    whichObject.attachEvent( 'on'+eventType, whichObject[eventType+functionName] ); 
		  } else 
		    whichObject.addEventListener(eventType,functionName,false); 	    
		} 
		// }}}	
		,	
		// {{{ removeEvent()
	    /**
	     *
	     *  This function removes an event listener from an element on the page.
	     *
	     *	@param Object whichObject = Reference to HTML element(Which object to assigne the event)
	     *	@param String eventType = Which type of event, example "mousemove" or "mouseup"
	     *	@param functionName = Name of function to execute. 
	     * 
	     * @public
	     */		
		removeEvent : function(whichObject,eventType,functionName)
		{ 
		  if(whichObject.detachEvent){ 
		    whichObject.detachEvent('on'+eventType, whichObject[eventType+functionName]); 
		    whichObject[eventType+functionName] = null; 
		  } else 
		    whichObject.removeEventListener(eventType,functionName,false); 
		} 
		,	
		Get_Cookie : function(name) { 
		   var start = document.cookie.indexOf(name+"="); 
		   var len = start+name.length+1; 
		   if ((!start) && (name != document.cookie.substring(0,name.length))) return null; 
		   if (start == -1) return null; 
		   var end = document.cookie.indexOf(";",len); 
		   if (end == -1) end = document.cookie.length; 
		   return unescape(document.cookie.substring(len,end)); 
		} 
		,
		// This function has been slightly modified
		Set_Cookie : function(name,value,expires,path,domain,secure) { 
			expires = expires * 60*60*24*1000;
			var today = new Date();
			var expires_date = new Date( today.getTime() + (expires) );
		    var cookieString = name + "=" +escape(value) + 
		       ( (expires) ? ";expires=" + expires_date.toGMTString() : "") + 
		       ( (path) ? ";path=" + path : "") + 
		       ( (domain) ? ";domain=" + domain : "") + 
		       ( (secure) ? ";secure" : ""); 
		    document.cookie = cookieString; 
		} 
		,
		setFileNameRename : function(newFileName)
		{
			this.filePathRenameItem = newFileName;
		}
		,
		setFileNameDelete : function(newFileName)
		{
			this.filePathDeleteItem = newFileName;
		}
		,setRenameAllowed : function(renameAllowed)
		{
			this.renameAllowed = renameAllowed;			
		}
		,
		setDeleteAllowed : function(deleteAllowed)
		{
			this.deleteAllowed = deleteAllowed;	
		}
		,setMaximumDepth : function(maxDepth)
		{
			this.maximumDepth = maxDepth;	
		}
		,setMessageMaximumDepthReached : function(newMessage)
		{
			this.messageMaximumDepthReached = newMessage;
		}
		,	
		setImageFolder : function(path)
		{
			this.imageFolder = path;	
		}
		,
		setFolderImage : function(imagePath)
		{
			this.folderImage = imagePath;			
		}
		,
		setPlusImage : function(imagePath)
		{
			this.plusImage = imagePath;				
		}
		,
		setMinusImage : function(imagePath)
		{
			this.minusImage = imagePath;			
		}
		,		
		setTreeId : function(idOfTree)
		{
			this.idOfTree = idOfTree;			
		}	
		,
		expandAll : function()
		{
			var menuItems = document.getElementById(this.idOfTree).getElementsByTagName('LI');
			for(var no=0;no<menuItems.length;no++){
				var subItems = menuItems[no].getElementsByTagName('UL');
				if(subItems.length>0 && subItems[0].style.display!='block'){
					JSTreeObj.showHideNode(false,menuItems[no].id);
				}			
			}
		}	
		,
		collapseAll : function()
		{
			var menuItems = document.getElementById(this.idOfTree).getElementsByTagName('LI');
			for(var no=0;no<menuItems.length;no++){
				var subItems = menuItems[no].getElementsByTagName('UL');
				if(subItems.length>0 && subItems[0].style.display=='block'){
					JSTreeObj.showHideNode(false,menuItems[no].id);
				}			
			}		
		}	
		,
		/*
		Find top pos of a tree node
		*/
		getTopPos : function(obj){
			var top = obj.offsetTop/1;
			while((obj = obj.offsetParent) != null){
				if(obj.tagName!='HTML')top += obj.offsetTop;
			}			
			if(document.all)top = top/1 + 13; else top = top/1 + 4;		
			return top;
		}
		,	
		/*
		Find left pos of a tree node
		*/
		getLeftPos : function(obj){
			var left = obj.offsetLeft/1 + 1;
			while((obj = obj.offsetParent) != null){
				if(obj.tagName!='HTML')left += obj.offsetLeft;
			}
	  			
			if(document.all)left = left/1 - 2;
			return left;
		}	
			
		,
		showHideNode : function(e,inputId)
		{
			if(inputId){
				if(!document.getElementById(inputId))return;
				thisNode = document.getElementById(inputId).getElementsByTagName('IMG')[0]; 
			}else {
				thisNode = this;
				if(this.tagName=='A')thisNode = this.parentNode.getElementsByTagName('IMG')[0];	
				
			}
			if(thisNode.style.visibility=='hidden')return;		
			var parentNode = thisNode.parentNode;
			inputId = parentNode.id.replace(/[^0-9]/g,'');
			if(thisNode.src.indexOf(JSTreeObj.plusImage)>=0){
				thisNode.src = thisNode.src.replace(JSTreeObj.plusImage,JSTreeObj.minusImage);
				var ul = parentNode.getElementsByTagName('UL')[0];
				ul.style.display='block';
				if(!initExpandedNodes)initExpandedNodes = ',';
				if(initExpandedNodes.indexOf(',' + inputId + ',')<0) initExpandedNodes = initExpandedNodes + inputId + ',';
			}else{
				thisNode.src = thisNode.src.replace(JSTreeObj.minusImage,JSTreeObj.plusImage);
				parentNode.getElementsByTagName('UL')[0].style.display='none';
				initExpandedNodes = initExpandedNodes.replace(',' + inputId,'');
			}	
			JSTreeObj.Set_Cookie('dhtmlgoodies_expandedNodes',initExpandedNodes,500);			
			return false;						
		}
		,
		/* Initialize drag */
		initDrag : function(e)
		{
			if(document.all)e = event;	
			
			var subs = JSTreeObj.floatingContainer.getElementsByTagName('LI');
			if(subs.length>0){
				if(JSTreeObj.dragNode_sourceNextSib){
					JSTreeObj.dragNode_parent.insertBefore(JSTreeObj.dragNode_source,JSTreeObj.dragNode_sourceNextSib);
				}else{
					JSTreeObj.dragNode_parent.appendChild(JSTreeObj.dragNode_source);
				}					
			}
			
			JSTreeObj.dragNode_source = this.parentNode;
			JSTreeObj.dragNode_parent = this.parentNode.parentNode;
			JSTreeObj.dragNode_sourceNextSib = false;

			
			if(JSTreeObj.dragNode_source.nextSibling)JSTreeObj.dragNode_sourceNextSib = JSTreeObj.dragNode_source.nextSibling;
			JSTreeObj.dragNode_destination = false;
			JSTreeObj.dragDropTimer = 0;
			JSTreeObj.timerDrag();
			return false;
		}
		,
		timerDrag : function()
		{	
			if(this.dragDropTimer>=0 && this.dragDropTimer<10){
				this.dragDropTimer = this.dragDropTimer + 1;
				setTimeout('JSTreeObj.timerDrag()',20);
				return;
			}
			if(this.dragDropTimer==10)
			{
				JSTreeObj.floatingContainer.style.display='block';
				JSTreeObj.floatingContainer.appendChild(JSTreeObj.dragNode_source);	
			}
		}
		,
		moveDragableNodes : function(e)
		{
			if(JSTreeObj.dragDropTimer<10)return;
			if(document.all)e = event;
			dragDrop_x = e.clientX/1 + 5 + document.body.scrollLeft;
			dragDrop_y = e.clientY/1 + 5 + document.documentElement.scrollTop;	
					
			JSTreeObj.floatingContainer.style.left = dragDrop_x + 'px';
			JSTreeObj.floatingContainer.style.top = dragDrop_y + 'px';
			
			var thisObj = this;
			if(thisObj.tagName=='A' || thisObj.tagName=='IMG')thisObj = thisObj.parentNode;

			JSTreeObj.dragNode_noSiblings = false;
			var tmpVar = thisObj.getAttribute('noSiblings');
			if(!tmpVar)tmpVar = thisObj.noSiblings;
			if(tmpVar=='true')JSTreeObj.dragNode_noSiblings=true;
					
			if(thisObj && thisObj.id)
			{
				JSTreeObj.dragNode_destination = thisObj;
				var img = thisObj.getElementsByTagName('IMG')[1];
				var tmpObj= JSTreeObj.dropTargetIndicator;
				tmpObj.style.display='block';
				
				var eventSourceObj = this;
				if(JSTreeObj.dragNode_noSiblings && eventSourceObj.tagName=='IMG')eventSourceObj = eventSourceObj.nextSibling;
				
				var tmpImg = tmpObj.getElementsByTagName('IMG')[0];
				if(this.tagName=='A' || JSTreeObj.dragNode_noSiblings){
					tmpImg.src = tmpImg.src.replace('ind1','ind2');	
					JSTreeObj.insertAsSub = true;
					tmpObj.style.left = (JSTreeObj.getLeftPos(eventSourceObj) + JSTreeObj.indicator_offsetX_sub) + 'px';
				}else{
					tmpImg.src = tmpImg.src.replace('ind2','ind1');
					JSTreeObj.insertAsSub = false;
					tmpObj.style.left = (JSTreeObj.getLeftPos(eventSourceObj) + JSTreeObj.indicator_offsetX) + 'px';
				}
				
				
				tmpObj.style.top = (JSTreeObj.getTopPos(thisObj) + JSTreeObj.indicator_offsetY) + 'px';
			}
			
			return false;
			
		}
		,
		dropDragableNodes:function()
		{
			if(JSTreeObj.dragDropTimer<10){				
				JSTreeObj.dragDropTimer = -1;
				return;
			}
			var showMessage = false;
			if(JSTreeObj.dragNode_destination){	// Check depth
				var countUp = JSTreeObj.dragDropCountLevels(JSTreeObj.dragNode_destination,'up');
				var countDown = JSTreeObj.dragDropCountLevels(JSTreeObj.dragNode_source,'down');
				var countLevels = countUp/1 + countDown/1 + (JSTreeObj.insertAsSub?1:0);		
				
				if(countLevels>JSTreeObj.maximumDepth){
					JSTreeObj.dragNode_destination = false;
					showMessage = true; 	// Used later down in this function
				}
			}
			
			
			if(JSTreeObj.dragNode_destination){			
				if(JSTreeObj.insertAsSub){
					var uls = JSTreeObj.dragNode_destination.getElementsByTagName('UL');
					if(uls.length>0){
						ul = uls[0];
						ul.style.display='block';
						
						var lis = ul.getElementsByTagName('LI');

						if(lis.length>0){	// Sub elements exists - drop dragable node before the first one
							ul.insertBefore(JSTreeObj.dragNode_source,lis[0]);	
						}else {	// No sub exists - use the appendChild method - This line should not be executed unless there's something wrong in the HTML, i.e empty <ul>
							ul.appendChild(JSTreeObj.dragNode_source);	
						}
					}else{
						var ul = document.createElement('UL');
						ul.style.display='block';
						JSTreeObj.dragNode_destination.appendChild(ul);
						ul.appendChild(JSTreeObj.dragNode_source);
					}
					var img = JSTreeObj.dragNode_destination.getElementsByTagName('IMG')[0];					
					img.style.visibility='visible';
					img.src = img.src.replace(JSTreeObj.plusImage,JSTreeObj.minusImage);					
					
					
				}else{
					if(JSTreeObj.dragNode_destination.nextSibling){
						var nextSib = JSTreeObj.dragNode_destination.nextSibling;
						nextSib.parentNode.insertBefore(JSTreeObj.dragNode_source,nextSib);
					}else{
						JSTreeObj.dragNode_destination.parentNode.appendChild(JSTreeObj.dragNode_source);
					}
				}	
				/* Clear parent object */
				var tmpObj = JSTreeObj.dragNode_parent;
				var lis = tmpObj.getElementsByTagName('LI');
				if(lis.length==0){
					var img = tmpObj.parentNode.getElementsByTagName('IMG')[0];
					img.style.visibility='hidden';	// Hide [+],[-] icon
					tmpObj.parentNode.removeChild(tmpObj);						
				}
				
			}else{
				// Putting the item back to it's original location
				
				if(JSTreeObj.dragNode_sourceNextSib){
					JSTreeObj.dragNode_parent.insertBefore(JSTreeObj.dragNode_source,JSTreeObj.dragNode_sourceNextSib);
				}else{
					JSTreeObj.dragNode_parent.appendChild(JSTreeObj.dragNode_source);
				}			
					
			}
			JSTreeObj.dropTargetIndicator.style.display='none';		
			JSTreeObj.dragDropTimer = -1;	
			if(showMessage && JSTreeObj.messageMaximumDepthReached)alert(JSTreeObj.messageMaximumDepthReached);
		}
		,
		createDropIndicator : function()
		{
			this.dropTargetIndicator = document.createElement('DIV');
			this.dropTargetIndicator.style.position = 'absolute';
			this.dropTargetIndicator.style.display='none';			
			var img = document.createElement('IMG');
			img.src = this.imageFolder + 'dragDrop_ind1.gif';
			img.id = 'dragDropIndicatorImage';
			this.dropTargetIndicator.appendChild(img);
			document.body.appendChild(this.dropTargetIndicator);
			
		}
		,
		dragDropCountLevels : function(obj,direction,stopAtObject){
			var countLevels = 0;
			if(direction=='up'){
				while(obj.parentNode && obj.parentNode!=stopAtObject){
					obj = obj.parentNode;
					if(obj.tagName=='UL')countLevels = countLevels/1 +1;
				}		
				return countLevels;
			}	
			
			if(direction=='down'){ 
				var subObjects = obj.getElementsByTagName('LI');
				for(var no=0;no<subObjects.length;no++){
					countLevels = Math.max(countLevels,JSTreeObj.dragDropCountLevels(subObjects[no],"up",obj));
				}
				return countLevels;
			}	
		}		
		,
		cancelEvent : function()
		{
			return false;	
		}
		,
		cancelSelectionEvent : function()
		{
			
			if(JSTreeObj.dragDropTimer<10)return true;
			return false;	
		}
		,getNodeOrders : function(initObj,saveString)
		{
			
			if(!saveString)var saveString = '';
			if(!initObj){
				initObj = document.getElementById(this.idOfTree);

			}
			var lis = initObj.getElementsByTagName('LI');

			if(lis.length>0){
				var li = lis[0];
				while(li){
					if(li.id){
						if(saveString.length>0)saveString = saveString + ',';
						var numericID = li.id.replace(/[^0-9]/gi,'');
						if(numericID.length==0)numericID='A';
						var numericParentID = li.parentNode.parentNode.id.replace(/[^0-9]/gi,'');
						if(numericID!='0'){
							saveString = saveString + numericID;
							saveString = saveString + '-';
							
							
							if(li.parentNode.id!=this.idOfTree)saveString = saveString + numericParentID; else saveString = saveString + '0';
						}
						var ul = li.getElementsByTagName('UL');
						if(ul.length>0){
							saveString = this.getNodeOrders(ul[0],saveString);	
						}	
					}			
					li = li.nextSibling;
				}
			}

			if(initObj.id == this.idOfTree){
				return saveString;
							
			}
			return saveString;
		}
		,highlightItem : function(inputObj,e)
		{
			if(JSTreeObj.currentlyActiveItem)JSTreeObj.currentlyActiveItem.className = '';
			this.className = 'highlightedNodeItem';
			JSTreeObj.currentlyActiveItem = this;
		}
		,
		removeHighlight : function()
		{
			if(JSTreeObj.currentlyActiveItem)JSTreeObj.currentlyActiveItem.className = '';
			JSTreeObj.currentlyActiveItem = false;
		}
		,
		hasSubNodes : function(obj)
		{
			var subs = obj.getElementsByTagName('LI');
			if(subs.length>0)return true;
			return false;	
		}
		,
		deleteItem : function(obj1,obj2)
		{
			var message = 'Click OK to delete item ' + obj2.innerHTML;
			if(this.hasSubNodes(obj2.parentNode)) message = message + ' and it\'s sub nodes';
			if(confirm(message)){
				this.__deleteItem_step2(obj2.parentNode);	// Sending <LI> tag to the __deleteItem_step2 method	
			}
			
		}
		,
		__refreshDisplay : function(obj)
		{
			if(this.hasSubNodes(obj))return;

			var img = obj.getElementsByTagName('IMG')[0];
			img.style.visibility = 'hidden';	
		}
		,
__deleteItem_step2 : function(obj)
      {
         
         var saveString = obj.id.replace(/[^0-9]/gi,'');
         
         var lis = obj.getElementsByTagName('LI');
         for(var no=0;no<lis.length;no++){
            saveString = saveString + ',' + lis[no].id.replace(/[^0-9]/gi,'');
         }
         
         // Creating ajax object and send items
         var ajaxIndex = JSTreeObj.ajaxObjects.length;
         JSTreeObj.ajaxObjects[ajaxIndex] = new sack();
         var url = JSTreeObj.filePathDeleteItem + '?deleteIds=' + saveString;
         JSTreeObj.ajaxObjects[ajaxIndex].requestFile = url;   // Specifying which file to get
         
         JSTreeObj.ajaxObjects[ajaxIndex].onCompletion = function() { JSTreeObj.__deleteComplete(ajaxIndex,obj); } ;   // Specify function that will be executed after file has been found
         JSTreeObj.ajaxObjects[ajaxIndex].onError = function() { alert('There was an error in the ajax request'); } ;   // Specify function that will be executed after file has been found
         JSTreeObj.ajaxObjects[ajaxIndex].runAJAX();      // Execute AJAX function            
         
         
} 
		,
		__deleteComplete : function(ajaxIndex,obj)
		{
			if(this.ajaxObjects[ajaxIndex].response!='OK'){
				alert('ERROR WHEN TRYING TO DELETE NODE: ' + this.ajaxObjects[ajaxIndex].response); 	// Rename failed
			}else{
				var parentRef = obj.parentNode.parentNode;
				obj.parentNode.removeChild(obj);
				this.__refreshDisplay(parentRef);
				
			}			
			
		}
		,
		__renameComplete : function(ajaxIndex)
		{
			if(this.ajaxObjects[ajaxIndex].response!='OK'){
				alert('ERROR WHEN TRYING TO RENAME NODE: ' + this.ajaxObjects[ajaxIndex].response); 	// Rename failed
			}
		}
		,
		__saveTextBoxChanges : function(e,inputObj)
		{
			if(!inputObj && this)inputObj = this;
			if(document.all)e = event;
			if(e.keyCode && e.keyCode==27){
				JSTreeObj.__cancelRename(e,inputObj);
				return;
			}
			inputObj.style.display='none';
			inputObj.nextSibling.style.visibility='visible';
			if(inputObj.value.length>0){
				inputObj.nextSibling.innerHTML = inputObj.value;	
				// Send changes to the server.
				var ajaxIndex = JSTreeObj.ajaxObjects.length;
				JSTreeObj.ajaxObjects[ajaxIndex] = new sack();
				var url = JSTreeObj.filePathRenameItem + '?renameId=' + inputObj.parentNode.id.replace(/[^0-9]/gi,'') + '&newName=' + inputObj.value;
				JSTreeObj.ajaxObjects[ajaxIndex].requestFile = url;	// Specifying which file to get
				JSTreeObj.ajaxObjects[ajaxIndex].onCompletion = function() { JSTreeObj.__renameComplete(ajaxIndex); } ;	// Specify function that will be executed after file has been found
				JSTreeObj.ajaxObjects[ajaxIndex].runAJAX();		// Execute AJAX function		
							
				
				
			}
		}
		,
		__cancelRename : function(e,inputObj)
		{
			if(!inputObj && this)inputObj = this;
			inputObj.value = JSTreeObj.helpObj.innerHTML;
			inputObj.nextSibling.innerHTML = JSTreeObj.helpObj.innerHTML;
			inputObj.style.display = 'none';
			inputObj.nextSibling.style.visibility = 'visible';
		}
		,
		__renameCheckKeyCode : function(e)
		{
			if(document.all)e = event;
			if(e.keyCode==13){	// Enter pressed
				JSTreeObj.__saveTextBoxChanges(false,this);	
			}	
			if(e.keyCode==27){	// ESC pressed
				JSTreeObj.__cancelRename(false,this);
			}
		}
		,
		__createTextBox : function(obj)
		{
			var textBox = document.createElement('INPUT');
			textBox.className = 'folderTreeTextBox';
			textBox.value = obj.innerHTML;
			obj.parentNode.insertBefore(textBox,obj);	
			textBox.id = 'textBox' + obj.parentNode.id.replace(/[^0-9]/gi,'');
			textBox.onblur = this.__saveTextBoxChanges;	
			textBox.onkeydown = this.__renameCheckKeyCode;
			this.__renameEnableTextBox(obj);
		}
		,
		__renameEnableTextBox : function(obj)
		{
			obj.style.visibility = 'hidden';
			obj.previousSibling.value = obj.innerHTML;
			obj.previousSibling.style.display = 'inline';	
			obj.previousSibling.select();
		}
		,
		renameItem : function(obj1,obj2)
		{
			currentItemToEdit = obj2.parentNode;	// Reference to the <li> tag.
			if(!obj2.previousSibling || obj2.previousSibling.tagName.toLowerCase()!='input'){
				this.__createTextBox(obj2);
			}else{
				this.__renameEnableTextBox(obj2);
			}
			this.helpObj.innerHTML = obj2.innerHTML;

		}
		,
		initTree : function()
		{
			JSTreeObj = this;
			JSTreeObj.createDropIndicator();
			document.documentElement.onselectstart = JSTreeObj.cancelSelectionEvent;
			document.documentElement.ondragstart = JSTreeObj.cancelEvent;
			document.documentElement.onmousedown = JSTreeObj.removeHighlight;
			
			/* Creating help object for storage of values */
			this.helpObj = document.createElement('DIV');
			this.helpObj.style.display = 'none';
			document.body.appendChild(this.helpObj);
			
			/* Create context menu */
			if(this.deleteAllowed || this.renameAllowed){
				try{
					/* Creating menu model for the context menu, i.e. the datasource */
					var menuModel = new DHTMLGoodies_menuModel();
					if(this.deleteAllowed)menuModel.addItem(1,'Delete','','',false,'JSTreeObj.deleteItem');
					if(this.renameAllowed)menuModel.addItem(2,'Rename','','',false,'JSTreeObj.renameItem');
					menuModel.init();	
					
					var menuModelRenameOnly = new DHTMLGoodies_menuModel();
					if(this.renameAllowed)menuModelRenameOnly.addItem(3,'Rename','','',false,'JSTreeObj.renameItem');
					menuModelRenameOnly.init();	
					
					var menuModelDeleteOnly = new DHTMLGoodies_menuModel();
					if(this.deleteAllowed)menuModelDeleteOnly.addItem(4,'Delete','','',false,'JSTreeObj.deleteItem');
					menuModelDeleteOnly.init();	
					
					window.refToDragDropTree = this;
					
					this.contextMenu = new DHTMLGoodies_contextMenu();
					this.contextMenu.setWidth(120);
					referenceToDHTMLSuiteContextMenu = this.contextMenu;
				}catch(e){
					
				}
			}

					
			var nodeId = 0;
			var dhtmlgoodies_tree = document.getElementById(this.idOfTree);
			var menuItems = dhtmlgoodies_tree.getElementsByTagName('LI');	// Get an array of all menu items
			for(var no=0;no<menuItems.length;no++){
				// No children var set ?
				var noChildren = false;
				var tmpVar = menuItems[no].getAttribute('noChildren');
				if(!tmpVar)tmpVar = menuItems[no].noChildren;
				if(tmpVar=='true')noChildren=true;
				// No drag var set ?
				var noDrag = false;
				var tmpVar = menuItems[no].getAttribute('noDrag');
				if(!tmpVar)tmpVar = menuItems[no].noDrag;
				if(tmpVar=='true')noDrag=true;
						 
				nodeId++;
				var subItems = menuItems[no].getElementsByTagName('UL');
				var img = document.createElement('IMG');
				img.src = this.imageFolder + this.plusImage;
				img.onclick = JSTreeObj.showHideNode;
				
				if(subItems.length==0)img.style.visibility='hidden';else{
					subItems[0].id = 'tree_ul_' + treeUlCounter;
					treeUlCounter++;
				}
				var aTag = menuItems[no].getElementsByTagName('A')[0];
				aTag.id = 'nodeATag' + menuItems[no].id.replace(/[^0-9]/gi,'');
				//aTag.onclick = JSTreeObj.showHideNode;
				if(!noDrag)aTag.onmousedown = JSTreeObj.initDrag;
				if(!noChildren)aTag.onmousemove = JSTreeObj.moveDragableNodes;
				menuItems[no].insertBefore(img,aTag);
				//menuItems[no].id = 'dhtmlgoodies_treeNode' + nodeId;
				var folderImg = document.createElement('IMG');
				if(!noDrag)folderImg.onmousedown = JSTreeObj.initDrag;
				folderImg.onmousemove = JSTreeObj.moveDragableNodes;
				if(menuItems[no].className){
					folderImg.src = this.imageFolder + menuItems[no].className;
				}else{
					folderImg.src = this.imageFolder + this.folderImage;
				}
				menuItems[no].insertBefore(folderImg,aTag);
				
				if(this.contextMenu){
					var noDelete = menuItems[no].getAttribute('noDelete');
					if(!noDelete)noDelete = menuItems[no].noDelete;
					var noRename = menuItems[no].getAttribute('noRename');
					if(!noRename)noRename = menuItems[no].noRename;
					
					if(noRename=='true' && noDelete=='true'){}else{
						if(noDelete == 'true')this.contextMenu.attachToElement(aTag,false,menuModelRenameOnly);
						else if(noRename == 'true')this.contextMenu.attachToElement(aTag,false,menuModelDeleteOnly);
						else this.contextMenu.attachToElement(aTag,false,menuModel);
					
					}
				}
				this.addEvent(aTag,'contextmenu',this.highlightItem);
				
		
				
			}	
			

			
			initExpandedNodes = this.Get_Cookie('dhtmlgoodies_expandedNodes');
			if(initExpandedNodes){
				var nodes = initExpandedNodes.split(',');
				for(var no=0;no<nodes.length;no++){
					if(nodes[no])this.showHideNode(false,nodes[no]);	
				}			
			}			
			
			
			document.documentElement.onmousemove = JSTreeObj.moveDragableNodes;	
			document.documentElement.onmouseup = JSTreeObj.dropDragableNodes;
		}		
	}
	
function openpopup(popurl,wid,hgt){
	var winpops=window.open(popurl,"","width="+wid+",height="+hgt+",scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0");
	
	
	
	//document.getElementById("topplayer").innerHTML = "<div id='popped'>media player is a popup window. <a href=\"javascript:feedMe('http://podcast.com/inc/player_popback.php','topplayer');\">pop-back</a></div>";
	document.getElementById("topplayer").innerHTML = "<div id='flashplayer'><div id='flashEmbed'>media player is a popup window. <a href=\"javascript:popBackPlayer();\">pop-back</a></div></div>";
	
	
}


function popBackPlayer(){

document.getElementById("topplayer").innerHTML = '<a href="javascript:openpopup(\'/inc/player_popup.php\',360,120);">tear off in pop-up</a><br clear="left" />' + document.getElementById("topplayer").innerHTML;


animResize('flashplayer','h',10,88);



//<div class="pad1">
//


		//feedMe('http://podcast.com/inc/player_popback.php','topplayer');

		var so = new SWFObject("/swf/playlister_5_340.swf", "flashEmbed", "100%", "100%", "8", "#FFFFFF");
		so.addParam("scale", "noscale");
		so.addParam("salign", "lt");
		so.write("flashplayer");
		

}


function popBackPlayer_k(){

	animResize('flashplayer','h',10,88);

	//feedMe('http://podcast.com/inc/player_popback.php','topplayer');

	var so = new SWFObject("/swf/playlister_5_340.swf", "flashEmbed", "100%", "100%", "8", "#FFFFFF");
	so.addParam("scale", "noscale");
	so.addParam("salign", "lt");
	so.write("flashplayer");
		
		
}		


function setExplicitAndFeedMe(feedUrl,feedId,feedTitle){


	createCookie('podcastExplicit','true',7);
	document.getElementById('showexplicit').checked = true;
	feedMe(feedUrl,'feed',feedId,'',feedTitle);


}


function displayWindow()
{
	var w, h, l, t;
	w = 400;
	h = 200;
	l = screen.width/4;
	t = screen.height/4;

	// no title
	// displayFloatingDiv('windowcontent', '', w, h, l, t);

	// with title
	displayFloatingDiv('windowcontent', 'Floating and Dimming Div', w, h, l, t);
}
		    
function overlay(op,divId,nodeId) {

	//RMC: disabled flashplayer manipulation

	//el = document.getElementById(divId);
	// toggle visibility
	//el.style.visibility = (el.style.visibility == "visible") ? "hidden" : "visible";
	
	
	if(op=='dim'){
	
		//animResize('flashplayer','h',88,1);
	
		
	
		var sendDiv = 'playSend_1';
		if(document.getElementById(sendDiv)){
			//animResize(sendDiv,'h',88,1);
		}
		
		
	
	} else {
	
		//animResize('flashplayer','h',1,88);
		
		if(nodeId>0){
		
			//alert("node id is "+nodeId);
			feedMe('tap','directory', nodeId);
		
		}
	
	}


}

function adHit() {
	adHitRefresh("iframeldr");
	adHitRefresh("iframelft");
	adHitRefresh("iframectr");
	adHitRefresh("iframergt");
}

function adHitRefresh(tcFrame) {
	if(document.getElementById(tcFrame)) {
		document.getElementById(tcFrame).src = document.getElementById(tcFrame).src;
	}
}
