// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

function toggleNav(ulId) {
  if (document.getElementById(ulId).className == "nav") {
    document.getElementById(ulId).className = "navexpanded";
    document.getElementById(ulId + "2").style.display = "block";
  } else {
    document.getElementById(ulId).className = "nav";
    document.getElementById(ulId + "2").style.display = "none";
  }
  return false;
}

function highlightNav(oController) {
  if (oController.match(/^talent_pool/)) {
    oController = "talent_pools";
  }
  try {
    document.getElementById("nav" + oController).className = "navselected";
    document.getElementById("nav" + oController + "2").className = "nav2selected";
  } catch (e) { false }

}

// onclick="setChecked(this)" set all checkboxes to the status of this
function setChecked(chkbxAll, theform){
  if(theform == null){
    theform = 'frmPublish'
  }
  var status=document.getElementById(chkbxAll.id).checked;
  var i=document.forms[theform].elements.length;
  while(i--){
    if(document.forms[theform].elements[i].type=='checkbox' && document.forms[theform].elements[i].disabled==false){
      document.forms[theform].elements[i].checked=status;
    }
  }
}
// setCurrentLink('<%=controller.controller_name%>') from the bottom of application.rhtml, sets the active link
function setCurrentLink(currentControllerName){
  try{
    $(currentControllerName).className='current';
  }catch(e){
    false
  }
}
function editAnswers(element_id){
  $('screen_blanker').className='screen_blanker';
  $('edit_question_element_answers').className='screen_overlay';
}

function editAnswersDone(element_id){
  $('screen_blanker').className='remove_from_screen';
  $('edit_question_element_answers').className='remove_from_screen';
}
function set_checked(status){
  for (var i = 0; i<document.response_form.elements.length; i++) {
    if(document.response_form.elements[i].type=="checkbox"){
      id=document.response_form.elements[i].id.replace(/ola_response_id_/,'');
      if(status == document.response_form.eval('ola_response_status_'+id).value){
        if(document.response_form.elements[i].checked==true){document.response_form.elements[i].checked=false;}else{document.response_form.elements[i].checked=true;}
      }
    }
  }
}

function set_fields_disabled(form_id){
    for(var i = 0;i < document.getElementById(form_id).elements.length; i++){
        //alert(document.getElementById(form_id).elements[i]);
        document.getElementById(form_id).elements[i].disabled=true;
    }
}

function remove_flash(flash){
  $(flash.id).style.display='none';
}

function setSortOrderImage(params){

  // get the value of the :by symbol, strip out unwanted chars and replace the middle '.' with '_'
  var sortBy            = String(params.match(/"by"=>".[\w\.:\[\]]*/));
  if (sortBy != 'null'){
    try{var sortBy        = String(sortBy).split('".')[1].replace(".","_");}
   catch(err){var sortBy = String(sortBy).split('"[:')[1].replace(".","_").replace("]","");}
  }else{sortBy = "updated_at";}

  // get the value of the :by symbol (if it exists), strip out unwanted chars and replace the middle '.' with '_'
  var sortCurr          = String(params.match(/"currently"=>".[\w\.:\[\]]*/));
  if (sortCurr != 'null'){
    try{var sortCurr        = String(sortCurr).split('".')[1].replace(".","_");}
    catch(err){var sortCurr = String(sortCurr).split('"[:')[1].replace(".","_").replace("]","");}
  }else{sortCurr = "";}

  //work out asc or dec based on mathcing the symbols
  if(sortBy != sortCurr){
    $(sortBy).className='sort_dec';
  }else{
    $(sortBy).className='sort_asc';
  }

}

function confirmSubmit(message){
  var answer = confirm(message);
  if(answer){return true;}else{return false;}
}

var ajaxIndicator = {}
ajaxIndicator = {
  busyAjax: function(el) {
    Element.show(el);
  },
  idleAjax: function(el) {
    Element.hide(el);
  }
}

function toggleList(s) {
    var qPropList = document.getElementsByClassName("qsproperties");
    if (s == 0) {
    for (var i = 0; i < qPropList.length; i++) {
        qPropList[i].hide();
    }
    } else {
    for (var i = 0; i < qPropList.length; i++) {
        qPropList[i].show();
    }
    }
  }