mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-02 18:26:27 +13:00
Add new image uploader (imgland.net)
This commit is contained in:
parent
353380a669
commit
024cfed7ed
5 changed files with 48 additions and 1 deletions
|
@ -83,6 +83,7 @@ ShareX supports the following destinations.
|
|||
* [Twitter](https://twitter.com)
|
||||
* [Chevereto](https://chevereto.com)
|
||||
* [vgy.me](http://vgy.me)
|
||||
* [Imgland](http://imgland.net)
|
||||
* [SomeImage](https://someimage.com)
|
||||
* Custom image uploader
|
||||
* File uploader
|
||||
|
@ -139,7 +140,6 @@ ShareX supports the following destinations.
|
|||
* [tinyurl.com](http://tinyurl.com)
|
||||
* [turl.ca](http://turl.ca)
|
||||
* [yourls.org](http://yourls.org)
|
||||
* [nl.cm](http://nl.cm)
|
||||
* [adf.ly](https://adf.ly)
|
||||
* [coinurl.com](https://coinurl.com)
|
||||
* [qr.net](http://qr.net)
|
||||
|
|
|
@ -50,6 +50,8 @@ public enum ImageDestination
|
|||
Vgyme,
|
||||
[Description("SomeImage")]
|
||||
SomeImage,
|
||||
[Description("Imgland")]
|
||||
Imgland,
|
||||
CustomImageUploader, // Localized
|
||||
FileUploader // Localized
|
||||
}
|
||||
|
|
41
ShareX.UploadersLib/ImageUploaders/ImglandUploader.cs
Normal file
41
ShareX.UploadersLib/ImageUploaders/ImglandUploader.cs
Normal file
|
@ -0,0 +1,41 @@
|
|||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace ShareX.UploadersLib.ImageUploaders
|
||||
{
|
||||
public sealed class ImglandUploader : ImageUploader
|
||||
{
|
||||
public override UploadResult Upload(Stream stream, string fileName)
|
||||
{
|
||||
string uploadUrl = "http://www.imgland.net/process.php?subAPI=mainsite";
|
||||
Dictionary<string, string> arguments = new Dictionary<string, string>();
|
||||
arguments.Add("usubmit", "true");
|
||||
|
||||
UploadResult result = UploadData(stream, uploadUrl, fileName, "imagefile[]", arguments);
|
||||
|
||||
if (result.IsSuccess)
|
||||
{
|
||||
ImglandResponse response = JsonConvert.DeserializeObject<ImglandResponse>(result.Response);
|
||||
|
||||
if (!string.IsNullOrEmpty(response.Url))
|
||||
{
|
||||
result.URL = response.Url;
|
||||
}
|
||||
else
|
||||
{
|
||||
Errors.Add(string.IsNullOrEmpty(response.Status) ? "Unknown error." : response.Status);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
public class ImglandResponse
|
||||
{
|
||||
public string Status { get; set; }
|
||||
public string FileName { get; set; }
|
||||
public string Url { get; set; }
|
||||
}
|
||||
}
|
|
@ -207,6 +207,7 @@
|
|||
<Compile Include="HelperClasses\OAuth\IOAuthBase.cs" />
|
||||
<Compile Include="ImageUploaders\Chevereto.cs" />
|
||||
<Compile Include="ImageUploaders\CheveretoUploader.cs" />
|
||||
<Compile Include="ImageUploaders\ImglandUploader.cs" />
|
||||
<Compile Include="ImageUploaders\SomeImage.cs" />
|
||||
<Compile Include="ImageUploaders\VgymeUploader.cs" />
|
||||
<Compile Include="TextUploaders\Hastebin.cs" />
|
||||
|
|
|
@ -837,6 +837,9 @@ public UploadResult UploadImage(Stream stream, string fileName)
|
|||
DirectURL = Program.UploadersConfig.SomeImageDirectURL
|
||||
};
|
||||
break;
|
||||
case ImageDestination.Imgland:
|
||||
imageUploader = new ImglandUploader();
|
||||
break;
|
||||
case ImageDestination.CustomImageUploader:
|
||||
CustomUploaderItem customUploader = GetCustomUploader(Program.UploadersConfig.CustomImageUploaderSelected);
|
||||
if (customUploader != null)
|
||||
|
|
Loading…
Reference in a new issue