Ejemplo n.º 1
0
        private Control LoadArchiveInformationPanel(ArchiveTypeEnum type, DeletedStudyArchiveInfo info)
        {
            BaseDeletedStudyArchiveUIPanel panel = null;

            if (type == null)
            {
                panel = LoadControl("GeneralArchiveInfoPanel.ascx") as BaseDeletedStudyArchiveUIPanel;
                if (panel != null)
                {
                    panel.ArchiveInfo = info;
                }
            }
            else if (type == ArchiveTypeEnum.HsmArchive)
            {
                panel = LoadControl("HsmArchiveInfoPanel.ascx") as BaseDeletedStudyArchiveUIPanel;
                if (panel != null)
                {
                    panel.ArchiveInfo = info;
                }
            }

            if (panel != null)
            {
                panel.DataBind();
            }

            return(panel);
        }
Ejemplo n.º 2
0
        private void CreateArchivePanel()
        {
            DeletedStudyArchiveInfoCollection archiveList = _viewModel.DeletedStudyRecord.Archives;

            Platform.CheckTrue(archiveList.Count > 0, "archiveList is empty");

            // make sure the list is sorted by timestamp
            archiveList.Sort(
                (archive1, archive2) => archive2.ArchiveTime.CompareTo(archive1.ArchiveTime));

            Control panel = LoadArchiveInformationPanel(GetArchiveType(archiveList[0]), archiveList[0]);

            ArchiveViewPlaceHolder.Controls.Add(panel);

            if (archiveList.Count > 1)
            {
                var container = new TabContainer {
                    CssClass = "DialogTabControl"
                };

                for (int i = 1; i < archiveList.Count; i++)
                {
                    DeletedStudyArchiveInfo theArchive = archiveList[i];
                    Control detailPanel = LoadArchiveInformationPanel(GetArchiveType(theArchive), theArchive);

                    var tabPanel = new TabPanel
                    {
                        HeaderText = String.Format("{0} {1}",
                                                   DateTimeFormatter.Format(theArchive.ArchiveTime,
                                                                            DateTimeFormatter.Style.
                                                                            Date),
                                                   TransferSyntax.GetTransferSyntax(
                                                       theArchive.TransferSyntaxUid).
                                                   LossyCompressed
                                                                          ? "(Lossy)"
                                                                          : String.Empty)
                    };

                    tabPanel.Controls.Add(detailPanel);

                    container.Tabs.Add(tabPanel);
                }

                AdditionalArchivePlaceHolder.Controls.Add(container);
            }

            AdditionalArchivePlaceHolder.Visible = archiveList.Count > 1;

            ArchiveViewPlaceHolder.DataBind();
            AdditionalArchivePlaceHolder.DataBind();
        }
Ejemplo n.º 3
0
        private static ArchiveTypeEnum GetArchiveType(DeletedStudyArchiveInfo archiveInfo)
        {
            Platform.CheckForNullReference(archiveInfo, "archiveInfo");
            Platform.CheckForNullReference(archiveInfo.ArchiveXml, "archiveInfo.ArchiveXml");

            XmlNode node = archiveInfo.ArchiveXml.DocumentElement;

            if (node != null)
            {
                if (node.Name.Equals("HsmArchive", StringComparison.InvariantCultureIgnoreCase))
                {
                    return(ArchiveTypeEnum.HsmArchive);
                }
                else
                {
                    return(null); //unknown
                }
            }
            return(null);
        }
        private static ArchiveTypeEnum GetArchiveType(DeletedStudyArchiveInfo archiveInfo)
        {
            Platform.CheckForNullReference(archiveInfo, "archiveInfo");
            Platform.CheckForNullReference(archiveInfo.ArchiveXml, "archiveInfo.ArchiveXml");

            XmlNode node = archiveInfo.ArchiveXml.DocumentElement;
            if (node != null)
                if (node.Name.Equals("HsmArchive", StringComparison.InvariantCultureIgnoreCase))
                {
                    return ArchiveTypeEnum.HsmArchive;
                }
                else
                {
                    return null; //unknown
                }
            return null;
        }
        private Control LoadArchiveInformationPanel(ArchiveTypeEnum type, DeletedStudyArchiveInfo info)
        {
            BaseDeletedStudyArchiveUIPanel panel = null;
            if (type == null)
            {
                panel = LoadControl("GeneralArchiveInfoPanel.ascx") as BaseDeletedStudyArchiveUIPanel;
                if (panel != null) panel.ArchiveInfo = info;
            }
            else if (type == ArchiveTypeEnum.HsmArchive)
            {
                panel = LoadControl("HsmArchiveInfoPanel.ascx") as BaseDeletedStudyArchiveUIPanel;
                if (panel != null) panel.ArchiveInfo = info;
            }

            if (panel != null)
            {
                panel.DataBind();
            }

            return panel;
        }