/* File: js/node_lists.js, Ratio: 37.8% */

(function($){$.fn.AjaxFormCheck=function(formEl){var targetEl=$(formEl).parents('[id*=ListItem]').first();if(targetEl.length==0){targetEl=$('[id*=NodeList]').parent();}
var options={target:targetEl,beforeSend:function(){$(formEl).NodeAjaxLoading();},success:function(msg){$(targetEl).html(msg).lastLoaded();$(formEl).NodeAjaxLoaded();},error:function(){$(formEl).NodeAjaxLoaded();}}
if(targetEl.length>0){$(formEl).ajaxForm(options);}};$.fn.RefreshList=function(nodeId){var targetEl=$("[id$=ListItem"+nodeId+"]").first();$(targetEl).NodeAjaxLoading();if(targetEl){$.ajax({url:"/page_navs/view/"+nodeId,dataType:"html",success:function(msg){$(targetEl).html(msg);$(targetEl).NodeAjaxLoaded();},error:function(){$(targetEl).NodeAjaxLoaded();}});}};$.fn.NodeAjaxClick=function(targetEl){if(targetEl.length==0){alert("Target not found: "+targetEl);return false;}
$clicked=$(this);$(targetEl).NodeAjaxLoading();$.ajax({url:$clicked.attr('href'),dataType:"html",success:function(msg){$(targetEl).html(msg);$(targetEl).NodeAjaxLoaded();}});return false;};$.fn.NodeAjaxLoading=function(){$(this).fadeTo('fast',.5).addClass('loading');return $(this);};$.fn.NodeAjaxLoaded=function(){$(document).toggleAllChildren();$(document).updateToggles();$(this).fadeTo('fast',1).removeClass('loading');if($(this).length>0){$window=$(this).closest('.popupWindow');if($window.length==0){$window=$(window);}
$window.scrollTo($(this),'slow',{offset:-100});}
$(this).closest('.nodeList').trigger('ajaxLoaded');$(document).makeSelectable();return $(this);};var $selectableDepth=-1;$.fn.makeSelectable=function(){if(!$selectableDepth){return $(this);}
if($selectableDepth==-1){$makeSelectable=$('.makeSelectable').first();$selectableDepth=$makeSelectable.parentsUntil('.nodeList').length;}
$editItems=$('.nodeList').find('[id*=Edit]');$updateNodes=$editItems.filter(function(){return $(this).parentsUntil('.nodeList').length==$selectableDepth;});$updateNodes.replaceWith(function(){$selectElement=$('<div class="selectable"></div>');$selectElement.append('<a href="#" class="selectableLink" onclick="return false;">&nbsp;</a>');$clone=$(this).clone();return $selectElement.append($clone);});$(document).trigger('selectableUpdate');return $(this);};$.fn.showChildren=function(targetEl){targetEl.slideDown('fast').removeClass(hideClass);targetEl.next().hide();$(this).removeClass('hide');collapseCache[$(this).attr('id')]=0;var toggleId=$(this).attr('id');var i=collapseCache.indexOf(toggleId);if(i!=-1){collapseCache.splice(i,1);}
return false;};$.fn.hideChildren=function(targetEl){targetEl.slideUp('fast').addClass(hideClass);targetEl.next().show();$(this).addClass('hide');if($(this).attr('id')===undefined){$(this).attr('id','toggle'+toggleCount++);}
var toggleId=$(this).attr('id');if(collapseCache.indexOf(toggleId)==-1){collapseCache.push(toggleId);}
return false;};$.fn.toggleChildren=function(forceAction){var childrenEls=$(this).parent().parent().children('[id*=Children]');var showChildren=childrenEls.hasClass(hideClass);if(typeof(forceAction)!='undefined'){showChildren=forceAction;}
if(showChildren){$(this).showChildren(childrenEls);}else{$(this).hideChildren(childrenEls);}
return false;};$.fn.toggleAllChildren=function(){$('[class*=nodeChildrenToggle][class*=hide]').toggleChildren(0);}
$.fn.updateToggles=function(){for(var i in collapseCache){$("#"+collapseCache[i]).toggleChildren(0);}};$.fn.selectNode=function(){if(selectedNode!==undefined){selectedNode.removeClass(selectClass);}
$(this).addClass(selectClass);selectedNode=$(this);return $(this);}
$.fn.lastLoaded=function(){if(lastLoadedNode!==undefined){lastLoadedNode.removeClass(lastLoadedClass);}
$(this).addClass(lastLoadedClass);lastLoadedNode=$(this);return $(this);}
$.fn.selectListInit=function(){$(this).attr('disabled','disabled').blur().removeAttr('disabled');if($(this).prev().attr('class')!='dropWindow'){var dropHold=$('<div class="dropHold">');var dropWin=$('<div class="dropWindow">');$(this).before(dropHold);dropWin.append('<h1>Select Action Step <a class="x" href="#">X</a></h1>');dropWin.css('z-index','100').append('<div class="dropDown">');dropHold.css('z-index','100').append(dropWin).append($(this));}else{var dropWin=$(this).prev();}
var url="/admin/work_plans/select/"+$(this).find('option:selected').attr('value');dropWin.addClass('loading');$.ajax({url:url,dataType:"html",success:function(msg){var dropDown=dropWin.removeClass('loading').show().find("[class*=dropDown]");dropDown.html(msg);},error:function(){alert('Could not load AJAX');}});};$.fn.selectListShow=function(){};$.fn.selectListHide=function(){$(this).hide().html('');return $(this);};$.fn.selectListCreate=function(){};})(jQuery);var hideClass='nodeListHidden';var selectClass='selectNode';var lastLoadedClass='lastLoaded';var collapseCache=new Array();var toggleCount=0;var selectedNode;var lastLoadedNode;$(document).ready(function(){$("div[id*=Add]").hide();$('.editNode').live('click',function(){var $listItem=$(this).parents('[id*=ListItem]').first();var targetEl=$listItem.find("div[id*=Edit]").first().show('slow').selectNode();return $(this).NodeAjaxClick(targetEl);});$('.addNode').live('click',function(){$(this).parents('[id*=ListItem]').first().find('[class*=nodeChildrenToggle]').first().toggleChildren(1);var targetEl=$(this).parents('[id*=ListItem]').first().children("div[id*=Children]").first().children("div[id*=Add]").first();if(targetEl.length==0){targetEl=$(this).parents('[id*=NodeList]').last().children("div[id*=Add]").first();}
targetEl.slideDown('slow').selectNode();return $(this).NodeAjaxClick(targetEl);});$('.refreshNode').live('click',function(){var targetEl=$(this).parents('[id*=ListItem]').first();if(targetEl.length==0){targetEl=$(this).parents('[id*=NodeList]').last();}
return $(this).NodeAjaxClick(targetEl);});$('.refreshParentNode').live('click',function(){if($(this).hasClass('del')&&!confirm('Delete this entry?')){return false;}
var targetEl=$(this).parents('[id*=ListItem]').first().parents('[id*=ListItem]').first();if(targetEl.length==0){targetEl=$(this).parents('[id*=NodeList]').last();}
return $(this).NodeAjaxClick(targetEl);});$('.cancelAdd').live('click',function(){var targetEl=$(this).parents('div[id*=Add]').first();targetEl.html('&nbsp;').slideUp('fast');return false;});$('.refreshList').live('click',function(){var targetEl=$(this).parents('[id*=ListItem]').last();return $(this).NodeAjaxClick(targetEl);});$('.nodeChildrenToggle').live('click',function(){return $(this).toggleChildren();});$('.nodeChildrenCollapseAll').live('click',function(){return $('.nodeChildrenToggle').toggleChildren(0);});$('.nodeChildrenShowAll').live('click',function(){return $('.nodeChildrenToggle').toggleChildren(1);});$('#nodeListFilter').live('change',function(){$(this).submit();});});
