support recursive played filter

This commit is contained in:
Luke Pulverenti
2014-01-15 17:19:37 -05:00
parent 98b6046f04
commit d0a5197c0a
5 changed files with 22 additions and 40 deletions

View File

@@ -167,6 +167,7 @@ namespace MediaBrowser.Controller.Entities
public static ILocalizationManager LocalizationManager { get; set; }
public static IItemRepository ItemRepository { get; set; }
public static IFileSystem FileSystem { get; set; }
public static IUserDataManager UserDataManager { get; set; }
/// <summary>
/// Returns a <see cref="System.String" /> that represents this instance.
@@ -1705,5 +1706,12 @@ namespace MediaBrowser.Controller.Entities
// Directory watchers should repeat this, but do a quick refresh first
return RefreshMetadata(CancellationToken.None, forceSave: true, allowSlowProviders: false);
}
public virtual bool IsPlayed(User user)
{
var userdata = UserDataManager.GetUserData(user.Id, GetUserDataKey());
return userdata != null && userdata.Played;
}
}
}

View File

@@ -1084,5 +1084,10 @@ namespace MediaBrowser.Controller.Entities
}
});
}
public override bool IsPlayed(User user)
{
return GetRecursiveChildren(user).Where(i => !i.IsFolder).All(i => i.IsPlayed(user));
}
}
}