function help_for(action_name)
{
	help_window = window.open("/help/"+action_name, "help_window", "menubar=no, resizable=yes, status=no, scrollbars=yes, toolbar=no, height=600, width=300");
	return false;
}


/* Code for dropping an asset into a text area and creating the asset markup */
function drop_asset(target, element)
{
	insert_at_cursor(target, " [asset:"+ get_number(element.id)+"] ")
}

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

/* 

Find the first parent form element of this node and sumbit it

*/
function find_form(node)
{
  if(node.nodeName.toUpperCase() == "FORM")
  {
    return node;
  }
	else {return find_form(node.parentNode)}
}

function submit_this_form(node)
{
	var found_form = find_form(node)
	if(found_form == null) {alert("Error with form "+found_form)}
	else {
		if(found_form.onsubmit == null) { found_form.submit(); }
    else { found_form.onsubmit(); }
    return true
	}
}

function preview(node, action)
{
	found_form = find_form(node)
	original_action = found_form.getAttribute("action")
	original_target = found_form.getAttribute("target")
	found_form.setAttribute("target", "preview")
	found_form.setAttribute("action", action)
	submit_this_form(node)
	found_form.setAttribute("target", original_target)
	found_form.setAttribute("action", original_action)
}



function get_number(str){
  return str.match(/([0-9]{1,})/gi)[0]
}




function window_height()
{  
	if (window.innerHeight) return window.innerHeight;
	else return document.getElementsByTagName("body")[0].offsetHeight;
}




function setupHandlers(col)
{
  for(n in col) {
    try
    {
    if(col[n].type != "submit")
    {
     col[n].addEventListener('focus',function () {this.style.backgroundColor = '#FFFFDD'}, false)
     col[n].addEventListener('blur',function () {this.style.backgroundColor = '#FFF'}, false)
     //col[n].addEventListener('keypress',function (e) {return (handleEnter(this,e))},false)
   }
   }catch(err){}
     //o[i].onkeypress= new function() {} //handleEnter(this, event)}
   }  
}

function init()
{
  setupHandlers(document.getElementsByTagName("input"))
  setupHandlers(document.getElementsByTagName("textarea"))
  window.onresize = function(){
    var bc = $$(".body_column")[0]
    if(bc){
      var nH =  window_height()-250
      nH = (nH < 200) ? 200 : nH
      bc.setStyle({height:(nH)+"px"})
    }
  }
  window.onresize()
  //setupHandlers(document.getElementsByTagName("form"))
}

(function(){
  
  var imageTarget;
  
  function createTarget(){
    imageTarget = document.createElement("img")
    imageTarget.setAttribute("id", "enlargedImage")
    document.getElementsByTagName("body")[0].appendChild(imageTarget)
    return imageTarget;
  }
  
  function closeImage(){
    imageTarget.style.display = "none";
  }
  
  function showImage(request){
    eval("var r = "+request.responseText)
    imageTarget = imageTarget || createTarget();
    imageTarget.setAttribute("src", r.src)
    imageTarget.onload = function(){
      imageTarget.onclick = closeImage;
    }
    imageTarget.style.display = "block";
    imageTarget.src = r.src;
    
    
    return false;
  }
  
  window.enlargeImage = function(image_id, e){
    new Ajax.Request('/assets/'+image_id, 
      {method:'get', onComplete:showImage, contentType:"text/javascript; charset=utf-8"})
    return false;
  }
  
  window.clearSearch = function(e){
    e.value = ""
    e.onfocus = null;
    return false;
  }
  
})();

window.onload = init
