diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-08-14 09:24:30 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-08-14 09:24:30 -0400 |
| commit | 9c5cceb4ecc277ffb5a3a988f655ad674bf41c58 (patch) | |
| tree | 0077c03cb06e2dc7700315f90db9ee51fedeb00d /MediaBrowser.Server.Implementations/Activity/ActivityRepository.cs | |
| parent | 02e25b48550ffef016d20fe3f070c8552633cbef (diff) | |
update translations
Diffstat (limited to 'MediaBrowser.Server.Implementations/Activity/ActivityRepository.cs')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Activity/ActivityRepository.cs | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/MediaBrowser.Server.Implementations/Activity/ActivityRepository.cs b/MediaBrowser.Server.Implementations/Activity/ActivityRepository.cs index 787cbcc5b..f491a5c44 100644 --- a/MediaBrowser.Server.Implementations/Activity/ActivityRepository.cs +++ b/MediaBrowser.Server.Implementations/Activity/ActivityRepository.cs @@ -139,7 +139,7 @@ namespace MediaBrowser.Server.Implementations.Activity } } - public QueryResult<ActivityLogEntry> GetActivityLogEntries(int? startIndex, int? limit) + public QueryResult<ActivityLogEntry> GetActivityLogEntries(DateTime? minDate, int? startIndex, int? limit) { using (var cmd = _connection.CreateCommand()) { @@ -147,17 +147,33 @@ namespace MediaBrowser.Server.Implementations.Activity var whereClauses = new List<string>(); - if (startIndex.HasValue && startIndex.Value > 0) + if (minDate.HasValue) { - whereClauses.Add(string.Format("Id NOT IN (SELECT Id FROM ActivityLogEntries ORDER BY DateCreated DESC LIMIT {0})", - startIndex.Value.ToString(_usCulture))); + whereClauses.Add("DateCreated>=@DateCreated"); + cmd.Parameters.Add(cmd, "@DateCreated", DbType.Date).Value = minDate.Value; } - if (whereClauses.Count > 0) + var whereTextWithoutPaging = whereClauses.Count == 0 ? + string.Empty : + " where " + string.Join(" AND ", whereClauses.ToArray()); + + if (startIndex.HasValue && startIndex.Value > 0) { - cmd.CommandText += " where " + string.Join(" AND ", whereClauses.ToArray()); + var pagingWhereText = whereClauses.Count == 0 ? + string.Empty : + " where " + string.Join(" AND ", whereClauses.ToArray()); + + whereClauses.Add(string.Format("Id NOT IN (SELECT Id FROM ActivityLogEntries {0} ORDER BY DateCreated DESC LIMIT {1})", + pagingWhereText, + startIndex.Value.ToString(_usCulture))); } + var whereText = whereClauses.Count == 0 ? + string.Empty : + " where " + string.Join(" AND ", whereClauses.ToArray()); + + cmd.CommandText += whereText; + cmd.CommandText += " ORDER BY DateCreated DESC"; if (limit.HasValue) @@ -165,7 +181,7 @@ namespace MediaBrowser.Server.Implementations.Activity cmd.CommandText += " LIMIT " + limit.Value.ToString(_usCulture); } - cmd.CommandText += "; select count (Id) from ActivityLogEntries"; + cmd.CommandText += "; select count (Id) from ActivityLogEntries" + whereTextWithoutPaging; var list = new List<ActivityLogEntry>(); var count = 0; |
