149 lines
5.5 KiB
C#
149 lines
5.5 KiB
C#
|
using System;
|
||
|
using System.Collections.Generic;
|
||
|
|
||
|
namespace Tesses.CMS
|
||
|
{
|
||
|
public class MockProvider : IContentProvider
|
||
|
{
|
||
|
List<Movie> movies=new List<Movie>();
|
||
|
UserAccount account2=new UserAccount();
|
||
|
public MockProvider()
|
||
|
{
|
||
|
Movie movie=new Movie(){Id=1,ProperName="Big Buck Bunny",Name="BigBuckBunny",UserId=1,CreationTime=new System.DateTime(2018,7,24,14,0,0), Description="Blenders Big Buck Bunny" };
|
||
|
movie.LastUpdated = movie.CreationTime;
|
||
|
movies.Add(movie);
|
||
|
account2.IsAdmin=true;
|
||
|
account2.Email = "johndoe@example.com";
|
||
|
account2.ProperName = "John Doe";
|
||
|
account2.Salt = "Jieaifnaienaifeniaienaif";
|
||
|
account2.PasswordHash = "0v4LGsBWyB6LMEuFDzU+H9Iy4Z5T4nyt96FBJ+YXHz0=";
|
||
|
account2.Username = "johndoe";
|
||
|
account2.Id = 2;
|
||
|
UserAccount account1=new UserAccount();
|
||
|
account1.Email="blender@example.com";
|
||
|
account1.PasswordHash="";
|
||
|
account1.ProperName = "Blender Studios";
|
||
|
account1.Username = "Blender";
|
||
|
account1.Salt ="";
|
||
|
account1.Id = 1;
|
||
|
|
||
|
Users.Add(account1);
|
||
|
|
||
|
Users.Add(account2);
|
||
|
}
|
||
|
List<UserAccount> Users =new List<UserAccount>();
|
||
|
public Movie CreateMovie(string user, string movie,string properName, string description)
|
||
|
{
|
||
|
Movie _movie = new Movie();
|
||
|
_movie.ProperName = properName;
|
||
|
_movie.Name = movie;
|
||
|
_movie.Id = movies.Count + 1;
|
||
|
_movie.UserId = 2;
|
||
|
_movie.Description = description;
|
||
|
_movie.CreationTime = DateTime.Now;
|
||
|
_movie.LastUpdated = _movie.CreationTime;
|
||
|
movies.Add(_movie);
|
||
|
return _movie;
|
||
|
}
|
||
|
|
||
|
public Movie GetMovie(string user, string movie)
|
||
|
{
|
||
|
if(user == "Blender" && movie=="BigBuckBunny")
|
||
|
{
|
||
|
return movies[0];
|
||
|
}
|
||
|
foreach(var item in movies)
|
||
|
{
|
||
|
if(item.Name == movie)
|
||
|
{
|
||
|
if(Users[(int)(item.UserId-1)].Username == user)
|
||
|
{
|
||
|
return item;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
public UserAccount GetUserAccount(string user)
|
||
|
{
|
||
|
foreach(var _user in Users)
|
||
|
{
|
||
|
if(_user.Username == user) return _user;
|
||
|
}
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
public IEnumerable<Movie> GetMovies(string user)
|
||
|
{
|
||
|
foreach(var movie in movies)
|
||
|
{
|
||
|
if(Users[(int)(movie.UserId-1)].Username == user)
|
||
|
{
|
||
|
yield return movie;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public IEnumerable<UserAccount> GetUsers()
|
||
|
{
|
||
|
return Users;
|
||
|
}
|
||
|
|
||
|
public void UpdateMovie(Movie movie)
|
||
|
{
|
||
|
throw new NotImplementedException();
|
||
|
}
|
||
|
|
||
|
public UserAccount GetFirstUser()
|
||
|
{
|
||
|
return Users[0];
|
||
|
}
|
||
|
|
||
|
public IEnumerable<Movie> GetMovies(long user)
|
||
|
{
|
||
|
foreach(var movie in movies)
|
||
|
{
|
||
|
if(movie.UserId == user)
|
||
|
{
|
||
|
yield return movie;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
public MovieContentMetaData GetMovieContentMetaData(CMSConfiguration configuration, string user, string movie)
|
||
|
{
|
||
|
MovieContentMetaData metaData=new MovieContentMetaData();
|
||
|
metaData.DownloadStream = $"{configuration.Root.TrimEnd('/')}/content/{user}/movie/{movie}/{movie}.mp4";
|
||
|
metaData.ThumbnailUrl = $"{configuration.Root.TrimEnd('/')}/content/{user}/movie/{movie}/thumbnail.jpg";;
|
||
|
metaData.PosterUrl = $"{configuration.Root.TrimEnd('/')}/content/{user}/movie/{movie}/poster.jpg";
|
||
|
metaData.BrowserStream = $"{configuration.Root.TrimEnd('/')}/content/{user}/movie/{movie}/browser.mp4";
|
||
|
metaData.MovieTorrentUrl = $"{configuration.Root.TrimEnd('/')}/content/{user}/movie/{movie}/{movie}.torrent";
|
||
|
metaData.MovieWithExtrasTorrentUrl = $"{configuration.Root.TrimEnd('/')}/content/{user}/movie/{movie}/{movie}_withextras.torrent";
|
||
|
|
||
|
if(user == "Blender" && movie == "BigBuckBunny")
|
||
|
{
|
||
|
metaData.ThumbnailUrl = "https://imgs.search.brave.com/3euIrrvtlxdwORlondpP-QTiWhC1_ARU5VlvgmkEnao/rs:fit:500:0:0/g:ce/aHR0cHM6Ly9tLm1l/ZGlhLWFtYXpvbi5j/b20vaW1hZ2VzL00v/TVY1Qk5qUmpZalJo/Tm1RdE5XRTBZUzAw/TldJd0xXRmhZalV0/TVRrelpUVXdZVEU0/TVRCaVhrRXlYa0Zx/Y0dkZVFYVnlOakEz/T1RJNU1qQUAuanBn";
|
||
|
metaData.BrowserStream= "https://download.blender.org/peach/bigbuckbunny_movies/BigBuckBunny_320x180.mp4";
|
||
|
metaData.DownloadStream = "https://download.blender.org/peach/bigbuckbunny_movies/BigBuckBunny_320x180.mp4";
|
||
|
metaData.PosterUrl = "https://imgs.search.brave.com/3euIrrvtlxdwORlondpP-QTiWhC1_ARU5VlvgmkEnao/rs:fit:500:0:0/g:ce/aHR0cHM6Ly9tLm1l/ZGlhLWFtYXpvbi5j/b20vaW1hZ2VzL00v/TVY1Qk5qUmpZalJo/Tm1RdE5XRTBZUzAw/TldJd0xXRmhZalV0/TVRrelpUVXdZVEU0/TVRCaVhrRXlYa0Zx/Y0dkZVFYVnlOakEz/T1RJNU1qQUAuanBn";
|
||
|
}
|
||
|
return metaData;
|
||
|
}
|
||
|
|
||
|
public void CreateUser(CMSConfiguration configuration, string user,string properName, string email, string password)
|
||
|
{
|
||
|
throw new NotImplementedException();
|
||
|
}
|
||
|
}
|
||
|
}
|