public static string GetReportFolder(RestCommand command, int folderID)
        {
            ReportFolder reportFolder = ReportFolders.GetReportFolder(command.LoginUser, folderID);

            if (reportFolder.OrganizationID != command.Organization.OrganizationID)
            {
                throw new RestException(HttpStatusCode.Unauthorized);
            }
            return(reportFolder.GetXml("ReportFolder", true));
        }
        public IEnumerable <ReportFolder> GetReportsFolders()
        {
            var foldersList = new List <ReportFolder>();
            var folder      = _assetRepository.GetFolderById(Constants.ReportsRootFolder);
            var root        = new ReportFolder
            {
                FolderName     = folder.Name.ToUpper(),
                FolderId       = folder.FolderId,
                SubFoldersList = new List <ReportFolder>()
            };

            foldersList.Add(root);
            GetFolders(root.SubFoldersList as List <ReportFolder>, folder);

            return(foldersList);
        }
Exemple #3
0
 public void MoveReports(string reportIDs, int?folderID)
 {
     if (folderID != null)
     {
         ReportFolder folder = ReportFolders.GetReportFolder(TSAuthentication.GetLoginUser(), (int)folderID);
         if (folder.OrganizationID != TSAuthentication.OrganizationID)
         {
             return;
         }
     }
     int[] ids = JsonConvert.DeserializeObject <int[]>(reportIDs);
     for (int i = 0; i < ids.Length; i++)
     {
         Reports.AssignFolder(TSAuthentication.GetLoginUser(), folderID, TSAuthentication.OrganizationID, ids[i]);
     }
 }
 private void GetFolders(List <ReportFolder> list, Folder folder)
 {
     list.AddRange(
         _assetRepository.GetChildrenFolders(folder.FolderId)
         .Select(delegate(Folder f)
     {
         var subFolder = new ReportFolder
         {
             FolderName     = f.Name,
             FolderId       = f.FolderId,
             SubFoldersList = new List <ReportFolder>()
         };
         GetFolders(subFolder.SubFoldersList as List <ReportFolder>, f);
         return(subFolder);
     })
         .ToList()
         );
 }
Exemple #5
0
        public bool DeleteFolder(int folderID)
        {
            ReportFolder folder = ReportFolders.GetReportFolder(TSAuthentication.GetLoginUser(), (int)folderID);

            if (TSAuthentication.IsSystemAdmin || folder.CreatorID == TSAuthentication.UserID)
            {
                try {
                    Reports.UnassignFolder(TSAuthentication.GetLoginUser(), folderID);
                    folder.Delete();
                    folder.Collection.Save();
                    return(true);
                }
                catch (Exception ex) {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Exemple #6
0
        public ReportFolderProxy SaveFolder(int?folderID, string name)
        {
            ReportFolder folder = null;

            if (folderID == null)
            {
                folder = (new ReportFolders(TSAuthentication.GetLoginUser())).AddNewReportFolder();
                folder.OrganizationID = TSAuthentication.OrganizationID;
                folder.CreatorID      = TSAuthentication.UserID;
            }
            else
            {
                folder = ReportFolders.GetReportFolder(TSAuthentication.GetLoginUser(), (int)folderID);
                if (!TSAuthentication.IsSystemAdmin && folder.CreatorID != TSAuthentication.UserID)
                {
                    return(folder.GetProxy());
                }
            }

            folder.Name = name.Trim();
            folder.Collection.Save();
            return(folder.GetProxy());
        }