﻿function AddToFavorites(caseId, element) {
    var org = $(element)
    var target = $("#InspirationCasePad");
    var anim = $("<div style='border: dashed 2px black; position:absolute;'></div>")
            .css("top", org.offset().top)
            .css("z-index", "100000")
            .css("left", org.offset().left)
            .css("width", org.width())
            .css("height", org.height())
            .appendTo('#aspnetForm');
    anim.animate({
        "left": target.offset().left,
        "top": target.offset().top
    }, 400, function() {
        anim.hide(100);
        anim.remove();
        Magnetix.Stark.Starkdk.Presentation.Web.Services.InspirationCaseService.AddToInspirationCaseFavorites(caseId, OnAddFavoriteComplete);
    });
}

function OnAddFavoriteComplete(caseLink) {
    var link = $("#InspirationCasePadLink")
    if (link.is(':hidden'))
        mgntxToggle(link[0]);
    var list = $("#InspirationCaseList").show();
    if (caseLink != null) {
        var newElement = $(String.format("<div id='fav_{0}' class='ProjectLinkWrapper'><a href='{1}' class='ProjectLink'>{2}</a><a href='javascript:void(0);' rel='{3}' class='ProjectLinkDelete'><img src='/Gfx/Small-Delete.png' alt='Slet' /></a></div>", caseLink.FavoriteId, caseLink.Link.Url, caseLink.Link.Name, caseLink.FavoriteId));
        list.append(newElement);
        InitFavoriteDeleteLinks();
        //show the object with blink effect
        newElement.fadeIn(100).fadeOut(100).fadeIn(100).fadeOut(100).fadeIn(100).fadeOut(100).fadeIn(100);
        UpdateFavoriteCount(1);
    }
    showGrowl('Inspirationsprojekt blev gemt som favorit');
}

function InitFavoriteDeleteLinks() {
    $(".ProjectLinkDelete").unbind("click").click(function() {
        if (confirm('Er du sikker på du vil slette denne favorit')) {
            var favid = this.rel;
            Magnetix.Stark.Starkdk.Presentation.Web.Services.InspirationCaseService.DeleteInspirationCaseFavorite(favid, OnDeleteFavoriteComplete);
        }
    });
}

function UpdateFavoriteCount(counter) {
    var link = $("#InspirationCasePadLink");
    var count = parseInt(link.attr("rev"));
    count += counter;
    link.attr("rev", count);
    link.html(String.format("Inspirationsprojekter ({0})", count));
    if (count == 0) {
        mgntxToggle(link[0]);
    }

}

function OnDeleteFavoriteComplete(target) {
    $(String.format("#fav_{0}", target)).hide(500);
    UpdateFavoriteCount(-1);
    showGrowl('Favorit blev slettet');
}

var addthis_config = { services_compact: 'facebook,favorites,twitter,email,print,google,igoogle,live,linkedin,more', ui_click: true };
