var singlesignon_popup = null;

$(function () {
    $('a[rel^=singlesignonpopup]').each(function () {
        $(this).click(function () {
            openSinglesignon($(this).attr('href'), $(this).attr('title'));
            return false;
        });
    });
    
    $('div[class^=snttsinglesignon]').each(function () {
        $(this).click(function () {
            $(this).children('a').click();
            return false;
        });
    });
});

/**
 * Blendet ein Block Overlay ein/aus auf der Hauptseite.
 */
function showBlocker(bool)
{
    if (bool)
    { //Singlesignon Blocker Overlay anzeigen auf der Hauptseite
        $(document).overlay({'dimmer':true, 'closeByClick': false});
        $(document).overlay('show');
    } else 
{ //Singlesignon Blocker Overlay ausblenden
        $(document).overlay('hide');
    }
}

/**
 * Öffnet einen SingleSignOn im Popup.
 */
function openSinglesignon(url, topic, parameters, centered)
{
    showBlocker(true);
    w = 750;
    h = 550;
    if (!centered)
    {
        var padding; 
        (navigator.appName == "Microsoft Internet Explorer") ? (padding = 10) : (padding = 0);
        var screenw = screen.width;
        var screenh = screen.availHeight; 
        var winw = parseInt(w + 15 + padding); 
        var winh = parseInt(h + 15 + padding); 
        var posx = parseInt(screenw / 2) - (winw / 2) + screen.availLeft; 
        var posy = parseInt(screenh / 2) - (winh / 2) + screen.availTop; 
        centered = "top="+posy+",left="+posx+",width="+winw+",height="+winh;
    } else {
        centered = '';
    }
    if (!parameters)
        parameters = "width="+w+",height="+h+","+centered+"status=yes,scrollbars=yes,resizable=yes,location=no,dependent=yes";
    if (!topic)
        topic = 'SingleSignOn';
    singlesignon_popup = window.open(url, topic, parameters);
    $(singlesignon_popup).focus();
    checkPopup();
}

/**
 * Prüft ob das Popup geschlossen wurde um den Blocker zu entfernen.
 */
function checkPopup() {
    if (singlesignon_popup)
        if (!singlesignon_popup.closed)
            window.setTimeout('checkPopup()', 100);
        else
            showBlocker(false);
}
