﻿function TargetObject(name) {
    try {
        return document[name];
    }
    catch (Exception) {
        alert('TargetObject() Exception: ' + Exception.description);
    }
}
function Trace(message) {
    alert(message);
}
function Back() {
    history.go(-1);
    //if (window.location.pathname === "/Secure/ViewGroup.aspx") { window.location.href = "/Secure/Search.aspx"; }
   // else if (window.location.pathname === "/Secure/ViewSyndicateGroup.aspx") { window.location.href = "/Secure/SiteProduction.aspx"; }
}

/////////////////////////////////////////////////////////////
/////////////// GENERAL CONTROLLER ////////////////////////////
///////////////////////////////////////////////////////////
function HeaderHeight(style) {
    if (style.toUpperCase() === "OPENED") {
        TargetObject("Header").height = "320px";
    }
    else {
        TargetObject("Header").height = "141px";
    }
}
function RefreshHeader() {
    TargetObject("Header").Refresh();
}
function PassPageNumberData(currentPage, totalPages, itemsPerPage) {
    TargetObject("Pager").SetValue(currentPage, totalPages, itemsPerPage);
    TargetObject("Pager2").SetValue(currentPage, totalPages, itemsPerPage);
}
function AddPagerListeners() {
    TargetObject("Pager").AddListeners();
    TargetObject("Pager2").AddListeners();
}
function RemovePagerListeners() {
    TargetObject("Pager").RemoveListeners();
    TargetObject("Pager2").RemoveListeners();
}
function ClearShowingNumberData() {
    document.getElementById("GridInfo").innerHTML = "";
    document.getElementById("GridInfo2").innerHTML = "";
}
function PassShowingNumberData(first, last, total) {
    document.getElementById("GridInfo").innerHTML = "Showing " + first + " - " + last + " of " + total + " matches";
    document.getElementById("GridInfo2").innerHTML = "Showing " + first + " - " + last + " of " + total + " matches";
}
function ChangeDisplayNumberValue(number) {
    if (number === 24) {document.getElementById("cboDisplayNumber").options[2].selected = true;}
    else if (number === 48) {document.getElementById("cboDisplayNumber").options[1].selected = true;}
    else if (number === 128) {document.getElementById("cboDisplayNumber").options[0].selected = true;}
}
function ChangeSyndicationDisplayOptions(value, displayValue) {
    var comboDisplay = document.getElementById("cboDisplayNumber");
    if (value === "0") {
        for (i = comboDisplay.options.length; i > 0; i--) {
            comboDisplay.options[i-1].selected = false;
            comboDisplay.options[i-1] = null;
        }
        comboDisplay.options[0] = new Option("All", "All");
        comboDisplay.options[1] = new Option("128", "128");
        comboDisplay.options[2] = new Option("48", "48");
        comboDisplay.options[3] = new Option("24", "24");
        comboDisplay.options[0].selected = true;
    }
    else {
        for (i = comboDisplay.options.length; i > 0; i--) {
            comboDisplay.options[i-1].selected = false;
            comboDisplay.options[i-1] = null;
        }
        comboDisplay.options[0] = new Option("128", "128");
        comboDisplay.options[1] = new Option("48", "48");
        comboDisplay.options[2] = new Option("24", "24");
        ChangeDisplayNumberValue(displayValue);
    }
}
function ChangeSyndicationFilter() {
    if (document.getElementById("rdoSyndicateSelected").checked === false) { document.getElementById("rdoSyndicateSelected").checked = true;}
}
/////////////////////////////////////////////////////////////
/////////////// POPUP CONTROLLER ////////////////////////////
///////////////////////////////////////////////////////////
var initPopupID = "";
var initPopupGroupID = "";
function ShowPopup(type, id, groupID) {
    var url = "";
    try {
        if (id != null && id != undefined && id != "") {
            initPopupID = id;
        }
        if (groupID != null && groupID != undefined && groupID != "") {
            initPopupGroupID = groupID;
        }     // used for delete/add to lightbox popups
        
        if (type.toUpperCase() === "IMAGEVIEWER") {
            url = "#TB_inline?height=550&width=850&inlineId=ImageViewerModal&modal=true";
            tb_show("", url);
            swfobject.embedSWF("/Flash/ImageViewer.swf", "ImageViewer", "850", "550", "10.0.0.0", "false", {ID:id.toString()}, { wmode: "transparent" }, {name: "ImageViewer"});
        }
        else if (type.toUpperCase() === "EDITABLEIMAGEVIEWER") {
            url = "#TB_inline?height=650&width=1050&inlineId=ImageViewerModal&modal=true";
            tb_show("", url);
            swfobject.embedSWF("/Flash/EditableImageViewer.swf", "ImageViewer", "1050", "650", "10.0.0.0", "false", { ID: id.toString() }, { wmode: "transparent" }, { name: "ImageViewer" });
        }
        else if (type.toUpperCase() === "LIGHTBOX") { 
            url = "/Secure/AddToLightbox.aspx?KeepThis=true&ID=" + id + "&TB_iframe=true&height=190&width=275&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "NEWLIGHTBOX") {
            document.getElementById("txtName").value = "";
            document.getElementById("txtDescription").value = "";
            url = "#TB_inline?height=250&width=280&inlineId=NewLightboxModal&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "EMAILLIGHTBOX") {
            url = "#TB_inline?ID=" + id + "&height=200&width=240&inlineId=EmailModal&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "DELETELIGHTBOX") {
            url = "#TB_inline?height=135&width=370&inlineId=DeleteModal&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "DELETEFROMLIGHTBOX") {
        url = "#TB_inline?height=135&width=370&inlineId=DeleteModal&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "DELETEGROUP") {
        url = "#TB_inline?height=135&width=370&inlineId=DeleteGroupModal&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "DELETEFILE") {
        url = "#TB_inline?height=135&width=370&inlineId=DeleteModal&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "SYNDICATING") {
            url = "#TB_inline?height=115&width=250&inlineId=SyndicationModal&modal=true";
            tb_show("", url);
        }
        else if (type.toUpperCase() === "SAVING") {
            url = "#TB_inline?height=115&width=250&inlineId=SaveModal&modal=true";
            tb_show("", url);
        }
    }
    catch (Exception) {
        alert("ShowPopup("+type+", "+id+") Exception: " + Exception.description);
    }
}
function ShowDownloadPopup(type, dailyCredits, monthlyCredits, requiredCredits) {
    var url = "";
    try
    {
        if (type.toUpperCase() === "DOWNLOADCOMPLETE") {
            url = "#TB_inline?height=150&width=275&inlineId=DownloadCompleteModal&modal=true";
            document.getElementById("lblDailyCredits").innerHTML = dailyCredits.toString();
            document.getElementById("lblMonthlyCredits").innerHTML = monthlyCredits.toString();
            tb_show("", url);
        }
        else if (type.toUpperCase() === "INSUFFICIENTCREDITS") {
            url = "#TB_inline?height=315&width=300&inlineId=InsufficientCreditsModal&modal=true";
            document.getElementById("lblFailedRequiredCredits").innerHTML = "<b>" + requiredCredits.toString() + "</b>";
            document.getElementById("lblFailedDailyCredits").innerHTML = dailyCredits.toString();
            document.getElementById("lblFailedMonthlyCredits").innerHTML = monthlyCredits.toString();
            tb_show("", url);
        }
        else if (type.toUpperCase() === "INSUFFICIENTCREDITS_NONSUBSCRIBERS") {
            url = "#TB_inline?height=315&width=300&inlineId=InsufficientCreditsForNonSubscribersModal&modal=true";
            document.getElementById("lblFailedRequiredCredits").innerHTML = "<b>" + requiredCredits.toString() + "</b>";
            document.getElementById("lblFailedDailyCredits").innerHTML = dailyCredits.toString();
            document.getElementById("lblFailedMonthlyCredits").innerHTML = monthlyCredits.toString();
            tb_show("", url);
        }
    }
    catch (Exception) {
        alert("ShowDownloadPopup(" + type + ", " + dailyCredits + ", " + monthlyCredits + ", " + requiredCredits+") Exception: " + Exception.description);
    }
}
function ChangeSyndicationStatus(status) {
    if (status.toUpperCase() === "COMPLETE")
    {
        document.getElementById("progressTitle").innerHTML = "Complete";
        document.getElementById("progressText").innerHTML = "Syndication complete";
        document.getElementById("progressBar").style.display = "none";
        document.getElementById("completeButton").style.display = "block";
    }
    else if (status.toUpperCase() === "FAILED")
    {
        document.getElementById("progressTitle").innerHTML = "Failed";
        document.getElementById("progressText").innerHTML = "Syndication failed. Please try again.";
        document.getElementById("progressBar").style.display = "none";
        document.getElementById("completeButton").style.display = "block";
    }
}
function ChangeSaveStatus(status) {
    if (status.toUpperCase() === "COMPLETE") {
        document.getElementById("saveTitle").innerHTML = "Complete";
        document.getElementById("saveText").innerHTML = "Save complete";
        document.getElementById("saveProgressBar").style.display = "none";
        document.getElementById("saveCompleteButton").style.display = "block";
    }
    else if (status.toUpperCase() === "FAILED") {
        document.getElementById("saveTitle").innerHTML = "Failed";
        document.getElementById("saveText").innerHTML = "Failed to save. Please try again.";
        document.getElementById("saveProgressBar").style.display = "none";
        document.getElementById("saveCompleteButton").style.display = "block";
    }
}
function HidePopup() {
    tb_remove();
    //TargetObject("ImageViewer").innerHTML = ""; //essentially removes the flash
    RefreshHeader();
}
function GetImageDetails(id) {
    TargetObject("Grid").GetImageDetails(id);
}
function GetImageSize(id, size) {
    TargetObject("Grid").GetImageSize(id, size);
}
function GetEditableImageDetails(id) {
    TargetObject("Grid").GetEditableImageDetails(id);
}
function GetLightboxes() {
    TargetObject("Grid").GetLightboxes();
}
function PassLightboxes(data) {
    TargetObject("ImageViewer").SetLightboxData(data);
}
function PassImageDetails(data) {
    TargetObject("ImageViewer").SetData(data);
}
function PassImageSize(data) {
    TargetObject("ImageViewer").SetImageSizeData(data);
}
function ChangeLightboxPopupStyle(style) {
    if (style.toUpperCase() === "EXISTING") {
        $(parent.document.getElementsByTagName("iframe")).animate({ height: "200px" }, { queue: false, duration: 1 });
        document.getElementById("NewContainer").style.height = "0px";
        document.getElementById("NewContainer").style.visibility = "hidden";
        document.getElementById("cmdSubmit").value = "Add";
    }
    else if (style.toUpperCase() === "NEW") {
        $(parent.document.getElementsByTagName("iframe")).animate({ height: "365px" }, { queue: false, duration: 1 });
        document.getElementById("NewContainer").style.height = "161px";
        document.getElementById("NewContainer").style.visibility = "visible";
        document.getElementById("cmdSubmit").value = "Create";
    }
}

