﻿function ClickButton(e, buttonId) {
    var evt = e ? e : window.event;
    var button = document.getElementById(buttonId);
    if (button) {
        if (evt.keyCode == 13) // Enter key code
        {
            button.click();
            return false;
        }
    }
}

function ClearText(element, defaultText) {
    if (element.value == defaultText)
        element.value = '';
}
function SetDefaultText(element, defaultText) {
    if (element.value == '')
        element.value = defaultText;
}

function RedirectToSearchPage(currentLocation, queryParam, keywordTxtId, defaultText) {
    var index = currentLocation.indexOf('?');

    var neededLocation = currentLocation.substr(0, (index > 0 ? index : currentLocation.length));

    var keyword = document.getElementById(keywordTxtId).value == defaultText ? "" : document.getElementById(keywordTxtId).value;

    window.location.href = neededLocation + '?' + queryParam + '=' + keyword;
}

function ExtendHomePageBanner(bannerId) {
    var banner = $('#' + bannerId);

    banner.mouseenter();
}

function GetVacanciesCount(url, departmentsId, locationsId, keywordsId, defaultText, GetVacanciesCountCompleete) {
    var department = $('#' + departmentsId).val();
    var location = $('#' + locationsId).val();
    var keyword = $('#' + keywordsId).val();

    var parameters = "{Department:'" + department + "',Location:'" + location + "',Keyword:'" + keyword + "',DefaultText:'" + defaultText + "'}";

    $.ajax({
        type: "POST",
        url: url,
        data: parameters,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: GetVacanciesCountCompleete
    });
}

function GetRealHeight(contentHolder) {
    var temp = $("<div>").css("position", "absolute").css("left", "-1000px").css("width", contentHolder.width()).append(contentHolder.html());

    $("body").append(temp);

    var h = temp.height();
    temp.remove();

    return h;
}

function CorrectYouTubeOrImageHolderHeight(divsCss) 
{    
    $(divsCss).each(function() 
    {
        var realHeight = GetRealHeight($(this));        

        if ($(this).height() > realHeight) 
        {
            $(this).css("height", realHeight);
        }
    });
}

function ImportStatus(url, commandCompleete) {
    ImportStatus(url, commandCompleete, "GetStatus")
}

function ImportStatus(url, commandCompleete, command) {
    $.ajax({
        type: "POST",
        url: url + "?c=" + command,
        //data: parameters,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: commandCompleete
    });
}

// Left menu functions block

function Tab(num) 
{
    $('#div1').hide();
    $('#div2').hide();
    $('#div3').hide();
    $('#div4').hide();
    $('#div' + num).show();

    Highlignt(num);
    stretchMainBackground();
}

function Highlignt(num) 
{
    Cufon.replace('#billetPerson li', { hover: true });
    Cufon.replace('#billetWorkfield li', { hover: true });
    Cufon.replace('#billetYourCarrier li', { hover: true });

    $('#a1').removeClass('active');
    $('#a2').removeClass('active');
    $('#a3').removeClass('active');
    $('#a4').removeClass('active');

    if (num == "1") $('#a1').css("color", "#13670b"); else $('#a1').css("color", "#969696");
    if (num == "2") $('#a2').css("color", "#13670b"); else $('#a2').css("color", "#969696");
    if (num == "3") $('#a3').css("color", "#13670b"); else $('#a3').css("color", "#969696");
    if (num == "3") $('#a4').css("color", "#13670b"); else $('#a4').css("color", "#969696");
    $('#a' + num).addClass('active');
    
    Cufon.refresh();
}

function SetCurrentTab(currentTabCookieName) 
{
    var cookieValue = $.cookie(currentTabCookieName);
    var currentTab = (cookieValue == null) ? 1 : cookieValue;

    Tab(currentTab);    
}

function ChangeTabAndSaveTubNumber(currentTabCookieName, tabNumber, expiresTimeInSeconds) 
{
    Tab(tabNumber);

    var expiresTime = expiresTimeInSeconds / (24 * 60 * 60);
    $.cookie(currentTabCookieName, tabNumber, { expires: expiresTime, path: '/' });
    // Next line is stub that fix function stretchMainBackgroun if height of main-background is very high
    //ToDo: functiom stretchMainBackground should be reworked by Maxim Komarov
    $('div.main-background').css('height', '150px');
    stretchMainBackground();
}

function RemoveCookiesByNameTemplate(cookieTemplate, currentCookie) 
{
    var cookies = { };

    if (document.cookie && document.cookie != '') 
	{
	    var split = document.cookie.split(';');
	    for (var i = 0; i < split.length; i++) 
	    {
	        var name_value = split[i].split("=");

	        var cookieName = decodeURIComponent(name_value[0].replace(/^ /, ''));	        
	        if (cookieName != currentCookie && cookieName.contains(cookieTemplate)) 
	        {
	            $.cookie(cookieName, null);
	        }
	    }
    }	 
}

// end of Left menu functions block

function SubmitSearch() {
    var globalSearchQuery = $('#'+globalSearchQueryId);
    if (globalSearchQuery.val() != globalSearchDefaultText && globalSearchQuery.val().length > 0) {
        doSearchPostBack();
    }
    return false;
}

function TrackEvent(category, action) {
    TrackEvent(category, action, '')    
}

function TrackEvent(category, action, label) {
   TrackEvent(category, action, label,'')
}

function TrackEvent(category, action, label, value) {
    if (typeof (_gaq) != "undefined") {
        _gaq.push(['_trackEvent', category, action, label, value]);
    }
}
