<!--
function checkme(f)
{              
   var sitesearch = document.all ? document.all['sitesearch'] : document.getElementById('sitesearch');
   if(f == 'in')
   {
      if(sitesearch.value == 'Search here...') sitesearch.value = '';
   }
   else if(f == 'out')
   {
      if(sitesearch.value == '') sitesearch.value = 'Search here...';
   }
}

/*********************************************************************/

function ajax_request(url, data, func)
{
    var myAjax = new Ajax.Request
    (
        url,
        {method: 'post', parameters: data, onComplete: func}
    );
}

function init()
{
   if($('text') != null)
   {
      update_comment_preview();
      Event.observe($('text'),'keyup',update_comment_preview,false);
   }
   
   if($('preferences_toggle') != null)
   {
      Event.observe($('preferences_toggle'),'click',toggle_user_preferences,true);
   } 

   if($('attach_file') != null)
   {
      Event.observe($('attach_file'),'click',toggle_file_attachment,true);
   } 
   
   if($('cancel_attach_file') != null)
   {
      Event.observe($('cancel_attach_file'),'click',toggle_file_attachment,true);
   } 
   
   if($('private_message_list') != null)
   {
      Event.observe($('checkall'),'click',pm_checkall,true);
      Event.observe($('clearall'),'click',pm_clearall,true);
      Event.observe($('checkread'),'click',pm_checkread,true);
      Event.observe($('checkunread'),'click',pm_checkunread,true);           
   }          
   
   if($('inherit_forum_permissions') != null)                   
   {
      Event.observe($('inherit_forum_permissions'),'click',toggle_inherit_forum_permissions,true);
   }
   
   if($('metafields') != null && $('showmeta') != null)
   {
      toggle_metafields();
   }
   
   if($('article_guidelines') != null)
   {
      Event.observe($('toguidev'),'click',toggle_guidelines,true);
      Event.observe($('toguideh'),'click',toggle_guidelines,true);
   }

   /*
   if($('contents') != null && $('comment-preview') != null)
   {
      update_thread_preview();
      Event.observe($('contents'),'keyup',update_thread_preview, false);
   }   
   if($('leavecomment') != null)
   {
      Event.observe($('leavecomment'),'submit',leave_comment, false);
   }
   if($('threadreply') != null)
   {
      Event.observe($('threadreply'),'submit',thread_reply, false);
   }
   if($('edit_profile') != null)
   {
      Event.observe($('edit_profile'),'click',show_profile_editor, false);
   }
   */
   
   allNodes = document.getElementsByClassName("external");
   for(i = 0; i < allNodes.length; i++)
   {
      allNodes[i].onclick = function(){window.open(this.href);return false;};
   }
   
   allNodes = document.getElementsByClassName("quote");   
   for(i = 0; i < allNodes.length; i++)
   {
      allNodes[i].onclick = function(){
      var id = this.href.replace(/^.*?(\d+)\/#reply$/,'$1');
      $('text').value += '<blockquote><strong>'+$('a'+id).innerHTML+" said:</strong> \n" +
                          $('t'+id).innerHTML.replace(/\n/g,'').replace(/<br\s*?\/?\s*?>/mg,"\n")+"</blockquote>\n";
      location.href='#reply';
      $('text').focus();
      update_comment_preview();
      return false;
      };
   }

   if($('resources_list') != null)
   {
      allNodes = $('resources_list').getElementsByTagName('ul');
      for(i = 0; i < allNodes.length; i++)
      {
	     if(allNodes[i].id != 'tagged_list')
	     {
            as = allNodes[i].getElementsByTagName('a');
            for(j = 0; j < as.length; j++)
            {
               if(as[j].id.match(/controller/))
               {
                  as[j].onclick = show_more;
               }
            }
         }
      }
   }
   
/*
   allNodes = document.getElementsByClassName("list_collapser");
   for(i = 0; i < allNodes.length; i++)
   {
	  allNodes[i].style.cursor = 'pointer';
      allNodes[i].onclick = function(){
	     var close_id = 'list' + this.id.replace(/^collapser(\d+)$/,'$1');
	     if($(close_id).style.display != 'none')
	     {
            $(close_id).style.display = 'none';
	     }
	     else
	     {
            $(close_id).style.display = 'inherit';
	     }
	     return false;
      };	
   }   

*/

   allNodes = document.getElementsByClassName("confirm");
   for(i = 0; i < allNodes.length; i++)
   {
      allNodes[i].onclick = function(){return confirm("Are You Sure You Want To Do That?");};
   }
}

function show_more()
{
   id = 'list' + this.id.replace(/^controller(\d+)$/,'$1');
   if($(id) != null)
   {
      lis = $(id).getElementsByTagName('li');
      for(j = 3; j < lis.length; j++)
      {
	     lis[j].style.display = 'list-item';
      }	
   }
   this.innerHTML = '( less )';
   this.onclick = show_less;
   return false;
}

function show_less()
{
   id = 'list' + this.id.replace(/^controller(\d+)$/,'$1');
   if($(id) != null)
   {
      lis = $(id).getElementsByTagName('li');
      for(j = 3; j < lis.length; j++)
      {
	     lis[j].style.display = 'none';
      }	
   }	
   this.innerHTML = '( more )';
   this.onclick = show_more;
   return false;
} 

function update_comment_preview()
{
   $('preview').innerHTML = '<p>'+$F('text').replace(/(\r\n|\n)/g,'<br />').replace(/(<br \/>){2,}/gi,'<'+'/p><p>')+'<'+'/p>';
}

function toggle_user_preferences(e)
{
   Event.stop(e);
   if($('user_preferences').style.display == 'block')
   {
      $('user_preferences').style.display = 'none';
   }
   else
   {
      $('user_preferences').style.display = 'block';
   }
}

function toggle_metafields()
{
   if($('showmeta').checked == true)
   {
      $('metafields').style.display = 'block';
   }
   else
   {
      $('metafields').style.display = 'none';
   }
}

function toggle_guidelines()
{
   if($('article_guidelines').style.display == 'block')
   {
      $('article_guidelines').style.display = 'none';
      $('toguidev').style.display = 'block';
      $('toguideh').style.display = 'none';
   }
   else
   {
      $('article_guidelines').style.display = 'block';
      $('toguidev').style.display = 'none';
      $('toguideh').style.display = 'block';
   }
}

function toggle_file_attachment(e)
{
   Event.stop(e);
   if($('file_attachment').style.display == 'block')
   {
      $('file_attachment').style.display = 'none';
      $('attach_file').style.display = 'block';
   }
   else
   {
      $('file_attachment').style.display = 'block';
      $('attach_file').style.display = 'none';
   }
}

   
function pm_checkall(e)
{
   pm_check_uncheck(true);
}
function pm_clearall(e)
{
   pm_check_uncheck(false);
}
function pm_checkread(e)
{
   pm_check_uncheck(false,"munread");
   pm_check_uncheck(true,"mread");
}
function pm_checkunread(e)
{
   pm_check_uncheck(false,"mread");
   pm_check_uncheck(true,"munread");
}
function pm_check_uncheck(val,group)
{
   lst = document.forms['pm_list'];
   len = lst.elements.length;
   var i=0;
   for(i=0; i<len ; i++) 
   {
      if(group)
      {
         if(lst.elements[i].className == group)
         {
            lst.elements[i].checked = val;
         }
      }
      else
      {  
         if(lst.elements[i].type == "checkbox") 
         {
            lst.elements[i].checked = val;
         }
      }
   }       
}

function toggle_inherit_forum_permissions()
{
   var orig_checked = new Array();
   var source_perms = document.getElementsByClassName("fperm");  
   var target_perms = document.getElementsByClassName("catperm");
   
   if($('inherit_forum_permissions').checked == true)
   {
      for(r = 0; r < target_perms.length; r++)
      {
         orig_checked[target_perms[r].id] = document.getElementById(target_perms[r].id).checked;
      }  

      var seek = /group_([0-9]*)_([a-z]*)/;
      for(i = 0; i < source_perms.length; i++)
      {
         var source_attributes = seek.exec(source_perms[i].id);
         var seek_string = source_attributes[1] + "_" + source_attributes[2];
         
         for(k = 0; k < target_perms.length; k++)
         {
            fcat = new RegExp("cat_(\\d*)_" + seek_string);
            if(target_perms[k].id.match(fcat))
            {
               document.getElementById(target_perms[k].id).checked = document.getElementById(source_perms[i].id).checked;
            }
         }
      }
   }
   else
   {
      for(k = 0; k < target_perms.length; k++)
      {
         document.getElementById(target_perms[k].id).checked = orig_checked[target_perms[k].id];
      }
   }
}

function insertAtCursor(myField, myValue) 
{
	if (document.selection) { // IE
		myField.focus();
		sel = document.selection.createRange();
		sel.text = myValue;
	} else if (myField.selectionStart || myField.selectionStart == 0) {//MOZILLA/NETSCAPE support
    var startPos = myField.selectionStart;
    var endPos = myField.selectionEnd;
    myField.value = myField.value.substring(0, startPos) + myValue + myField.value.substring(endPos, myField.value.length);
	} else {
		myField.value += myValue;
	}
	update_comment_preview();
}

function limit_list(string)
{
   if(document.getElementById && document.getElementsByTagName && document.getElementById('resources'))
   {
      string = string.replace(/(\\|\||\(|\)|\[|\]|\{|\}|\^|\$|\*|\+|\?|\.|\/)/g,'\\$1'); 
      var matchstr = new RegExp(string, "i");
   
      var listItems = document.getElementById('resources').getElementsByTagName('li');
      var i;
   
      for(i = 0; i < listItems.length; i++)
      {
         if(!(listItems[i].className == 'add_site' || listItems[i].firstChild.innerHTML.match(matchstr)))
         {
            listItems[i].style.display = 'none';   
         }
         else
         {
            listItems[i].style.display = 'list-item';
         }
      }
   }
} 

Event.observe(window, 'load', init, false);