﻿// JScript File
var progress


function SelectAllCheckboxes(spanChk)
{

 // Added as ASPX uses SPAN for checkbox
 var oItem = spanChk.children;
 var theBox= (spanChk.type=="checkbox") ? 
      spanChk : spanChk.children.item[0];
 xState=theBox.checked;
 elm=theBox.form.elements;

 for(i=0;i<elm.length;i++)
   if(elm[i].type=="checkbox" && 
            elm[i].id!=theBox.id)
   {
     //elm[i].click();
     if(elm[i].checked!=xState)
       elm[i].click();
     //elm[i].checked=xState;
   }
}

function ShowProgress()
{
  progress = document.createElement("div");
  progress.id = 'progress';
  progress.innerHTML = 'Загрузка...';
  progress.className = 'progress';
  window.document.body.appendChild(progress);
  
  var scrollLeft = (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
  var scrollTop = (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
  
  var clientWidth;
  if (window.innerWidth) 
      clientWidth = ((Sys.Browser.agent === Sys.Browser.Safari) ? window.innerWidth : Math.min(window.innerWidth, document.documentElement.clientWidth));
  else 
      clientWidth = document.body.clientWidth;
  
  var clientHeight;
  if (window.innerHeight) 
      clientHeight = ((Sys.Browser.agent === Sys.Browser.Safari) ? window.innerHeight : Math.min(window.innerHeight, document.documentElement.clientHeight));
  else 
      clientHeight = document.body.clientHeight;

  var top = Math.round(scrollTop + clientHeight/2 - progress.offsetHeight/2);
  var left = Math.round(scrollLeft + clientWidth/2 - progress.offsetWidth/2);
  Sys.UI.DomElement.setLocation(progress, left, top);
}

function HideProgress()
{
  //var progress = $get('progress');
  window.document.body.removeChild(progress);
}


function onGetOrganizationSuggestions(keyword, usePaging, pageIndex, pageSize, callbackMethod) {
    TRACE("onGetOrganizationSuggestions");

    VacancySearcher.GetOrganizationSuggestions(keyword, false, usePaging, pageIndex, pageSize, callbackMethod);
}

    
function onGetProfessionSuggestions(keyword, usePaging, pageIndex, pageSize, callbackMethod)
{
    TRACE("onGetProfessionSuggestions");
    
    //var ddlProfessionGroupId=$get('hf_ddlProfessionGroupId').value;
    //var ddlProfessionGroup = $get(ddlProfessionGroupId);
    //var professionGroupId = ddlProfessionGroup.value;
    var groupid=-1;
    if($get('hf_asmProfessionGroupId')!=null)
    {
    var ddlProfessionGroupId = $get('hf_asmProfessionGroupId').value
    var asmProfessionGroup = AutoSuggestMenu.getMenu(ddlProfessionGroupId);
    groupid = parseInt(asmProfessionGroup.getSelectedValue(), 10);
    if (isNaN(groupid))
        groupid = -1;
    }
    VacancySearcher.GetProfessionSuggestions(keyword,groupid, usePaging, pageIndex, pageSize, callbackMethod);
}

function onGetProfessionGroupSuggestions(keyword, usePaging, pageIndex, pageSize, callbackMethod) {
    TRACE("onGetProfessionGroupSuggestions");

    //var ddlProfessionGroupId=$get('hf_ddlProfessionGroupId').value;
    //var ddlProfessionGroup = $get(ddlProfessionGroupId);
    //var professionGroupId = ddlProfessionGroup.value;

    VacancySearcher.GetProfessionGroupSuggestions(keyword, usePaging, pageIndex, pageSize, callbackMethod);
}
     
function onProfessionTextBoxUpdate(evt)
{
    TRACE("onProfessionTextBoxUpdate");
    
//    //Check if country asm already has a value
//    var asmCountry=AutoSuggestMenu.getMenu("asmCountry");
//   
//    var countryCode=asmCountry.getSelectedValue();
//    if ((countryCode!="") && (countryCode!=null))
//        return;
//        
//    //If it doesn't pull it from server side using city code
//    var asmCity=AutoSuggestMenu.getMenu("asmCity");
//    PageMethods.GetCountryInfo(asmCity.getSelectedValue(), onCityTextBoxUpdateCallback);
//    
//    //Don't set the value of text box with menuitem label.  Do it in onCityTextBoxUpdateCallback.
//    evt.preventDefault();
}


        
//Get country information from city code
function onProfessionTextBoxUpdateCallback(jsonData)
{
    var json=eval("(" + jsonData + ")");      
//    
//    //Set city name
//    var asmCity=AutoSuggestMenu.getMenu("asmCity");
//    var textBox=$(asmCity.textBoxID);
//    textBox.value=json.cityName;
//    
//    //Set country name and code
//    var asmCountry=AutoSuggestMenu.getMenu("asmCountry");
//    asmCountry.setSelectedValue(json.countryCode);
//    
//    textBox=$(asmCountry.textBoxID);
//    textBox.value=json.countryName;
}

//function onProfessionGroupChange(eventElement)
//{
//    var asmProfessionId = $get('hf_asmProfessionId').value;
//    var asmProfession=AutoSuggestMenu.getMenu(asmProfessionId);
//    asmProfession.setSelectedValue('');
//    var txtProfession = $get(asmProfession.textBoxID);
//    txtProfession.value = '';
//}
