From 943fe21054da769f2c2f0c9fcffe0a908e896bfb Mon Sep 17 00:00:00 2001 From: Jaex Date: Thu, 5 Jul 2018 19:22:26 +0300 Subject: [PATCH] Remove prefix automatically from Firebase domain --- .../FirebaseDynamicLinksURLShortener.cs | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/ShareX.UploadersLib/URLShorteners/FirebaseDynamicLinksURLShortener.cs b/ShareX.UploadersLib/URLShorteners/FirebaseDynamicLinksURLShortener.cs index d06dc450b..130606131 100644 --- a/ShareX.UploadersLib/URLShorteners/FirebaseDynamicLinksURLShortener.cs +++ b/ShareX.UploadersLib/URLShorteners/FirebaseDynamicLinksURLShortener.cs @@ -26,6 +26,7 @@ You should have received a copy of the GNU General Public License /* https://github.com/matthewburnett */ using Newtonsoft.Json; +using ShareX.HelpersLib; using ShareX.UploadersLib.Properties; using System.Collections.Generic; using System.Drawing; @@ -60,7 +61,7 @@ public override URLShortener CreateShortener(UploadersConfig config, TaskReferen public class FirebaseRequest { public DynamicLinkInfo dynamicLinkInfo { get; set; } - public Suffix suffix { get; set; } + public FirebaseSuffix suffix { get; set; } } public class DynamicLinkInfo @@ -69,7 +70,7 @@ public class DynamicLinkInfo public string link { get; set; } } - public class Suffix + public class FirebaseSuffix { public string option { get; set; } } @@ -94,7 +95,7 @@ public override UploadResult ShortenURL(string url) { dynamicLinkInfo = new DynamicLinkInfo { - dynamicLinkDomain = DynamicLinkDomain, + dynamicLinkDomain = URLHelpers.RemovePrefixes(DynamicLinkDomain), link = url } }; @@ -108,7 +109,7 @@ public override UploadResult ShortenURL(string url) if (IsShort) { - request.suffix = new Suffix + request.suffix = new FirebaseSuffix { option = "SHORT" }; @@ -117,7 +118,13 @@ public override UploadResult ShortenURL(string url) string requestjson = JsonConvert.SerializeObject(request); result.Response = SendRequest(HttpMethod.POST, requesturl, requestjson, ContentTypeJSON, args); - result.ShortenedURL = JsonConvert.DeserializeObject(result.Response).shortLink; + + FirebaseResponse firebaseResponse = JsonConvert.DeserializeObject(result.Response); + + if (firebaseResponse != null) + { + result.ShortenedURL = firebaseResponse.shortLink; + } return result; }