diff --git a/internal/domain/macros.go b/internal/domain/macros.go index de294c0..8adb0de 100644 --- a/internal/domain/macros.go +++ b/internal/domain/macros.go @@ -16,86 +16,142 @@ import ( ) type Macro struct { - TorrentName string - TorrentPathName string - TorrentHash string - TorrentID string - TorrentUrl string - TorrentDataRawBytes []byte - MagnetURI string - Group string - GroupID string - DownloadUrl string - InfoUrl string - Indexer string - IndexerName string - IndexerIdentifier string - IndexerIdentifierExternal string - Title string - Type string - Category string + Artists string + Audio []string + AudioChannels string + AudioFormat string + Bitrate string + Bonus []string Categories []string - Resolution string - Source string - HDR string - FilterID int - FilterName string - Size uint64 - SizeString string - Season int - Episode int - Year int - CurrentYear int - CurrentMonth int + Category string + Codec []string + Container string CurrentDay int CurrentHour int CurrentMinute int + CurrentMonth int CurrentSecond int + CurrentYear int + DownloadUrl string + Episode int + FilterID int + FilterName string + Freeleech bool + FreeleechPercent int + Group string + GroupID string + HDR string + HasCue bool + HasLog bool + Implementation string + Indexer string + IndexerIdentifier string + IndexerIdentifierExternal string + IndexerName string + InfoUrl string + Language []string + Leechers int + LogScore int + MagnetURI string + Origin string + Other []string + PreTime string + Protocol string + Proper bool + Region string + Repack bool + Resolution string + Season int + Seeders int + Size uint64 + SizeString string + Source string Tags string - Artists string + Title string + TorrentDataRawBytes []byte + TorrentHash string + TorrentID string + TorrentName string + TorrentPathName string + TorrentUrl string + TorrentTmpFile string + Type string + Uploader string + Website string + Year int + Month int + Day int } func NewMacro(release Release) Macro { currentTime := time.Now() ma := Macro{ - TorrentName: release.TorrentName, - TorrentUrl: release.DownloadURL, - TorrentPathName: release.TorrentTmpFile, - TorrentDataRawBytes: release.TorrentDataRawBytes, - TorrentHash: release.TorrentHash, - TorrentID: release.TorrentID, - MagnetURI: release.MagnetURI, - Group: release.Group, - GroupID: release.GroupID, - InfoUrl: release.InfoURL, - DownloadUrl: release.DownloadURL, - Indexer: release.Indexer.Identifier, - IndexerName: release.Indexer.Name, - IndexerIdentifier: release.Indexer.Identifier, - IndexerIdentifierExternal: release.Indexer.IdentifierExternal, - Title: release.Title, - Type: release.Type, - Category: release.Category, + Artists: release.Artists, + Audio: release.Audio, + AudioChannels: release.AudioChannels, + AudioFormat: release.AudioFormat, + Bitrate: release.Bitrate, + Bonus: release.Bonus, Categories: release.Categories, - Resolution: release.Resolution, - Source: release.Source, - HDR: strings.Join(release.HDR, ", "), - FilterID: release.FilterID, - FilterName: release.FilterName, - Size: release.Size, - SizeString: humanize.Bytes(release.Size), - Season: release.Season, - Episode: release.Episode, - Year: release.Year, - CurrentYear: currentTime.Year(), - CurrentMonth: int(currentTime.Month()), + Category: release.Category, + Codec: release.Codec, + Container: release.Container, CurrentDay: currentTime.Day(), CurrentHour: currentTime.Hour(), CurrentMinute: currentTime.Minute(), + CurrentMonth: int(currentTime.Month()), CurrentSecond: currentTime.Second(), + CurrentYear: currentTime.Year(), + DownloadUrl: release.DownloadURL, + Episode: release.Episode, + FilterID: release.FilterID, + FilterName: release.FilterName, + Freeleech: release.Freeleech, + FreeleechPercent: release.FreeleechPercent, + Group: release.Group, + GroupID: release.GroupID, + HDR: strings.Join(release.HDR, ", "), + HasCue: release.HasCue, + HasLog: release.HasLog, + Implementation: release.Implementation.String(), + Indexer: release.Indexer.Identifier, + IndexerIdentifier: release.Indexer.Identifier, + IndexerIdentifierExternal: release.Indexer.IdentifierExternal, + IndexerName: release.Indexer.Name, + InfoUrl: release.InfoURL, + Language: release.Language, + Leechers: release.Leechers, + LogScore: release.LogScore, + MagnetURI: release.MagnetURI, + Origin: release.Origin, + Other: release.Other, + PreTime: release.PreTime, + Protocol: release.Protocol.String(), + Proper: release.Proper, + Region: release.Region, + Repack: release.Repack, + Resolution: release.Resolution, + Season: release.Season, + Seeders: release.Seeders, + Size: release.Size, + SizeString: humanize.Bytes(release.Size), + Source: release.Source, Tags: strings.Join(release.Tags, ", "), - Artists: release.Artists, + Title: release.Title, + TorrentDataRawBytes: release.TorrentDataRawBytes, + TorrentHash: release.TorrentHash, + TorrentID: release.TorrentID, + TorrentName: release.TorrentName, + TorrentPathName: release.TorrentTmpFile, + TorrentUrl: release.DownloadURL, + TorrentTmpFile: release.TorrentTmpFile, + Type: release.Type, + Uploader: release.Uploader, + Website: release.Website, + Year: release.Year, + Month: release.Month, + Day: release.Day, } return ma