﻿//YAHOO.util.Event.on('mainBg', 'mouseover', HideSliders);

function GoToCampaign(isShowErrorOnEmptyCode)
{
    var code = document.getElementById('jobCode').value;
    if (code=='')
    {
        if(isShowErrorOnEmptyCode)
            alert(Resources_Errors_CampaignCodeMustHaveProperLength);
        return;
    }
    if (code.length!=4)
    {
        alert(Resources_Errors_CampaignCodeMustHaveProperLength);
        return;
    } 
      
    window.location = '/candidate/campaign.aspx?' + POSITION_CAMPAIGN + '=' + code;
}
function Login()
{
    var email = document.getElementById(_emailId).value;
    var password = document.getElementById(_passwordId).value;
        
    if (!IsValidLoginInfo(email, password))
        return;
      
    var serverRequest = JS_AJAX_LOGIN + FIELD_DELIMITER + email + FIELD_DELIMITER + password;
    Get(serverRequest, '');        
}
function IsValidLoginInfo(email, password)
{
    if (email=='')
    {
        alert(Resources_Errors_EmailRequired);
        return false;
    }
    
    if (password=='')
    {
        alert(Resources_Errors_PasswordRequired);
        return false;
    }
    
    return true;
}
function MultiUserLogin(userTypeId)
{
    HideAllDialogs();
    
    var email = document.getElementById(_emailId).value;
    var password = document.getElementById(_passwordId).value;
        
    if (!IsValidLoginInfo(email, password))
        return;
        
    var serverRequest = JS_AJAX_LOGIN_BY_USER_TYPE + FIELD_DELIMITER + userTypeId + FIELD_DELIMITER + email + FIELD_DELIMITER + password;
    Get(serverRequest, '');
}
                              
function ShowBg(el) {
    Show(el);
    SetFullScreen(el);
}
function FadeInBg(el) {
    ShowBg(el);
    var attr = { opacity: {to: .5} };
    var fadeIn = new YAHOO.util.Anim(el, attr, 1);
    fadeIn.animate();
} 
function ShowOptions() {
    HideSliders();
    AnimateSlider('slider_options', 0);
} 
function HideOptions() {
    AnimateSlider('slider_options', -45);
}     
function AnimateSlider(el, yPos) {
    var attr = { top: { to: yPos } };
    var sliderAnim = new YAHOO.util.Anim(el, attr, .5, YAHOO.util.Easing.easeOutStrong);
    sliderAnim.animate();
}    
function ToggleSlider(el) {
    if (document.getElementById(el).offsetTop >= 0) {
        AnimateSlider(el, -80);
    }
    else {
        HideOptions();
        AnimateSlider(el, 0);
    }
} 
function ToggleCodeSlider() {
    var el = 'slider_code';
    ToggleSlider(el);
    try{document.getElementById('jobCode').focus();}
    catch(e){}
}
function ToggleRegisterSlider() {
    var el = 'slider_register';
    ToggleSlider(el);
}
function ToggleSignInSlider() {
    var el = 'slider_signIn';
    ToggleSlider(el);
}
function HideSliders(except) {
    var sliders = new Array('slider_code', 'slider_register', 'slider_signIn')
    
    for (var j = 0; j < sliders.length; j++)
    {
        var slider = sliders[j];
        if (slider != except  &&  document.getElementById(slider).offsetTop >= 0)
            AnimateSlider(slider, -80);
    }

    //Hide('mainBg');
}
function ShowMultiLoginDialog(isShowApplicant, isShowManager, isShowPromoter, isShowRecruiter)
{
    ConfigureVisibility('lnkApplicantLogin',isShowApplicant);
    ConfigureVisibility('lnkManagerLogin',isShowManager);
    ConfigureVisibility('lnkRecruiterLogin',isShowPromoter);
    ConfigureVisibility('lnkPromoterLogin',isShowRecruiter);
    
    ShowDialog('MultiLoginDialog');
}
function initOverLabels () 
{
  if (!document.getElementById) return;      

  var labels, id, field;

  // Set focus and blur handlers to hide and show 
  labels = document.getElementsByTagName('label');
 
  for (var j = 0; j < labels.length; j++) {
    if (labels[j].className == 'hidden') {
          // Skip labels that do not have a named association with another field.
          id = labels[j].htmlFor || labels[j].getAttribute('for');
          if (!id || !(field = document.getElementById(id))) {
            continue;
          } 
          
          // Change the applied class to hover the label over the form field.
          labels[j].className = 'overlay';

          // Hide any fields having an initial value.
          if (field.value !== '') {
            hideLabel(field.getAttribute('id'), true);
          }

          // Set handlers to show and hide labels.
          field.onfocus = function () {
            hideLabel(this.getAttribute('id'), true);
          };
          field.onblur = function () {
            if (this.value === '') {
              hideLabel(this.getAttribute('id'), false);
            }
          };

          // Handle clicks to label elements (for Safari).
          labels[j].onclick = function () {
            var id, field;
            id = this.getAttribute('for');
            if (id && (field = document.getElementById(id))) {
              field.focus();
            }
          };
        }
    }
}
function hideLabel (field_id, hide) 
{
  var field_for;
  var labels = document.getElementsByTagName('label');
  for (var j = 0; j < labels.length; j++) {
    field_for = labels[j].htmlFor || labels[i].getAttribute('for');
    if (field_for == field_id) {
      labels[j].className = (hide) ? 'hidden' : 'overlay';
      return true;
    }
  }
}
window.onload = function () 
{
  setTimeout(initOverLabels, 50);
};



var Dom = YAHOO.util.Dom;
var expandClassName = 'expand';

function Toggle(q) {
    var qli = Dom.getAncestorByTagName(q, 'li');
    var shouldExpand = qli.className == '';
    
    CollapseAll(q);
    if (shouldExpand)
        Expand(q, qli);
}
function Expand(q, qli) {
    Dom.addClass(qli, expandClassName);
    var as = Dom.getElementsByClassName('answer','div',qli,ExpandAnswer);
}
function ExpandAnswer(a) {
    Anim(a, 0, a.scrollHeight);
}
function CollapseAnswer(a) {
    if (a.offsetHeight > 0)
        Anim(a, a.scrollHeight, 0);
}
function CollapseAll(q) {
    var qul = Dom.getAncestorByTagName(q, 'ul');
    var qlis = qul.getElementsByTagName('li');
    
    for (var j=0;j<qlis.length;j++) {
        var qli = qlis[j];
        Dom.removeClass(qli, expandClassName)
        var as = Dom.getElementsByClassName('answer','div',qli,CollapseAnswer);
    }
}
function Anim(el, fromAttr, toAttr) {
    var attr = {
		height : {
			from : fromAttr,
			to : toAttr
		}
	}
    var toggleAnim = new YAHOO.util.Anim(el, attr, .2, YAHOO.util.Easing.easeOut);
    toggleAnim.animate();
}
function Flip(from, to)
{
    
    //FadeIn(from);
    Hide(from);
    Show(to);
}
function FadeIn(el)
{
    var attr = {   
        opacity: { to: 0 }   
    };   
    
    var fadeAnim = new YAHOO.util.Anim(el, attr);  
    fadeAnim.animate()
}
