function GetRadWindow() {
    var oWindow = null;

    if (window.radWindow) oWindow = window.radWindow;
    //Will work in Moz in all cases, including clasic dialog  
    else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow; //IE (and Moz az well)  

    return oWindow;
}

function GetInPageRadWindowManager() {
    //alert(RadWindowManagerInPageClientId);
    var oManager = $find(RadWindowManagerInPageClientId);
    //alert(oManager);

    return oManager;
}

function OpenLoginWindow() {
    var oManager = GetInPageRadWindowManager();
    oManager.open("./Login.aspx", "Login");
}

function OpenContentAddWindow(contentPageId, contentItemId, contentGroupId, extendContentGroup, controlHolderWidth) {
    var oManager = GetInPageRadWindowManager();
    oManager.open("./Editors/ContentEditor.aspx?PageId=" + contentPageId + "&PreviousItemId=" + contentItemId + "&GroupId=" + contentGroupId + "&extend=" + extendContentGroup + "&ControlHolderWidth=" + controlHolderWidth, "Popup");
}

function OpenEditorWindow(contentPageId, contentItemId, contentType, controlHolderWidth, contentControlHolderMode) {
    var oManager = GetInPageRadWindowManager();
    oManager.open("./Editors/" + DetermineEditorPage(contentType) + ".aspx?PageId=" + contentPageId + "&ItemId=" + contentItemId + "&ControlHolderWidth=" + controlHolderWidth + "&ContentControlHolderMode=" + contentControlHolderMode, "Popup");
}

function OpenEditorAddWindow(contentPageId, previousContentItemId, contentGroupId, contentGroupName, editorPageAndControlStyle, controlHolderWidth, contentControlHolderMode) {
    var array = editorPageAndControlStyle.split('|');
    var editorPage = array[0];
    var conditional = "";
    if (array.length > 1) {
        conditional = "&ControlStyle=" + array[1];
    }

    var querystringArguments = "arguments=noArguments";
    if (document.location.href.indexOf("?", 0) > 0) {
        querystringArguments = document.location.href.split("?")[1];
        querystringArguments = document.location.href.split("?")[1];
        
        //Remove PageId because it is added later
        if (querystringArguments.indexOf("PageId") > -1) {
            querystringArguments = querystringArguments.replace("PageId", "IpPageId");
        }
        if (querystringArguments.indexOf("pageId") > -1) {
            querystringArguments = querystringArguments.replace("pageId", "IpPageId");
        }
        if (querystringArguments.indexOf("pageid") > -1) {
            querystringArguments = querystringArguments.replace("pageid", "IpPageId");
        }
    }

    var oManager = GetInPageRadWindowManager();
    oManager.open("./Editors/" + editorPage + ".aspx?PageId=" + contentPageId + "&PreviousItemId=" + previousContentItemId + "&GroupId=" + contentGroupId + "&GroupName=" + contentGroupName + "&extend=true" + conditional + "&ControlHolderWidth=" + controlHolderWidth + "&ContentControlHolderMode=" + contentControlHolderMode + "&" + querystringArguments, "Popup");

}

function OpenContentDeleteWindow(contentItemId, contentPageId) {
    var oManager = GetInPageRadWindowManager();
    oManager.open("./Editors/ContentDelete.aspx?ItemId=" + contentItemId + "&PageId=" + contentPageId + "&Delete=true", "Popup");
}

/* Close RadWindow and execute parent javascript function */
function CallFunctionOnParentPageAndCloseWindow(fnName) {
    GetRadWindow().Close();

    if (window[fnName]) {
        window[fnName]();
    }
}

/* Sitemap Editor */
function OpenSiteMapEditor() {
    $("#ToolbarDiv").css('z-index', 1);
    $(".InPage_PublicationTypeNotification").css('z-index', 1);
    var oManager = GetInPageRadWindowManager();
    oManager.open("./Editors/SiteMapEditorFull.aspx", "Popup");
}

function OpenPageEditorWindow(pageId) {
    var oManager = GetInPageRadWindowManager();
    oManager.open("./Editors/PageEditor.aspx?PageId=" + pageId, "Popup");
}
/*
function OpenSiteMapPageEditorWindow(pageId, parentPageId) {
var oManager = GetInPageRadWindowManager();
oManager.open("SiteMapEditorFull.aspx?PageId=" + pageId + "&ParentPageId=" + parentPageId, "Popup");
}*/

