mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-01 09:47:22 +13:00
Added check box to make direct URL for SeaFile
This commit is contained in:
parent
22943c2429
commit
f2254f9098
5 changed files with 72 additions and 0 deletions
|
@ -58,6 +58,7 @@ public override GenericUploader CreateUploader(UploadersConfig config, TaskRefer
|
||||||
ShareDaysToExpire = config.SeafileShareDaysToExpire,
|
ShareDaysToExpire = config.SeafileShareDaysToExpire,
|
||||||
SharePassword = config.SeafileSharePassword,
|
SharePassword = config.SeafileSharePassword,
|
||||||
CreateShareableURL = config.SeafileCreateShareableURL,
|
CreateShareableURL = config.SeafileCreateShareableURL,
|
||||||
|
CreateShareableURLDirect = config.SeafileCreateShareableURLDirect,
|
||||||
IgnoreInvalidCert = config.SeafileIgnoreInvalidCert
|
IgnoreInvalidCert = config.SeafileIgnoreInvalidCert
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -76,6 +77,7 @@ public sealed class Seafile : FileUploader
|
||||||
public int ShareDaysToExpire { get; set; }
|
public int ShareDaysToExpire { get; set; }
|
||||||
public string SharePassword { get; set; }
|
public string SharePassword { get; set; }
|
||||||
public bool CreateShareableURL { get; set; }
|
public bool CreateShareableURL { get; set; }
|
||||||
|
public bool CreateShareableURLDirect { get; set; }
|
||||||
public bool IgnoreInvalidCert { get; set; }
|
public bool IgnoreInvalidCert { get; set; }
|
||||||
|
|
||||||
public Seafile(string apiurl, string authtoken, string repoid)
|
public Seafile(string apiurl, string authtoken, string repoid)
|
||||||
|
@ -450,6 +452,15 @@ public override UploadResult Upload(Stream stream, string fileName)
|
||||||
{
|
{
|
||||||
AllowReportProgress = false;
|
AllowReportProgress = false;
|
||||||
result.URL = ShareFile(Path + fileName);
|
result.URL = ShareFile(Path + fileName);
|
||||||
|
|
||||||
|
if (CreateShareableURLDirect)
|
||||||
|
{
|
||||||
|
var uriBuilder = new UriBuilder(result.URL);
|
||||||
|
var query = System.Web.HttpUtility.ParseQueryString(uriBuilder.Query);
|
||||||
|
query["raw"] = "1";
|
||||||
|
uriBuilder.Query = query.ToString();
|
||||||
|
result.URL = $"{uriBuilder.Scheme}://{uriBuilder.Host}{uriBuilder.Path}{uriBuilder.Query}";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -425,6 +425,7 @@ private void InitializeComponent()
|
||||||
this.lblSeafilePassword = new System.Windows.Forms.Label();
|
this.lblSeafilePassword = new System.Windows.Forms.Label();
|
||||||
this.cbSeafileIgnoreInvalidCert = new System.Windows.Forms.CheckBox();
|
this.cbSeafileIgnoreInvalidCert = new System.Windows.Forms.CheckBox();
|
||||||
this.cbSeafileCreateShareableURL = new System.Windows.Forms.CheckBox();
|
this.cbSeafileCreateShareableURL = new System.Windows.Forms.CheckBox();
|
||||||
|
this.cbSeafileCreateShareableURLDirect = new System.Windows.Forms.CheckBox();
|
||||||
this.txtSeafileAuthToken = new System.Windows.Forms.TextBox();
|
this.txtSeafileAuthToken = new System.Windows.Forms.TextBox();
|
||||||
this.lblSeafileAuthToken = new System.Windows.Forms.Label();
|
this.lblSeafileAuthToken = new System.Windows.Forms.Label();
|
||||||
this.lblSeafileAPIURL = new System.Windows.Forms.Label();
|
this.lblSeafileAPIURL = new System.Windows.Forms.Label();
|
||||||
|
@ -3177,6 +3178,7 @@ private void InitializeComponent()
|
||||||
this.tpSeafile.Controls.Add(this.grpSeafileObtainAuthToken);
|
this.tpSeafile.Controls.Add(this.grpSeafileObtainAuthToken);
|
||||||
this.tpSeafile.Controls.Add(this.cbSeafileIgnoreInvalidCert);
|
this.tpSeafile.Controls.Add(this.cbSeafileIgnoreInvalidCert);
|
||||||
this.tpSeafile.Controls.Add(this.cbSeafileCreateShareableURL);
|
this.tpSeafile.Controls.Add(this.cbSeafileCreateShareableURL);
|
||||||
|
this.tpSeafile.Controls.Add(this.cbSeafileCreateShareableURLDirect);
|
||||||
this.tpSeafile.Controls.Add(this.txtSeafileAuthToken);
|
this.tpSeafile.Controls.Add(this.txtSeafileAuthToken);
|
||||||
this.tpSeafile.Controls.Add(this.lblSeafileAuthToken);
|
this.tpSeafile.Controls.Add(this.lblSeafileAuthToken);
|
||||||
this.tpSeafile.Controls.Add(this.lblSeafileAPIURL);
|
this.tpSeafile.Controls.Add(this.lblSeafileAPIURL);
|
||||||
|
@ -3427,6 +3429,13 @@ private void InitializeComponent()
|
||||||
this.cbSeafileCreateShareableURL.UseVisualStyleBackColor = true;
|
this.cbSeafileCreateShareableURL.UseVisualStyleBackColor = true;
|
||||||
this.cbSeafileCreateShareableURL.CheckedChanged += new System.EventHandler(this.cbSeafileCreateShareableURL_CheckedChanged);
|
this.cbSeafileCreateShareableURL.CheckedChanged += new System.EventHandler(this.cbSeafileCreateShareableURL_CheckedChanged);
|
||||||
//
|
//
|
||||||
|
// cbSeafileCreateShareableURLDirect
|
||||||
|
//
|
||||||
|
resources.ApplyResources(this.cbSeafileCreateShareableURLDirect, "cbSeafileCreateShareableURLDirect");
|
||||||
|
this.cbSeafileCreateShareableURLDirect.Name = "cbSeafileCreateShareableURLDirect";
|
||||||
|
this.cbSeafileCreateShareableURLDirect.UseVisualStyleBackColor = true;
|
||||||
|
this.cbSeafileCreateShareableURLDirect.CheckedChanged += new System.EventHandler(this.cbSeafileCreateShareableURLDirect_CheckedChanged);
|
||||||
|
//
|
||||||
// txtSeafileAuthToken
|
// txtSeafileAuthToken
|
||||||
//
|
//
|
||||||
resources.ApplyResources(this.txtSeafileAuthToken, "txtSeafileAuthToken");
|
resources.ApplyResources(this.txtSeafileAuthToken, "txtSeafileAuthToken");
|
||||||
|
@ -5309,6 +5318,7 @@ private void InitializeComponent()
|
||||||
private System.Windows.Forms.Label lblSeafilePassword;
|
private System.Windows.Forms.Label lblSeafilePassword;
|
||||||
private System.Windows.Forms.CheckBox cbSeafileIgnoreInvalidCert;
|
private System.Windows.Forms.CheckBox cbSeafileIgnoreInvalidCert;
|
||||||
private System.Windows.Forms.CheckBox cbSeafileCreateShareableURL;
|
private System.Windows.Forms.CheckBox cbSeafileCreateShareableURL;
|
||||||
|
private System.Windows.Forms.CheckBox cbSeafileCreateShareableURLDirect;
|
||||||
private System.Windows.Forms.TextBox txtSeafileAuthToken;
|
private System.Windows.Forms.TextBox txtSeafileAuthToken;
|
||||||
private System.Windows.Forms.Label lblSeafileAuthToken;
|
private System.Windows.Forms.Label lblSeafileAuthToken;
|
||||||
private System.Windows.Forms.Label lblSeafileAPIURL;
|
private System.Windows.Forms.Label lblSeafileAPIURL;
|
||||||
|
|
|
@ -639,6 +639,8 @@ private void LoadFileUploaderSettings()
|
||||||
txtSeafileLibraryPassword.ReadOnly = Config.SeafileIsLibraryEncrypted;
|
txtSeafileLibraryPassword.ReadOnly = Config.SeafileIsLibraryEncrypted;
|
||||||
btnSeafileLibraryPasswordValidate.Enabled = !Config.SeafileIsLibraryEncrypted;
|
btnSeafileLibraryPasswordValidate.Enabled = !Config.SeafileIsLibraryEncrypted;
|
||||||
cbSeafileCreateShareableURL.Checked = Config.SeafileCreateShareableURL;
|
cbSeafileCreateShareableURL.Checked = Config.SeafileCreateShareableURL;
|
||||||
|
cbSeafileCreateShareableURLDirect.Checked = Config.SeafileCreateShareableURLDirect;
|
||||||
|
cbSeafileCreateShareableURLDirect.Enabled = cbSeafileCreateShareableURL.Checked;
|
||||||
cbSeafileIgnoreInvalidCert.Checked = Config.SeafileIgnoreInvalidCert;
|
cbSeafileIgnoreInvalidCert.Checked = Config.SeafileIgnoreInvalidCert;
|
||||||
nudSeafileExpireDays.SetValue(Config.SeafileShareDaysToExpire);
|
nudSeafileExpireDays.SetValue(Config.SeafileShareDaysToExpire);
|
||||||
txtSeafileSharePassword.Text = Config.SeafileSharePassword;
|
txtSeafileSharePassword.Text = Config.SeafileSharePassword;
|
||||||
|
@ -2596,6 +2598,12 @@ private void btnSeafileGetAuthToken_Click(object sender, EventArgs e)
|
||||||
private void cbSeafileCreateShareableURL_CheckedChanged(object sender, EventArgs e)
|
private void cbSeafileCreateShareableURL_CheckedChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
Config.SeafileCreateShareableURL = cbSeafileCreateShareableURL.Checked;
|
Config.SeafileCreateShareableURL = cbSeafileCreateShareableURL.Checked;
|
||||||
|
cbSeafileCreateShareableURLDirect.Enabled = cbSeafileCreateShareableURL.Checked;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void cbSeafileCreateShareableURLDirect_CheckedChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Config.SeafileCreateShareableURLDirect = cbSeafileCreateShareableURLDirect.Checked;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void cbSeafileIgnoreInvalidCert_CheckedChanged(object sender, EventArgs e)
|
private void cbSeafileIgnoreInvalidCert_CheckedChanged(object sender, EventArgs e)
|
||||||
|
|
|
@ -13085,6 +13085,18 @@ when you made the application key.</value>
|
||||||
<data name=">>cbSeafileCreateShareableURL.ZOrder" xml:space="preserve">
|
<data name=">>cbSeafileCreateShareableURL.ZOrder" xml:space="preserve">
|
||||||
<value>17</value>
|
<value>17</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.Name" xml:space="preserve">
|
||||||
|
<value>cbSeafileCreateShareableURLDirect</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.Parent" xml:space="preserve">
|
||||||
|
<value>tpSeafile</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.ZOrder" xml:space="preserve">
|
||||||
|
<value>17</value>
|
||||||
|
</data>
|
||||||
<data name=">>txtSeafileAuthToken.Name" xml:space="preserve">
|
<data name=">>txtSeafileAuthToken.Name" xml:space="preserve">
|
||||||
<value>txtSeafileAuthToken</value>
|
<value>txtSeafileAuthToken</value>
|
||||||
</data>
|
</data>
|
||||||
|
@ -14169,6 +14181,36 @@ Using an encrypted library disables sharing.</value>
|
||||||
<data name=">>cbSeafileCreateShareableURL.ZOrder" xml:space="preserve">
|
<data name=">>cbSeafileCreateShareableURL.ZOrder" xml:space="preserve">
|
||||||
<value>17</value>
|
<value>17</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="cbSeafileCreateShareableURLDirect.AutoSize" type="System.Boolean, mscorlib">
|
||||||
|
<value>True</value>
|
||||||
|
</data>
|
||||||
|
<data name="cbSeafileCreateShareableURLDirect.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
|
||||||
|
<value>NoControl</value>
|
||||||
|
</data>
|
||||||
|
<data name="cbSeafileCreateShareableURLDirect.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
|
<value>160, 103</value>
|
||||||
|
</data>
|
||||||
|
<data name="cbSeafileCreateShareableURLDirect.Size" type="System.Drawing.Size, System.Drawing">
|
||||||
|
<value>131, 17</value>
|
||||||
|
</data>
|
||||||
|
<data name="cbSeafileCreateShareableURLDirect.TabIndex" type="System.Int32, mscorlib">
|
||||||
|
<value>8</value>
|
||||||
|
</data>
|
||||||
|
<data name="cbSeafileCreateShareableURLDirect.Text" xml:space="preserve">
|
||||||
|
<value>Direct URL</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.Name" xml:space="preserve">
|
||||||
|
<value>cbSeafileCreateShareableURLDirect</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.Type" xml:space="preserve">
|
||||||
|
<value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.Parent" xml:space="preserve">
|
||||||
|
<value>tpSeafile</value>
|
||||||
|
</data>
|
||||||
|
<data name=">>cbSeafileCreateShareableURLDirect.ZOrder" xml:space="preserve">
|
||||||
|
<value>17</value>
|
||||||
|
</data>
|
||||||
<data name="txtSeafileAuthToken.Location" type="System.Drawing.Point, System.Drawing">
|
<data name="txtSeafileAuthToken.Location" type="System.Drawing.Point, System.Drawing">
|
||||||
<value>16, 77</value>
|
<value>16, 77</value>
|
||||||
</data>
|
</data>
|
||||||
|
|
|
@ -359,6 +359,7 @@ public class UploadersConfig : SettingsBase<UploadersConfig>
|
||||||
public bool SeafileIsLibraryEncrypted = false;
|
public bool SeafileIsLibraryEncrypted = false;
|
||||||
public string SeafileEncryptedLibraryPassword = "";
|
public string SeafileEncryptedLibraryPassword = "";
|
||||||
public bool SeafileCreateShareableURL = true;
|
public bool SeafileCreateShareableURL = true;
|
||||||
|
public bool SeafileCreateShareableURLDirect = false;
|
||||||
public bool SeafileIgnoreInvalidCert = false;
|
public bool SeafileIgnoreInvalidCert = false;
|
||||||
public int SeafileShareDaysToExpire = 0;
|
public int SeafileShareDaysToExpire = 0;
|
||||||
public string SeafileSharePassword = "";
|
public string SeafileSharePassword = "";
|
||||||
|
|
Loading…
Reference in a new issue