/// <summary>
        /// Gets the audit log data for the specified parameters
        /// </summary>
        /// <param name="logType">The type of the log entry (eg. 'Save')</param>
        /// <param name="userName">Name of the user responsible for the entry</param>
        /// <param name="dateFrom">The date to search from</param>
        /// <param name="searchTerm">An optional search term</param>
        /// <param name="dateTo">The date to search up to (inclusive)</param>
        /// <param name="itemsPerPage">How many items per page to retrieve</param>
        /// <param name="nodeId">The optional nodeId to search for</param>
        /// <param name="pageNumber">The page number</param>
        /// <param name="sortColumn">The column name to sort by</param>
        /// <param name="sortOrder">The sort order - either ascending or descending</param>
        /// <returns>A paged list of log data</returns>
        /// <remarks>/Umbraco/Backoffice/AuditLogViewer/AuditLog/GetLogData</remarks>
        public PagedLogEntryResult GetLogData(string logType = null, string userName = null, DateTime?dateFrom = null, DateTime?dateTo = null, int?nodeId = null, int itemsPerPage = 50, int pageNumber = 1, string sortColumn = "DateStamp", string sortOrder = "asc", string searchTerm = null)
        {
            var request = new LogSearchRequest()
            {
                DateFrom     = dateFrom,
                DateTo       = dateTo,
                ItemsPerPage = itemsPerPage,
                LogType      = logType,
                NodeId       = nodeId,
                PageNumber   = pageNumber,
                SearchTerm   = searchTerm,
                SortColumn   = sortColumn,
                SortOrder    = sortOrder,
                UserName     = userName
            };

            var paged = this.logService.SearchAuditLog(request);

            PagedLogEntryResult result = new PagedLogEntryResult()
            {
                CurrentPage  = paged.CurrentPage,
                ItemsPerPage = paged.ItemsPerPage,
                LogEntries   = paged.Items,
                TotalItems   = paged.TotalItems,
                TotalPages   = paged.TotalPages
            };

            return(result);
        }
Exemple #2
0
        /// <summary>
        /// Gets the audit log data for the specified filter parameters
        /// </summary>
        /// <param name="affectedUserId">The user Id who was affected by an action</param>
        /// <param name="performingUserId">The user Id who performed the action</param>
        /// <param name="dateFrom">The date to search from</param>
        /// <param name="searchTerm">An optional search term</param>
        /// <param name="dateTo">The date to search up to (inclusive)</param>
        /// <param name="itemsPerPage">How many items per page to retrieve (default = 50)</param>
        /// <param name="pageNumber">The page number</param>
        /// <param name="sortColumn">The column name to sort by (default = date)</param>
        /// <param name="sortOrder">The sort order - either ascending or descending (default = ascending)</param>
        /// <returns>A paged list of log data</returns>
        /// <remarks>/Umbraco/Backoffice/AuditLogViewer/AuditLog/GetLogData</remarks>
        public PagedLogEntryResult <AuditEntry> GetLogData(string eventType = null, int?performingUserId = null, int?affectedUserId = null, DateTime?dateFrom = null, DateTime?dateTo = null, int itemsPerPage = 50, int pageNumber = 1, string sortColumn = "eventDateUtc", string sortOrder = "asc", string searchTerm = null)
        {
            var request = new AuditLogSearchRequest()
            {
                EventType        = eventType,
                PerformingUserId = performingUserId,
                AffectedUserId   = affectedUserId,
                DateFrom         = dateFrom,
                DateTo           = dateTo,
                ItemsPerPage     = itemsPerPage,
                PageNumber       = pageNumber,
                SearchTerm       = searchTerm,
                SortColumn       = sortColumn,
                SortOrder        = sortOrder
            };

            var paged = this._logService.SearchLog(request);

            var result = new PagedLogEntryResult <AuditEntry>()
            {
                CurrentPage  = paged.CurrentPage,
                ItemsPerPage = paged.ItemsPerPage,
                LogEntries   = paged.Items,
                TotalItems   = paged.TotalItems,
                TotalPages   = paged.TotalPages
            };

            return(result);
        }