/* Refresh parent window */
function RefreshPage() {
    window.location.href = unescape(window.location);
}

/* Auto hide scrollbars */
function OnClientShow(sender, args) {
    /* Center RadWindow */
    sender.center();

    /* Make iFrame Transparent */
    sender._iframe.allowTransparency = true;

    var oTop;
    if (document.documentElement && document.documentElement.scrollTop) {
        oTop = document.documentElement.scrollTop;
        document.documentElement.scroll = "no";
        document.documentElement.style.overflow = "hidden";
        document.documentElement.scrollTop = oTop;

    } else if (document.body) {
        oTop = document.body.scrollTop;
        document.body.style.overflow = "hidden";
        document.body.scrollTop = oTop;
    }
}

/* Reset window size and scrollbars */
function OnClientClose(sender) {
    if (document.documentElement && document.documentElement.scrollTop) {
        document.documentElement.scroll = "";
        document.documentElement.style.overflow = "";
    } else if (document.body) {
        document.body.scroll = "";
        document.body.style.overflow = "";
    }
}

/* Close Window */
function CloseWindow() {
    GetRadWindow().Close();
}

/* Show popup window */
function ShowForm(url, name) {
    if (name == 'Help') {
        window.open(url, name, 'left=20,top=20,width=740,toolbar=0,location=0,status=0,menubar=0,scrollbars=yes,resizable=yes');
    } else {
        window.open(url, name);
    }
}

function OpenPopUpWindow(url, strWidth, strHeight) {
    windowProperties = "toolbar=no,menubar=no,scrollbars=no,statusbar=no,height=" + strHeight + ",width=" + strWidth + ",left=50,top=50";
    window.open(url, 'newWin' + url, windowProperties);
}

function GetSelectedContentTypeAndStyle(clientId) {
    var comboBox = $find(clientId);

    if (comboBox.get_value()) {
        var array = comboBox.get_value().split('|');
        return DetermineEditorPage(array[0]) + "|" + array[1];

    } else {
        return DetermineEditorPage(comboBox.get_text());
    }
}

function DetermineEditorPage(contentType) {
    switch (contentType) {
        case "Banner":
            return "BannerEditor";
        case "BulletList":
            return "BulletListEditor";
        case "CommunityWidget":
            return "CommunityWidgetEditor";
        case "Download":
            return "DownloadEditor";
        case "FAQ":
            return "FAQEditor";
        case "Flash":
            return "FlashEditor";
        case "FlickrFountain":
            return "FlickrEditor";
        case "FlickrAlbum":
            return "FlickrAlbumEditor";
        case "Html":
            return "ContentEditor";
        case "HtmlLayout":
            return "HtmlLayoutEditor";
        case "ImageButton":
            return "ImageButtonEditor";
        case "NewsLetter":
            return "NewsLetterEditor";
        case "PersonalMessage":
            return "PersonalMessageEditor";
        case "Quote":
            return "QuoteEditor";
        case "RSS":
            return "RSSEditor";
        case "Rotator":
            return "RotatorEditor";
        case "ShareButton":
            return "ShareButtonEditor";
        case "Table":
            return "TableEditor";
        case "Template":
            return "TemplateEditor";
        case "Ticker":
            return "TickerEditor";
        case "WeblogItem":
            return "WeblogItemEditor";
        case "YouTubeVideo":
            return "YouTubeEditor";
        case "NewsItem":
            return "NewsItemEditor";
        case "TwitterFountain":
            return "TwitterEditor";
        case "CountDown":
            return "CountDownEditor";
        case "Agenda":
            return "AgendaEditor";
        case "ParticipantCountDown":
            return "ParticipantCountDownEditor";
        case "ShareThisPage":
            return "ShareThisPageEditor";
        default:
            return "ContentEditor";
    }
}

function confirm_delete(text) {
    if (confirm(text) == true)
        return true;
    else
        return false;
}

/* disable hyperlnks in popup windows */
function disableLinksDuringPreview(divId) {
    $("#" + divId).click(function() {
        return false;
    });
}
