aboutsummaryrefslogtreecommitdiff
path: root/src/site/components/home
diff options
context:
space:
mode:
authorPitu <[email protected]>2019-03-02 02:45:31 +0900
committerPitu <[email protected]>2019-03-02 02:45:31 +0900
commit0ed4624dd0da047d6a7f1f2330541a5788d574b8 (patch)
tree22bd361e0bca031ba4a53e7c4f3a729e426a47a9 /src/site/components/home
parentEnviroment variables parsing fix (diff)
downloadhost.fuwn.me-0ed4624dd0da047d6a7f1f2330541a5788d574b8.tar.xz
host.fuwn.me-0ed4624dd0da047d6a7f1f2330541a5788d574b8.zip
Allow downloading shareX config file
Diffstat (limited to 'src/site/components/home')
-rw-r--r--src/site/components/home/links/Links.vue36
1 files changed, 34 insertions, 2 deletions
diff --git a/src/site/components/home/links/Links.vue b/src/site/components/home/links/Links.vue
index 0a5f218..8668fda 100644
--- a/src/site/components/home/links/Links.vue
+++ b/src/site/components/home/links/Links.vue
@@ -72,7 +72,9 @@
<p class="bd-footer-subtitle">Deploy your own lolisafe</p>
</header>
</a>
- <div class="link">
+ <div v-if="loggedIn"
+ class="link"
+ @click="createShareXThing">
<header class="bd-footer-star-header">
<h4 class="bd-footer-title">ShareX</h4>
<p class="bd-footer-subtitle">Upload from your Desktop</p>
@@ -96,5 +98,35 @@
</div>
</template>
<script>
-export default {};
+import { saveAs } from 'file-saver';
+export default {
+ computed: {
+ loggedIn() {
+ return this.$store.state.loggedIn;
+ },
+ token() {
+ return this.$store.state.token;
+ }
+ },
+ methods: {
+ createShareXThing() {
+ const sharexFile = `{
+ "Name": "${location.hostname}",
+ "DestinationType": "ImageUploader, FileUploader",
+ "RequestType": "POST",
+ "RequestURL": "${location.origin}/api/upload",
+ "FileFormName": "file",
+ "Headers": {
+ "authorization": "${this.token}",
+ "accept": "application/vnd.lolisafe.json"
+ },
+ "ResponseType": "Text",
+ "URL": "$json:url$",
+ "ThumbnailURL": "$json:url$"
+ }`;
+ const sharexBlob = new Blob([sharexFile], { type: 'application/octet-binary' });
+ saveAs(sharexBlob, `${location.hostname}.sxcu`);
+ }
+ }
+};
</script>