diff --git a/PlexRequests.Core/SettingModels/PlexRequestSettings.cs b/PlexRequests.Core/SettingModels/PlexRequestSettings.cs
index 078798b3e..65afd1559 100644
--- a/PlexRequests.Core/SettingModels/PlexRequestSettings.cs
+++ b/PlexRequests.Core/SettingModels/PlexRequestSettings.cs
@@ -60,6 +60,9 @@ namespace PlexRequests.Core.SettingModels
public bool DisableTvRequestsBySeason { get; set; }
public bool SendRecentlyAddedEmail { get; set; }
+ public string CustomDonationUrl { get; set; }
+ public bool EnableCustomDonationUrl { get; set; }
+ public string CustomDonationMessage { get; set; }
///
/// The CSS name of the theme we want
///
diff --git a/PlexRequests.Services/Jobs/RecentlyAdded.cs b/PlexRequests.Services/Jobs/RecentlyAdded.cs
index 3a744bb6b..e5b0cb702 100644
--- a/PlexRequests.Services/Jobs/RecentlyAdded.cs
+++ b/PlexRequests.Services/Jobs/RecentlyAdded.cs
@@ -197,10 +197,10 @@ namespace PlexRequests.Services.Jobs
string.IsNullOrEmpty(parentMetaData.Directory.Summary) ? info.summary : parentMetaData.Directory.Summary); // Episode Summary
sb.Append("
");
sb.Append(" ");
sb.Append(" ");
sb.Append(" ");
+ sb.Append("");
}
sb.Append("
");
}
diff --git a/PlexRequests.UI/Modules/DonationLinkModule.cs b/PlexRequests.UI/Modules/DonationLinkModule.cs
new file mode 100644
index 000000000..9ede62e41
--- /dev/null
+++ b/PlexRequests.UI/Modules/DonationLinkModule.cs
@@ -0,0 +1,52 @@
+using System;
+using System.Threading.Tasks;
+
+using Nancy;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
+using NLog;
+
+using PlexRequests.Core;
+using PlexRequests.Core.SettingModels;
+using PlexRequests.Helpers;
+using PlexRequests.UI.Models;
+
+namespace PlexRequests.UI.Modules
+{
+ public class DonationLinkModule : BaseAuthModule
+ {
+ public DonationLinkModule(ICacheProvider provider, ISettingsService pr) : base("customDonation", pr)
+ {
+ Cache = provider;
+
+ Get["/", true] = async (x, ct) => await GetCustomDonationUrl(pr);
+ }
+
+ private ICacheProvider Cache { get; }
+
+ private static Logger Log = LogManager.GetCurrentClassLogger();
+
+ private async Task GetCustomDonationUrl(ISettingsService pr)
+ {
+ PlexRequestSettings settings = await pr.GetSettingsAsync();
+ try
+ {
+ if (settings.EnableCustomDonationUrl)
+ {
+ return Response.AsJson(new { url = settings.CustomDonationUrl, message = settings.CustomDonationMessage });
+ }
+ else
+ {
+ return Response.AsJson(new { url = settings.CustomDonationUrl, message = settings.CustomDonationMessage });
+ }
+ }
+ catch (Exception e)
+ {
+ Log.Warn("Exception Thrown when attempting to check the custom donation url");
+ Log.Warn(e);
+ return Response.AsJson(new { url = settings.CustomDonationUrl, message = settings.CustomDonationMessage });
+ }
+ }
+ }
+
+}
diff --git a/PlexRequests.UI/PlexRequests.UI.csproj b/PlexRequests.UI/PlexRequests.UI.csproj
index 1df11b208..bd88121f2 100644
--- a/PlexRequests.UI/PlexRequests.UI.csproj
+++ b/PlexRequests.UI/PlexRequests.UI.csproj
@@ -248,6 +248,7 @@
+
diff --git a/PlexRequests.UI/Resources/UI.resx b/PlexRequests.UI/Resources/UI.resx
index 4f23fce97..883e20be1 100644
--- a/PlexRequests.UI/Resources/UI.resx
+++ b/PlexRequests.UI/Resources/UI.resx
@@ -443,4 +443,7 @@
View In Plex
+
+ Donate to Library Maintainer
+
\ No newline at end of file
diff --git a/PlexRequests.UI/Resources/UI1.Designer.cs b/PlexRequests.UI/Resources/UI1.Designer.cs
index 6cd282c32..acb53c9bb 100644
--- a/PlexRequests.UI/Resources/UI1.Designer.cs
+++ b/PlexRequests.UI/Resources/UI1.Designer.cs
@@ -114,6 +114,15 @@ namespace PlexRequests.UI.Resources {
}
}
+ ///
+ /// Looks up a localized string similar to Donate to Library Maintainer.
+ ///
+ public static string Custom_Donation_Default {
+ get {
+ return ResourceManager.GetString("Custom_Donation_Default", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to Issue.
///
diff --git a/PlexRequests.UI/Views/Admin/Settings.cshtml b/PlexRequests.UI/Views/Admin/Settings.cshtml
index 386b209c8..8ed022ee8 100644
--- a/PlexRequests.UI/Views/Admin/Settings.cshtml
+++ b/PlexRequests.UI/Views/Admin/Settings.cshtml
@@ -273,10 +273,38 @@
}
+
+
+
+
- A comma separated list of users whose requests do not require approval (These users also do not have a request limit).
+
+ A comma separated list of users whose requests do not require approval (These users also do not have a request limit).
+
\ No newline at end of file
diff --git a/README.md b/README.md
index 7343239f6..b99ba072d 100644
--- a/README.md
+++ b/README.md
@@ -40,6 +40,7 @@ Supported notifications:
* Pushbullet
* Pushover
* Slack
+* Weekly Recently Added email notification to all of your Plex Users!
# Preview
diff --git a/appveyor.yml b/appveyor.yml
index 6c9824580..7282f9b16 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -3,9 +3,9 @@ configuration: Release
assembly_info:
patch: true
file: '**\AssemblyInfo.*'
- assembly_version: '1.9.2'
+ assembly_version: '1.9.3'
assembly_file_version: '{version}'
- assembly_informational_version: '1.9.2'
+ assembly_informational_version: '1.9.3'
before_build:
- cmd: appveyor-retry nuget restore
build:
|