function submitSearch()
{
    var location = encodeURI($("#location").val());
    var keyword = encodeURI($("#keyword").val());
    //if(location === $("#location").attr('title')) {
    //    location = "";
    //}
    if(keyword ==="") {
        keyword = "all";
    }
    if(location ==="") {
        location = "anywhere";
    }

    var url = '/search/' + keyword + '/in/' + location + '/';
    $.get(url, function(data) {
    $('#searchResults').html(data);
    updateFavorites();
    });
}

function setResultsCount(count)
{
    var url = '/jobs/setresultscount/' + count;
    $.get(url, submitSearch);
}

function getJobCategoryFields()
{
    var url = '/jobs/add/categoryFields';
    var industry = $('#id_industry').val();
    $.get(url, {'industry': industry}, function(data) {
        $('#jobCategories').html(data);
        });
}

function toggleFavorite(link)
{
    if ($(link).hasClass('starred'))
    {
        var url = '/favorites/remove/' + link.id + '/';
        $.get(url);
    } else
    {
        var url = '/favorites/add/' + link.id + '/';
        $.get(url);
    }
    $(link).toggleClass('starred');
    fetchFavorites = true;
}

function submitCurrentForm()
{
    document.forms[0].submit();
}

function updateFavorites()
{
    if(fetchFavorites)
    {
        favoritesArray = [];
        $.getJSON('/favorites/list/', function(data) {
            favoritesArray = data;
        });
        fetchFavorites = false;
    }

    for (var i=0; i<favoritesArray.length; i++)
    {
        var favId = '#'+favoritesArray[i].pk;
        $(favId).addClass('starred');
    }
}

function submitResume()
{
    $('.lineId').after(
        function(index){
            return '<input type="hidden" name="order[]" value="' + index + '" />';
        }
    )
    $('#builderForm').submit();
}

function deleteThis()
{
        elt = $(this).parents('fieldset');
        elt.parent().append('<input type="hidden" value="' + elt.children().children().first().val() + '" name="delete[]" />');
        elt.remove();
        hideUpDownLinks();
}

function observeLinks()
{
    hideUpDownLinks();
    $('a.moveup').click(moveUp);
    $('a.movedown').click(moveDown);
    $('a.delete').click(deleteThis);
    $('a.addEducation').click(addEducation);
    $('a.addExperience').click(addExperience);
    $('a.addFree').click(addFreeSection);
}

function hideUpDownLinks()
{
    $('a.moveup').each( function() {
        $(this).show();
        if($(this).parents('fieldset').prev().is('fieldset'))
        {
            $(this).show();
        } else
        {
            $(this).hide();
        }
    });
    
    $('a.movedown').each (function() {
        $(this).show();
        if($(this).parents('fieldset').next().is('fieldset'))
        {
            $(this).show();
        } else
        {
            $(this).hide();
        }
    });
}

function moveDown()
{
    var elt = $(this).parents('fieldset');
    elt.insertAfter(elt.next());
    observeLinks();
}

function moveUp()
{
    var elt = $(this).parents('fieldset');
    elt.insertBefore(elt.prev());
    observeLinks();
}

function addEducation()
{                
    elt = $(this).parent('fieldset');
    var exId = "ex" + newExCount;
    newExCount += 1;
    if(!elt.is('fieldset'))
    {
        $('#educations').append('<fieldset id="' + exId + '" class=" education">' + $('#edtemplate').html() +' </fieldset>');
    } else
    {
        elt.after('<fieldset id="' + exId + '" class=" education"> ' + $('#edtemplate').html() + '</fieldset>');
    }
    observeLinks();
}

function addExperience()
{                
    elt = $(this).parent('fieldset');
    var exId = "ex" + newExCount;
    newExCount += 1;

    if(!elt.is('fieldset'))
    {
        $('#experiences').append('<fieldset id="' + exId + '" class=" experience">' + $('#extemplate').html() + '</fieldset>');
    } else
    {
        elt.after('<fieldset id="' + exId + '" class=" experience">' + $('#extemplate').html() + '</fieldset>');
    }
    observeLinks();
}

function addFreeSection()
{
    elt = $(this).parent('fieldset');
    var exId = "ex" + newExCount;
    newExCount += 1;
    alert('hmmm');
          
    if(!elt.is('fieldset'))
    {
        alert('is not fieldset');
        $('#freesections').append('<fieldset id="' + exId + '" class=" freesection">' + $('#freetemplate').html() + '</fieldset>');
    } else
    {
        alert('is a fieldset?');
        elt.after('<fieldset id="' + exId + '" class=" freesection">' + $('#freetemplate').html() + '</fieldset>');
    }
    observeLinks();
}
