/*
Javascript Source file
*/

function radCheck(){
	var l=document.firstForm.radOne.length;
	for(var i=0;i<l;i++){
		if(document.firstForm.radOne[i].checked)document.firstForm.txtOne.value=document.firstForm.radOne[i].value;
	}
}

function confirmDelete(){
	return confirm('You are about to delete this post\n  \'Cancel\' to stop, \'OK\' to delete.');
}

function getXMLObj(url){
	var xmlhttp=false;
	  
	/*@cc_on @*/
	/*@if (@_jscript_version >= 5)
	// JScript gives us Conditional compilation, we can cope with old IE versions.
	// and security blocked creation of the objects.
	try {
    	xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        // xmlhttp.overrideMimeType('text/xml'); 
    	xmlhttp.open("GET",url,true); 
    	xmlhttp.send(); 
	} catch (e) {
	    try {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            // xmlhttp.overrideMimeType('text/xml'); 
  	        xmlhttp.open("GET",url,true); 
	        xmlhttp.send(); 
        } catch (E) {
            xmlhttp = false;
        }
	}
    @end @*/
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
		xmlhttp.open("GET",url,true); 
		xmlhttp.send(null); 
	}
	return xmlhttp; 
}

var originalDocs=new Array(); 
var editedDocs=new Array(); 

function editPost(base_url,post_ID){

  var post_element="post-"+post_ID; 
  
  if(editedDocs[post_ID] != null){ 
	  document.getElementById(post_element).innerHTML=editedDocs[post_ID]; 
  }else{
	  var url=base_url+"/post-xml.php?p="+post_ID; 
	  
	  var xmlhttp=getXMLObj(url); 
   
	  var title_elt_attrs="type=\"text\" name=\"post_title\" size=\"50\" id=\"edit_title\""; 
	  var text_elt_attrs="name=\"content\" id=\"edit_content\" cols=\"40\" rows=\"10\""; 

	  var form_preamble = "<form name=\"post\" action=\"/admin-shadow/post.php\" method=\"post\" id=\"simple\">"+
		  "<input type=\"hidden\" name=\"user_ID\" value=\"<?php echo $user_ID ?>\" />"+
		  "<input type=\"hidden\" name=\"action\" value=\"fpeditpost\" />"+
		  "<input type=\"hidden\" name=\"post_ID\" value=\""+post_ID+"\" />"+ 
		  "<input type=\"hidden\" name=\"prev_status\" value=\"publish\" />"+ 
		  "<input name=\"referredby\" type=\"hidden\" id=\"referredby\" value=\""+base_url+"/index.php\" />"; 
	  
	  var submit_bttn = "<input type=\"submit\" class=\"button\" name=\"submit\" value=\"Save\" style=\"font-weight: bold;\" />"; 
	  var cancel_bttn = "<input name=\"cancel\" class=\"button\" type=\"submit\" id=\"cancelpost\" value=\"Cancel\" onClick=\"return revertPost("+post_ID+");\" />"; 
	  
	  originalDocs[post_ID] = document.getElementById(post_element).innerHTML; 
	  
	  xmlhttp.onreadystatechange=function() {
		  if (xmlhttp.readyState==4){
			  var xml = xmlhttp.responseXML; 
			  var encTitleStr = xml.getElementsByTagName("title").item(0).firstChild.nodeValue; 
			  var titleStr = encTitleStr; 
			  var encContentStr = xml.getElementsByTagName("description").item(0).firstChild.nodeValue; 
			  var contentStr = encContentStr; 
			  var docstr = form_preamble+"<input "+title_elt_attrs+" value=\""+titleStr+"\" />"+
			  "<br><textarea "+text_elt_attrs+" />"+contentStr+"</textarea>"+submit_bttn+cancel_bttn+"</form>"; 
			  editedDocs[post_ID]=docstr; 
			  document.getElementById(post_element).innerHTML = docstr; 
		  }
	  }
  }
}

function bumpIt(elt,id,url){
	xmlhttp=getXMLObj(url); 
	
	bump_elt = "bump-"+id; 

	xmlhttp.onreadystatechange=function() { 
		if(xmlhttp.readyState==4){ 
			var num_str = xmlhttp.responseText;  
	        var num = parseInt(num_str);
			if(num < 0){ 
				/* Do nothing */ 
			}else{
				var docstr = "Bumps ("+num+")"; 
				document.getElementById(bump_elt).innerHTML = docstr; 
			}
		}
	}
			
	elt.href='#post-'+id; 
	return true; 
}

function unBumpIt(elt,id,url){
	xmlhttp=getXMLObj(url); 
	
	bump_elt = "bump-"+id; 

	xmlhttp.onreadystatechange=function() { 
		if(xmlhttp.readyState==4){ 
			var num_str = xmlhttp.responseText; 
	        var num = parseInt(num_str);
			if(num < 0){ 
				/* Do nothing */ 
			}else{
				var docstr = "Bumps ("+num+")"; 
				document.getElementById(bump_elt).innerHTML = docstr; 
			}
		}
	}
			
	elt.href='#post-'+id; 
	return true; 
}