/////////////////////////////////////////////////////////////
/////////////// GRID CONTROLLER ////////////////////////////
///////////////////////////////////////////////////////////
function Save() {
    TargetObject("Grid").SaveAndClose("false");
}
function SelectAll() {
    TargetObject("Grid").SelectAll();
}
function UnselectAll() {
    TargetObject("Grid").UnselectAll();
}
function Refresh() {
    TargetObject("Grid").Refresh();
    tb_remove();
}
function SyncPagers(selectedPage) {
    TargetObject("Pager").ChangeValue(selectedPage, selectedPage);
    TargetObject("Pager2").ChangeValue(selectedPage, selectedPage);
}
function UnsyndicateGroup(id) {
    if (id === null || id === undefined || id === "") {
        id = initPopupID;
    }
    TargetObject("Grid").UnsyndicateGroup(id);
    tb_remove();
}
function UnsyndicateFile(id) {
    if (id === null || id === undefined || id === "") {
        id = initPopupID;
    }
    TargetObject("Grid").UnsyndicateFile(id);
    tb_remove();
}
function DeleteFile(id) {
    if (id === null || id === undefined || id === "") {
        id = initPopupID;
    }
    TargetObject("Grid").DeleteFile(id);
    tb_remove();
}
function DeleteFileFromGroup(id, groupID) {
    if (id === null || id === undefined || id === "") {
        id = initPopupID;
    }
    if (groupID === null || groupID === undefined || groupID === "") {
        groupID = initPopupGroupID;
    }
    TargetObject("Grid").DeleteFileFromGroup(id, groupID);
    tb_remove();
}
function SyndicateGroup() {
    var save_all = document.getElementById("rdoSyndicateAll").checked;
    var inputs = document.getElementsByTagName("input");
    var ftp_destinations = [];
    var email_alerts = [];
    
    for (var i = 0; i < inputs.length; i++) {
        var id = inputs[i].id;
        var type = id.substring(0, 3);

        if (type === "Ema") { if (inputs[i].checked) { email_alerts.push(inputs[i].title); } }
        else if (type === "FTP") { if (inputs[i].checked) { ftp_destinations.push(inputs[i].title); } }
    }     
    TargetObject("Grid").SyndicateGroup(save_all, email_alerts, ftp_destinations);
}
function SyndicateGroups() {
    var save_all = document.getElementById("rdoSyndicateAll").checked;
    var inputs = document.getElementsByTagName("input");
    var ftp_destinations = [];
    var email_alerts = [];

    for (var i = 0; i < inputs.length; i++) {
        var id = inputs[i].id;
        var type = id.substring(0, 3);

        if (type === "Ema") { if (inputs[i].checked) { email_alerts.push(inputs[i].title); } }
        else if (type === "FTP") { if (inputs[i].checked) { ftp_destinations.push(inputs[i].title); } }
    }    
    TargetObject("Grid").SyndicateGroups(save_all, email_alerts, ftp_destinations);
}
function ChangeSize(size) {
    if (size.toUpperCase() === "LARGE" || size.toUpperCase() === "MEDIUM" || size.toUpperCase() === "SMALL") {
        TargetObject("Grid").ChangeSize(size);
    }
}
function ChangeDisplayNumber(eventTarget) {
    number = parseInt(eventTarget.options[eventTarget.selectedIndex].value);
    TargetObject("Grid").ChangeDisplayNumber(number);
}
function IncreaseGridPadding(axis) {
    if (axis.toUpperCase() === "X" || axis.toUpperCase() === "Y") {
        TargetObject("Grid").IncreaseGridPadding(axis);
    }
}
function DecreaseGridPadding(axis) {
    if (axis.toUpperCase() === "X" || axis.toUpperCase() === "Y") {
        TargetObject("Grid").DecreaseGridPadding(axis);
    }
}
function DisablePageFilter() {
    document.getElementById("cboDisplayNumber").disabled = true;
}
function EnablePageFilter() {
    document.getElementById("cboDisplayNumber").disabled = false;
}
function EnableSyndicationFilters() {
    document.getElementById("cboSortBy").disabled = false;
    document.getElementById("cboDisplayNumber").disabled = false;
    document.getElementById("ctl00_Content_cboDate_input").disabled = false;
    document.getElementById("ctl00_Content_cboDate_img").disabled = false;
}
function DisableSyndicationFilters() {
    document.getElementById("cboSortBy").disabled = true;
    document.getElementById("cboDisplayNumber").disabled = true;
    document.getElementById("ctl00_Content_cboDate_input").disabled = true;
    document.getElementById("ctl00_Content_cboDate_img").disabled = true;
}
function SetSyndicationRetrievalFilter() {
    var value = parseInt(document.getElementById("cboSortBy").selectedIndex);
    TargetObject("Grid").SetSyndicationRetrievalFilter(value);
    if (value === 0) {
        document.getElementById("SyndicationReportsHeader").style.display = "block";
        document.getElementById("SyndicationOptionsRow").style.display = "block";
    }
    else {
        document.getElementById("SyndicationReportsHeader").style.display = "none";
        document.getElementById("SyndicationOptionsRow").style.display = "none";
    }
}
function SetSyndicationRetrievalDate(date) {
    TargetObject("Grid").SetSyndicationRetrievalDate(date);
}
function Lightbox_CreateAndAdd(name, description, id) {
    TargetObject("Grid").CreateAndAddToLightbox(name, description, id);
}
function Lightbox_Create() {
    TargetObject("Grid").CreateLightbox(document.getElementById("txtName").value, document.getElementById("txtDescription").value);
    tb_remove();
}
function Lightbox_Add(id, lb_id) {
    TargetObject("Grid").AddToLightbox(id, lb_id);
}
function SaveEditableImageViewerData(data) {
    TargetObject("Grid").SaveEditableImageViewerData(data);
}