diff --git a/.gitattributes b/.gitattributes index 49cbe02c5..3e16cb0be 100644 --- a/.gitattributes +++ b/.gitattributes @@ -62,5 +62,4 @@ #*.rtf diff=astextplain #*.RTF diff=astextplain -Ombi.UI/Content/* linguist-vendored -base.scss linguist-vendored=false +Old/* linguist-vendored diff --git a/.gitchangelog.rc b/.gitchangelog.rc new file mode 100644 index 000000000..a340a7799 --- /dev/null +++ b/.gitchangelog.rc @@ -0,0 +1,293 @@ +# -*- coding: utf-8; mode: python -*- +## +## Format +## +## ACTION: [AUDIENCE:] COMMIT_MSG [!TAG ...] +## +## Description +## +## ACTION is one of 'chg', 'fix', 'new' +## +## Is WHAT the change is about. +## +## 'chg' is for refactor, small improvement, cosmetic changes... +## 'fix' is for bug fixes +## 'new' is for new features, big improvement +## +## AUDIENCE is optional and one of 'dev', 'usr', 'pkg', 'test', 'doc' +## +## Is WHO is concerned by the change. +## +## 'dev' is for developpers (API changes, refactors...) +## 'usr' is for final users (UI changes) +## 'pkg' is for packagers (packaging changes) +## 'test' is for testers (test only related changes) +## 'doc' is for doc guys (doc only changes) +## +## COMMIT_MSG is ... well ... the commit message itself. +## +## TAGs are additionnal adjective as 'refactor' 'minor' 'cosmetic' +## +## They are preceded with a '!' or a '@' (prefer the former, as the +## latter is wrongly interpreted in github.) Commonly used tags are: +## +## 'refactor' is obviously for refactoring code only +## 'minor' is for a very meaningless change (a typo, adding a comment) +## 'cosmetic' is for cosmetic driven change (re-indentation, 80-col...) +## 'wip' is for partial functionality but complete subfunctionality. +## +## Example: +## +## new: usr: support of bazaar implemented +## chg: re-indentend some lines !cosmetic +## new: dev: updated code to be compatible with last version of killer lib. +## fix: pkg: updated year of licence coverage. +## new: test: added a bunch of test around user usability of feature X. +## fix: typo in spelling my name in comment. !minor +## +## Please note that multi-line commit message are supported, and only the +## first line will be considered as the "summary" of the commit message. So +## tags, and other rules only applies to the summary. The body of the commit +## message will be displayed in the changelog without reformatting. + + +## +## ``ignore_regexps`` is a line of regexps +## +## Any commit having its full commit message matching any regexp listed here +## will be ignored and won't be reported in the changelog. +## +ignore_regexps = [ + r'@minor', r'!minor', + r'@cosmetic', r'!cosmetic', + r'@refactor', r'!refactor', + r'@wip', r'!wip', + r'^([cC]hg|[fF]ix|[nN]ew)\s*:\s*[p|P]kg:', + r'^([cC]hg|[fF]ix|[nN]ew)\s*:\s*[d|D]ev:', + r'^(.{3,3}\s*:)?\s*[fF]irst commit.?\s*$', + r'^$', ## ignore commits with empty messages +] + + +## ``section_regexps`` is a list of 2-tuples associating a string label and a +## list of regexp +## +## Commit messages will be classified in sections thanks to this. Section +## titles are the label, and a commit is classified under this section if any +## of the regexps associated is matching. +## +## Please note that ``section_regexps`` will only classify commits and won't +## make any changes to the contents. So you'll probably want to go check +## ``subject_process`` (or ``body_process``) to do some changes to the subject, +## whenever you are tweaking this variable. +## +section_regexps = [ + ('**New Features**', [ + r'^[aA]dded?\s*:?\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$', + r'^[uU]pdated?\s*:?\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$', + r'^[cC]hanged?\s*:?\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n]*)$', + ]), + ('**Fixes**', [ + r'^(?![mM]erge\s*)' + ] + ), + +] + + +## ``body_process`` is a callable +## +## This callable will be given the original body and result will +## be used in the changelog. +## +## Available constructs are: +## +## - any python callable that take one txt argument and return txt argument. +## +## - ReSub(pattern, replacement): will apply regexp substitution. +## +## - Indent(chars=" "): will indent the text with the prefix +## Please remember that template engines gets also to modify the text and +## will usually indent themselves the text if needed. +## +## - Wrap(regexp=r"\n\n"): re-wrap text in separate paragraph to fill 80-Columns +## +## - noop: do nothing +## +## - ucfirst: ensure the first letter is uppercase. +## (usually used in the ``subject_process`` pipeline) +## +## - final_dot: ensure text finishes with a dot +## (usually used in the ``subject_process`` pipeline) +## +## - strip: remove any spaces before or after the content of the string +## +## - SetIfEmpty(msg="No commit message."): will set the text to +## whatever given ``msg`` if the current text is empty. +## +## Additionally, you can `pipe` the provided filters, for instance: +#body_process = Wrap(regexp=r'\n(?=\w+\s*:)') | Indent(chars=" ") +#body_process = Wrap(regexp=r'\n(?=\w+\s*:)') +#body_process = noop +body_process = ReSub(r'((^|\n)[A-Z]\w+(-\w+)*: .*(\n\s+.*)*)+$', r'') | strip + + +## ``subject_process`` is a callable +## +## This callable will be given the original subject and result will +## be used in the changelog. +## +## Available constructs are those listed in ``body_process`` doc. +subject_process = (strip | + ReSub(r'^([cC]hanged|[fF]ixed|[aA]dded|[uU]pdated)\s*:\s*((dev|use?r|pkg|test|doc)\s*:\s*)?([^\n@]*)(@[a-z]+\s+)*$', r'\4') | + SetIfEmpty("No commit message.") | ucfirst | final_dot) + + +## ``tag_filter_regexp`` is a regexp +## +## Tags that will be used for the changelog must match this regexp. +## +tag_filter_regexp = r'^v[0-9]+\.[0-9]+(\.[0-9]+)?$' + + +## ``unreleased_version_label`` is a string or a callable that outputs a string +## +## This label will be used as the changelog Title of the last set of changes +## between last valid tag and HEAD if any. +unreleased_version_label = "(unreleased)" + + +## ``output_engine`` is a callable +## +## This will change the output format of the generated changelog file +## +## Available choices are: +## +## - rest_py +## +## Legacy pure python engine, outputs ReSTructured text. +## This is the default. +## +## - mustache() +## +## Template name could be any of the available templates in +## ``templates/mustache/*.tpl``. +## Requires python package ``pystache``. +## Examples: +## - mustache("markdown") +## - mustache("restructuredtext") +## +## - makotemplate() +## +## Template name could be any of the available templates in +## ``templates/mako/*.tpl``. +## Requires python package ``mako``. +## Examples: +## - makotemplate("restructuredtext") +## +#output_engine = rest_py +#output_engine = mustache("restructuredtext") +output_engine = mustache("changelog.tpl") +#output_engine = makotemplate("restructuredtext") + + +## ``include_merge`` is a boolean +## +## This option tells git-log whether to include merge commits in the log. +## The default is to include them. +include_merge = False + + +## ``log_encoding`` is a string identifier +## +## This option tells gitchangelog what encoding is outputed by ``git log``. +## The default is to be clever about it: it checks ``git config`` for +## ``i18n.logOutputEncoding``, and if not found will default to git's own +## default: ``utf-8``. +#log_encoding = 'utf-8' + + +## ``publish`` is a callable +## +## Sets what ``gitchangelog`` should do with the output generated by +## the output engine. ``publish`` is a callable taking one argument +## that is an interator on lines from the output engine. +## +## Some helper callable are provided: +## +## Available choices are: +## +## - stdout +## +## Outputs directly to standard output +## (This is the default) +## +## - FileInsertAtFirstRegexMatch(file, pattern, idx=lamda m: m.start()) +## +## Creates a callable that will parse given file for the given +## regex pattern and will insert the output in the file. +## ``idx`` is a callable that receive the matching object and +## must return a integer index point where to insert the +## the output in the file. Default is to return the position of +## the start of the matched string. +## +## - FileRegexSubst(file, pattern, replace, flags) +## +## Apply a replace inplace in the given file. Your regex pattern must +## take care of everything and might be more complex. Check the README +## for a complete copy-pastable example. +## +# publish = FileInsertIntoFirstRegexMatch( +# "CHANGELOG.rst", +# r'/(?P[0-9]+\.[0-9]+(\.[0-9]+)?)\s+\([0-9]+-[0-9]{2}-[0-9]{2}\)\n--+\n/', +# idx=lambda m: m.start(1) +# ) +#publish = stdout + +def write_to_file(content): + with open("CHANGELOG.md", "w+") as f: + for chunk in content: + f.write(chunk) + +publish = write_to_file + + +## ``revs`` is a list of callable or a list of string +## +## callable will be called to resolve as strings and allow dynamical +## computation of these. The result will be used as revisions for +## gitchangelog (as if directly stated on the command line). This allows +## to filter exaclty which commits will be read by gitchangelog. +## +## To get a full documentation on the format of these strings, please +## refer to the ``git rev-list`` arguments. There are many examples. +## +## Using callables is especially useful, for instance, if you +## are using gitchangelog to generate incrementally your changelog. +## +## Some helpers are provided, you can use them:: +## +## - FileFirstRegexMatch(file, pattern): will return a callable that will +## return the first string match for the given pattern in the given file. +## If you use named sub-patterns in your regex pattern, it'll output only +## the string matching the regex pattern named "rev". +## +## - Caret(rev): will return the rev prefixed by a "^", which is a +## way to remove the given revision and all its ancestor. +## +## Please note that if you provide a rev-list on the command line, it'll +## replace this value (which will then be ignored). +## +## If empty, then ``gitchangelog`` will act as it had to generate a full +## changelog. +## +## The default is to use all commits to make the changelog. +#revs = ["^1.0.3", ] +#revs = [ +# Caret( +# FileFirstRegexMatch( +# "CHANGELOG.rst", +# r"(?P[0-9]+\.[0-9]+(\.[0-9]+)?)\s+\([0-9]+-[0-9]{2}-[0-9]{2}\)\n--+\n")), +# "HEAD" +#] +revs = [] diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 6d4e16586..2684ccc3e 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -1,36 +1,22 @@ - - - - -!! Version 2.X is not supported anymore. Pleas don't open a issue for the 2.x version. -See https://github.com/tidusjar/Ombi/issues/1455 for more information. - - - - - - - - - - - - -#### Ombi Version: +#### Ombi build Version: -V 1.XX.XX +V 3.0.XX #### Update Branch: -Stable/Early Access Preview/development +Open Beta #### Media Sever: @@ -44,15 +30,12 @@ Plex/Emby (Place text here) -#### Mono Version (only if your not on windows) -(Place text here) - -#### Applicable Logs (from `/logs/` directory or the Admin page): +#### Ombi Applicable Logs (from `/logs/` directory or the Admin page): ``` -(Logs go here. Don't remove the ``` tags for showing your logs correctly. Please make sure you remove any personal information from the logs) +(Logs go here. Don't remove the ' tags for showing your logs correctly. Please make sure you remove any personal information from the logs) ``` diff --git a/.gitignore b/.gitignore index caef0e940..771a7bacd 100644 --- a/.gitignore +++ b/.gitignore @@ -237,3 +237,9 @@ _Pvt_Extensions *.ncrunchproject *.ncrunchsolution +*.txt + + +# CAKE - C# Make +/Tools/* +*.db-journal diff --git a/.travis.yml b/.travis.yml index 900fbffa1..29b920feb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: csharp -solution: Ombi.sln +solution: src/Ombi.sln install: - mono Tools/nuget.exe restore Ombi.sln - nuget install NUnit.Runners -OutputDirectory testrunner diff --git a/Assemblies/Mono.Data.Sqlite.dll b/Assemblies/Mono.Data.Sqlite.dll deleted file mode 100644 index b092a1c7f..000000000 Binary files a/Assemblies/Mono.Data.Sqlite.dll and /dev/null differ diff --git a/BuildTask.ps1 b/BuildTask.ps1 new file mode 100644 index 000000000..9ed055206 --- /dev/null +++ b/BuildTask.ps1 @@ -0,0 +1,12 @@ + +param([String]$env='local') + +"Environment: " + $env | Write-Output; +"Build Version: " + $env:APPVEYOR_BUILD_VERSION | Write-Output; +"Base Path: " + $env:APPVEYOR_BUILD_FOLDER | Write-Output; + +$appSettingsPath = $env:APPVEYOR_BUILD_FOLDER + '\src\Ombi\appsettings.json' +$appSettings = Get-Content $appSettingsPath -raw +$appSettings = $appSettings.Replace("{{VERSIONNUMBER}}",$env:APPVEYOR_BUILD_VERSION); +$appSettings = $appSettings.Replace("{{BRANCH}}",$env:APPVEYOR_REPO_BRANCH); +Set-Content -Path $appSettingsPath -Value $appSettings diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 000000000..b17a436e7 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3888 @@ +# Changelog + +## (unreleased) + +### **New Features** + +- Added user request limits, We can now set the limit for a user. [tidusjar] + +- Updated the UI JWT framework. [Jamie] + +- Added missing migrations #1744. [Jamie] + +- Added the SickRage API integration. [Jamie] + +- Update the Emby Connect Username in the user importer. To update the emby connect email address we do it when the user logs in, since the only way to get that information is to use the users Username and Password, since we do not keep this information we cannot do it in the User Importer, but if they have successfully logged in via Emby Connect then we check if we need to update the email address on login. [Jamie] + +- Update the connectuserid for emby users. [tidusjar] + +- Added the ability to customize job scheudles. [Jamie] + +- Update README.md. [Jamie] + +- Added the option to import the plex admin. [tidusjar] + +- Added the route name as an Id on the container div #1698. [Jamie] + +- Updated packages including uglify-es and the package-lock #1683. [Jamie] + +- Updated to Angular5 with best practises. [Jamie] + +- Update README.md. [Jamie] + +- Added the new backgrounds for the requests pages. [tidusjar] + +- Added caching to the settings. [tidusjar] + +- Added some better handling when adding existing seasons to a tv show in the Plex cacher. [tidusjar] + +- Added Telegram Notification support, Not tested. [Jamie] + +- Added the new banner background for tv shows. [tidusjar] + +- Added a new customization option to provide a css link. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Changed to discord link. [tidusjar] + +- Added more translations. [Jamie] + +- Added more logging for #1643. [tidusjar] + +- Update README.md. [Jamie] + +- Update Crowdin configuration file. [Jamie] + +- Added more translations. [Jamie] + +- Update da.json (#1634) [Lixumos] + +- Added 32bit version of Ombi. [Jamie] + +- Added more translations. [Jamie] + +- Added translations. [Jamie] + +- Updated the npm packages. [Jamie.Rees] + +- Added four new endpoints to change the availability for TV shows and Movies #1601. [Jamie.Rees] + +- Added the ability to run a user defined update script #1460. [Jamie.Rees] + +- Added logging around creating the wizard user #1604. [tidusjar] + +- Added the option to run the content cacher from the settings page, it will no longer get triggered when we press save. [tidusjar] + +- Added the ability to specify how many episodes we should cache at a time. #1598. [tidusjar] + +- Added usersname and password option for the updater #1460. [Jamie.Rees] + +- Changed the way we download the .zip files in the auto updater #1460 This might make a difference to the permissions issue. but not 100% sure. [Jamie.Rees] + +- Changed cake. [Jamie.Rees] + +- Added feedback when we send a welcome email #1578. [Jamie.Rees] + +- Update README.md. [Jamie] + +- Added some logging into the PlexCachers and set the log level to informational. [tidusjar] + +- Added Couchpotato support and fixed #1548. [tidusjar] + +- Update ISSUE_TEMPLATE.md. [PotatoQuality] + +- Update ISSUE_TEMPLATE.md. [PotatoQuality] + +- Update README.md. [Jamie] + +- Added the ability to use a cookie to login. Mainly for Org. [tidusjar] + +- Added support for a new TV and Movie provider. DogNZB. [tidusjar] + +- Added a PartlyAvailable flag for tv shows. [Jamie.Rees] + +- Added some feedback on the request buttons for movies #1536. [Jamie.Rees] + +- Added a fix for the poster path issue #1533. [Jamie.Rees] + +- Added back the log path writing #865. [Jamie.Rees] + +- Update README.md. [Jamie] + +- Added support for email login #1513. [tidusjar] + +- Added some more logging around the plex user importer fixed the discord notification issue #1513. [tidusjar] + +- Update README.md. [PotatoQuality] + +- Update README.md. [PotatoQuality] + +- Update README.md. [PotatoQuality] + +- Update README.md. [PotatoQuality] + +- Update README.md. [PotatoQuality] + +- Update Readme for V3. [PotatoQuality] + +- Added some wiki pages and also made it so we cannot edit Plex Users email address (since they will get overwrote via the Importer) #865. [Jamie.Rees] + +- Added transparency to icon files (#1520) [Auwen] + +- Added an application URL in the customization settings #1513. [Jamie.Rees] + +- Update ISSUE_TEMPLATE.md. [Jamie] + +- Added the ability to enable Plex User importing. We also allow you to exclude users #1456. [tidusjar] + +- Update Startup.cs. [Jamie] + +- Added an about page #865. [Jamie.Rees] + +- Changelog. [Jamie.Rees] + +- Changed the way we download the updates #865. [Jamie.Rees] + +- Updated packages and more logging. [Jamie.Rees] + +- Update versioning. [Jamie.Rees] + +- Update nuget packages and added logging to the Updater #865. [tidusjar] + +- Added the ForwardedHeaders middlewear for Reverse Proxy scenarios #865. [tidusjar] + +- Update build.cake. [Jamie] + +- Update DiscordApi.cs. [Jamie] + +- Update README.md. [PotatoQuality] + +- Added a authorization filter so we can see hangfire outisde of the local requests. [TidusJar] + +- Added more logging for the updater. [Jamie.Rees] + +- Added the emby episode cacher and the job to check if items are available on emby #1464 #865. [tidusjar] + +- Added the Emby Cacher, we now cache the Emby data! [tidusjar] + +- Updated CHangelog. [Jamie.Rees] + +- Updated changelog. [Jamie.Rees] + +- Updated assembly versions. [Jamie.Rees] + +- Added the logo in the email notifications to use the application image #1459. [Jamie.Rees] + +- Change Os to VS2015. [Jamie.Rees] + +- Added multiple emby server support and enabled it for Plex #865. [tidusjar] + +- Update ISSUE_TEMPLATE.md. [Jamie] + +- Update README.md. [Jamie] + +- Added slack #1459 #865. [Jamie.Rees] + +- Added a checkbox to the usermanagement screen.. Does nothing yet #865 #1456. [Jamie.Rees] + +- Update build.cake. [Jamie] + +- Added swagger into the .zips. [Jamie.Rees] + +- Added Cake build #865. [Jamie.Rees] + +- Added Pushbullet notifications #1459 #865. [Jamie.Rees] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Added the logging endpoint at /api/v1/Logging for the UI logs #1465. [tidusjar] + +- Change the RID. [Jamie.Rees] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Updated Changelog. [Jamie.Rees] + +- Added changelog. [Jamie.Rees] + +- Update README.md. [Jamie] + +- Updated stuff. [Jamie.Rees] + +- Update ISSUE_TEMPLATE.md. [PotatoQuality] + +- Update ISSUE_TEMPLATE.md. [PotatoQuality] + +- Added the Ombi or customized logo onto the login page #865. [TidusJar] + +- Added new login page #865. [Jamie] + +- Added Migrations rather than a manual DB Script #865. [Jamie.Rees] + +- Updated all the packages. [tidusjar] + +- Added a skip options #865. [tidusjar] + +- Added the minimumAvailability #865. [tidusjar] + +- Updater build script. [Jamie.Rees] + +- Added the testing notifications and discord notification #865. [Jamie.Rees] + +- Added tests into the build. [Jamie.Rees] + +- Added Swagger. [Jamie.Rees] + +- Added Discord notification #865. [Jamie.Rees] + +- Added the Movie Sender, Movies will be sent to Radarr now #865. [Jamie.Rees] + +- Added SQLite storage for Hangfire. [Jamie.Rees] + +- Added the Radarr cacher #865. [tidusjar] + +- Added Radarr and Sonarr settings pages #865. [Jamie.Rees] + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Updated build script. [tidusjar] + +- Added the Rules Engine Pattern and the Auto approve and request rules #865. [tidusjar] + +- Update .gitattributes. [Jamie] + +- Added the TraktApi back. [tidusjar] + +- Changes. [Jamie.Rees] + +- Added some sonarr stuff. [Jamie.Rees] + +- Added Hangfire #865. [tidusjar] + +- Update node again... [Jamie.Rees] + +- Update node. [Jamie.Rees] + +- Changes. [Jamie.Rees] + +- Update StringCipher.cs. [Jamie] + +### **Fixes** + +- #1659 Made the option to ignore notifcations for auto approve. [Jamie] + +- New Crowdin translations (#1806) [Jamie] + +- Fixed a launch issue. [Jamie] + +- Allow users to login without a password. [Jamie] + +- Fixed the emby notifications not being sent. [Jamie] + +- #1802 and other small fixes. [tidusjar] + +- So... This sickrage thing should work now. [tidusjar] + +- Fixed emby connect login issue. [tidusjar] + +- Stop making unnecessary calls to the update service. [Jamie] + +- Fixed a bug where it blocked users with 0 limits. [Jamie] + +- Done #1788. [tidusjar] + +- More logging. [Jamie] + +- Fixed #1738. [Jamie] + +- Fixed build. [Jamie] + +- Fixed the issue where notifications were not sendind unless we restarted #1732. [tidusjar] + +- Fixed an issue with a trailing space in the subdir. [tidusjar] + +- Fixed #1774. [Jamie] + +- #1773. [Jamie] + +- Roll back rxjs (#1778) [bazhip] + +- Fixed build. [Jamie] + +- Fixed #1763. [Jamie] + +- Fix "content length error" on preview gif (#1768) [OoGuru] + +- New preview gif for Ombi V3 README (#1767) [OoGuru] + +- Remove debug code. [tidusjar] + +- Fix #1762. [tidusjar] + +- Fixed the preset themes not loading. [tidusjar] + +- Fixed #1760 and improvements on the auto updater. We may now support windows services... #1460. [Jamie] + +- Fixed #1754. [Jamie] + +- Hide the subject when it's not being used. [Jamie] + +- Error handling #1749. [Jamie] + +- New Crowdin translations (#1741) [Jamie] + +- #1732 #1722 #1711. [Jamie] + +- Fixed an issue with switching the preset themes. [Jamie] + +- Fixed #1743. [Jamie] + +- Fixed #1742. [tidusjar] + +- Fix #1742. [tidusjar] + +- Fixed landing page. [Jamie] + +- Fixed. [Jamie] + +- Translated the Requests page and fixed #1740. [Jamie] + +- Fix crash. [Jamie] + +- Sickrage done. Ish... So i've written all the code by looking at the API. the key there is i've looked at the api. I have not tested anything so expect this to fail. [Jamie] + +- SickRage settings UI. [Jamie] + +- Fixed #1721. [tidusjar] + +- Fixed the preset themes issue. [tidusjar] + +- New Crowdin translations (#1654) [Jamie] + +- Fix build. [Jamie] + +- #1460. [Jamie] + +- Fixed tests. [Jamie] + +- Return css as MIME text/css. [Jamie] + +- More added for the preset themes. [Jamie] + +- Moved around the custom styles. [Jamie] + +- More renames. [Jamie] + +- Renames. [Jamie] + +- Load the first 100 requests. [Jamie] + +- Reduce the memory consumption #1720. [Jamie] + +- Moved the schedules jobs into it's own database, see if it helps with the db locking #1720. [Jamie] + +- Fixed #1712. [tidusjar] + +- Potential fix for #1702. [tidusjar] + +- Fixed #1708. [tidusjar] + +- Fixed #1677. [tidusjar] + +- Fixed build. [tidusjar] + +- Potential fix for the DB locking issue #1720. [tidusjar] + +- #1698. [Jamie] + +- Fixed #1705. [tidusjar] + +- Fixed #1703. [tidusjar] + +- Finished adding preset themes. [Jamie] + +- Fixed #17000. [Jamie] + +- Remove the themes because waiting for a merge from lerams project. [Jamie] + +- Finsihed adding preset themes. [Jamie] + +- Fixed #1677. [Jamie] + +- Temp fix for #1683. [Jamie] + +- Fixed #1685. [Jamie] + +- Lossless Compression of images saves 83 KB (#1676) [Fish2] + +- Fixed the availability checker. [tidusjar] + +- Fixed build. [tidusjar] + +- Push out missing migration. [tidusjar] + +- Potential fix for #1674. [tidusjar] + +- Fixed an issue with the caching. [tidusjar] + +- Fixed telegram #1667. [tidusjar] + +- Fixed #1663. [tidusjar] + +- Should fix #1663. [tidusjar] + +- Stop logged in users going to the login page. [Jamie] + +- Fixed it not updating. Styles should be good now. [Jamie] + +- Re did some of the styling on the movie search page, let me know your thoughts. [Jamie] + +- Fixed #1657. [Jamie] + +- Fixed #1655. [Jamie] + +- Removed authentication resul. [Jamie] + +- New Crowdin translations (#1651) [Jamie] + +- New Crowdin translations (#1648) [Jamie] + +- New Crowdin translations (#1638) [Jamie] + +- Fixed #1644. [Jamie] + +- Moar logs #1643. [tidusjar] + +- Fixed #1640. [tidusjar] + +- Fixed the null ref exception #1460. [tidusjar] + +- Fixed landing page. [TidusJar] + +- Fixed #1641. [TidusJar] + +- Fixed #1641. [TidusJar] + +- New Crowdin translations (#1635) [Jamie] + +- Fixed #1631 and improved translation support Included startup args for the auto updater #1460 Mark TV requests as available #1632. [tidusjar] + +- Remove 32bit. [Jamie] + +- More 32bit support. [Jamie] + +- We now show "Available" for tv shows that is fully available #1602. [tidusjar] + +- Fixed the issue where we have got an episode but not the related series. #1620. [tidusjar] + +- Fixed the dropdown not working on iOS in the settings #1615. [tidusjar] + +- Fixed sonarr not monitoring the latest season #1534. [tidusjar] + +- Fixed the issue with firefox #1544. [tidusjar] + +- Fixed discord #1623. [tidusjar] + +- Add browserstack thanks (#1627) [Matt Jeanes] + +- Fix the exception #1613. [Jamie] + +- Found where we potentially are setting a new poster path, looks like the entity was being modified and being set as Tracked by entity framework, so the next time we called SaveChangesAsync() it would save the new posterpath on the entity. [Jamie] + +- Small modifications. [Jamie] + +- Fixed #1622. [Jamie] + +- Various improvements to webpack/gulp/vscode support (#1617) [Matt Jeanes] + +- Episodes in requests are now in order #1597 (#1614) [masterhuck] + +- Fixed a null reference issue in the Plex Content Cacher. [Jamie.Rees] + +- Fixed #1610. [tidusjar] + +- Really fixed the build this time. [tidusjar] + +- Fixed build. [tidusjar] + +- Made the updater work again #1460. [tidusjar] + +- Adding logging into the auto updater and also added more logging around the create inital user for #1604. [tidusjar] + +- Fixed the issue where we did not check if they are already in sonarr when choosing certain options #1540. [tidusjar] + +- We can now delete tv child requests and the parent will get remove #1603. [tidusjar] + +- Finished the api changes requested #1601. [tidusjar] + +- Fixed the Hangfire server timeout issue #1605. [tidusjar] + +- Fixed notifications not sending #1594. [tidusjar] + +- Fixed #1583 you can now delete users. Fixed the issue where the requested by was not showing. Finally fixed the broken poster paths. [tidusjar] + +- Fixed the issue where movie requests were no longer being requested. [tidusjar] + +- Started adding some more unit tests #1596. [Jamie.Rees] + +- #1588 When we make changes to any requests that we can trigger a notification, always send it to all notification agents, even if the user wont recieve it. [Jamie.Rees] + +- Add a message when email notifications are not setup when requesting a password reset. #1590. [Jamie.Rees] + +- Removed text that we no longer need. [Jamie.Rees] + +- Fixed #1574. [Jamie.Rees] + +- #1460 looks like the permissions issue has been resolved. Just need to make sure the Ombi process is terminated. [Jamie.Rees] + +- Put back the old download code. [Jamie.Rees] + +- Test. [Jamie] + +- Build sln. [Jamie.Rees] + +- Order by the username #1581. [Jamie.Rees] + +- Remove sonarr episodes from the cache table. [Jamie.Rees] + +- Couchpotato finished. [tidusjar] + +- Disable run import button if no import options are selected. [tidusjar] + +- Fixed #1574. [tidusjar] + +- Fixed build. [tidusjar] + +- Fixes the issue with non windows systems unable to unzip the tarball #1460. [tidusjar] + +- Finished the couchpotato settings. [tidusjar] + +- Fixed build. [tidusjar] + +- Fixed #1570 #1571. [tidusjar] + +- Fixed #1547. [tidusjar] + +- Should fix #1538. [tidusjar] + +- Fixed #1553. [tidusjar] + +- Fixed #1546. [tidusjar] + +- Fixed #1543. [tidusjar] + +- Fixes an issue with Movie caching not working on develop branch of Radarr (#1567) [Jeffrey Peters] + +- This adds two fields to the Email Notifications settings page. It allows for the disabling of TLS/SSL as well as the ability to disable certificate validation when sending notification emails. (#1552) [Jeffrey Peters] + +- Fixed typo (#1551) [Codehhh] + +- Use Sqlite storage for Hangfire. [tidusjar] + +- Fixed the overrides #1539 also display it on screen now too. [tidusjar] + +- Fixed #1542 also added VSCode support. [tidusjar] + +- Fixed some cosmetic issues #865. [Jamie.Rees] + +- Fixed #1531. [Jamie.Rees] + +- Small fixes #865. [Jamie.Rees] + +- Some errors fixed and some ui improvements #865. [tidusjar] + +- Auto-scale large images down to container size (#1529) [Avi] + +- Fix logo on login page. (#1528) [Avi] + +- Another potential issue? :/ [tidusjar] + +- Real fix. [tidusjar] + +- #1513 Added storage path. [Jamie.Rees] + +- Fixed the discord issue relating to images #1513. [Jamie.Rees] + +- Fixed the issue sending movies to Radarr #1513 Fixed typo #1524. [Jamie.Rees] + +- Fixed logo on reset password pages fixed the run importer button on the user management settings. [Jamie.Rees] + +- Fixed crash/error #865. [tidusjar] + +- #1513 fixed the landing page and also the reverse proxy images. [tidusjar] + +- #1513 correctly set the child requests as approved. [tidusjar] + +- Fixed an issue that potentially causes as issue when siging into plex #865. [tidusjar] + +- Remove dev branch. [PotatoQuality] + +- Prepare readme for upcoming beta. [PotatoQuality] + +- #1513 partially fixed a bug. [tidusjar] + +- Fixed the exception. [tidusjar] + +- Fixed the application url not saving #1513. [tidusjar] + +- Fixed liniting. [tidusjar] + +- REVERSE PROXY BITCH! #1513. [tidusjar] + +- Fixed a bug where we were marking the wrong episodes as available #1513 #865. [Jamie.Rees] + +- Fixed an issue where we messed up the pages and routing. [Jamie.Rees] + +- Emby user importer is now therer! #1456. [tidusjar] + +- #1513 Added the update available icon. [tidusjar] + +- Fixed the issue of it showing as not requested when we find it in Radarr. Made the tv shows match a bit more to the movie requests Added the ability for plex and emby users to login Improved the welcome email, will only show for users that have not logged in Fixed discord notifications the about screen now checks if there is an update ready #1513. [tidusjar] + +- Support email addresses as usernames #1513. [Jamie.Rees] + +- Link to issue treath. [PotatoQuality] + +- Give correct feedback when testing email notifications #1513. [Jamie.Rees] + +- Report issue removed and the deny dropdown removed #1513. [Jamie.Rees] + +- #1513 removed the discord text when testing pushbullet. [Jamie.Rees] + +- Made a lot of changes around the notifcations to support the custom app name also started on the welcome email ##1456. [Jamie.Rees] + +- Fixed the bug where we were displaying shows where we do not have enough information to request #1513. [Jamie.Rees] + +- #1513 added the network to tv shows. [Jamie.Rees] + +- Fixed the whitespace issue #1513. [Jamie.Rees] + +- Fixed the swagger endpoint #865 #1513 Fixed the custom image issue on the login page Fixed the bug when clicking on the tab on the requests page it would switch to the wrong one Swagger is now back @ /swagger. [tidusjar] + +- Optimized images, Update old compressed image with a new lossless one. (#1514) [camjac251] + +- #1513 #865 Fixed the issue where we do not send the requests to Radarr/Sonarr when approving. [tidusjar] + +- #1506 #865 Fixed an issue with the test buttons not working correctly. [tidusjar] + +- #865 Added donation link. [tidusjar] + +- Fixed a bunch of issues on #1513. [tidusjar] + +- #1460 Added the Updater, it all seems to be working correctly. #865. [Jamie.Rees] + +- Removed percentage. [Jamie.Rees] + +- Fixed linter. [Jamie.Rees] + +- Fixed some bugs in the UI #865. [Jamie.Rees] + +- Improved the search buttons #865. [Jamie.Rees] + +- More logging #865. [Jamie.Rees] + +- Made build faster. [Jamie.Rees] + +- More logging. [Jamie.Rees] + +- Set debug level to Debug for now. [Jamie.Rees] + +- Add linting and indexes for interfaces/services (#1510) [Matt Jeanes] + +- Fixed the issue with the tv search not working #1463. [Jamie.Rees] + +- Latest practices... also probably broke some styles - sorry (#1508) [Matt Jeanes] + +- Build with the branch version. [tidusjar] + +- Build fix. [tidusjar] + +- Fixed build. [tidusjar] + +- Omgwtf so many changes. #865. [tidusjar] + +- Tests. [Jamie.Rees] + +- #1456 Started on the User Importer Also added the remember me button. [Jamie.Rees] + +- Made some UI changes, reworked the Emby and Plex screens to make them more user friendly and no so fugly. #865 Also made the login page placeholder text slightly lighter. [Jamie.Rees] + +- Cake skip verification build stuff #865. [Jamie.Rees] + +- Some fixes around the UI and managing requests #865. [tidusjar] + +- #1486. [Jamie.Rees] + +- #1486. [Jamie.Rees] + +- Upgraded to .net core 2.0 #1486. [Jamie.Rees] + +- #865 Finished the landing page, we now check the server's status. [Jamie.Rees] + +- Fixed build. [TidusJar] + +- Removed the telegram api. [Jamie.Rees] + +- Small changes on the updater #1460 #865. [Jamie.Rees] + +- Remove unused functions. [Dhruv Bhavsar] + +- Make Episode picker similar to Requests Child view. #1457 #1463. [Dhruv Bhavsar] + +- Fix merge conflict for TvRequests component. [Dhruv Bhavsar] + +- Upstream Changes... [Dhruv Bhavsar] + +- Clean up Requests page code by moving children request to old component, remove additional REST calls when merging and update component names to make more sense. [Dhruv Bhavsar] + +- Lots of different UI enhancements and fixes #865. [tidusjar] + +- Gitchangelog. [tidusjar] + +- Fixed the issue where we were using the wrong availability options. [tidusjar] + +- Fixed a bunch of bugs in Ombi #865. [tidusjar] + +- Build versioning. [Jamie.Rees] + +- #1460 The assembly versioning seems to work correctly now. [Jamie.Rees] + +- More build versioning changes #865. [tidusjar] + +- Fixed cake script. [Jamie.Rees] + +- WIP on the build versioning for the Updater #1460 #865. [Jamie.Rees] + +- Versioning. [Jamie.Rees] + +- Package versions. [Jamie.Rees] + +- #1460 #865 working on the auto updater. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- Small changes around the roles #865. [tidusjar] + +- Improvements to the UI and also finished the availability checker #865 #1464. [Jamie.Rees] + +- Availability Checker #1464 #865. [Jamie.Rees] + +- Fixed ##1492 and finished the episode searcher for #1464. [Jamie.Rees] + +- #1464. [tidusjar] + +- Reload the settings #1464 #865. [Jamie.Rees] + +- #1464 added the Plex episode cacher #865. [Jamie.Rees] + +- Fixed some issues around the tv requests area Added mattermost and telegram notifications #1459 #865 #1457. [tidusjar] + +- Fix global.json. [Dhruv Bhavsar] + +- Working UI for Requests. Approval/Deny does not work as it doesn't in your code either. [Dhruv Bhavsar] + +- Enable diagnostic on build #865. [Jamie.Rees] + +- Fixed the user token issue #865. [Jamie.Rees] + +- Some small refresh token work #865. [Jamie.Rees] + +- Initial TV Requests UI rebuild. [Dhruv Bhavsar] + +- Made a start on supporting multiple emby servers, the UI needs rework #865. [Jamie.Rees] + +- #865 #1459 Added the Sender From field for email notifcations. We can now have "Friendly Names" for email notifications. [Jamie.Rees] + +- Redirect to the landing page when enabled #1458 #865. [Jamie.Rees] + +- Removed IdentityServer, it was overkill #865. [Jamie.Rees] + +- Fixed another bug with identity. #865 I'm thinking about removing it. Causing more hassle than it's worth. [tidusjar] + +- #1460 #865. [tidusjar] + +- Delete appveyor_old.yml. [Jamie] + +- Fixed path. [Jamie.Rees] + +- Silent build level. [Jamie.Rees] + +- #1459 Forgot to get the Pushbullet agent to look up the pusbullet templates rather than the Discord ones. Updated the Gitchange log. [Jamie.Rees] + +- Made the placeholder color on the login page a bit lighter #865. [Jamie.Rees] + +- Landing and login page changes #865 #1485. [tidusjar] + +- #1458 #865 More work on landing. [Jamie.Rees] + +- Working on the landing page #1458 #865. [tidusjar] + +- A lot of clean up and added a new Image api #865. [Jamie.Rees] + +- Cleaned up the Logging API slightly #1465 #865. [Jamie.Rees] + +- Fixed the Identity Server discovery bug #1456 #865. [tidusjar] + +- Fixed the issue with the Identity Server running on a different port, we can now use -url #865. [Jamie.Rees] + +- Try again. [TidusJar] + +- Publish ubuntu 16.04. [Jamie.Rees] + +- Chnaged the updater job from Minutely to Hourly. [Jamie.Rees] + +- Some work around the Auto Updater and other small changes #1460 #865. [Jamie.Rees] + +- Missed a file. [tidusjar] + +- Fixed the swagger issue. [tidusjar] + +- RDP issues. [tidusjar] + +- Appveyor build rdp investigation. [tidusjar] + +- Working on the requests page #1457 #865. [tidusjar] + +- Made the password reset email style the same as other email notifications #1456 #865. [Jamie.Rees] + +- Fixed some bugs around the authentication #1456 #865. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- Fixed build #1456. [Jamie.Rees] + +- #1456 #865 Started on allowing Plex Users to sign in through the new authentication server. [Jamie.Rees] + +- Removed covalent. [Jamie.Rees] + +- #1456 Reset Password stuff #865. [Jamie.Rees] + +- Finished implimenting Identity with IdentityServer4. #865 #1456. [Jamie.Rees] + +- Moved over to using Identity Server with Asp.Net Core Identity #1456 #865. [Jamie.Rees] + +- Started on the requests rework #865. [Jamie.Rees] + +- Extended the Emby API. [Jamie.Rees] + +- Started reworking the usermanagement page #1456 #865. [tidusjar] + +- Lots of refactoring #865. [Jamie.Rees] + +- Created an individual user api endpoint so we can make the user management pages better #865. [TidusJar] + +- Lot's of refactoring. [Jamie.Rees] + +- #1462 #865 Had to refactor how we use notificaitons. So we now have more notification fields about the request. [Jamie.Rees] + +- Looks like Sonarr is finished and works. A lot simplier this time around. #865. [tidusjar] + +- More work on the Sonarr Api Integration #865. [tidusjar] + +- Started on sonarr #865. [tidusjar] + +- Small changes #865. [tidusjar] + +- Damn son. So many changes... Fixed alot of stuff around tv episodes with the new DB model #865. [tidusjar] + +- Fixed the TV Requests issue #865. [Jamie.Rees] + +- Fixed a load of bugs need to figure out what is wrong with tv requests #865. [tidusjar] + +- #865 rework the backend data. Actually use real models rather than a JSON store. [Jamie.Rees] + +- Fixed the build issue #865. [tidusjar] + +- Allow us to use Emby as a media server. [tidusjar] + +- More Update #865. [Jamie.Rees] + +- Deployment changes. [Jamie.Rees] + +- More work on the Updater. [Jamie.Rees] + +- Lots of fixes. Becoming more stable now. #865. [tidusjar] + +- Small fixes around the searching. [Jamie.Rees] + +- Some rules #865. [Jamie.Rees] + +- Oops. [TidusJar] + +- Started on the Discord API settings page. [TidusJar] + +- Email Notifications are now fully customizable and work! #865. [Jamie.Rees] + +- Small changes and fixed some stylingon the plex page #865. [Jamie.Rees] + +- More on #865 TODO, Find out whats going on with the notifications and why exceptions are being thrown. [Jamie.Rees] + +- Oops. [Jamie.Rees] + +- Ok #865 fixed the published exe. [Jamie.Rees] + +- Fixed errors. [Jamie.Rees] + +- Fixed build script. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- Some more #865. [Jamie.Rees] + +- Create appveyor.yml. [Jamie] + +- The Approving child requests now work! [Jamie.Rees] + +- Fixed many bugs #865. [Jamie.Rees] + +- Loads of changes, improved the movie search stylings is back. [Jamie.Rees] + +- Moved to webpack and started on new style. [Jamie.Rees] + +- Fixed the TV search via Trakt not returning Images anymore. #865. [Jamie.Rees] + +- Rules changes and rework. [Jamie.Rees] + +- Request Grid test. [Jamie.Rees] + +- Small cleanup #865. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- Started the Radarr Settings #865. [Jamie.Rees] + +- Massive amount of rework on the plex settings page. It's pretty decent now! #865. [tidusjar] + +- Fixed build. [Jamie.Rees] + +- Fixed build. [tidusjar] + +- Rules #865. [tidusjar] + +- Stuff. [Jamie.Rees] + +- Forgot to uncomment. [Jamie.Rees] + +- Tetsd. [Jamie.Rees] + +- Build task changes. [Jamie.Rees] + +- Adsa. [Jamie.Rees] + +- Appveyor. [Jamie.Rees] + +- Stuff around tokens and also builds. [Jamie.Rees] + +- Finished the Plex Content Cacher. Need to do the episodes part but things are now showing as available! #865. [tidusjar] + +- Small user changes #865. [Jamie.Rees] + +- Stuff #865 need to work on the claims correctly. [Jamie.Rees] + +- Reworked the TV model AGAIN #865. [Jamie.Rees] + +- The move! [Jamie.Rees] + +- Fixed build #865. [Jamie.Rees] + +- Fixed the user management #865. [Jamie.Rees] + +- #865 Added support for multiple plex servers. [Jamie.Rees] + +- Bleh. [tidusjar] + +- Small changes. [Jamie.Rees] + +- Fixed the build. [Jamie.Rees] + +- Fixes. [Jamie.Rees] + +- Bundling changes. [Jamie.Rees] + +- Some series information stuff, changes the pace theme too. [Jamie.Rees] + +- Docker support and more, redesign the episodes. [tidusjar] + +- Stuff around episode/season searching/requesting. [Jamie.Rees] + +- Removed redundant folders. [tidusjar] + +- Lots of backend work. [tidusjar] + +- Fixed build. [Jamie.Rees] + +- TV Request stuff. [Jamie.Rees] + +- Work around the user management. [tidusjar] + +- More. [Jamie.Rees] + +- Lots and Lots of work. [Jamie.Rees] + +- Diagnostic changes. [tidusjar] + +- Fixed hangfire exception. [tidusjar] + +- Remove xunit. [tidusjar] + +- Lots more work :( [Jamie.Rees] + +- More changes. [tidusjar] + +- #865. [Jamie.Rees] + +- Small changes. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- More mapping. [Jamie.Rees] + +- Mapping mainly. [Jamie.Rees] + +- Fix systemjs config not being included. [Matt Jeanes] + +- Fixed bundling and various improvements. [Matt Jeanes] + +- Finished the emby wizard #865. [tidusjar] + +- Finished the wizard #865 (For Plex Anyway) [tidusjar] + +- Small changes. [tidusjar] + +- More work on Wizard and Plex API #865. [tidusjar] + +- Settings. [Jamie.Rees] + +- Settings for Ombi. [Jamie.Rees] + +- Fixed some issues around the identity. [Jamie.Rees] + +- #865 more for the authentication. [tidusjar] + +- Auth. [Jamie.Rees] + +- More on the search and requests page. It's almost there for movies. Need to add some filtering logic #865. [tidusjar] + +- #865. [Jamie.Rees] + +- Fixed build. [tidusjar] + +- Messing around with the settings. [tidusjar] + +- Fixed the yml. [Jamie.Rees] + +- Remove unneeded bundle config. [Matt Jeanes] + +- Redo dotnet publish targets. [Jamie.Rees] + +- Bundling changes. [Jamie.Rees] + +- Stuff. [Jamie.Rees] + +- Move app into wwwroot. [Jamie.Rees] + +- Put uglify back in! [Jamie.Rees] + +- Wrong line. [Jamie.Rees] + +- Matt is helping. [Jamie.Rees] + +- Revert. [tidusjar] + +- Small tweaks. [tidusjar] + +- Upgrade to .Net Standard 1.6. [tidusjar] + + +## v2.2.1 (2017-04-09) + +### **New Features** + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Added the forums. [tidusjar] + +- Updates. [tidusjar] + +- Update gulpfile.js. [Jamie] + +- Update gulpfile.js. [Jamie] + +- Update gulpfile.js. [Jamie] + +- Update gulpfile.js. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Update gulpfile.js. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Added a retry policy around the emby newsletter. [Jamie.Rees] + +### **Fixes** + +- Revert "Merge branch 'DotNetCore' into dev" [tidusjar] + +- More borken build. [Jamie.Rees] + +- Started adding requesting. [Jamie.Rees] + +- Done the movie searching. [tidusjar] + +- #865. [tidusjar] + +- More. [tidusjar] + +- Moar. [tidusjar] + +- Small changes. [tidusjar] + +- Styling. [Jamie.Rees] + +- MOre changes. [Jamie.Rees] + +- Spacing. [Jamie.Rees] + +- Try again. [Jamie.Rees] + +- More. [Jamie.Rees] + +- Again. [Jamie.Rees] + +- Anbother. [Jamie.Rees] + +- Another. [Jamie.Rees] + +- Another. [Jamie.Rees] + +- Retry. [Jamie.Rees] + +- A. [Jamie.Rees] + +- Fixed. [Jamie.Rees] + +- Cahnge 2. [Jamie.Rees] + +- Appveyor change. [Jamie.Rees] + +- The start of a new world. [Jamie.Rees] + +- Fixed the migration number and order by the added date for the newsletter #1264. [tidusjar] + +- Forgot this change. [tidusjar] + +- Also fixed the issue for the Emby Newsletter where episodes were not getting added :( [tidusjar] + +- #1264 "They may take our lives, but they'll never take our freedom!" [tidusjar] + +- Finished reworking the Sonarr Integration. Seems to be working as expected, faster and most stable. It's Not A Toomah! [tidusjar] + +- Small bit of work. [Jamie.Rees] + +- Made a start on the new Sonarr integration. [tidusjar] + +- For test emails, if there is no new content then just grab some old data. [tidusjar] + +- Fixed an issue where the emby newsletter was always showing series. [tidusjar] + + +## v2.2.0 (2017-03-30) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Added a new setting for the Netflix option, we can now disable it appearing in the search. [tidusjar] + +- Update German Translation. [Marius Schiffer] + +- Added a release notes page, you can access via Admin>Updates>Recent Changes tab. Note to self, need to put better comments in for users to understand! [Jamie.Rees] + +- Added gravitar image. [Jamie.Rees] + +- Added a missing `await` for an HP AddArtist call. Added some more Trace logging. [smcpeck] + +- Added a missing `await` for an HP AddArtist call. Added some more Trace logging. [smcpeck] + +- Added some logging around API calls. [smcpeck] + +- Changed IEmbyAvailabilityChecker to use IEnumberables + checking actor search against Emby content + PR feedback. [smcpeck] + +- Changed actor searching to support non-actors too. [smcpeck] + +- Added a 10 second timer to refresh some new caching I put in. [smcpeck] + +- Added root folder and approving quality profiles in radarr #1065. [tidusjar] + +- Added some debugging code around the newsletter for Emby #1116. [tidusjar] + +- Added a TMDB Rate limiter for the newsletter. [tidusjar] + +- Added port check in wizard. also fixed favicon. [tidusjar] + +- Update Radarr placeholder. [d2dyno] + +- Added the user login for emby users #435. [tidusjar] + +- Added User Management support for Emby #435. [tidusjar] + +- Added emby to the sidebar #435. [tidusjar] + +- Added API endpoint for /actor/new/ to support searching for movies not already available/requested. [smcpeck] + +- Update ISSUE_TEMPLATE.md. [Jamie] + +- Update README.md. [SuperPotatoMen] + +- Update README.md. [SuperPotatoMen] + +- Update README.md. [SuperPotatoMen] + +### **Fixes** + +- Translation changes. [Jamie.Rees] + +- Syntax error. [tidusjar] + +- Fixed an issue where we were retrying the API call when the Plex users login creds were invalid. #1217. [tidusjar] + +- Slightly increased the wait time for the emby newsletter also fixed a potential error in the plex user checker. [Jamie.Rees] + +- Fixed an issue where we were not notifiying emby users. [Jamie.Rees] + +- Fixed the issue where the recent changes page was not showing the correct date. #1296. [Jamie.Rees] + +- Fixed #1252 (Show the correct user type on the management page for Plex Users) [Jamie.Rees] + +- Fixed the casting error #1292. [Jamie.Rees] + +- Fix test newletter not sending when empty. [Dhruv Bhavsar] + +- Quick fix for email false positive message. ISSUE: #1286. [Dhruv Bhavsar] + +- Fixes around the newsletter. We will now correctly show newly added shows and also newly added episodes. #1163. [tidusjar] + +- Fixed a sonarr deseralization error. [tidusjar] + +- Increased the delay for the Episode information api calls. #1163. [tidusjar] + +- Looks like we were overloading emby with out api calls. [tidusjar] + +- Fixed the root path escaping issue for Radarr too! [tidusjar] + +- Some small backend newsletter changes, we can now detect if there are any movies and/or tv shows, if there are none then we will no longer send out an empty newsletter. [Jamie.Rees] + +- Remoddeled the notificaiton settings to make it easier to add more. This is some techinical changes that no one except me will ever notice :( [Jamie.Rees] + +- Fixed #1234. [Jamie.Rees] + +- A fix to the about page and also started to rework the notification backend slightly to easily add more notifications. [Jamie.Rees] + +- Adding more logging into the Plex Cacher. [Jamie.Rees] + +- #1218 changed the text when we cannot display release notes for dev and EAP branches. [Jamie.Rees] + +- Fix for #1236. [SuperPotatoMen] + +- Tooltips. [Jamie.Rees] + +- #236. [Jamie.Rees] + +- #1102. [Jamie.Rees] + +- Done #1012. [Jamie.Rees] + +- Oops #1134. [Jamie.Rees] + +- Fixed #1121. [Jamie.Rees] + +- Fixed #1210. [Jamie.Rees] + +- Fixed typo #1134. [Jamie.Rees] + +- Fixed #1223. [Jamie.Rees] + +- Another newsletter fix attempt #1163 #1116. [tidusjar] + +- Fixup! Reset the branch on v2.1.0 tag to get to a shared state between dev and Master. [distaula] + +- Fixed a bug in the Plex Newsletter. [tidusjar] + +- Typo. [tidusjar] + +- Fixed around the newsletter and a small feature around the permissions/features (#1215) [Jamie] + +- Fixed #1189. [tidusjar] + +- Fixed #1195. [Jamie.Rees] + +- Fixed #1195. [Jamie.Rees] + +- Fixed #1192. [Jamie.Rees] + +- Fixed issue where we could get null rating keys on Plex. [tidusjar] + +- Needed to treat a 201 as success, too. + removed some commented out code. [Shaun McPeck] + +- Normalized spacing/tabs. [smcpeck] + +- Move local user login to be the first thing checked; renamed old Api variable to PlexApi now that Emby is in play. [smcpeck] + +- Remove all the polling/retry logic around HP requests. This was a problem do to not properly awaiting the initial AddArtist API call being sent to HP. Also fix SetAlbumStatus to use ReleaseId instead of MusicBrainsId (same fix previously applied to AddArtist). [smcpeck] + +- Restore checking of HTTP StatusCode on ApiRequests; remove checking of response.ErrorException. [smcpeck] + +- Reverted (for now) non-200 response handling; added some extra logging. [smcpeck] + +- Tweaked ApiRequest behavior on non-200 responses; think it was breaking login. :-" [smcpeck] + +- Only deserialize response payload in ApiRequest when StatusCode == 200. Will a default return value in other cases cause other issues? [smcpeck] + +- Headphones - added releaseID to generic RequestedModel and passing that through to HP request. Their API doesn't request via the MusicBrainzId. [smcpeck] + +- Fixed #1038. [tidusjar] + +- Fixed a slight issue where we could click the change folders button rather than the dropdown arrow #1189. [tidusjar] + +- Bunch of updater files. [tidusjar] + +- #1163 #117. [tidusjar] + +- Removed some unnecessary 'ConfigureAwait` uses. [smcpeck] + +- Remove meaningless html class from actor searching checkbox. [smcpeck] + +- Fixed an issue where we were not always showing movies from external programs. [tidusjar] + +- Remove extra delay when filtering out existing movies. [smcpeck] + +- Post merge build fixes. [smcpeck] + +- Fix. [tidusjar] + +- Fixed #1177. [tidusjar] + +- Fixed #1152. [tidusjar] + +- Fixed #1123. [tidusjar] + +- Fixed a bug when sending to radarr. [tidusjar] + +- Fixed #1133. [tidusjar] + +- Fixed issues img. [Jamie.Rees] + +- Stop Plex being enabled on the first time installing #1048. [Jamie.Rees] + +- The landing page now works for emby #435. [tidusjar] + +- Fixed #1104. [tidusjar] + +- Fixed #1090. [tidusjar] + +- Fixed #1103. [tidusjar] + +- Small changes. [tidusjar] + +- Break out Mass Email feature into its own tab, upgrade Font Awesome and clean up some comments. [dhruvb14] + +- Fix typo. [Travis Bybee] + +- Fixed #1066. [Jamie.Rees] + +- Fixed broken builds. [Jamie.Rees] + +- Fixed #1083. [Jamie.Rees] + +- #1049. [tidusjar] + +- Fixed #1071. [tidusjar] + +- Fixed #1048 #1081. [tidusjar] + +- #1074. [Jamie.Rees] + +- #1069. [Jamie.Rees] + +- Fix for #1068. [tidusjar] + +- Remove duplciate tv show status. [tidusjar] + +- Some request ui changes. [tidusjar] + +- Removed references to Plex. [tidusjar] + +- Removed plex from the scheduled jobs ui. [tidusjar] + +- First run of the newsletter set it to a test. [tidusjar] + +- Reworked the newsletter for Emby! Need to rework it for Plex and use the new way to do it. [tidusjar] + +- Fixed build. [tidusjar] + +- Fixed the mass email, it was only being set to users with the newsletter feature #358. [tidusjar] + +- Removed Plex Request from the notifications. [tidusjar] + +- Finish implementing mass email feature. [dhruvb14] + +- @tidusjar pointed out runtime error!! [dhruvb14] + +- Does not compile, need to get data from UI into nancy somehow and figure out why IMassEmail is not initializing. [dhruvb14] + +- Begin Implementing Mass Email Section. [dhruvb14] + +- Hide the auto update btn #236 Fixed where we were not populating the emby episodes #435. [tidusjar] + +- Fix Radarr labels. [d2dyno] + +- Fixed pace loader. [Jamie.Rees] + +- Check if Emby/Plex is enabled before starting the job. [Jamie.Rees] + +- Fixed #1036. [Jamie.Rees] + +- Fixed a typo and changed wording. [Torkil Liseth] + +- Fixed #1035. [Jamie.Rees] + +- Fix for #1026. [Jamie.Rees] + +- Fixed #1042. [tidusjar] + +- #435. [Jamie.Rees] + +- #435 Started the wizard. [Jamie.Rees] + +- Removed. [tidusjar] + +- Final Fixes. [dhruvb14] + +- Partial fix for broken HR tag's in Email... [dhruvb14] + +- DAMN! #435 that's a lot of code! [tidusjar] + +- Started adding Emby, Lots of backend work done. Need a few more services done and login and user management. #435. [tidusjar] + +- UI changes to add checkbox and support searching for only new matches via new API. [smcpeck] + +- REFACTOR: IAvailabilityChecker - changed arrays to IEnumerables. [smcpeck] + +- UI changes to consume actor searching API. [smcpeck] + +- API changes to allow for searching movies by actor. [smcpeck] + +- Enforcing async/await in synchronous methods that were marked async. [smcpeck] + + +## v2.1.0 (2017-01-31) + +### **New Features** + +- Update README.md. [Jamie] + +- Update .gitattributes. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Added the new labels to the search. [tidusjar] + +- Added a switch to use the new search or not, just in case people do not like it. added a migration to turn on the new search. [Jamie.Rees] + +- Added a bunch of categories for tv search similar to what we have for movies. [Jamie.Rees] + +### **Fixes** + +- Fixed typos. [Haries Ramdhani] + +- Fix typo in readme. [tdorsey] + +- Fixed #985. [Jamie.Rees] + +- FIxed #978. [tidusjar] + +- Fixed the approval issue for #939. [tidusjar] + +- Some general improvements. [tidusjar] + +- Turned off migration for now. [tidusjar] + +- Fixed #998. [tidusjar] + +- Additional movie information. [Jamie.Rees] + +- Debug info around the notifications. [Jamie.Rees] + +- Small changes. [tidusjar] + +- Fixed #995. [tidusjar] + +- Fix for #978. [tidusjar] + +- Fixed #991. [tidusjar] + +- Fixed the login issue and pass Radarr the year #990. [Jamie.Rees] + +- More small tweaks around the username/alias. [Jamie.Rees] + +- Possible issue with the empty username. [Jamie.Rees] + +- Potential Fix for #985. [Jamie.Rees] + +- Small changed to the sidebar. [Jamie.Rees] + +- Small changes. [Jamie.Rees] + +- Done #627. [Jamie.Rees] + +- Finished #535 #445 #170. [tidusjar] + +- Fixed tests. [Jamie.Rees] + +- Started to add the specify Sonarr root folders. [Jamie.Rees] + +- Fixed #968. [Jamie.Rees] + +- Fixed #970. [Jamie.Rees] + +- Done #924. [Jamie.Rees] + +- Fixed. [Jamie.Rees] + +- Fixed #955. [Jamie.Rees] + +- #956. [Jamie.Rees] + +- Fixed #947. [Jamie.Rees] + +- #951. [tidusjar] + +- Finished #923 !!! [tidusjar] + +- More for #923. [Jamie.Rees] + +- Radarr integartion in progress #923. [tidusjar] + +- Fixed #940 don't show any shows without a tvdb id. [tidusjar] + +- Finished #739. [Jamie.Rees] + +- Initial impliementation of #739. [Jamie.Rees] + +- Improved the search UI and made it more consistant. Finished the Netflix API Part #884. [Jamie.Rees] + + +## v2.0.1 (2017-01-16) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Added a netflix api. [Jamie.Rees] + +### **Fixes** + +- Fixed #934. [Jamie.Rees] + + +## v2.0 (2017-01-14) + +### **New Features** + +- Update ISSUE_TEMPLATE.md. [SuperPotatoMen] + +- Update ISSUE_TEMPLATE.md. [SuperPotatoMen] + +- Update ISSUE_TEMPLATE.md. [SuperPotatoMen] + +- Update README.md. [SuperPotatoMen] + +- Update README.md. [SuperPotatoMen] + +- Update ISSUE_TEMPLATE.md. [SuperPotatoMen] + +- Update ISSUE_TEMPLATE.md. [SuperPotatoMen] + +- Update README.md. [SuperPotatoMen] + +- Update README.md. [SuperPotatoMen] + +- Added the settings for #925 but need to apply the settings to the UI. [Jamie.Rees] + +- Changed the settings name from Plex Requests to Ombi. [Jamie.Rees] + +- Added support for Managed Users #811. [Jamie.Rees] + +- Change solution name in travis. [mhann] + +- Update ISSUE_TEMPLATE.md. [SuperPotatoMen] + +### **Fixes** + +- Finished #925. [Jamie.Rees] + +- Some TODO's. [Jamie.Rees] + +- Fixed #915. [Jamie.Rees] + +- Fixed the issue where notifications are not being sent to users with Aliases #912. [Jamie.Rees] + +- Fixed #891. [Jamie.Rees] + +- Fix indentation issue. [Marcus Hann] + +- Implement simple button. [Marcus Hann] + +- Plex Username Case Sensitivity Fix. [thegame3202] + +- Fixed #882. [Jamie.Rees] + +- Api changed again, so more fixes for #878. [Jamie.Rees] + +- Possible fix for #893. [Jamie.Rees] + +- Fixed #898. [Jamie.Rees] + +- Fixed #878. [TidusJar] + +- * userManagementController.js: fixed #881. [TidusJar] + +- More work on watcher, should all be good now. #878. [Jamie.Rees] + +- Delete PlexRequests.sln.DotSettings. [Jamie] + +- Fixed #862. [Jamie.Rees] + +- #399 and #398 finished. [Jamie.Rees] + +- More work on #399. [Jamie.Rees] + +- Finished #884. [Jamie.Rees] + +- More for #844. [Jamie.Rees] + +- Another #844. [Jamie.Rees] + +- Fixed a dependancy issue with #844. [Jamie.Rees] + +- Finished the main part of #844 just need testing. [Jamie.Rees] + +- Fixed #832. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- Fix tiny readme typo. [mhann] + +- Fixed #850 also started #844 (Wrote the API interaction) [Jamie.Rees] + +- #801 #292 done. [Jamie.Rees] + +- Should fix #841 #835 #810. [Jamie.Rees] + +- Fix small typo in ticket overview page. [mhann] + +- More work on the combined login. [Jamie.Rees] + +- Fixed db issue. [Jamie.Rees] + +- Name changes. [Jamie.Rees] + +- All Sln changes. [tidusjar] + +- Moved API Sln dir. [tidusjar] + +- Fixed build. [tidusjar] + +- Moved namespaces. [tidusjar] + +- Renamed zip. [tidusjar] + +- Product name change. [tidusjar] + + +## v1.10.1 (2016-12-17) + +### **Fixes** + +- #788 fixed! [tidusjar] + +- Fixed #788 and #791. [tidusjar] + +- #399 #398. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- Small refactorings. [Jamie.Rees] + +- #782. [Jamie.Rees] + +- #785. [Jamie.Rees] + + +## v1.10.0 (2016-12-15) + +### **New Features** + +- Update README.md. [Jamie] + +- Added optional launch args for the auto updater. [Jamie.Rees] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update _Navbar.cshtml. [Jamie] + +- Update README.md. [Jamie] + +- Update _Navbar.cshtml. [Jamie] + +- Update README.md. [Jamie] + +- Added a new permission to bypass the request limit. [Jamie.Rees] + +- Update Version1100.cs. [SuperPotatoMen] + +- Added logging around the Newsletter #717. [Jamie.Rees] + +- Added missing migration. [tidusjar] + +- Added loading spinner. [Jamie.Rees] + +- Update UI.resx. [SuperPotatoMen] + +- Update Version1100.cs. [Jamie] + +- Update ISSUE_TEMPLATE.md. [SuperPotatoMen] + +### **Fixes** + +- Fixed an issue where the HTML in the newsletter was incorrect. [Jamie.Rees] + +- Fixed #201. [Jamie.Rees] + +- Fixed #720 and added better error handling around the migrations. [Jamie.Rees] + +- Fixed #769. [Jamie.Rees] + +- Write out the actual file version. [Jamie.Rees] + +- Error checking around GA. [TidusJar] + +- Fixed #761. [tidusjar] + +- Fixed #749 Fixed an issue where we were adding the read only permission when creating the admin. [tidusjar] + +- Fixed #757. [tidusjar] + +- Fixes around the server admin #754. [Jamie.Rees] + +- Removed the trace option from the UI, it is only accessible when appending the url with "?developer" #753. [Jamie.Rees] + +- Fixed an issue where the admin could not be updated. [Jamie.Rees] + +- Fixed #745. [Jamie.Rees] + +- Fixed #748. [Jamie.Rees] + +- Workaround for #748. [SuperPotatoMen] + +- Another attempt to fix #717. [tidusjar] + +- Fixed #744. [Jamie.Rees] + +- Tidied up the warnings. [Jamie.Rees] + +- Small bit of analytics. [Jamie.Rees] + +- Removed the whitelist. [Jamie.Rees] + +- Should fix #696 Fixed an issue with the scheduled jobs where it could use a different trigger if the order between the schedules and the triggers were in different positions in the array... Stupid me, ordering both arrays by the name now. [tidusjar] + +- Some better null object handling #731. [Jamie.Rees] + +- Small tweaks. [Jamie.Rees] + +- Fixed #728. [Jamie.Rees] + +- Fixed #727. [Jamie.Rees] + +- Fixed admin redirect issue. [tidusjar] + +- Fixed #718. [tidusjar] + +- Lots of small fixes and tweaks. [Jamie.Rees] + +- Tidied up some of the angular code, split the UI into it's own directives for easier maintainability. [Jamie.Rees] + +- Small tweaks to the Request Page. [Jamie.Rees] + +- Reverted the PR that may have caused #619. [Jamie.Rees] + +- Some small tweaks around #218 Just added the link to the settings and some angular improvements. [Jamie.Rees] + +- Test. [Jamie.Rees] + +- Attempt at fixing #686. [Jamie.Rees] + +- Finished #707. [Jamie.Rees] + +- Fixed #704. [Jamie.Rees] + +- Fixed #705. [Jamie.Rees] + +- Fixed #706. [Jamie.Rees] + +- #547. [Jamie.Rees] + +- Default tabs #304. [Jamie.Rees] + +- Fixed #703. [Jamie.Rees] + +- #233. [Jamie.Rees] + +- Done #678. [Jamie.Rees] + +- Fixed #670. [Jamie.Rees] + +- #456 Update all the requests when we identify that the username changes. [Jamie.Rees] + +- More user management. [Jamie.Rees] + +- #218. [Jamie.Rees] + +- Fixed build. [tidusjar] + +- Implimented the features #218. [tidusjar] + +- Use the user alias everywhere if it is set #218. [tidusjar] + +- Implimented auto approve permissions #218. [tidusjar] + +- A. [tidusjar] + +- Fixed an IOC issue. [tidusjar] + +- Fixed the issue with user management, needed to implement our own authentication provider. [Jamie.Rees] + +- Small changes including #666. [Jamie.Rees] + +- Done #679. [tidusjar] + +- Reduce the retry time. [Jamie.Rees] + +- Remove all references to the claims. [Jamie.Rees] + +- Lots of fixed and stuff. [Jamie.Rees] + +- Fixed potential crash #683. [Jamie.Rees] + +- Fixed #681. [Jamie.Rees] + +- More user management. [Jamie.Rees] + +- Finishing off the user management page #218 #359 #195. [Jamie.Rees] + +- Finished #646 and fixed #664. [Jamie.Rees] + +- Started on #646. Fixed #657. [Jamie.Rees] + +- Fixed #665. [Jamie.Rees] + +- Migrate users. [TidusJar] + +- Fixed build. [Jamie.Rees] + +- Convert the for to foreach for better readability. Still need to rework this area. [Jamie.Rees] + +- Final Tweaks #483. [Jamie.Rees] + +- Finished #483. [Jamie.Rees] + +- Finished the queue #483. [Jamie.Rees] + +- Started on the queue for requests #483 TV Requests with missing information has been completed. [Jamie.Rees] + +- Fixed build. [Jamie.Rees] + +- Finished the notification for the fault queue. [Jamie.Rees] + +- Finished #556. [Jamie.Rees] + +- Finished #633 (First part of the queuing) [Jamie.Rees] + +- Finished #659 #236 has been modified slightly. Needs testing on Different systems. [Jamie.Rees] + +- Almost finished #659. [Jamie.Rees] + +- Started on #483. [Jamie.Rees] + +- #544. [Jamie.Rees] + +- Fixed #656 and more work on #218. [Jamie.Rees] + +- Fixed some issues with the user management work. [TidusJar] + +- Fixed build issue. [TidusJar] + +- User perms. [Jamie.Rees] + + +## v1.9.7 (2016-11-02) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +### **Fixes** + +- Potential fix for #629. [TidusJar] + +- Fixed an issue to stop blatting over the base url. [tidusjar] + +- Fixed #643. [TidusJar] + +- Fixed #622. [TidusJar] + + +## v1.9.6 (2016-10-28) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +### **Fixes** + +- Fixed #586. [Jamie.Rees] + +- Fixed #622. [Jamie.Rees] + +- Fixed #621. [Jamie.Rees] + + +## v1.9.5 (2016-10-27) + +### **New Features** + +- Added our own custom migrations, a lot easier to migrate DB versions now. [tidusjar] + +### **Fixes** + +- Bump version. [Jamie.Rees] + +- Small bit of work on the user claims. [Jamie.Rees] + +- Fix #612 again. [Jamie.Rees] + +- User management styling. [Jamie.Rees] + +- Fixed #608 and some other small stuff. [tidusjar] + +- More user mapping. [tidusjar] + +- Fixed #615. [tidusjar] + +- Fixed #610. [tidusjar] + +- User management stuff. [Jamie.Rees] + +- User management work. [Jamie.Rees] + +- Revert the TVSender to use the old code. [Jamie.Rees] + +- Fixed the view issue. [tidusjar] + +- S582: admin improvements part 2. [Jim MacKenzie] + +- Fix #612. [Jamie.Rees] + +- User management, migration and newsletter. [Jamie.Rees] + +- #602 recently added improvements. [tidusjar] + +- Revert "Sorting out the current state of migrations" [Jamie.Rees] + +- Sorting out the current state of migrations. [Jamie.Rees] + +- Marked as obsolete. [Jim MacKenzie] + +- Migration setup. [Jim MacKenzie] + +- Removed extra line breaks. [Jim MacKenzie] + +- Moved Newsletter Settings to its own page. [Jim MacKenzie] + +- Reverted TMDB package. [Jamie.Rees] + +- Remove DB Option. [Jamie.Rees] + +- Upgrade the movie DB package and fixed #370 To fix this I had to make another API call... It slows down the search... [tidusjar] + +- Lots of small fixes including #475. [tidusjar] + +- A better fix for #587. [tidusjar] + +- Fixed #553. [tidusjar] + +- #601. [Jamie.Rees] + +- More rework to use the Plex DB. [Jamie.Rees] + +- More work around using the PlexDatabase. [Jamie.Rees] + +- Plex DB. [Jamie.Rees] + +- Allow to process even know we had an error #578. [Jamie.Rees] + +- Fix boostrapper-datetimepicker imports (#586) [David Torosyan] + +- Potential work around for #587. [tidusjar] + +- Fixed #589. [tidusjar] + + +## v1.9.4 (2016-10-10) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Added Paypalme options, no UI yet (#568) [Jim MacKenize] + +- Update appveyor.yml. [Jamie] + +- Update README.md. [Jamie] + +### **Fixes** + +- Reverted. [tidusjar] + +- Make sure it's enabled before sending the recently added. [tidusjar] + +- Moved the HR inside the table for TV Shows. [Jamie.Rees] + +- FIXED!!!!! YES BITCH! #550. [tidusjar] + +- Moved the horizontal rules inside the table row. [tidusjar] + + +## v1.9.3 (2016-10-09) + +### **New Features** + +- Added properties to disable tv requests for specific episodes or seasons and wired up to admin settings. [Matt McHughes] + +- Added different sonarr search commands. [tidusjar] + +### **Fixes** + +- Fixed #515. [tidusjar] + +- Fixed #561 and a small bit of work on #569. [tidusjar] + +- #569. [tidusjar] + +- Fixed case typo. [Matt McHughes] + +- Finished wiring tv request settings to tv search. [Matt McHughes] + +- WIP hide tv request options based on admin settings. [Matt McHughes] + +- Set meta charset to be utf-8. [Madeleine Schnemann] + +- F#552: updated labels text. [Jim MacKenize] + +- F#552: Re-design lables. [Jim MacKenzie] + +- Last correction.. Now the translation is ready to be used. [Michael Reber] + +- Forgot to correct two incorrect translations. [Michael Reber] + +- Correction of the German translation. [Michael Reber] + +- Notification improvements. [tidusjar] + +- #515. [tidusjar] + + +## v1.9.2 (2016-09-18) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Update CouchPotatoCacher.cs. [Jamie] + +- Added some error handing around the GetMovie area #517. [tidusjar] + +- Added a version endpoint in "/api/version" #529. [tidusjar] + +### **Fixes** + +- Trying to fix the auto CP. [tidusjar] + +- Increase the notice message text box #527. [tidusjar] + +- #536 this should fix notification settings when it is being unsubscribed when testing. [tidusjar] + +- Improved how the TV search looks and feels. [tidusjar] + +- Fix for reverse proxy when using the wizard. [Devin Buhl] + +- Fixed #532. [tidusjar] + +- This should fix some issues with the episode requests #514. [tidusjar] + +- Small changes around existing series. [tidusjar] + +- Fixed #514 and the unit tests. [tidusjar] + +- If there is a bad password when changing it, we now inform the user. [tidusjar] + +- When logging out as admin remove the username from the session. [tidusjar] + +- Sorted out some of the UI for #18. [tidusjar] + +- Finished #18. [tidusjar] + + +## v1.9.1 (2016-08-30) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Added french to the navbar. [tidusjar] + +- Changed the way we use the setTimeout function. Should fix #403 #491 #492. [tidusjar] + +- Change the redirection to use a relative uri redirect #473. [tidusjar] + +### **Fixes** + +- Fixed tests. [tidusjar] + +- Fixed #491 and added more logging around the email messages under the Info level. [tidusjar] + +- Finished #415. [tidusjar] + +- Fixed an issue where there were some JS errors on the landing page settings and stopped us being redirected to the login sometimes as an admin. [tidusjar] + +- Fixed #480. [tidusjar] + +- User management. [tidusjar] + +- Fixed #505. [tidusjar] + +- Append the application version to the end of our JS/CSS files. [tidusjar] + +- Fixed issue #487. [tidusjar] + +- Remove the datetime picker css from the main assets block and only load it on the pages it needs. #493. [tidusjar] + +- Redirect to search if we are already logged in #488. [tidusjar] + +- Fixed build. [tidusjar] + +- Fixed an issue where you could set the base url as requests #479. [tidusjar] + +- Working on the beta releases page and also the user management. [tidusjar] + +- User work. [tidusjar] + + +## v1.9.0 (2016-08-18) + +### **New Features** + +- Update the availability checker to search for TV Episodes. [tidusjar] + +- Changed the no TVMazeid message. [tidusjar] + +- Added an option to disable/enable the Plex episode cacher. [tidusjar] + +- Updated the episode cacher to have a minimum of 11 hours before it runs again. [tidusjar] + +- Added some useful analytical infomation around the wizard. [tidusjar] + +- Updated the German translations #402. [tidusjar] + +- Added some code to shrink the DB. reworked the search to speed it up. [tidusjar] + +- Change to use the GrandparentTitle rather than the thumbnail.... facepalm. [tidusjar] + +- Change the interval to hours! [tidusjar] + +- Added the transaction back into the DB. Do not run the episode cacher if it's been run in the last hour. [tidusjar] + +- Added logging. [tidusjar] + +- Changed the query slightly. [tidusjar] + +- Updated Newtonsoft.Json, Autofixture, Nlog and Dapper packages. [tidusjar] + +- Added the Sonarr check for episodes #254. [tidusjar] + +- Added unit tests. [tidusjar] + +- Added #436. [tidusjar] + +- Update build no. [tidusjar] + +- Updated translations for #402. [tidusjar] + +- Added a beta module. [tidusjar] + +- Added a custom debug root path provider, this means we do not have to recompile the views every time we make a view change. [tidusjar] + +- Update .gitignore. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Added tests for the string hash. [tidusjar] + +- Added code to request the api key for CouchPotato. [tidusjar] + +- Added the file version to the layout. [tidusjar] + +- Update appveyor.yml. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Added automation tests. [tidusjar] + +- Update appveyor.yml. [Jamie] + +- Updated packages. [tidusjar] + +- Updated Polly. [tidusjar] + +- Updated Fr, IT and NL translations #402. [tidusjar] + +- Changed the way the donate button works for #414. [tidusjar] + +- Added MediatR. [tidusjar] + +### **Fixes** + +- User management stuff. [tidusjar] + +- Fixed! [tidusjar] + +- Small amount of work on the user management. [tidusjar] + +- Fixed #466. [tidusjar] + +- Fixes. [tidusjar] + +- Made the episode request better. [tidusjar] + +- Removed commented out tests. [tidusjar] + +- Fixed the bad test after the merge. [tidusjar] + +- Reworked #466. [tidusjar] + +- More unit tests around the login and also the core Plex Checker. [tidusjar] + +- Potentially fixed the issue where we were requesting everything that was also available now. [tidusjar] + +- This should fix #466. [tidusjar] + +- Attempt at fixing a potential bug found from #466. [tidusjar] + +- #464 fixed. [tidusjar] + +- Fixed the build. [tidusjar] + +- Small improvements to the wizard. [tidusjar] + +- Always set the wizard to be true when editing the Plex Requests settings (Since the flag is not in the UI, a bool defaults to false). [tidusjar] + +- Tiny bit of more info. [tidusjar] + +- Finished #459. [tidusjar] + +- #459 is almost done. [tidusjar] + +- Modified the episode modal so that we are now resetting the button after a request. [tidusjar] + +- Commented out the transaction for now to debug it. [tidusjar] + +- Since we are multithreading, we should use a threadsafe type to store the episodes to prevent any threading or race conditions. [tidusjar] + +- Wrapped the bulk insert inside a transaction. [tidusjar] + +- Made the episode check parallel. [tidusjar] + +- Log out the GUID causing the issue. [tidusjar] + +- Fixed another test. [tidusjar] + +- Fixed tests. [tidusjar] + +- Got mostly everything working for #254 Ready for testing. [tidusjar] + +- Fixed issue with saving to db. [tidusjar] + +- Need to work out why the cacher is not working and where the datatype mismatch is. [tidusjar] + +- Don't delete first. [tidusjar] + +- Fix the log path issue #451. [tidusjar] + +- Dump an item. [tidusjar] + +- Small change with the return value in the batch insert. [tidusjar] + +- #254 Removed the cache, we are now storing the plex information into the database. [tidusjar] + +- Small change in the episode saver. [tidusjar] + +- Some small tweaks to improve the memory alloc. [tidusjar] + +- Short circuit when Plex hasn't been setup. Added Miniprofiler. [tidusjar] + +- Consolidate newtonsoft.json packages. [tidusjar] + +- Some performance improvements around the new TV stuff. [tidusjar] + +- Reworked the cacher, fixed the memory leak. No more logging within tight loops. [tidusjar] + +- Another null check. [tidusjar] + +- Some more changes. [tidusjar] + +- Some error handling. [tidusjar] + +- Check if the sonarr ep is monitored. [tidusjar] + +- Some logging. [tidusjar] + +- Small changes, we will actually see the episode cacher on the scheduled jobs page now. [tidusjar] + +- Work on the UI to show what episodes have been requested #254. [tidusjar] + +- Small fix. [tidusjar] + +- Fix the api change in #450. [tidusjar] + +- #254. [tidusjar] + +- Workaround for #440. [tidusjar] + +- Async async async improvements. [tidusjar] + +- Finished #266 Added a new cacher job to cache all episodes in Plex. [tidusjar] + +- Fixed #442. [tidusjar] + +- #254. [tidusjar] + +- Work around the sonarr bug #254. [tidusjar] + +- #254 having an issue with Sonarr. [tidusjar] + +- Small bit of work on #266. [tidusjar] + +- #254. [tidusjar] + +- Precheck and disable the episode boxes if we already have requested it. TODO check sonarr to see if it's already there. #254. [tidusjar] + +- Fixed broken build. [tidusjar] + +- More work for #254. [tidusjar] + +- More work on #254. [tidusjar] + +- Fixed the bug in #438 and added unit tests to make so we dont break it in the future. [tidusjar] + +- Some reason we had dupe translations. [tidusjar] + +- Rename SubDir to Base Url. [tidusjar] + +- Fix the exception in #440. [tidusjar] + +- Reworking the login page for #426. [tidusjar] + +- Fixed #438. [tidusjar] + +- Finished the auth stuff. [tidusjar] + +- Finished up the SMTP side of #429. [tidusjar] + +- #428 Added a message when the we cannot get a TVMaze ID. [tidusjar] + +- #254 MOSTLY DONE! At last, this took a while. [tidusjar] + +- Removed the other rootpath provider. [TidusJar] + +- Removed the other rootpath provider. [TidusJar] + +- Removed the other rootpath provider. [TidusJar] + +- Should fix #429. [TidusJar] + +- Done #135 We are including the application version number in the directory. [tidusjar] + +- #387 trim the spaces from the api key. Tidied up the setting models a bit. [tidusjar] + +- Wrapped the repo to catch Sqlite corrupt messages. [tidusjar] + +- Frontend and tv episodes api work for #254. [tidusjar] + +- #424. [tidusjar] + +- #359. [tidusjar] + +- Moved the plex auth token to the plex settings where it should belong. [tidusjar] + +- Small changes around the user management. [tidusjar] + +- Missed brace. [tidusjar] + +- Removed. [tidusjar] + +- Fixed issues from the merge. [tidusjar] + +- Stupid &$(* merge. [tidusjar] + +- Angular. [tidusjar] + +- Reworked the custom notifications... again. Need to figure out how to find the view to the model. [tidusjar] + +- Fixed #417. [tidusjar] + +- Removed NinjectConventions, we hadn't started to use it anyway. [tidusjar] + +- Fixed the way we will be using custom messages. [tidusjar] + +- Test checkin. [tidusjar] + +- Better handling for #388. [tidusjar] + +- Fixed #412. [tidusjar] + +- Fixed #413. [tidusjar] + +- Fixed #409. [tidusjar] + +- Trycatch around the availbility checker. [tidusjar] + +- WIP on notification resolver. [tidusjar] + +- Tidy. [tidusjar] + +- Plugged in MediatR. [tidusjar] + +- Moved over to using Ninject. [tidusjar] + + +## v1.8.4 (2016-06-30) + +### **Fixes** + +- Fixed the bug where we were auto approving everything. Added French language into the navigation bar. [tidusjar] + + +## v1.8.3 (2016-06-29) + +### **New Features** + +- Update README.md. [Jamie] + +- Update appveyor.yml. [Jamie] + +- Added some of the backend bits for #182. [tidusjar] + +- Updates for #243. [tidusjar] + +- Added Dutch language #243. [tidusjar] + +- Added languages #243. [tidusjar] + +- Added logging #350. [tidusjar] + +### **Fixes** + +- Small changes. [tidusjar] + +- Allow html in the notice message. [tidusjar] + +- Some more unit tests around the NotificationMessageResolver. [tidusjar] + +- Fixed a timing bug found the in build. Note, when working with time differences use TotalDays. [tidusjar] + +- More translations on the search page (Mainly the notification messages) #243. [tidusjar] + +- Fixed some warnings. [tidusjar] + +- CodeCleanup. [tidusjar] + +- Fixed a bit of a stupid bug in the resetter and added unit tests around it to make sure this never happens again. [tidusjar] + +- Fixed an issue where we didn't provide the correct response when clearing the logs. [tidusjar] + +- Made it so users that are in the whitelist do not have a request limit. [tidusjar] + +- Made it so the request limit doesn't apply to admin users. [tidusjar] + +- Fixed where a user could see the delete button on the issues page. [tidusjar] + +- Fixed some small issues and improved the navbar. [tidusjar] + +- Translated the Requested page #243. [tidusjar] + +- Finished #337. [tidusjar] + +- Some analytics. [tidusjar] + +- More translations for #243 and welcome text for #293. [tidusjar] + +- Small bit of work for #359. [tidusjar] + +- Finished #6. [tidusjar] + +- Analytics and fixes. [tidusjar] + +- Translated the search page #243. [tidusjar] + +- Implemented the different languages and added the ability to change cultures. #243. [tidusjar] + +- Started #243. [tidusjar] + +- Fixed #364. [tidusjar] + +- Some more useful analytical information. [tidusjar] + +- Generic try catch to fix #350. [tidusjar] + +- Slight changes, moved the donate button. [tidusjar] + +- Potential fix for #350. [tidusjar] + +- Better way of obtaining clean enum string. [Drewster727] + +- Fixed #362. [tidusjar] + + +## v1.8.2 (2016-06-22) + +### **New Features** + +- Update readme. [tidusjar] + +- Update appveyor.yml. [Jamie] + +### **Fixes** + +- Fixed a circular reference issue. [tidusjar] + +- Small changes around how we work with custom events in the analytics. [tidusjar] + +- Fixed #353 #354 #355. [tidusjar] + +- Null provider check for movies. [Drewster727] + +- Show request type in notifications #346 and fix an issue from previous commit for #345. [Drewster727] + +- Add an option to stop sending notifications for requests that don't require approval #345. [Drewster727] + + +## v1.8.1 (2016-06-21) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +### **Fixes** + +- Fix obj ref error when scheduler runs (ProviderId is null?) [Drewster727] + +- Fix logic for obtaining a sonarr quality profile #340. [Drewster727] + + +## v1.8.0 (2016-06-21) + +### **New Features** + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Added the new advanced search into the search page too. [tidusjar] + +- Change the way we configure the IoC container in the bootstrapper, we are registering all the concrete instances on application start rather than on each web request. This should increase the performance per HTTP request. [tidusjar] + +- Updated nlog and fixed #295. [tidusjar] + +### **Fixes** + +- Workaround for #334. [Drewster727] + +- Create .gitattributes. [Jamie] + +- Fixes to the issues. [tidusjar] + +- Set the defaults for the landing page. [tidusjar] + +- Revert branch to 664dae2. [tidusjar] + +- Some unit tests for the issues. [tidusjar] + +- Tidied up the bootstrapper. [tidusjar] + +- Fix up landing page UI. [Drewster727] + +- Fixed CSS issue with the top arrow in the Plex theme. [tidusjar] + +- Small changes. [tidusjar] + +- Done #318. [tidusjar] + +- Fixed tests. [tidusjar] + +- #298 added some tests for the landing page. [tidusjar] + +- We are now only keeping the latest 1000 log records in the database. Delete everything else. [tidusjar] + +- Some analytic stuff. [tidusjar] + +- Capture the TVDBID when requesting. [tidusjar] + +- Attempting to improve #219. [tidusjar] + +- Just some more async changes. [tidusjar] + +- Small changes. [tidusjar] + +- More work on #298. Everything wired up. [tidusjar] + +- Fixed the issue on the landing page #298. [tidusjar] + +- #298 moved the content to the left a bit. [tidusjar] + +- Styling for #298 done, just need to wire up the model and do the actual status check. [tidusjar] + +- Bumped up the version number. [tidusjar] + +- Removed some DumpJson() from the trace logs. [tidusjar] + +- Small ui fix (100% width user/password fields to improve mobile experience) [Drewster727] + +- Landing page stuff #298. [tidusjar] + +- Datepicker UI fixes + small landing page UI fix. [Drewster727] + +- Removed a change that shoudn't have been commited. [tidusjar] + +- Fixed tests. [tidusjar] + +- More work for #298. [tidusjar] + +- #273 added for only available content on the search. [tidusjar] + +- Fixed #303 Looks like there was some incorrect business logic. [tidusjar] + +- Most of #273 done. [tidusjar] + +- Settings done for #298. [tidusjar] + +- Started #298. [tidusjar] + +- A crap tonne of work on #273. [tidusjar] + +- More work on #273. [tidusjar] + +- Reduced kept logs for 2 days. [tidusjar] + +- Fixed #300. [tidusjar] + +- #273. [tidusjar] + +- Fixed a bug with some users with the CP profiles. [tidusjar] + +- #273. [tidusjar] + +- Done the same for TV. [tidusjar] + +- Fixes #296. [tidusjar] + +- More for #273. [tidusjar] + +- Small changes. [tidusjar] + +- Revert "Small changes" [tidusjar] + +- Small changes. [tidusjar] + +- Finished #221 and added more async #278. [tidusjar] + +- Spelling mistake in the html! this fixes #264. [tidusjar] + +- More work on #273. [tidusjar] + +- Fixed #210. [tidusjar] + +- Started #273. [tidusjar] + + +## v1.7.5 (2016-05-29) + +### **New Features** + +- Update preview. [Jamie] + +- Updated dapper.contrib. Looks like there was a bug in the async methods. [tidusjar] + +- Updater wouldn't work when running a reverse proxy #236. [tidusjar] + +### **Fixes** + +- Bump build ver. [tidusjar] + +- Use HTTPS for the poster images, so there aren't any mixed content warnings when serving the application via an HTTPS reverse proxy. [Sean Callinan] + +- Removed static declarations. [tidusjar] + +- Fixed styling on modal. [tidusjar] + +- Made the search page all async goodness #278. [tidusjar] + +- Made the request module async #278. [tidusjar] + +- Started some dynamic scrolling. [tidusjar] + +- Stop dumping out the settings to the log. [tidusjar] + +- Made more async goodness. [tidusjar] + +- Made some of the searching async #278. [tidusjar] + +- Fixed #277. [tidusjar] + +- Reworked some tests. [tidusjar] + +- #26q make the auth users list taller. [Drewster727] + +- Fix 404 error. [Drewster727] + +- #262 make the auth users list taller. [Drewster727] + +- #221 delete requests per category. [Drewster727] + +- #256 #237 UI Improvements and consolidation. [Drewster727] + +- Fixed a bug in the user notification where if an admin wants to be notified they wouldn't be. [tidusjar] + +- Set the admin to have all claims. [tidusjar] + +- Fix null exception possibility in cp/sickrage cacher classes. [Drewster727] + +- Fixed #244. [tidusjar] + +- Fixed #240. [tidusjar] + +- Fixed #270. [tidusjar] + +- Fixed an issue where if you have only 1 plex friend it would not show in the list. [tidusjar] + + +## v1.7.4 (2016-05-25) + +### **New Features** + +- Update README.md. [Jamie] + +### **Fixes** + +- Fixed #252. [tidusjar] + +- Fixed #428. [tidusjar] + +- Version bump. [tidusjar] + +- Fixed tests. [tidusjar] + +- Fully fixed #239. [tidusjar] + +- We wan't updating the DB schema. [tidusjar] + + +## v1.7.3 (2016-05-25) + +### **Fixes** + +- Fixed the release build issue where we could not access the settings #239. [tidusjar] + + +## v1.7.2 (2016-05-25) + +### **Fixes** + +- Fixed a small bug where an exception would get thrown. [tidusjar] + +- Build version bump. [tidusjar] + +- Cleanup. [tidusjar] + +- Typo. [tidusjar] + +- Fixed #241. [tidusjar] + +- Fixed #239. [tidusjar] + +- Fixed #238. [tidusjar] + +- Small UI tweaks/improvements. [Drewster727] + + +## v1.7.1 (2016-05-24) + +### **New Features** + +- Update version. [tidusjar] + +### **Fixes** + +- Fixed an issue with the auth page when running with a reverse proxy. [tidusjar] + + +## v1.7 (2016-05-24) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Added the ability to get the apikey from the api if you provide a correct username and password. Added more unit tests Added the ability to change a users password using the api refactored the Usermapper and made it unit testsable. [tidusjar] + +- Update. [tidusjar] + +- Added in an audit table. Since we are now allowing multiple users to change and modify things we need to audit this. [TidusJar] + +- Added the updater to the soloution and did a bit of starting code. [TidusJar] + +- Updated the claims so we can support more users. Added a user management section (not yet complete) Added the api to the solution and a api key in the settings (currently only gets the requests). [TidusJar] + +- Updated packages. [TidusJar] + +- Added a retry handler into the solution. We can now retry failed api requests. [TidusJar] + +- Update README.md. [Jamie] + +- Added Released propety to RequestViewModel. Added Released filter to the Requests page. [Chris Lees] + +- Added #27 to albums. [tidusjar] + +- Added the actual notification part of #27. [tidusjar] + +- Added the missing baseurl bit on the login page for #72. [tidusjar] + +- Added the 'enable user notifications' to the email settings view and model. [tidusjar] + +- Update README.md. [Jamie] + +### **Fixes** + +- Remove pointless test, change the default theme and fix a small bug. [tidusjar] + +- Fixed api. [tidusjar] + +- Finished #26. [tidusjar] + +- Plex theme. [tidusjar] + +- Implimented a theme changer, waiting for the Plex theme. [tidusjar] + +- Finished #222 #205. [tidusjar] + +- Started working on #26. [tidusjar] + +- Undid some small changes that was checked in by accident. [tidusjar] + +- #164 has been resolved. [tidusjar] + +- Resolved #224 , Removed the 'SSL' option from the email notification settings. We will now use the correct secure socket options (SSL/TLS) for your email host. [tidusjar] + +- Small changes. [tidusjar] + +- #27 fully finished. [tidusjar] + +- Fixed #215. [tidusjar] + +- Using Mailkit to fix #204. [tidusjar] + +- Color. [tidusjar] + +- Fully finished #27 just need to test it! [tidusjar] + +- Fixed test. [tidusjar] + +- Styling for #27. [tidusjar] + +- I think the auto updater is finished! #29. [tidusjar] + +- I think we have finished the main bulk of the auto updater #29. [tidusjar] + +- #222 #205 more ! Started getting the settings out. [tidusjar] + +- Removed the service locator from the base classes and added in some Api tests added all the tests back in! [tidusjar] + +- More work on the api and documentation #222 #205. [tidusjar] + +- Started documenting the API we now have swagger under ~/apidocs #222 #205. [tidusjar] + +- Api work for #205 Refactored how we check if the user has a valid api key Added POST request, PUT and DELTE. [tidusjar] + +- First pass of the updater working. #29. [tidusjar] + +- Removed SIGHUP from the termination list #220. [tidusjar] + +- Fixed. [tidusjar] + +- Missing. [tidusjar] + +- Missed out a file. [TidusJar] + +- And some more... [TidusJar] + +- Missed some files. [TidusJar] + +- A bit more work on switching to using user claims so we can support multiple users. [TidusJar] + +- Made the store backup clean up some of the older backups (> 7 days). [TidusJar] + +- More work on the user management. [TidusJar] + +- - Notifications will no longer be send to the admins if they request something. - Looks like we missed out adding the notifications to Music requests, so I added that in. [TidusJar] + +- - Improved the RetryHandler. - Made the tester buttons on the settings pages a bit more robust and added an indication when it's testing (spinner) [TidusJar] + +- Packages. [TidusJar] + +- Nm, [TidusJar] + +- Downgraded packages. [TidusJar] + +- Better handling for #202. [TidusJar] + +- Finished #208 and #202. [TidusJar] + +- This should help #202. [TidusJar] + +- Resolved #209. [TidusJar] + +- Finished #209. [TidusJar] + +- Slight adjustments to #189. [tidusjar] + +- - Added a visual indication on the UI to tell the admin there is a update available. - We are now also recording the last scheduled run in the database. [tidusjar] + +- Did the login bit on #185. [tidusjar] + +- Finished #186. [tidusjar] + +- Fixed #185. [tidusjar] + +- Fixed issue in #27 with albums. [tidusjar] + +- #27 added TV Search to the notification. [tidusjar] + +- Fixed bug. [tidusjar] + +- More work on #27 Added a new notify button to the search UI (Needs styling). Also fixed a bug where if the user could only see their own requests, if they search for something that has been requested, it will show as requested. [tidusjar] + +- Improved the startup of the application. We now properaly parse any args passed into the console. [tidusjar] + +- Additional cacher error handling + don't bother checking the requests when we don't get data back from plex. [Drewster727] + +- Remove old migration code and added new migration code. [tidusjar] + +- Stop the Cachers from bombing out when the response from the 3rd party api returns an exception or invalid response. #171. [tidusjar] + +- Increase the scheduler cache timeframe to avoid losing cache when the remote api endpoints go offline (due to a reboot or some other reason) -- if they're online, the cache will get refreshed every 10 minutes like normal. [Drewster727] + +- Fix the cacher by adding locking + extra logging in the plex checker + use a const key for scheduler caching time. [Drewster727] + +- Small changes. [tidusjar] + +- Switched out the schedulers, this seems to be a better implimentation to the previous and is easier to add new "jobs" in. [tidusjar] + +- Fixed #168. [tidusjar] + +- Fixed #162. [tidusjar] + +- Fix saving the log level. [Drewster727] + +- Set the max json length (fixes large json response errors) [Drewster727] + + +## v1.6.1 (2016-04-16) + +### **New Features** + +- Update README.md. [Jamie] + +- Added a url base. [tidusjar] + +- Change default logging. [tidusjar] + +- Added logging around SickRage. [tidusjar] + +### **Fixes** + +- Bump up the version number ready for the release. [tidusjar] + +- BaseUrl is finally finished! #72. [tidusjar] + +- #72 Login page done. [tidusjar] + +- More changes for the urlbase #72. [tidusjar] + +- Done the auth, cp, logs and sidebar for #72. [tidusjar] + +- Add an extra check when determining if a tv show is already available (also check if it starts with the show name returned from the tv db) [Drewster727] + +- Cache plex library data regardless of whether we have requests in the database or not. [Drewster727] + +- By default don't use a url base. [tidusjar] + +- Return empty array when obtaining queued IDs in sickrage cacher. [Drewster727] + +- Fixed a small bug in the SR cacher. [tidusjar] + +- Fixed when we do not have a base. [tidusjar] + +- More changes for #72. [tidusjar] + +- Fixed exception and all areas will now use the base url #72. [tidusjar] + +- Removed the test code from #72. [tidusjar] + +- Commented out the unit tests as they need to be reworked now. [tidusjar] + +- Finally fixed #72. [tidusjar] + +- Remove test code from plex api GetLibrary method. [Drewster727] + +- Finished up the caching TODO's. [tidusjar] + +- Kick off the schedulers once the web app has started (fixes api errors on start) [Drewster727] + +- Converted the UI back down to .NET 4.5.2. [tidusjar] + +- Fixed #154. [tidusjar] + +- Revert everything (except PlexRequests.UI) back to .NET 4.5.2 -- fixes incompatibilities with the latest version of mono (4.2.3.4) -- fixes notifications not working #152 #147 #141. [Drewster727] + +- #150 start caching plex media as well. refactored the availability checker. NEEDS TESTING. also, we need to make the Requests hit the plex api directly rather than hitting the cache as it does now. [Drewster727] + +- #150 split out the cache subscriptions to make sure they subscribe properly. [Drewster727] + +- #150 sonarr/sickrage cache checking. sickrage has a couple small items left. [Drewster727] + +- Fixed args. [tidusjar] + +- Fixed. [tidusjar] + +- Made the base better. [tidusjar] + +- Remove couchpotato api test code. [Drewster727] + +- Start the initial couchpotato cache call on a separate thread to keep the startup process quick. [Drewster727] + +- Add csproj with file changes from previous commit. [Drewster727] + +- Cache the couchpotato wanted list, update it on an interval, and use it to determine if a movie has been queued already. [Drewster727] + +- I think i've fixed an issue where SickRage reports Show not found. [tidusjar] + +- Set the default log level to info. #141. [tidusjar] + +- #125 refactor async task logic to work with mono. [Drewster727] + +- Fix search spinner sticking around after clearing search text + make the "Requested" and "Available" indicators in the search page different colors. [Drewster727] + +- #125 start indicating in the results if an item is already requested or available. [Drewster727] + +- #145 firefox css dsplay issue. [Drewster727] + +- Fixes for sonarr, we now display the error messages back to the user. [tidusjar] + +- Fixed #144. [tidusjar] + + +## v1.6.0 (2016-04-06) + +### **New Features** + +- Changed the build number. [tidusjar] + +- Update README.md. [Drew] + +- Update README.md. [Drew] + +- Update README.md. [Drew] + +- Update README.md. [Drew] + +- Changed the title to a contains but the artist still must match, [tidusjar] + +- Added unit tests to cover the new changes to the availability checker. [tidusjar] + +- Added the music check in the Plex Checker. [tidusjar] + +- Changed around the startup so we cache the profiles after the DB has been created. [tidusjar] + +- Updated where we update the request blobs schema change. [tidusjar] + +- Update SearchModule.cs. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Change the new columns type. [tidusjar] + +- Added a DBSchema so we have an easier way to update the DB. [tidusjar] + +- Added an issue template. [tidusjar] + +- Update README.md. [Jamie] + +- Added back the username into the Session when the admin logs in. This means they do not have to log in twice. [tidusjar] + +- Added happy path tests for the Checker. [tidusjar] + +- Added music to the search and requests page. [tidusjar] + +- Added a scroll to the top thingy and a bit more work on headphones. [tidusjar] + +- Added some tests and fixed the issue where the DB would get created in the wrong place depending on how you launched the application. [tidusjar] + +- Added the settings page for #32. [tidusjar] + +- Update README.md. [Drewster727] + +- Update README.md. [Drewster727] + +- Update README.md. [Drewster727] + +- Update README.md. [Drewster727] + +- Update README.md. [Drewster727] + +- Update appveyor.yml. [Jamie] + +### **Fixes** + +- Some final tweaks for #32. [tidusjar] + +- Fixed a bug where if we are the admin we didn't add the request to the db. [tidusjar] + +- Fixed an issue where we would add the Sickrage series but it would fail on adding the seasons. [tidusjar] + +- Properly account for future/past dates when humanizing with moment. [Drewster727] + +- Properly display release date on requests page. [Drewster727] + +- Add missing reference for release mode. [Drewster727] + +- #139 remove dependency and usage of humanize() - should help with cross-platform issues. start using moment.js. [Drewster727] + +- Fix selectors for music list on request page to get sorting working. [Drewster727] + +- Fixed the error #32. [tidusjar] + +- Fixed the logs page. [tidusjar] + +- Another attempt at filtering #32. [tidusjar] + +- A bit more error handling #32. [tidusjar] + +- Improved the availabilty check to include music results #32. [tidusjar] + +- Small changes for #32. [tidusjar] + +- A bit more logging for #32. [tidusjar] + +- More headphones #32 I am starting to hate headphones... Sometimes the artists and albums just randomly fail. [tidusjar] + +- #134 temporary workaround for this. [Drewster727] + +- Task.run for startup caching + fix admin module unit test failures. [Drewster727] + +- Cache injection, error handling and logging on startup, etc. [Drewster727] + +- Tweaks for #32. [tidusjar] + +- #132 auto-approve for admins. [Drewster727] + +- Finished the bulk work for Headphones. Needs testing #32. [tidusjar] + +- Made the album search 10x faster. We are now loading the images in a seperate call. #32. [tidusjar] + +- Add a reference to API Interfaces to fix the build. [tidusjar] + +- #114 start caching quality profiles. Set the cache on startup and when obtaining quality profiles in settings. [Drewster727] + +- Work for #32. [tidusjar] + +- #114 first pass at choosing quality profile when approving + focus search input by default and when switching tabs. [Drewster727] + +- #131 fix for default selected tab. [Drewster727] + +- Remove references to obsolete RequestedBy property + start setting the db schema to the app version, and check that in the future for migrations. [Drewster727] + +- Fixed async issue. [Shannon Barrett] + +- Updating SickRage api to verify Season List is up to date. [Shannon Barrett] + +- Work on showing the requests for #32. [tidusjar] + +- Got the search finished up for #32. [tidusjar] + +- Remove test/temp code in UserLoginModule. [Drewster727] + +- A bit more work on #32 started working on requesting it. The DB is a bit of an issue... [tidusjar] + +- Most of the UI work done for #32. [tidusjar] + +- Basic search working for #32. [tidusjar] + +- Mono datetime offset workaround. [Drewster727] + +- #122 store utc time in the databse + obtain timezone offset of the client upon login + offset times returned to client based on session offset. [Drewster727] + +- Method reference bug fix. [Drewster727] + +- Fix search focus z-index issue (hid suggestions options) [Drewster727] + +- Minor search UI adjustments. [Drewster727] + +- #55 first attempt at "suggestions" starting with "Comming Soon" and "In Theaters" [Drewster727] + +- #106 rename sorting options and polish the dropdown UI a bit. [Drewster727] + +- Started adding the api part for headphones #32. [tidusjar] + +- Upped the time of #123. [tidusjar] + +- First attempt at #123. [tidusjar] + +- We now do not show the text Requested By to the user, we also show a 'success' message instead of a warning when something has already been requested. [tidusjar] + +- Show a "no requests yet" message on the requests page (for each cateogory) [Drewster727] + +- Ignore items that are already available when approving in bulk, and simplify the checking + compile css. [Drewster727] + +- Add a better way to merge RequestedBy and RequestedUsers to avoid code duplication and simplify checks. [Drewster727] + +- Don't query the session as much in the modules, rely on a variable from the base class and store the username as needed. [Drewster727] + +- Show the requested by user from legacy request models. [Drewster727] + +- Only show requested by users to admins + start maintaining a list of users with each request. [Drewster727] + +- #96 fix up notification test feature. [Drewster727] + +- Fix the request page sort/approve button alignment. [Drewster727] + +- When pulling requests, set each to approved that is already available (so the UI avoids showing the approve option for already available content) [Drewster727] + +- Mono doesn't seem to have Tls1.2. Let's try TLS 1 #119. [tidusjar] + +- Specify a protocol type of TLS12. Looks like CP doesn't seem to like SSL3 (it is quite old now so understandable) #119. [tidusjar] + +- Made #85 better. [tidusjar] + +- Fixed the tests. [tidusjar] + +- Made the feedback from Sonarr better when Sonarr already has the series #85. [tidusjar] + +- An attempt to fix #108. [tidusjar] + +- Add some "no results" feedback to the searching + minor UI improvements. [Drewster727] + +- Fix notification tests. [Drewster727] + +- UI - increase icon size of nav menu (they were too small before) [Drewster727] + +- #96 Finished adding test functionality to notifications. [Drewster727] + +- #96 add the necessary back-end code to produce a test message for all notification types (still have to add the test buttons for pushbullet/pushover) [Drewster727] + +- #96 modify notifications interface/service to accept a non-type specific settings object. [Drewster727] + +- #96 Email notification test button (others to come) [Drewster727] + +- Minor UI adjustments. [Drewster727] + +- #84 provide an option in settings to resttrict users from viewing requests other than their own. [Drewster727] + +- #54 comma separated list of users who don't require approval + fix a couple request messages (include show title) [Drewster727] + +- Clean up the sorting option names. add a way to see which filter/sort is currently applied. [Drewster727] + +- Fix up the animations. seems to be related to the data-bound attribute causing the animtions not to fire on each .mix object. [Drewster727] + +- Move approve buttons to the tab content. [Drewster727] + +- Allow approving all requests by category. [Drewster727] + +- Fix up sorting on the request page. [Drewster727] + +- Add ubuntu/debian instructions. [Drewster727] + +- #86 - display movie/show title + year in request notifications. [Drewster727] + +- Show the movie/show title when requesting. [Drewster727] + + +## v1.5.2 (2016-03-26) + +### **Fixes** + +- Stoped users from spamming the request button. [tidusjar] + +- Fixed the logger no longer writing to the file. [tidusjar] + +- Fixed #97. [tidusjar] + + +## v1.5.1 (2016-03-26) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Added logs to the sidebar. I'm an idiot. [tidusjar] + +### **Fixes** + +- Approve tv shows or movies. [Drewster727] + +- Fixed a bug where if you had auto approve it wouldn't notify you. [tidusjar] + + +## v1.5.0 (2016-03-25) + +### **New Features** + +- Updated version number for release. [tidusjar] + +- Updated the logic for handling specific seasons in Sonarr and Sickrage. [Shannon Barrett] + +- Updated the readme and added some icons to the navbar. [tidusjar] + +- Added the ability to sepcify a username in the email notification settings for external MTA's. We have had to add a new option called Email Sender because of this. #78. [tidusjar] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Added a notification model to the notifiers. Added the backend work for sending a notification for an issue report #75. [tidusjar] + +- Added a subdir to CP, SickRage, Sonarr and Plex #43. [tidusjar] + +### **Fixes** + +- And again. [tidusjar] + +- Made the check actually work. [tidusjar] + +- Finished up #68 and #62. [tidusjar] + +- Finished styling on the logger for now. #59. [tidusjar] + +- Fixed #69. [tidusjar] + +- Working on getting the Sonarr component to work correctly. [Shannon Barrett] + +- Fixes issue #62. [Shannon Barrett] + +- Refactored the Notification service to how it should have really been done in the first place. [tidusjar] + +- Fixed the build. [tidusjar] + +- Finished #49. [tidusjar] + +- Finished #57. [tidusjar] + +- Small changes around the filtering. [tidusjar] + +- Finished adding pushover support. #44. [tidusjar] + +- Resolved #75. [tidusjar] + +- Include DB changes. [tidusjar] + +- Done most on #59. [tidusjar] + +- Lowercase logs folder, because you know, linux. #59. [tidusjar] + +- Adding the imdb when requesting. [tidusjar] + +- Fixed an issue where the table didn't match the model. [tidusjar] + +- Improved the status page with the suggestion from #29. [tidusjar] + +- Hooked up most of #49 Just the validation messages need to be done. [tidusjar] + +- Fixed #74 and #64. [tidusjar] + +- Resolved #70. [tidusjar] + +- Finished #71. [tidusjar] + +- Got the filter working on both movie and tv #57. [tidusjar] + +- Started #57, currently there is a bug where the TV list won't filter. [tidusjar] + + +## v1.4.1 (2016-03-20) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Update AvailabilityUpdateService.cs. [Jamie] + + +## v1.4.0 (2016-03-19) + +### **New Features** + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Update README.md. [Jamie] + +- Updated the build version ready for the next release. [tidusjar] + +- Added the api and settings page for Sickrage. Just need to do the tester and hook it up #40. [tidusjar] + +- Added the option to set a CP quality #38. [tidusjar] + +- Added the code to lookup the old requests and refresh them with new information from TVMaze. [tidusjar] + +- Update StatusCheckerTests.cs. [Jamie] + +- Update README.md. [Jamie] + +- Added TVMaze to the search. #21. [tidusjar] + +- Added migration code and cleaned up the DB. [tidusjar] + +- Updated the way we add requests. [tidusjar] + +- Updated the Dapper.Contrib package, it had a bug where it wasn't returning the correct Id from inserts. [tidusjar] + +### **Fixes** + +- This fixes #36. [tidusjar] + +- Should fix issue #36. [Shannon Barrett] + +- When we do a batch update we need to reset the cache. [tidusjar] + +- Fixed an issue where the default quality on Sickrage wouldn't work. [tidusjar] + +- Wow, that was a lot of work. - So, I have now finished #40. - Fixed a bug where we was not choosing the correct tv series (Because of TVMaze) - Fixed a bug when checking for plex titles - Fixed a bug where the wrong issue would clean on the UI (DB was correct) - Refactored how we send tv shows - And too many small changes to count. [tidusjar] + +- Fixed the new dependancy with the admin class tests. [tidusjar] + +- Back to what it was :( [tidusjar] + +- Another test for #37. [tidusjar] + +- This should fix #37. [Jamie Rees] + +- Catch the missing table exception when they have a new DB. [Jamie Rees] + +- Exploratory test for #37. [Jamie Rees] + +- Fixed #33 we now have SSL options for Sonarr and CP. [Jamie Rees] + +- Removed all the html from the new TVMaze api (for overview). Added tests to cover the html removal. updated Readme to remove TheTVDB. [Jamie Rees] + +- Fixed tests. [Jamie Rees] + +- Almost fully integrated TVMaze #21 and also improved the fix for #31. [Jamie Rees] + +- Should fix #28. [Shannon Barrett] + +- Fixed #16 and #30. [tidusjar] + +- Modified the adding of request to update the model with the added ID. [tidusjar] + +- Switched over to the new service. [tidusjar] + +- Fixed #25. [Jamie Rees] + + +## v1.3.0 (2016-03-17) + +### **New Features** + +- Added pushbullet to the sidebar. [Jamie Rees] + +- Updated build version for the next release. [Jamie Rees] + +- Updated readme link. [tidusjar] + +- Added ignore to static tests. [tidusjar] + +- Added Pushbullet notifications #8. [tidusjar] + +- Added first implimentation of the Notification Service #8 Added tests to cover the notification service. [tidusjar] + +- Added validation to the Email settings, also increased the availability checker from 2 minutes to 5. [tidusjar] + +### **Fixes** + +- Fixed #22. [Jamie Rees] + +- Started on #16, nothing is hooked up yet. [tidusjar] + +- Fixed tests. [tidusjar] + + +## v1.2.1 (2016-03-16) + +### **New Features** + +- Update Program.cs. [Jamie] + +- Update Program.cs. [Jamie] + +- Added back the reference. [tidusjar] + +### **Fixes** + +- Removed the email notification settings from the settings (for release 1.2.1) [Jamie Rees] + +- Fixed. [Jamie Rees] + +- Resolved #10. [tidusjar] + + +## v1.2.0 (2016-03-15) + +### **New Features** + +- Updated. [Jamie Rees] + +- Updated appveyor. [Jamie Rees] + +- Update appveyor.yml. [Jamie] + +- Added latest version code and view. Need to finish the view #11. [tidusjar] + +- Added test button to Plex. That's fixed #9. [tidusjar] + +- Added test sonarr button #9. [tidusjar] + +- Added more tests. [tidusjar] + +- Added a bunch of logging. [tidusjar] + +- Added the application tester for CP #9. [tidusjar] + +- Added settings page for #8. [tidusjar] + +- Added pace.js. [tidusjar] + +### **Fixes** + +- Finished the notes! Resolved #7. [Jamie Rees] + +- #12. [Jamie Rees] + +- #12. [Jamie Rees] + +- Finished the status page #11 and some more work to #12. [Jamie Rees] + +- Resolved #7. [tidusjar] + +- Small changes. [tidusjar] + +- Yeah... [tidusjar] + +- Fixed #5 and also added some tests to the availability checker. [tidusjar] + +- Started added tests. [Jamie Rees] + +- Fixed an issue where the issues text appears larger. [Jamie Rees] + + +## v1.1 (2016-03-13) + +### **New Features** + +- Update appveyor.yml. [Jamie] + +- Updated readme. [Jamie Rees] + +- Added the support for TV Series integrating with Sonarr. [Jamie Rees] + +- Added the functionality to pass a port through an argument. [tidusjar] + +- Added the code to get the quality profiles from Sonarr Started plugging that into the UI. [Jamie Rees] + +- Added the spinners #3. [tidusjar] + +- Added the functionality for the admin to clear the issues. [tidusjar] + +- Added the issues to the requests page. [tidusjar] + +- Added user logout method and unit tests to cover it. [tidusjar] + +- Added DeniedUsers to the view. [tidusjar] + +- Added the denied user check to the UserLoginModule. added a test case to cover it. [tidusjar] + +- Added a missing reference. [tidusjar] + +- Added first real test. [tidusjar] + +- Update README.md. [Jamie] + +- Added the latest version of nuget. [tidusjar] + +- Added travisyml. [tidusjar] + +- Added logging. [tidusjar] + +- Added missing files. [tidusjar] + +- Update README.md. [Jamie] + +- Added logging (Still WIP) [tidusjar] + +- Added favicon and also structured the HTML correctly. [tidusjar] + +- Updated the packages so everything is now with the correct framework (4.5.2) [tidusjar] + +- Added in deletion of requests. [tidusjar] + +- Added test code. [tidusjar] + +- Added dashboard. [tidusjar] + +- Added couchpotato page. [Jamie Rees] + +- Added readme to the project and updated it. [Jamie Rees] + +- Added helpers. [tidusjar] + +### **Fixes** + +- Bug fix, Couchpotato settings wouldn't show in release due to a Nancy bug. [Jamie Rees] + +- Small changes. [Jamie Rees] + +- First release, build 1.0.0. [Jamie Rees] + +- Removed the request limit since it's not currently being used. [Jamie Rees] + +- REmoved Sickbeared for the first release. [Jamie Rees] + +- Fixed #4 We now can manually set the status of a request. [tidusjar] + +- Made the pass in the port a bit more robust. [tidusjar] + +- Styling, Added the functionality for the Sonarr Profiles on the Admin page #2 resolved. [tidusjar] + +- Fixed a bug in the Login and added a unit test to cover that. Added a button to approve an individual request. Fixed some minor bugs in the request screen. [Jamie Rees] + +- Fixed the 'responsive' issue for the search and requests pages #3. [tidusjar] + +- Styling! #3. [tidusjar] + +- Navbar category now will follow you to various screens #3. [tidusjar] + +- Fixed bugs with the 'other' reporting issue and also the clear issues. [tidusjar] + +- We now are appending the users name to who wrote the comment. Rather than it being unknown. [tidusjar] + +- More work on submitting issues. [tidusjar] + +- More test changes. [tidusjar] + +- More tests to cover the login. [tidusjar] + +- Refactoring. [tidusjar] + +- Implimented the password part and authentication with Plex. [tidusjar] + +- Initial Use authentication is working. Need to do the password bit. [tidusjar] + +- Some error handling and ensure we are an admin to delete requests. [tidusjar] + +- Fixed the issue where the Release build would not show the admin screens! [tidusjar] + +- Fixes. [tidusjar] + +- Removed the DI part of the service. TinyIOC doesn't want to work with FluentScheduler. [tidusjar] + +- First pass at the plex update service. [tidusjar] + +- Small changes. [Jamie Rees] + +- Started to impliment the Plex checker. This will check plex every x minutes to see if there is any new content and then update the avalibility of the requests. [Jamie Rees] + +- Mre work. [Jamie Rees] + +- Few small changes, added plex settings. [Jamie Rees] + +- Making the configuration actually do something. Setting a default configuration if there is no DB. [Jamie Rees] + +- Remove post build. [Jamie Rees] + +- Small changes. [Jamie Rees] + +- MOre work. [Jamie Rees] + +- Fixed the issue when sending movies to CouchPotato. [Jamie Rees] + +- Add appveyor. [tidusjar] + +- Build it on 4.5. [tidusjar] + +- Upgraded .net to 4.6. [tidusjar] + +- Typo2. [tidusjar] + +- Typo. [tidusjar] + +- Another update. [tidusjar] + +- Fixed. [tidusjar] + +- More logging to figure out why the we cannot access the admin module in a release build. [tidusjar] + +- Firstpass integrating with CouchPotato. [tidusjar] + +- Some styling. [tidusjar] + +- Fixed the plex friends. Added some unit tests, moved the plex auth into it's own page. [tidusjar] + +- Fully switched the TV shows over to use the other provider. [Jamie Rees] + +- Renamed folders. [tidusjar] + +- Assembly updates. [tidusjar] + +- Moved the rest of the projects. [tidusjar] + +- Moved UI. [tidusjar] + +- Mass rename. [tidusjar] + +- Quick changes. [tidusjar] + +- Started switching the TV over to the new provider (TheTVDB). Currently TV search is partially broken. It will search but we are not mapping all of the details. [tidusjar] + +- Implimented the new TV show Provider (needed for Sonarr TheTvDB) [tidusjar] + +- Started the user auth. [tidusjar] + +- Some work on the requests page. [tidusjar] + +- Made the 'requested' better and made the remove look nicer. [tidusjar] + +- Cleaned up the program a tiny bit. [tidusjar] + +- Removed additional namespace. [tidusjar] + +- Fixed some db issues and added a preview. [Jamie Rees] + +- More work on the settings. [Jamie Rees] + +- Upgraded Json.Net and Nancy packages. [Jamie Rees] + +- Plex friends api. [Jamie Rees] + +- Enabled trace logs. [tidusjar] + +- Sql syntax issue fixed. [tidusjar] + +- Fixed release build. [tidusjar] + +- Small updates including assembly version. [tidusjar] + +- Work on the requests page mostly done. [tidusjar] + +- Work on the TV request. the `latest` parameter is not being passed into the requestTvshow. [tidusjar] + +- Missing file. [tidusjar] + +- Using the IoC container now. [tidusjar] + +- Some plex work. [Jamie Rees] + +- More work. [Jamie Rees] + +- Removed the setup code out of the startup, since we attemtp to connect to the DB before that. [Jamie Rees] + +- Some more work. Need to stop the form submitting on a request. [tidusjar] + +- Moved everything up a directory. [tidusjar] + +- Lots of work! [tidusjar] + +- Done most of the movie search work. [Jamie Rees] + +- First pass with RequestPlex. [tidusjar] + +- Initial commit. [Jamie] + + diff --git a/GitVersion.yml b/GitVersion.yml new file mode 100644 index 000000000..aade6b109 --- /dev/null +++ b/GitVersion.yml @@ -0,0 +1 @@ +next-version: 3.0.0 \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IApiRequest.cs b/Ombi.Api.Interfaces/IApiRequest.cs deleted file mode 100644 index ed6462de6..000000000 --- a/Ombi.Api.Interfaces/IApiRequest.cs +++ /dev/null @@ -1,40 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: IApiRequest.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; -using RestSharp; - -namespace Ombi.Api.Interfaces -{ - public interface IApiRequest - { - T Execute(IRestRequest request, Uri baseUri) where T : new(); - IRestResponse Execute(IRestRequest request, Uri baseUri); - T ExecuteXml(IRestRequest request, Uri baseUri) where T : class; - T ExecuteJson(IRestRequest request, Uri baseUri) where T : new(); - } -} diff --git a/Ombi.Api.Interfaces/IAppveyorApi.cs b/Ombi.Api.Interfaces/IAppveyorApi.cs deleted file mode 100644 index d067773fd..000000000 --- a/Ombi.Api.Interfaces/IAppveyorApi.cs +++ /dev/null @@ -1,9 +0,0 @@ -using Ombi.Api.Models.Appveyor; - -namespace Ombi.Api.Interfaces -{ - public interface IAppveyorApi - { - AppveyorProjects GetProjectHistory(string branchName, int records = 10); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/ICouchPotatoApi.cs b/Ombi.Api.Interfaces/ICouchPotatoApi.cs deleted file mode 100644 index 844bcc1cd..000000000 --- a/Ombi.Api.Interfaces/ICouchPotatoApi.cs +++ /dev/null @@ -1,42 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: ICouchPotatoApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; -using Ombi.Api.Models.Movie; - -namespace Ombi.Api.Interfaces -{ - public interface ICouchPotatoApi - { - bool AddMovie(string imdbid, string apiKey, string title, Uri baseUrl, string profileID = default(string)); - CouchPotatoStatus GetStatus(Uri url, string apiKey); - CouchPotatoProfiles GetProfiles(Uri url, string apiKey); - CouchPotatoMovies GetMovies(Uri baseUrl, string apiKey, string[] status); - - CouchPotatoApiKey GetApiKey(Uri baseUrl, string username, string password); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IEmbyApi.cs b/Ombi.Api.Interfaces/IEmbyApi.cs deleted file mode 100644 index bc4697140..000000000 --- a/Ombi.Api.Interfaces/IEmbyApi.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.Collections.Generic; -using Ombi.Api.Models.Emby; - -namespace Ombi.Api.Interfaces -{ - public interface IEmbyApi - { - EmbyItemContainer GetAllMovies(string apiKey, string userId, Uri baseUri); - EmbyItemContainer GetAllShows(string apiKey, string userId, Uri baseUri); - EmbyItemContainer GetAllEpisodes(string apiKey, string userId, Uri baseUri); - EmbyItemContainer GetCollection(string mediaId, string apiKey, string userId, Uri baseUrl); - List GetUsers(Uri baseUri, string apiKey); - EmbyItemContainer ViewLibrary(string apiKey, string userId, Uri baseUri); - EmbyInformation GetInformation(string mediaId, EmbyMediaType type, string apiKey, string userId, Uri baseUri); - EmbyUser LogIn(string username, string password, string apiKey, Uri baseUri); - EmbySystemInfo GetSystemInformation(string apiKey, Uri baseUrl); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IHeadphonesApi.cs b/Ombi.Api.Interfaces/IHeadphonesApi.cs deleted file mode 100644 index 521831b9e..000000000 --- a/Ombi.Api.Interfaces/IHeadphonesApi.cs +++ /dev/null @@ -1,44 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: IHeadphonesApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using Ombi.Api.Models.Music; - -namespace Ombi.Api.Interfaces -{ - public interface IHeadphonesApi - { - Task AddAlbum(string apiKey, Uri baseUrl, string albumId); - HeadphonesVersion GetVersion(string apiKey, Uri baseUrl); - Task AddArtist(string apiKey, Uri baseUrl, string artistId); - Task QueueAlbum(string apiKey, Uri baseUrl, string albumId); - Task> GetIndex(string apiKey, Uri baseUrl); - Task RefreshArtist(string apiKey, Uri baseUrl, string artistId); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IMusicBrainzApi.cs b/Ombi.Api.Interfaces/IMusicBrainzApi.cs deleted file mode 100644 index d4fed985b..000000000 --- a/Ombi.Api.Interfaces/IMusicBrainzApi.cs +++ /dev/null @@ -1,38 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: IMusicBrainzApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using Ombi.Api.Models.Music; - -namespace Ombi.Api.Interfaces -{ - public interface IMusicBrainzApi - { - MusicBrainzSearchResults SearchAlbum(string searchTerm); - MusicBrainzCoverArt GetCoverArt(string releaseId); - MusicBrainzReleaseInfo GetAlbum(string releaseId); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/INetflixApi.cs b/Ombi.Api.Interfaces/INetflixApi.cs deleted file mode 100644 index 2c427f6f3..000000000 --- a/Ombi.Api.Interfaces/INetflixApi.cs +++ /dev/null @@ -1,36 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: INetflixApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using Ombi.Api.Models.Netflix; - -namespace Ombi.Api.Interfaces -{ - public interface INetflixApi - { - NetflixMovieResult CheckNetflix(string title, string year = null); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IPlexApi.cs b/Ombi.Api.Interfaces/IPlexApi.cs deleted file mode 100644 index 4bc2124a4..000000000 --- a/Ombi.Api.Interfaces/IPlexApi.cs +++ /dev/null @@ -1,50 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: IPlexApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; -using Ombi.Api.Models.Plex; - -namespace Ombi.Api.Interfaces -{ - public interface IPlexApi - { - PlexAuthentication SignIn(string username, string password); - PlexFriends GetUsers(string authToken); - PlexSearch SearchContent(string authToken, string searchTerm, Uri plexFullHost); - PlexStatus GetStatus(string authToken, Uri uri); - PlexAccount GetAccount(string authToken); - PlexLibraries GetLibrarySections(string authToken, Uri plexFullHost); - PlexSearch GetLibrary(string authToken, Uri plexFullHost, string libraryId); - PlexMetadata GetMetadata(string authToken, Uri plexFullHost, string itemId); - PlexEpisodeMetadata GetEpisodeMetaData(string authToken, Uri host, string ratingKey); - PlexSearch GetAllEpisodes(string authToken, Uri host, string section, int startPage, int returnCount); - PlexServer GetServer(string authToken); - PlexSeasonMetadata GetSeasons(string authToken, Uri plexFullHost, string ratingKey); - RecentlyAddedModelOld RecentlyAddedOld(string authToken, Uri plexFullHost, string sectionId); - PlexRecentlyAddedModel RecentlyAdded(string authToken, Uri plexFullHost, string sectionId); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IPushbulletApi.cs b/Ombi.Api.Interfaces/IPushbulletApi.cs deleted file mode 100644 index 4bf646353..000000000 --- a/Ombi.Api.Interfaces/IPushbulletApi.cs +++ /dev/null @@ -1,45 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: IPushbulletApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Threading.Tasks; -using Ombi.Api.Models.Notifications; - -namespace Ombi.Api.Interfaces -{ - public interface IPushbulletApi - { - /// - /// Pushes the specified message. - /// - /// The access token. - /// The title. - /// The message. - /// The device identifier. - /// - Task PushAsync(string accessToken, string title, string message, string deviceIdentifier = default(string)); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IPushoverApi.cs b/Ombi.Api.Interfaces/IPushoverApi.cs deleted file mode 100644 index bdaab8464..000000000 --- a/Ombi.Api.Interfaces/IPushoverApi.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: IPushoverApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Threading.Tasks; -using Ombi.Api.Models.Notifications; - -namespace Ombi.Api.Interfaces -{ - public interface IPushoverApi - { - Task PushAsync(string accessToken, string message, string userToken); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IRadarrApi.cs b/Ombi.Api.Interfaces/IRadarrApi.cs deleted file mode 100644 index f1b015d31..000000000 --- a/Ombi.Api.Interfaces/IRadarrApi.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using System.Collections.Generic; -using Ombi.Api.Models.Radarr; -using Ombi.Api.Models.Sonarr; - -namespace Ombi.Api.Interfaces -{ - public interface IRadarrApi - { - RadarrAddMovie AddMovie(int tmdbId, string title, int year, int qualityId, string rootPath, string apiKey, Uri baseUrl, bool searchNow = false); - List GetMovies(string apiKey, Uri baseUrl); - List GetProfiles(string apiKey, Uri baseUrl); - SystemStatus SystemStatus(string apiKey, Uri baseUrl); - List GetRootFolders(string apiKey, Uri baseUrl); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/ISickRageApi.cs b/Ombi.Api.Interfaces/ISickRageApi.cs deleted file mode 100644 index 7022c218e..000000000 --- a/Ombi.Api.Interfaces/ISickRageApi.cs +++ /dev/null @@ -1,45 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: ISickRageApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; -using System.Threading.Tasks; -using Ombi.Api.Models.SickRage; - -namespace Ombi.Api.Interfaces -{ - public interface ISickRageApi - { - Task AddSeries(int tvdbId, int seasoncount, int[] seasons, string quality, string apiKey, - Uri baseUrl); - - SickRagePing Ping(string apiKey, Uri baseUrl); - - Task AddSeason(int tvdbId, int season, string apiKey, Uri baseUrl); - - Task GetShows(string apiKey, Uri baseUrl); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/ISlackApi.cs b/Ombi.Api.Interfaces/ISlackApi.cs deleted file mode 100644 index e0649a5cc..000000000 --- a/Ombi.Api.Interfaces/ISlackApi.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: ISlackApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Threading.Tasks; -using Ombi.Api.Models.Notifications; - -namespace Ombi.Api.Interfaces -{ - public interface ISlackApi - { - Task PushAsync(string team, string token, string service, SlackNotificationBody message); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/ISonarrApi.cs b/Ombi.Api.Interfaces/ISonarrApi.cs deleted file mode 100644 index 06dd4ee75..000000000 --- a/Ombi.Api.Interfaces/ISonarrApi.cs +++ /dev/null @@ -1,63 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: ISonarrApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; -using System.Collections.Generic; -using Ombi.Api.Models.Sonarr; - -namespace Ombi.Api.Interfaces -{ - public interface ISonarrApi - { - List GetProfiles(string apiKey, Uri baseUrl); - - SonarrAddSeries AddSeries(int tvdbId, string title, int qualityId, bool seasonFolders, string rootPath, - int seasonCount, int[] seasons, string apiKey, Uri baseUrl, bool monitor = true, - bool searchForMissingEpisodes = false); - - SonarrAddSeries AddSeriesNew(int tvdbId, string title, int qualityId, bool seasonFolders, string rootPath, - int[] seasons, string apiKey, Uri baseUrl, bool monitor = true, - bool searchForMissingEpisodes = false); - - SystemStatus SystemStatus(string apiKey, Uri baseUrl); - List GetRootFolders(string apiKey, Uri baseUrl); - - List GetSeries(string apiKey, Uri baseUrl); - Series GetSeries(string seriesId, string apiKey, Uri baseUrl); - IEnumerable GetEpisodes(string seriesId, string apiKey, Uri baseUrl); - SonarrEpisode GetEpisode(string episodeId, string apiKey, Uri baseUrl); - SonarrEpisode UpdateEpisode(SonarrEpisode episodeInfo, string apiKey, Uri baseUrl); - SonarrEpisodes UpdateEpisode(SonarrEpisodes episodeInfo, string apiKey, Uri baseUrl); - SonarrAddEpisodeResult SearchForEpisodes(int[] episodeIds, string apiKey, Uri baseUrl); - Series UpdateSeries(Series series, string apiKey, Uri baseUrl); - SonarrSeasonSearchResult SearchForSeason(int seriesId, int seasonNumber, string apiKey, Uri baseUrl); - SonarrSeriesSearchResult SearchForSeries(int seriesId, string apiKey, Uri baseUrl); - - - SonarrAddSeries AddSeries(SonarrAddSeries series, string apiKey, Uri baseUrl); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/IWatcherApi.cs b/Ombi.Api.Interfaces/IWatcherApi.cs deleted file mode 100644 index 38dc042ae..000000000 --- a/Ombi.Api.Interfaces/IWatcherApi.cs +++ /dev/null @@ -1,41 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: IWatcherApi.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; -using System.Collections.Generic; -using Ombi.Api.Models.Watcher; - -namespace Ombi.Api.Interfaces -{ - public interface IWatcherApi - { - WatcherAddMovieResult AddMovie(string imdbId, string apiKey, Uri baseUrl); - WatcherListStatusResultContainer ListMovies(string apiKey, Uri baseUrl); - WatcherListStatusResultContainer ListMovies(string apiKey, Uri baseUrl, string imdbId); - WatcherVersion Version(string apiKey, Uri baseUri); - } -} \ No newline at end of file diff --git a/Ombi.Api.Interfaces/Ombi.Api.Interfaces.csproj b/Ombi.Api.Interfaces/Ombi.Api.Interfaces.csproj deleted file mode 100644 index cf50e513d..000000000 --- a/Ombi.Api.Interfaces/Ombi.Api.Interfaces.csproj +++ /dev/null @@ -1,93 +0,0 @@ - - - - - Debug - AnyCPU - {95834072-A675-415D-AA8F-877C91623810} - Library - Properties - Ombi.Api.Interfaces - Ombi.Api.Interfaces - v4.5 - 512 - - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll - True - - - ..\packages\RestSharp.105.2.3\lib\net45\RestSharp.dll - True - - - - - - - - - - - ..\packages\TraktApiSharp.0.8.0\lib\portable-net45+netcore45+wpa81\TraktApiSharp.dll - True - - - - - - - - - - - - - - - - - - - - - - - - - {CB37A5F8-6DFC-4554-99D3-A42B502E4591} - Ombi.Api.Models - - - - - - - - - \ No newline at end of file diff --git a/Ombi.Api.Interfaces/Properties/AssemblyInfo.cs b/Ombi.Api.Interfaces/Properties/AssemblyInfo.cs deleted file mode 100644 index 99bc4fa78..000000000 --- a/Ombi.Api.Interfaces/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Ombi.Api.Interfaces")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Ombi.Api.Interfaces")] -[assembly: AssemblyCopyright("Copyright © 2016")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("95834072-a675-415d-aa8f-877c91623810")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] - -[assembly: AssemblyInformationalVersionAttribute("1.0.0.0")] diff --git a/Ombi.Api.Interfaces/app.config b/Ombi.Api.Interfaces/app.config deleted file mode 100644 index de5386a47..000000000 --- a/Ombi.Api.Interfaces/app.config +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/Ombi.Api.Interfaces/packages.config b/Ombi.Api.Interfaces/packages.config deleted file mode 100644 index 5ac87cab2..000000000 --- a/Ombi.Api.Interfaces/packages.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Ombi.Api.Models/Appveyor/AppveyorProject.cs b/Ombi.Api.Models/Appveyor/AppveyorProject.cs deleted file mode 100644 index bf94a451a..000000000 --- a/Ombi.Api.Models/Appveyor/AppveyorProject.cs +++ /dev/null @@ -1,114 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: AppveyorProject.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; - -namespace Ombi.Api.Models.Appveyor -{ - public class AppveyorProjects - { - public Project project { get; set; } - public Build[] builds { get; set; } - } - - public class Project - { - public int projectId { get; set; } - public int accountId { get; set; } - public string accountName { get; set; } - public object[] builds { get; set; } - public string name { get; set; } - public string slug { get; set; } - public string repositoryType { get; set; } - public string repositoryScm { get; set; } - public string repositoryName { get; set; } - public bool isPrivate { get; set; } - public bool skipBranchesWithoutAppveyorYml { get; set; } - public bool enableSecureVariablesInPullRequests { get; set; } - public bool enableSecureVariablesInPullRequestsFromSameRepo { get; set; } - public bool enableDeploymentInPullRequests { get; set; } - public bool rollingBuilds { get; set; } - public bool alwaysBuildClosedPullRequests { get; set; } - public string tags { get; set; } - public Securitydescriptor securityDescriptor { get; set; } - public DateTime created { get; set; } - public DateTime updated { get; set; } - } - - public class Securitydescriptor - { - public Accessrightdefinition[] accessRightDefinitions { get; set; } - public Roleace[] roleAces { get; set; } - } - - public class Accessrightdefinition - { - public string name { get; set; } - public string description { get; set; } - } - - public class Roleace - { - public int roleId { get; set; } - public string name { get; set; } - public bool isAdmin { get; set; } - public Accessright[] accessRights { get; set; } - } - - public class Accessright - { - public string name { get; set; } - public bool allowed { get; set; } - } - - public class Build - { - public int buildId { get; set; } - public object[] jobs { get; set; } - public int buildNumber { get; set; } - public string version { get; set; } - public string message { get; set; } - public string messageExtended { get; set; } - public string branch { get; set; } - public bool isTag { get; set; } - public string commitId { get; set; } - public string authorName { get; set; } - public string authorUsername { get; set; } - public string committerName { get; set; } - public string committerUsername { get; set; } - public DateTime committed { get; set; } - public object[] messages { get; set; } - public string status { get; set; } - public DateTime started { get; set; } - public DateTime finished { get; set; } - public DateTime created { get; set; } - public DateTime updated { get; set; } - public string pullRequestId { get; set; } - public string pullRequestName { get; set; } - } - -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyChapter.cs b/Ombi.Api.Models/Emby/EmbyChapter.cs deleted file mode 100644 index 9677eae76..000000000 --- a/Ombi.Api.Models/Emby/EmbyChapter.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: MovieInformation.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - - -namespace Ombi.Api.Models.Emby -{ - public class EmbyChapter - { - public long StartPositionTicks { get; set; } - public string Name { get; set; } - } - -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyImagetags.cs b/Ombi.Api.Models/Emby/EmbyImagetags.cs deleted file mode 100644 index cf36ae696..000000000 --- a/Ombi.Api.Models/Emby/EmbyImagetags.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: EmbyLibrary.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Emby -{ - public class EmbyImagetags - { - public string Primary { get; set; } - public string Logo { get; set; } - public string Thumb { get; set; } - - public string Banner { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyInformation.cs b/Ombi.Api.Models/Emby/EmbyInformation.cs deleted file mode 100644 index 8edb432ba..000000000 --- a/Ombi.Api.Models/Emby/EmbyInformation.cs +++ /dev/null @@ -1,35 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: EmbyInformation.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Emby -{ - public class EmbyInformation - { - public EmbySeriesInformation SeriesInformation { get; set; } - public EmbyMovieInformation MovieInformation { get; set; } - public EmbyEpisodeInformation EpisodeInformation { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyItem.cs b/Ombi.Api.Models/Emby/EmbyItem.cs deleted file mode 100644 index 85d41ddf2..000000000 --- a/Ombi.Api.Models/Emby/EmbyItem.cs +++ /dev/null @@ -1,47 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: EmbyLibrary.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Emby -{ - public class EmbyLibrary - { - public string Name { get; set; } - public string ServerId { get; set; } - public string Id { get; set; } - public bool HasDynamicCategories { get; set; } - public string PlayAccess { get; set; } - public bool IsFolder { get; set; } - public string Type { get; set; } - public EmbyUserdata UserData { get; set; } - public int ChildCount { get; set; } - public string CollectionType { get; set; } - public string OriginalCollectionType { get; set; } - public EmbyImagetags ImageTags { get; set; } - public object[] BackdropImageTags { get; set; } - public string LocationType { get; set; } - } - -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyMediasource.cs b/Ombi.Api.Models/Emby/EmbyMediasource.cs deleted file mode 100644 index bc3f4122c..000000000 --- a/Ombi.Api.Models/Emby/EmbyMediasource.cs +++ /dev/null @@ -1,59 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: MovieInformation.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - - -namespace Ombi.Api.Models.Emby -{ - public class EmbyMediasource - { - public string Protocol { get; set; } - public string Id { get; set; } - public string Path { get; set; } - public string Type { get; set; } - public string Container { get; set; } - public string Name { get; set; } - public bool IsRemote { get; set; } - public string ETag { get; set; } - public long RunTimeTicks { get; set; } - public bool ReadAtNativeFramerate { get; set; } - public bool SupportsTranscoding { get; set; } - public bool SupportsDirectStream { get; set; } - public bool SupportsDirectPlay { get; set; } - public bool IsInfiniteStream { get; set; } - public bool RequiresOpening { get; set; } - public bool RequiresClosing { get; set; } - public bool SupportsProbing { get; set; } - public string VideoType { get; set; } - public EmbyMediastream[] MediaStreams { get; set; } - public object[] PlayableStreamFileNames { get; set; } - public object[] Formats { get; set; } - public int Bitrate { get; set; } - public EmbyRequiredhttpheaders RequiredHttpHeaders { get; set; } - public int DefaultAudioStreamIndex { get; set; } - - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyMediastream.cs b/Ombi.Api.Models/Emby/EmbyMediastream.cs deleted file mode 100644 index 75aff476b..000000000 --- a/Ombi.Api.Models/Emby/EmbyMediastream.cs +++ /dev/null @@ -1,64 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: MovieInformation.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - - -namespace Ombi.Api.Models.Emby -{ - public class EmbyMediastream - { - public string Codec { get; set; } - public string Language { get; set; } - public string TimeBase { get; set; } - public string CodecTimeBase { get; set; } - public string NalLengthSize { get; set; } - public bool IsInterlaced { get; set; } - public bool IsAVC { get; set; } - public int BitRate { get; set; } - public int BitDepth { get; set; } - public int RefFrames { get; set; } - public bool IsDefault { get; set; } - public bool IsForced { get; set; } - public int Height { get; set; } - public int Width { get; set; } - public float AverageFrameRate { get; set; } - public float RealFrameRate { get; set; } - public string Profile { get; set; } - public string Type { get; set; } - public string AspectRatio { get; set; } - public int Index { get; set; } - public bool IsExternal { get; set; } - public bool IsTextSubtitleStream { get; set; } - public bool SupportsExternalStream { get; set; } - public string PixelFormat { get; set; } - public int Level { get; set; } - public bool IsAnamorphic { get; set; } - public string DisplayTitle { get; set; } - public string ChannelLayout { get; set; } - public int Channels { get; set; } - public int SampleRate { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyMovieItem.cs b/Ombi.Api.Models/Emby/EmbyMovieItem.cs deleted file mode 100644 index 5c4cc514f..000000000 --- a/Ombi.Api.Models/Emby/EmbyMovieItem.cs +++ /dev/null @@ -1,59 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: EmbyMovieItem.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; - -namespace Ombi.Api.Models.Emby -{ - public class EmbyMovieItem - { - public string Name { get; set; } - public string ServerId { get; set; } - public string Id { get; set; } - public string Container { get; set; } - public DateTime PremiereDate { get; set; } - public object[] ProductionLocations { get; set; } - public string OfficialRating { get; set; } - public float CommunityRating { get; set; } - public long RunTimeTicks { get; set; } - public string PlayAccess { get; set; } - public int ProductionYear { get; set; } - public bool IsPlaceHolder { get; set; } - public bool IsHD { get; set; } - public bool IsFolder { get; set; } - public string Type { get; set; } - public int LocalTrailerCount { get; set; } - public EmbyUserdata UserData { get; set; } - public string VideoType { get; set; } - public EmbyImagetags ImageTags { get; set; } - public string[] BackdropImageTags { get; set; } - public string LocationType { get; set; } - public string MediaType { get; set; } - public bool HasSubtitles { get; set; } - public int CriticRating { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyRemotetrailer.cs b/Ombi.Api.Models/Emby/EmbyRemotetrailer.cs deleted file mode 100644 index 5f2d60923..000000000 --- a/Ombi.Api.Models/Emby/EmbyRemotetrailer.cs +++ /dev/null @@ -1,36 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: MovieInformation.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - - -namespace Ombi.Api.Models.Emby -{ - public class EmbyRemotetrailer - { - public string Url { get; set; } - public string Name { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbySeriesItem.cs b/Ombi.Api.Models/Emby/EmbySeriesItem.cs deleted file mode 100644 index 2c3674662..000000000 --- a/Ombi.Api.Models/Emby/EmbySeriesItem.cs +++ /dev/null @@ -1,56 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: EmbySeriesItem.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; - -namespace Ombi.Api.Models.Emby -{ - public class EmbySeriesItem - { - public string Name { get; set; } - public string ServerId { get; set; } - public string Id { get; set; } - public DateTime PremiereDate { get; set; } - public string OfficialRating { get; set; } - public float CommunityRating { get; set; } - public long RunTimeTicks { get; set; } - public string PlayAccess { get; set; } - public int ProductionYear { get; set; } - public bool IsFolder { get; set; } - public string Type { get; set; } - public int LocalTrailerCount { get; set; } - public EmbyUserdata UserData { get; set; } - public int ChildCount { get; set; } - public string Status { get; set; } - public string AirTime { get; set; } - public string[] AirDays { get; set; } - public EmbyImagetags ImageTags { get; set; } - public string[] BackdropImageTags { get; set; } - public string LocationType { get; set; } - public DateTime EndDate { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbySeriesstudioinfo.cs b/Ombi.Api.Models/Emby/EmbySeriesstudioinfo.cs deleted file mode 100644 index 8b2ab437d..000000000 --- a/Ombi.Api.Models/Emby/EmbySeriesstudioinfo.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: EmbyEpisodeInformation.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - - -namespace Ombi.Api.Models.Emby -{ - public class EmbySeriesstudioinfo - { - public string Name { get; set; } - public string Id { get; set; } - } - -} \ No newline at end of file diff --git a/Ombi.Api.Models/Emby/EmbyUserdata.cs b/Ombi.Api.Models/Emby/EmbyUserdata.cs deleted file mode 100644 index fece18a33..000000000 --- a/Ombi.Api.Models/Emby/EmbyUserdata.cs +++ /dev/null @@ -1,42 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: EmbyLibrary.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System; - -namespace Ombi.Api.Models.Emby -{ - public class EmbyUserdata - { - public double PlaybackPositionTicks { get; set; } - public int PlayCount { get; set; } - public bool IsFavorite { get; set; } - public bool Played { get; set; } - public string Key { get; set; } - public DateTime LastPlayedDate { get; set; } - public int UnplayedItemCount { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Movie/CouchPotatoAdd.cs b/Ombi.Api.Models/Movie/CouchPotatoAdd.cs deleted file mode 100644 index 926f51e40..000000000 --- a/Ombi.Api.Models/Movie/CouchPotatoAdd.cs +++ /dev/null @@ -1,119 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: CouchPotatoAdd.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; - -namespace Ombi.Api.Models.Movie -{ - public class CouchPotatoAdd - { - public Movie movie { get; set; } - public bool success { get; set; } - } - - public class Rating - { - public List imdb { get; set; } - } - - public class Images - { - public List actors { get; set; } - public List backdrop { get; set; } - public List backdrop_original { get; set; } - public List banner { get; set; } - public List clear_art { get; set; } - public List disc_art { get; set; } - public List extra_fanart { get; set; } - public List extra_thumbs { get; set; } - public List landscape { get; set; } - public List logo { get; set; } - public List poster { get; set; } - public List poster_original { get; set; } - } - - public class Info - { - public List actor_roles { get; set; } - public List actors { get; set; } - public List directors { get; set; } - public List genres { get; set; } - public Images images { get; set; } - public string imdb { get; set; } - public string mpaa { get; set; } - public string original_title { get; set; } - public string plot { get; set; } - public Rating rating { get; set; } - public Release_Date release_date { get; set; } - public string released { get; set; } - public int runtime { get; set; } - public string tagline { get; set; } - public List titles { get; set; } - public int tmdb_id { get; set; } - public string type { get; set; } - public bool via_imdb { get; set; } - public bool via_tmdb { get; set; } - public List writers { get; set; } - public int year { get; set; } - } - - public class Release_Date - { - public bool bluray { get; set; } - public int dvd { get; set; } - public int expires { get; set; } - public int theater { get; set; } - } - - public class Files - { - public List image_poster { get; set; } - } - - public class Identifiers - { - public string imdb { get; set; } - } - - public class Movie - { - public string _id { get; set; } - public string _rev { get; set; } - public string _t { get; set; } - public object category_id { get; set; } - public Files files { get; set; } - public Identifiers identifiers { get; set; } - public Info info { get; set; } - public int last_edit { get; set; } - public string profile_id { get; set; } - public List releases { get; set; } - public string status { get; set; } - public List tags { get; set; } - public string title { get; set; } - public string type { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Movie/CouchPotatoApiKey.cs b/Ombi.Api.Models/Movie/CouchPotatoApiKey.cs deleted file mode 100644 index 39d9a1aa3..000000000 --- a/Ombi.Api.Models/Movie/CouchPotatoApiKey.cs +++ /dev/null @@ -1,39 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: CouchPotatoApiKey.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using Newtonsoft.Json; - -namespace Ombi.Api.Models.Movie -{ - public class CouchPotatoApiKey - { - [JsonProperty("success")] - public bool success { get; set; } - [JsonProperty("api_key")] - public string ApiKey { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Movie/CouchPotatoMovies.cs b/Ombi.Api.Models/Movie/CouchPotatoMovies.cs deleted file mode 100644 index fcf7abcb5..000000000 --- a/Ombi.Api.Models/Movie/CouchPotatoMovies.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Collections.Generic; - -namespace Ombi.Api.Models.Movie -{ - public class CouchPotatoMovies - { - public List movies { get; set; } - public int total { get; set; } - public bool success { get; set; } - public bool empty { get; set; } - } -} diff --git a/Ombi.Api.Models/Movie/CouchPotatoProfiles.cs b/Ombi.Api.Models/Movie/CouchPotatoProfiles.cs deleted file mode 100644 index 4daf85918..000000000 --- a/Ombi.Api.Models/Movie/CouchPotatoProfiles.cs +++ /dev/null @@ -1,56 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: CouchPotatoProfiles.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; -using Newtonsoft.Json; - -namespace Ombi.Api.Models.Movie -{ - public class ProfileList - { - public bool core { get; set; } - public bool hide { get; set; } - public string _rev { get; set; } - public List finish { get; set; } - public List qualities { get; set; } - public string _id { get; set; } - public string _t { get; set; } - public string label { get; set; } - public int minimum_score { get; set; } - public List stop_after { get; set; } - public List wait_for { get; set; } - public int order { get; set; } - [JsonProperty(PropertyName = "3d")] - public List threeD { get; set; } - } - - public class CouchPotatoProfiles - { - public List list { get; set; } - public bool success { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Movie/TmdbMovieDetails.cs b/Ombi.Api.Models/Movie/TmdbMovieDetails.cs deleted file mode 100644 index 4d987ac02..000000000 --- a/Ombi.Api.Models/Movie/TmdbMovieDetails.cs +++ /dev/null @@ -1,104 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: TmdbMovieDetails.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; - -namespace Ombi.Api.Models.Movie -{ - - public class Genre - { - public int id { get; set; } - public string name { get; set; } - } - - public class ProductionCompany - { - public string name { get; set; } - public int id { get; set; } - } - - public class ProductionCountry - { - public string iso_3166_1 { get; set; } - public string name { get; set; } - } - - public class SpokenLanguage - { - public string iso_639_1 { get; set; } - public string name { get; set; } - } - - public class Result - { - public string id { get; set; } - public string iso_639_1 { get; set; } - public string iso_3166_1 { get; set; } - public string key { get; set; } - public string name { get; set; } - public string site { get; set; } - public int size { get; set; } - public string type { get; set; } - } - - public class Videos - { - public List results { get; set; } - } - - public class TmdbMovieDetails - { - public bool adult { get; set; } - public string backdrop_path { get; set; } - public object belongs_to_collection { get; set; } - public int budget { get; set; } - public List genres { get; set; } - public string homepage { get; set; } - public int id { get; set; } - public string imdb_id { get; set; } - public string original_language { get; set; } - public string original_title { get; set; } - public string overview { get; set; } - public double popularity { get; set; } - public string poster_path { get; set; } - public List production_companies { get; set; } - public List production_countries { get; set; } - public string release_date { get; set; } - public int revenue { get; set; } - public int runtime { get; set; } - public List spoken_languages { get; set; } - public string status { get; set; } - public string tagline { get; set; } - public string title { get; set; } - public bool video { get; set; } - public double vote_average { get; set; } - public int vote_count { get; set; } - public Videos videos { get; set; } - } - -} \ No newline at end of file diff --git a/Ombi.Api.Models/Music/HeadphonesAlbumSearchResult.cs b/Ombi.Api.Models/Music/HeadphonesAlbumSearchResult.cs deleted file mode 100644 index b30fcd79f..000000000 --- a/Ombi.Api.Models/Music/HeadphonesAlbumSearchResult.cs +++ /dev/null @@ -1,45 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: HeadphonesAlbumSearchResult.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Music -{ - public class HeadphonesAlbumSearchResult - { - public string rgid { get; set; } - public string albumurl { get; set; } - public string tracks { get; set; } - public string date { get; set; } - public string id { get; set; } // Artist ID - public string rgtype { get; set; } - public string title { get; set; } - public string url { get; set; } - public string country { get; set; } - public string albumid { get; set; } // AlbumId - public int score { get; set; } - public string uniquename { get; set; } - public string formats { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Music/HeadphonesArtistSearchResult.cs b/Ombi.Api.Models/Music/HeadphonesArtistSearchResult.cs deleted file mode 100644 index 8115f1215..000000000 --- a/Ombi.Api.Models/Music/HeadphonesArtistSearchResult.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: HeadphonesSearchResult.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Music -{ - public class HeadphonesArtistSearchResult - { - public string url { get; set; } // MusicBrainz url - public int score { get; set; } // Search Match score? - public string name { get; set; } // Artist Name - public string uniquename { get; set; } // Artist Unique Name - public string id { get; set; } // Artist Unique ID for MusicBrainz - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Music/HeadphonesGetIndex.cs b/Ombi.Api.Models/Music/HeadphonesGetIndex.cs deleted file mode 100644 index 81adf8f59..000000000 --- a/Ombi.Api.Models/Music/HeadphonesGetIndex.cs +++ /dev/null @@ -1,49 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: HeadphonesGetIndex.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Music -{ - public class HeadphonesGetIndex - { - public string Status { get; set; } - public string ThumbURL { get; set; } - public string DateAdded { get; set; } - public string MetaCritic { get; set; } - public int? TotalTracks { get; set; } - public object Type { get; set; } - public int? IncludeExtras { get; set; } - public string ArtistName { get; set; } - public string LastUpdated { get; set; } - public string ReleaseDate { get; set; } - public string AlbumID { get; set; } - public string ArtistID { get; set; } - public string ArtworkURL { get; set; } - public string Extras { get; set; } - public int? HaveTracks { get; set; } - public string LatestAlbum { get; set; } - public string ArtistSortName { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Music/HeadphonesVersion.cs b/Ombi.Api.Models/Music/HeadphonesVersion.cs deleted file mode 100644 index 42829d3ac..000000000 --- a/Ombi.Api.Models/Music/HeadphonesVersion.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: HeadphonesVersion.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Music -{ - public class HeadphonesVersion - { - public string install_type { get; set; } - public object current_version { get; set; } - public string git_path { get; set; } - public string latest_version { get; set; } - public int commits_behind { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Music/MusicBrainzCoverArt.cs b/Ombi.Api.Models/Music/MusicBrainzCoverArt.cs deleted file mode 100644 index 6f6c4930a..000000000 --- a/Ombi.Api.Models/Music/MusicBrainzCoverArt.cs +++ /dev/null @@ -1,56 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: MusicBrainzCoverArt.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; - -namespace Ombi.Api.Models.Music -{ - public class Thumbnails - { - public string large { get; set; } - public string small { get; set; } - } - - public class Image - { - public List types { get; set; } - public bool front { get; set; } - public bool back { get; set; } - public int edit { get; set; } - public string image { get; set; } - public string comment { get; set; } - public bool approved { get; set; } - public string id { get; set; } - public Thumbnails thumbnails { get; set; } - } - - public class MusicBrainzCoverArt - { - public List images { get; set; } - public string release { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Music/MusicBrainzReleaseInfo.cs b/Ombi.Api.Models/Music/MusicBrainzReleaseInfo.cs deleted file mode 100644 index 5cea78619..000000000 --- a/Ombi.Api.Models/Music/MusicBrainzReleaseInfo.cs +++ /dev/null @@ -1,68 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: MusicBrainzReleaseInfo.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; -using Newtonsoft.Json; - -namespace Ombi.Api.Models.Music -{ - public class CoverArtArchive - { - public int count { get; set; } - public bool back { get; set; } - public bool artwork { get; set; } - public bool front { get; set; } - public bool darkened { get; set; } - } - - - public class MusicBrainzReleaseInfo - { - [JsonProperty(PropertyName = "artist-credit")] - public List ArtistCredits { get; set; } - public string date { get; set; } - public string status { get; set; } - public string asin { get; set; } - public string title { get; set; } - public string quality { get; set; } - public string country { get; set; } - public string packaging { get; set; } - - [JsonProperty(PropertyName = "text-representation")] - public TextRepresentation TextRepresentation { get; set; } - - [JsonProperty(PropertyName = "cover-art-archive")] - public CoverArtArchive CoverArtArchive { get; set; } - public string barcode { get; set; } - public string disambiguation { get; set; } - - [JsonProperty(PropertyName = "release-events")] - public List ReleaseEvents { get; set; } - public string id { get; set; } - } - -} \ No newline at end of file diff --git a/Ombi.Api.Models/Music/MusicBrainzSearchResults.cs b/Ombi.Api.Models/Music/MusicBrainzSearchResults.cs deleted file mode 100644 index 9f7f38cf2..000000000 --- a/Ombi.Api.Models/Music/MusicBrainzSearchResults.cs +++ /dev/null @@ -1,154 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: MusicBrainzSearchResults.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; -using Newtonsoft.Json; - -namespace Ombi.Api.Models.Music -{ - public class TextRepresentation - { - public string language { get; set; } - public string script { get; set; } - } - - public class Alias - { - [JsonProperty(PropertyName = "sort-name")] - public string SortName { get; set; } - public string name { get; set; } - public object locale { get; set; } - public string type { get; set; } - public object primary { get; set; } - [JsonProperty(PropertyName = "begin-date")] - public object BeginDate { get; set; } - [JsonProperty(PropertyName = "end-date")] - public object EndDate { get; set; } - } - - public class Artist - { - public string id { get; set; } - public string name { get; set; } - [JsonProperty(PropertyName = "sort-date")] - public string SortName { get; set; } - public string disambiguation { get; set; } - public List aliases { get; set; } - } - - public class ArtistCredit - { - public Artist artist { get; set; } - public string name { get; set; } - public string joinphrase { get; set; } - } - - public class ReleaseGroup - { - public string id { get; set; } - [JsonProperty(PropertyName = "primary-type")] - public string PrimaryType { get; set; } - [JsonProperty(PropertyName = "secondary-types")] - public List SecondaryTypes { get; set; } - } - - public class Area - { - public string id { get; set; } - public string name { get; set; } - [JsonProperty(PropertyName = "sort-name")] - public string SortName { get; set; } - [JsonProperty(PropertyName = "iso-3166-1-codes")] - public List ISO31661Codes { get; set; } - } - - public class ReleaseEvent - { - public string date { get; set; } - public Area area { get; set; } - } - - public class Label - { - public string id { get; set; } - public string name { get; set; } - } - - public class LabelInfo - { - [JsonProperty(PropertyName = "catalog-number")] - public string CatalogNumber { get; set; } - public Label label { get; set; } - } - - public class Medium - { - public string format { get; set; } - [JsonProperty(PropertyName = "disc-count")] - public int DiscCount { get; set; } - [JsonProperty(PropertyName = "catalog-number")] - public int CatalogNumber { get; set; } - } - - public class Release - { - public string id { get; set; } - public string score { get; set; } - public int count { get; set; } - public string title { get; set; } - public string status { get; set; } - public string disambiguation { get; set; } - public string packaging { get; set; } - - [JsonProperty(PropertyName = "text-representation")] - public TextRepresentation TextRepresentation { get; set; } - [JsonProperty(PropertyName = "artist-credit")] - public List ArtistCredit { get; set; } - [JsonProperty(PropertyName = "release-group")] - public ReleaseGroup ReleaseGroup { get; set; } - public string date { get; set; } - public string country { get; set; } - [JsonProperty(PropertyName = "release-events")] - public List ReleaseEvents { get; set; } - public string barcode { get; set; } - public string asin { get; set; } - [JsonProperty(PropertyName = "label-info")] - public List LabelInfo { get; set; } - [JsonProperty(PropertyName = "track-count")] - public int TrackCount { get; set; } - public List media { get; set; } - } - - public class MusicBrainzSearchResults - { - public string created { get; set; } - public int count { get; set; } - public int offset { get; set; } - public List releases { get; set; } - } - -} \ No newline at end of file diff --git a/Ombi.Api.Models/Netflix/NetflixMovieResult.cs b/Ombi.Api.Models/Netflix/NetflixMovieResult.cs deleted file mode 100644 index 0ed213cf2..000000000 --- a/Ombi.Api.Models/Netflix/NetflixMovieResult.cs +++ /dev/null @@ -1,69 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: NetflixMovieResult.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using Newtonsoft.Json; - -namespace Ombi.Api.Models.Netflix -{ - public class NetflixMovieResult - { - [JsonProperty(PropertyName= "unit")] - public int Unit { get; set; } - - [JsonProperty(PropertyName = "show_id")] - public int ShowId { get; set; } - - [JsonProperty(PropertyName = "show_title")] - public string Title { get; set; } - - [JsonProperty(PropertyName = "release_year")] - public string ReleaseYear { get; set; } - [JsonProperty(PropertyName = "rating")] - public string Rating { get; set; } - [JsonProperty(PropertyName = "Category")] - public string Category { get; set; } - [JsonProperty(PropertyName = "show_cast")] - public string ShowCast { get; set; } - [JsonProperty(PropertyName = "director")] - public string Director { get; set; } - [JsonProperty(PropertyName = "summary")] - public string Summary { get; set; } - [JsonProperty(PropertyName = "poster")] - public string Poster { get; set; } - [JsonProperty(PropertyName = "mediatype")] - public string Mediatype { get; set; } - [JsonProperty(PropertyName = "runtime")] - public string Runtime { get; set; } - - - // For errors - [JsonProperty(PropertyName = "errorcode")] - public int ErrorCode { get; set; } - [JsonProperty(PropertyName = "message")] - public string Message { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Notifications/DiscordWebhookRequest.cs b/Ombi.Api.Models/Notifications/DiscordWebhookRequest.cs deleted file mode 100644 index 653235c08..000000000 --- a/Ombi.Api.Models/Notifications/DiscordWebhookRequest.cs +++ /dev/null @@ -1,34 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: DiscordWebhookRequest.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Notifications -{ - public class DiscordWebhookRequest - { - public string content { get; set; } - public string username { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Notifications/DiscordWebhookResponse.cs b/Ombi.Api.Models/Notifications/DiscordWebhookResponse.cs deleted file mode 100644 index ac7978c4c..000000000 --- a/Ombi.Api.Models/Notifications/DiscordWebhookResponse.cs +++ /dev/null @@ -1,47 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2017 Jamie Rees -// File: DiscordWebhookResponse.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using Newtonsoft.Json; -using Newtonsoft.Json.Serialization; - -namespace Ombi.Api.Models.Notifications -{ - public class DiscordWebhookResponse - { - public string name { get; set; } - [JsonProperty(PropertyName = "channel_id")] - public string channelid { get; set; } - - public string token { get; set; } - public string avatar { get; set; } - [JsonProperty(PropertyName = "guild_id")] - public string guildid { get; set; } - - public string id { get; set; } - - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Notifications/PushbulletPush.cs b/Ombi.Api.Models/Notifications/PushbulletPush.cs deleted file mode 100644 index d8e0b22c3..000000000 --- a/Ombi.Api.Models/Notifications/PushbulletPush.cs +++ /dev/null @@ -1,37 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: PushbulletPush.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -namespace Ombi.Api.Models.Notifications -{ - public class PushbulletPush - { - public string body { get; set; } - public string title { get; set; } - public string type { get; set; } - public string device_iden { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Notifications/PushbulletResponse.cs b/Ombi.Api.Models/Notifications/PushbulletResponse.cs deleted file mode 100644 index 65e580110..000000000 --- a/Ombi.Api.Models/Notifications/PushbulletResponse.cs +++ /dev/null @@ -1,48 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: PushbulletResponse.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Notifications -{ - public class PushbulletResponse - { - public bool active { get; set; } - public string iden { get; set; } - public double created { get; set; } - public double modified { get; set; } - public string type { get; set; } - public bool dismissed { get; set; } - public string direction { get; set; } - public string sender_iden { get; set; } - public string sender_email { get; set; } - public string sender_email_normalized { get; set; } - public string sender_name { get; set; } - public string receiver_iden { get; set; } - public string receiver_email { get; set; } - public string receiver_email_normalized { get; set; } - public string title { get; set; } - public string body { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Notifications/PushoverResponse.cs b/Ombi.Api.Models/Notifications/PushoverResponse.cs deleted file mode 100644 index 572347a91..000000000 --- a/Ombi.Api.Models/Notifications/PushoverResponse.cs +++ /dev/null @@ -1,34 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: PushoverResponse.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion -namespace Ombi.Api.Models.Notifications -{ - public class PushoverResponse - { - public int status { get; set; } - public string request { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Notifications/SlackNotificationBody.cs b/Ombi.Api.Models/Notifications/SlackNotificationBody.cs deleted file mode 100644 index 676f853c9..000000000 --- a/Ombi.Api.Models/Notifications/SlackNotificationBody.cs +++ /dev/null @@ -1,57 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: SlackNotificationBody.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using Newtonsoft.Json; - -namespace Ombi.Api.Models.Notifications -{ - public class SlackNotificationBody - { - [JsonConstructor] - public SlackNotificationBody() - { - username = "Ombi"; - } - - [JsonIgnore] - private string _username; - public string username - { - get { return _username; } - set - { - if (!string.IsNullOrEmpty(value)) - _username = value; - } - } - public string channel { get; set; } - public string text { get; set; } - - public string icon_url { get; set; } - public string icon_emoji { get; set; } - } -} \ No newline at end of file diff --git a/Ombi.Api.Models/Ombi.Api.Models.csproj b/Ombi.Api.Models/Ombi.Api.Models.csproj deleted file mode 100644 index e13506d5b..000000000 --- a/Ombi.Api.Models/Ombi.Api.Models.csproj +++ /dev/null @@ -1,170 +0,0 @@ - - - - - Debug - AnyCPU - {CB37A5F8-6DFC-4554-99D3-A42B502E4591} - Library - Properties - Ombi.Api.Models - Ombi.Api.Models - v4.5 - 512 - - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll - True - - - ..\packages\RestSharp.105.2.3\lib\net45\RestSharp.dll - True - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Designer - - - - - {1252336D-42A3-482A-804C-836E60173DFA} - Ombi.Helpers - - - - - \ No newline at end of file diff --git a/Ombi.Api.Models/Plex/PlexAccount.cs b/Ombi.Api.Models/Plex/PlexAccount.cs deleted file mode 100644 index 189e4c5f1..000000000 --- a/Ombi.Api.Models/Plex/PlexAccount.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Xml.Serialization; - -namespace Ombi.Api.Models.Plex -{ - [XmlRoot(ElementName = "user")] - public class PlexAccount - { - [XmlAttribute(AttributeName = "id")] - public string Id { get; set; } - [XmlAttribute(AttributeName = "username")] - public string Username { get; set; } - [XmlAttribute(AttributeName = "email")] - public string Email { get; set; } - [XmlAttribute(AttributeName = "authenticationToken")] - public string AuthToken { get; set; } - } -} diff --git a/Ombi.Api.Models/Plex/PlexAuthentication.cs b/Ombi.Api.Models/Plex/PlexAuthentication.cs deleted file mode 100644 index 73b0b0397..000000000 --- a/Ombi.Api.Models/Plex/PlexAuthentication.cs +++ /dev/null @@ -1,64 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: PlexAuthentication.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; - -namespace Ombi.Api.Models.Plex -{ - public class PlexAuthentication - { - public User user { get; set; } - } - public class Subscription - { - public bool active { get; set; } - public string status { get; set; } - public object plan { get; set; } - public object features { get; set; } - } - - public class Roles - { - public List roles { get; set; } - } - - public class User - { - public string email { get; set; } - public string uuid { get; set; } - public string joined_at { get; set; } - public string username { get; set; } - public string title { get; set; } - public string authentication_token { get; set; } - public Subscription subscription { get; set; } - public Roles roles { get; set; } - public List entitlements { get; set; } - public object confirmed_at { get; set; } - public int forum_id { get; set; } - } -} - diff --git a/Ombi.Api.Models/Plex/PlexEpisodeMetadata.cs b/Ombi.Api.Models/Plex/PlexEpisodeMetadata.cs deleted file mode 100644 index a6e8788e3..000000000 --- a/Ombi.Api.Models/Plex/PlexEpisodeMetadata.cs +++ /dev/null @@ -1,82 +0,0 @@ -#region Copyright -// /************************************************************************ -// Copyright (c) 2016 Jamie Rees -// File: PlexEpisodeMetadata.cs -// Created By: Jamie Rees -// -// Permission is hereby granted, free of charge, to any person obtaining -// a copy of this software and associated documentation files (the -// "Software"), to deal in the Software without restriction, including -// without limitation the rights to use, copy, modify, merge, publish, -// distribute, sublicense, and/or sell copies of the Software, and to -// permit persons to whom the Software is furnished to do so, subject to -// the following conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -// ************************************************************************/ -#endregion - -using System.Collections.Generic; -using System.Xml.Serialization; - -namespace Ombi.Api.Models.Plex -{ - [XmlRoot(ElementName = "MediaContainer")] - public class PlexEpisodeMetadata - { - [XmlElement(ElementName = "Video")] - public List