function revertPost(post_ID){
    var post_element = "post-"+post_ID; 
	document.getElementById(post_element).innerHTML = originalDocs[post_ID]; 
	return false;
}

function rwt(elt,url){
	elt.href=url; 
	elt.onmousedown="";
	return true;
}

function activate(eltId){
   var elt = document.getElementById(eltId); 
   if (elt.style.display == 'none') {
       elt.style.display = 'block';
   } else {
       elt.style.display = 'none';
   }
}

function getCommentBox(url){

	xmlhttp=getXMLObj(url); 	

	xmlhttp.onreadystatechange=function() { 
		var text = xmlhttp.responseText; 
		var elt = document.getElementById('ajax_comment'); 
		elt.innerHTML = text; 
	}	
}

pref_elts = new Array('pings','bumped','news_in_blogs','news','buzz','searches','cats','alpha_cats','sponsors','other_sites','feeds','post_views','pages','post_links','podcasts','buzzwords');

// This is hard coded
function savePreferences(url){
	str = "";
	for(i=0; i < pref_elts.length; i++){ 
		elt = document.getElementById(pref_elts[i]);
		if(elt && elt.style.display == 'none'){ 
			str = str + '0';
		}else{ 
			str = str + '1';
		}
	}
	url = url+str;

	xmlhttp=getXMLObj(url);
	xmlhttp.onreadystatechange=function(){ 
	}
}

function maxbox_toggle(x,y){

  var maxbox_elt_name="maxbox-"+x+"-"+y; 
  var maxbox_link_name="mblink-"+x+"-"+y;

  elt = document.getElementById(maxbox_elt_name);
  link_elt = document.getElementById(maxbox_link_name); 

  if (elt.style.display == 'none') {
      elt.style.display = 'block';
      link_elt.innerHTML = '-';
      // link_elt.class = 'link_off';
  } else {
      elt.style.display = 'none';
      link_elt.innerHTML = '+';
      // link_elt.class = 'link_on';
  }
}

function ReplaceAll( inText, inFindStr, inReplStr, inCaseSensitive ) {
    //inText is the text in which to do the search;
    //inFindStr is the string to find;
    //inReplStr is the string to substitute into inText in place of inFindStr; and
    //inCaseSensitive is a boolean value (defaults to false).
   
    var searchFrom = 0;
    var offset = 0;
    var outText = "";
    var searchText = "";
    if ( inCaseSensitive == null ) {
	inCaseSensitive = false;
    }
    if ( inCaseSensitive ) {
	searchText = inText.toLowerCase();
	inFindStr = inFindStr.toLowerCase();
    } else {
	searchText = inText;
    }
    offset = searchText.indexOf( inFindStr, searchFrom );
    while ( offset != -1 ) {
	outText += inText.substring( searchFrom, offset );
	outText += inReplStr;
	searchFrom = offset + inFindStr.length;
	offset = searchText.indexOf( inFindStr, searchFrom );
    }
    outText += inText.substring( searchFrom, inText.length );
   
    return ( outText );
};

function quoteHtml( inText ) {
    outText = ReplaceAll( inText, "&", "&amp;" ); 
    outText = ReplaceAll( outText, "<", "&lt;" ); 
    outText = ReplaceAll( outText, ">", "&gt;" ); 
    return ( outText ); 
} 

function unquoteHtml( inText ) {
    outText = ReplaceAll( inText, "&amp;", "&" ); 
    outText = ReplaceAll( outText, "&lt;", "<" ); 
    outText = ReplaceAll( outText, "&gt;", ">" ); 
    return ( outText ); 
} 

var saved_content = Array()

function toggleExcerpt(base_url,centre_ID,post_ID){

    var post_element="maxbox-"+centre_ID+"-"+post_ID;
    var maxbox_link_name="mblink-"+centre_ID+"-"+post_ID;
 
    elt = document.getElementById(post_element); 
    link_elt = document.getElementById(maxbox_link_name); 

    if( elt.style.display == 'none'){ 
	var url=base_url+"/post-xml.php?p="+post_ID; 	  
	var xmlhttp=getXMLObj(url);      
	xmlhttp.onreadystatechange=function() {
	    if (xmlhttp.readyState==4){
		var xml = xmlhttp.responseXML; 
		var encContentStr = xml.getElementsByTagName("description").item(0).firstChild.nodeValue; 
		var ContentHTML = unquoteHtml(encContentStr); 
		elt.innerHTML = ContentHTML;
		elt.style.display = 'block'; 
		saved_content[maxbox_link_name] = link_elt.innerHTML
		link_elt.innerHTML = '-';
	    }
	}
    }else if (elt.style.display = 'block'){ 
	elt.style.display = 'none'; 
	link_elt.innerHTML = saved_content[maxbox_link_name]
    }
}
