mirror of
https://github.com/BobbyWibowo/lolisafe.git
synced 2025-01-19 01:31:34 +00:00
Improved FAQ page by a lot
Added categories Added more questions (including link to my brand new Patreon) Added a floating button to return to the homepage uploader A bit of CSS prettifying (style.css)
This commit is contained in:
parent
325ccfac81
commit
049b41f7ea
2
dist/css/style.css
vendored
2
dist/css/style.css
vendored
@ -1,2 +1,2 @@
|
||||
html{background-color:#000;overflow-y:auto}body{color:#eff0f1;-webkit-animation:fadeInOpacity .5s;animation:fadeInOpacity .5s}@-webkit-keyframes fadeInOpacity{0%{opacity:0}to{opacity:1}}@keyframes fadeInOpacity{0%{opacity:0}to{opacity:1}}a{color:#209cee}a:hover{color:#67c3ff}hr{background-color:#585858}.message-body code,code{background-color:#000;border-radius:5px}.title{color:#eff0f1}.subtitle,.subtitle strong{color:#bdc3c7}.input,.select select,.textarea{color:#eff0f1;border-color:#585858;background-color:#000}.input::-moz-placeholder,.textarea::-moz-placeholder{color:#bdc3c7}.input::-webkit-input-placeholder,.textarea::-webkit-input-placeholder{color:#bdc3c7}.input:-moz-placeholder,.textarea:-moz-placeholder{color:#bdc3c7}.input:-ms-input-placeholder,.textarea:-ms-input-placeholder{color:#bdc3c7}.input.is-active,.input.is-focused,.input:active,.input:focus,.input:not([disabled]):hover,.select fieldset:not([disabled]) select:hover,.select select:not([disabled]):hover,.textarea.is-active,.textarea.is-focused,.textarea:active,.textarea:focus,.textarea:not([disabled]):hover,fieldset:not([disabled]) .input:hover,fieldset:not([disabled]) .select select:hover,fieldset:not([disabled]) .textarea:hover{border-color:#209cee}.input[disabled],.select fieldset[disabled] select,.select select[disabled],.textarea[disabled],fieldset[disabled] .input,fieldset[disabled] .select select,fieldset[disabled] .textarea{border-color:#585858;background-color:#2f2f2f}.label{color:#eff0f1;font-weight:400}.help{color:#bdc3c7}.progress{background-color:#585858}.button.is-info.is-hovered [class*=" icon-"]:before,.button.is-info.is-hovered [class^=icon-]:before,.button.is-info:hover [class*=" icon-"]:before,.button.is-info:hover [class^=icon-]:before{fill:#fff}.checkbox:hover,.radio:hover{color:#7f8c8d}.select:not(.is-multiple):not(.is-loading):after,.select:not(.is-multiple):not(.is-loading):hover:after{border-color:#eff0f1}.select select[disabled]:hover,fieldset[disabled] .select select:hover{border-color:#585858}.message{background-color:#2f2f2f}.message-body{color:#eff0f1;border:0}.hero.is-fullheight>.hero-body{min-height:100vh;height:100%}.hero.is-fullheight>.hero-body>.container{width:100%}
|
||||
html{background-color:#000;overflow-y:auto}body{color:#eff0f1;-webkit-animation:fadeInOpacity .5s;animation:fadeInOpacity .5s}@-webkit-keyframes fadeInOpacity{0%{opacity:0}to{opacity:1}}@keyframes fadeInOpacity{0%{opacity:0}to{opacity:1}}a{color:#209cee}a:hover{color:#67c3ff}hr{background-color:#585858}.message-body code,code{background-color:#000;border-radius:5px}.subtitle,.subtitle strong{color:#bdc3c7}.subtitle.is-brighter,.title{color:#eff0f1}.input,.select select,.textarea{color:#eff0f1;border-color:#585858;background-color:#000}.input::-moz-placeholder,.textarea::-moz-placeholder{color:#bdc3c7}.input::-webkit-input-placeholder,.textarea::-webkit-input-placeholder{color:#bdc3c7}.input:-moz-placeholder,.textarea:-moz-placeholder{color:#bdc3c7}.input:-ms-input-placeholder,.textarea:-ms-input-placeholder{color:#bdc3c7}.input.is-active,.input.is-focused,.input:active,.input:focus,.input:not([disabled]):hover,.select fieldset:not([disabled]) select:hover,.select select:not([disabled]):hover,.textarea.is-active,.textarea.is-focused,.textarea:active,.textarea:focus,.textarea:not([disabled]):hover,fieldset:not([disabled]) .input:hover,fieldset:not([disabled]) .select select:hover,fieldset:not([disabled]) .textarea:hover{border-color:#209cee}.input[disabled],.select fieldset[disabled] select,.select select[disabled],.textarea[disabled],fieldset[disabled] .input,fieldset[disabled] .select select,fieldset[disabled] .textarea{border-color:#585858;background-color:#2f2f2f}.label{color:#eff0f1;font-weight:400}.help{color:#bdc3c7}.progress{background-color:#585858}.button.is-info.is-hovered [class*=" icon-"]:before,.button.is-info.is-hovered [class^=icon-]:before,.button.is-info:hover [class*=" icon-"]:before,.button.is-info:hover [class^=icon-]:before{fill:#fff}.checkbox:hover,.radio:hover{color:#7f8c8d}.select:not(.is-multiple):not(.is-loading):after,.select:not(.is-multiple):not(.is-loading):hover:after{border-color:#eff0f1}.select select[disabled]:hover,fieldset[disabled] .select select:hover{border-color:#585858}.message{background-color:#2f2f2f}.message-body{color:#eff0f1;border:0}.message-body div.is-spaced{margin-top:.5em}.section.has-extra-bottom-padding{padding-bottom:6.5rem}a.floating-home-button{display:flex;position:fixed;right:1.5rem;bottom:1.5rem;border-radius:100%;background-color:#209cee;color:#fff;width:3.5rem;height:3.5rem;justify-content:center;align-items:center;transition:background-color .25s}a.floating-home-button:hover{background-color:#67c3ff;color:#fff}a.floating-home-button>.icon{margin-top:-2px}.hero.is-fullheight>.hero-body{min-height:100vh;height:100%}.hero.is-fullheight>.hero-body>.container{width:100%}
|
||||
/*# sourceMappingURL=style.css.map */
|
||||
|
2
dist/css/style.css.map
vendored
2
dist/css/style.css.map
vendored
@ -1 +1 @@
|
||||
{"version":3,"sources":["css/style.css"],"names":[],"mappings":"AAAA,KACE,qBAAsB,CACtB,eACF,CAEA,KACE,aAAc,CACd,mCAA4B,CAA5B,2BACF,CAEA,iCACE,GACE,SACF,CAEA,GACE,SACF,CACF,CAEA,yBACE,GACE,SACF,CAEA,GACE,SACF,CACF,CAEA,EACE,aACF,CAEA,QACE,aACF,CAEA,GACE,wBACF,CAEA,wBAEE,qBAAsB,CACtB,iBACF,CAEA,OACE,aACF,CAMA,2BACE,aACF,CAEA,gCAGE,aAAc,CACd,oBAAqB,CACrB,qBACF,CAEA,qDAEE,aACF,CAEA,uEAEE,aACF,CAEA,mDAEE,aACF,CAEA,6DAEE,aACF,CAYA,qZAQE,oBACF,CAEA,yLAOE,oBAAqB,CACrB,wBACF,CAEA,OACE,aAAc,CACd,eACF,CAEA,MACE,aACF,CAEA,UACE,wBACF,CAEA,gMAIE,SACF,CAEA,6BAEE,aACF,CAMA,wGACE,oBACF,CAEA,uEAEE,oBACF,CAEA,SACE,wBACF,CAEA,cACE,aAAc,CACd,QACF,CAGA,+BACE,gBAAiB,CACjB,WACF,CAGA,0CACE,UACF","file":"style.css","sourcesContent":["html {\n background-color: #000;\n overflow-y: auto\n}\n\nbody {\n color: #eff0f1;\n animation: fadeInOpacity 0.5s\n}\n\n@-webkit-keyframes fadeInOpacity {\n 0% {\n opacity: 0\n }\n\n 100% {\n opacity: 1\n }\n}\n\n@keyframes fadeInOpacity {\n 0% {\n opacity: 0\n }\n\n 100% {\n opacity: 1\n }\n}\n\na {\n color: #209cee\n}\n\na:hover {\n color: #67c3ff\n}\n\nhr {\n background-color: #585858\n}\n\ncode,\n.message-body code {\n background-color: #000;\n border-radius: 5px\n}\n\n.title {\n color: #eff0f1\n}\n\n.subtitle {\n color: #bdc3c7\n}\n\n.subtitle strong {\n color: #bdc3c7\n}\n\n.input,\n.select select,\n.textarea {\n color: #eff0f1;\n border-color: #585858;\n background-color: #000\n}\n\n.input::-moz-placeholder,\n.textarea::-moz-placeholder {\n color: #bdc3c7\n}\n\n.input::-webkit-input-placeholder,\n.textarea::-webkit-input-placeholder {\n color: #bdc3c7\n}\n\n.input:-moz-placeholder,\n.textarea:-moz-placeholder {\n color: #bdc3c7\n}\n\n.input:-ms-input-placeholder,\n.textarea:-ms-input-placeholder {\n color: #bdc3c7\n}\n\n.input:not([disabled]):hover,\n.select fieldset:not([disabled]) select:hover,\n.select select:not([disabled]):hover,\n.textarea:not([disabled]):hover,\nfieldset:not([disabled]) .input:hover,\nfieldset:not([disabled]) .select select:hover,\nfieldset:not([disabled]) .textarea:hover {\n border-color: #209cee\n}\n\n.input.is-active,\n.input.is-focused,\n.input:active,\n.input:focus,\n.textarea.is-active,\n.textarea.is-focused,\n.textarea:active,\n.textarea:focus {\n border-color: #209cee\n}\n\n.input[disabled],\n.select fieldset[disabled] select,\n.select select[disabled],\n.textarea[disabled],\nfieldset[disabled] .input,\nfieldset[disabled] .select select,\nfieldset[disabled] .textarea {\n border-color: #585858;\n background-color: #2f2f2f\n}\n\n.label {\n color: #eff0f1;\n font-weight: normal\n}\n\n.help {\n color: #bdc3c7\n}\n\n.progress {\n background-color: #585858\n}\n\n.button.is-info.is-hovered [class^=\"icon-\"]::before,\n.button.is-info.is-hovered [class*=\" icon-\"]::before,\n.button.is-info:hover [class^=\"icon-\"]::before,\n.button.is-info:hover [class*=\" icon-\"]::before {\n fill: #fff\n}\n\n.checkbox:hover,\n.radio:hover {\n color: #7f8c8d\n}\n\n.select:not(.is-multiple):not(.is-loading)::after {\n border-color: #eff0f1\n}\n\n.select:not(.is-multiple):not(.is-loading):hover::after {\n border-color: #eff0f1\n}\n\n.select select[disabled]:hover,\nfieldset[disabled] .select select:hover {\n border-color: #585858\n}\n\n.message {\n background-color: #2f2f2f\n}\n\n.message-body {\n color: #eff0f1;\n border: 0\n}\n\n/* https://github.com/philipwalton/flexbugs#flexbug-3 */\n.hero.is-fullheight > .hero-body {\n min-height: 100vh;\n height: 100%\n}\n\n/* https://github.com/philipwalton/flexbugs#flexbug-2 */\n.hero.is-fullheight > .hero-body > .container {\n width: 100%\n}\n"]}
|
||||
{"version":3,"sources":["css/style.css"],"names":[],"mappings":"AAAA,KACE,qBAAsB,CACtB,eACF,CAEA,KACE,aAAc,CACd,mCAA4B,CAA5B,2BACF,CAEA,iCACE,GACE,SACF,CAEA,GACE,SACF,CACF,CAEA,yBACE,GACE,SACF,CAEA,GACE,SACF,CACF,CAEA,EACE,aACF,CAEA,QACE,aACF,CAEA,GACE,wBACF,CAEA,wBAEE,qBAAsB,CACtB,iBACF,CAMA,2BACE,aACF,CAEA,6BAEE,aACF,CAEA,gCAGE,aAAc,CACd,oBAAqB,CACrB,qBACF,CAEA,qDAEE,aACF,CAEA,uEAEE,aACF,CAEA,mDAEE,aACF,CAEA,6DAEE,aACF,CAYA,qZAQE,oBACF,CAEA,yLAOE,oBAAqB,CACrB,wBACF,CAEA,OACE,aAAc,CACd,eACF,CAEA,MACE,aACF,CAEA,UACE,wBACF,CAEA,gMAIE,SACF,CAEA,6BAEE,aACF,CAMA,wGACE,oBACF,CAEA,uEAEE,oBACF,CAEA,SACE,wBACF,CAEA,cACE,aAAc,CACd,QACF,CAEA,4BACE,eACF,CAGA,kCACE,qBACF,CAEA,uBACE,YAAa,CACb,cAAe,CACf,YAAa,CACb,aAAc,CACd,kBAAmB,CACnB,wBAAyB,CACzB,UAAY,CACZ,YAAa,CACb,aAAc,CACd,sBAAuB,CACvB,kBAAmB,CACnB,gCACF,CAEA,6BACE,wBAAyB,CACzB,UACF,CAEA,6BACE,eACF,CAGA,+BACE,gBAAiB,CACjB,WACF,CAGA,0CACE,UACF","file":"style.css","sourcesContent":["html {\n background-color: #000;\n overflow-y: auto\n}\n\nbody {\n color: #eff0f1;\n animation: fadeInOpacity 0.5s\n}\n\n@-webkit-keyframes fadeInOpacity {\n 0% {\n opacity: 0\n }\n\n 100% {\n opacity: 1\n }\n}\n\n@keyframes fadeInOpacity {\n 0% {\n opacity: 0\n }\n\n 100% {\n opacity: 1\n }\n}\n\na {\n color: #209cee\n}\n\na:hover {\n color: #67c3ff\n}\n\nhr {\n background-color: #585858\n}\n\ncode,\n.message-body code {\n background-color: #000;\n border-radius: 5px\n}\n\n.subtitle {\n color: #bdc3c7\n}\n\n.subtitle strong {\n color: #bdc3c7\n}\n\n.title,\n.subtitle.is-brighter {\n color: #eff0f1\n}\n\n.input,\n.select select,\n.textarea {\n color: #eff0f1;\n border-color: #585858;\n background-color: #000\n}\n\n.input::-moz-placeholder,\n.textarea::-moz-placeholder {\n color: #bdc3c7\n}\n\n.input::-webkit-input-placeholder,\n.textarea::-webkit-input-placeholder {\n color: #bdc3c7\n}\n\n.input:-moz-placeholder,\n.textarea:-moz-placeholder {\n color: #bdc3c7\n}\n\n.input:-ms-input-placeholder,\n.textarea:-ms-input-placeholder {\n color: #bdc3c7\n}\n\n.input:not([disabled]):hover,\n.select fieldset:not([disabled]) select:hover,\n.select select:not([disabled]):hover,\n.textarea:not([disabled]):hover,\nfieldset:not([disabled]) .input:hover,\nfieldset:not([disabled]) .select select:hover,\nfieldset:not([disabled]) .textarea:hover {\n border-color: #209cee\n}\n\n.input.is-active,\n.input.is-focused,\n.input:active,\n.input:focus,\n.textarea.is-active,\n.textarea.is-focused,\n.textarea:active,\n.textarea:focus {\n border-color: #209cee\n}\n\n.input[disabled],\n.select fieldset[disabled] select,\n.select select[disabled],\n.textarea[disabled],\nfieldset[disabled] .input,\nfieldset[disabled] .select select,\nfieldset[disabled] .textarea {\n border-color: #585858;\n background-color: #2f2f2f\n}\n\n.label {\n color: #eff0f1;\n font-weight: normal\n}\n\n.help {\n color: #bdc3c7\n}\n\n.progress {\n background-color: #585858\n}\n\n.button.is-info.is-hovered [class^=\"icon-\"]::before,\n.button.is-info.is-hovered [class*=\" icon-\"]::before,\n.button.is-info:hover [class^=\"icon-\"]::before,\n.button.is-info:hover [class*=\" icon-\"]::before {\n fill: #fff\n}\n\n.checkbox:hover,\n.radio:hover {\n color: #7f8c8d\n}\n\n.select:not(.is-multiple):not(.is-loading)::after {\n border-color: #eff0f1\n}\n\n.select:not(.is-multiple):not(.is-loading):hover::after {\n border-color: #eff0f1\n}\n\n.select select[disabled]:hover,\nfieldset[disabled] .select select:hover {\n border-color: #585858\n}\n\n.message {\n background-color: #2f2f2f\n}\n\n.message-body {\n color: #eff0f1;\n border: 0\n}\n\n.message-body div.is-spaced {\n margin-top: 0.5em\n}\n\n/* floating button's bottom offset + height + bottom offset */\n.section.has-extra-bottom-padding {\n padding-bottom: 6.5rem\n}\n\na.floating-home-button {\n display: flex;\n position: fixed;\n right: 1.5rem;\n bottom: 1.5rem;\n border-radius: 100%;\n background-color: #209cee;\n color: white;\n width: 3.5rem;\n height: 3.5rem;\n justify-content: center;\n align-items: center;\n transition: background-color 0.25s\n}\n\na.floating-home-button:hover {\n background-color: #67c3ff;\n color: white\n}\n\na.floating-home-button > .icon {\n margin-top: -2px\n}\n\n/* https://github.com/philipwalton/flexbugs#flexbug-3 */\n.hero.is-fullheight > .hero-body {\n min-height: 100vh;\n height: 100%\n}\n\n/* https://github.com/philipwalton/flexbugs#flexbug-2 */\n.hero.is-fullheight > .hero-body > .container {\n width: 100%\n}\n"]}
|
@ -46,10 +46,6 @@ code,
|
||||
border-radius: 5px
|
||||
}
|
||||
|
||||
.title {
|
||||
color: #eff0f1
|
||||
}
|
||||
|
||||
.subtitle {
|
||||
color: #bdc3c7
|
||||
}
|
||||
@ -58,6 +54,11 @@ code,
|
||||
color: #bdc3c7
|
||||
}
|
||||
|
||||
.title,
|
||||
.subtitle.is-brighter {
|
||||
color: #eff0f1
|
||||
}
|
||||
|
||||
.input,
|
||||
.select select,
|
||||
.textarea {
|
||||
@ -165,6 +166,39 @@ fieldset[disabled] .select select:hover {
|
||||
border: 0
|
||||
}
|
||||
|
||||
.message-body div.is-spaced {
|
||||
margin-top: 0.5em
|
||||
}
|
||||
|
||||
/* floating button's bottom offset + height + bottom offset */
|
||||
.section.has-extra-bottom-padding {
|
||||
padding-bottom: 6.5rem
|
||||
}
|
||||
|
||||
a.floating-home-button {
|
||||
display: flex;
|
||||
position: fixed;
|
||||
right: 1.5rem;
|
||||
bottom: 1.5rem;
|
||||
border-radius: 100%;
|
||||
background-color: #209cee;
|
||||
color: white;
|
||||
width: 3.5rem;
|
||||
height: 3.5rem;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
transition: background-color 0.25s
|
||||
}
|
||||
|
||||
a.floating-home-button:hover {
|
||||
background-color: #67c3ff;
|
||||
color: white
|
||||
}
|
||||
|
||||
a.floating-home-button > .icon {
|
||||
margin-top: -2px
|
||||
}
|
||||
|
||||
/* https://github.com/philipwalton/flexbugs#flexbug-3 */
|
||||
.hero.is-fullheight > .hero-body {
|
||||
min-height: 100vh;
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"1": "1586281989",
|
||||
"1": "1586375918",
|
||||
"2": "1581416390",
|
||||
"3": "1581416390",
|
||||
"4": "1581416390",
|
||||
|
279
views/faq.njk
279
views/faq.njk
@ -8,11 +8,18 @@
|
||||
{% set extensionsFilterMode = config.extensionsFilterMode %}
|
||||
{% set extensionsFilter = config.extensionsFilter %}
|
||||
|
||||
{% block stylesheets %}
|
||||
{{ super() }}
|
||||
<link rel="stylesheet" href="libs/fontello/fontello.css{{ versions[1] }}">
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{{ super() }}
|
||||
<section class="section">
|
||||
<div class="container has-text-left">
|
||||
<h2 class='subtitle'>What is safe.fiery.me?</h2>
|
||||
<h1 class='title is-spaced'>General</h1>
|
||||
|
||||
<h2 class='subtitle is-brighter'>What is safe.fiery.me?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
This is a fork of <a href="https://github.com/WeebDev/lolisafe" target="_blank" rel="noopener">lolisafe</a>.<br>
|
||||
@ -20,118 +27,81 @@
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle'>Will you keep my files forever?</h2>
|
||||
<h2 class='subtitle is-brighter'>Are there any <strong>banned categories</strong>?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Unless I receive a copyright complain, or some other bullshit, I will.<br>
|
||||
Logs of taken down files can be found <a href="https://safe.fiery.me/takedowns" target="_blank">here</a>.<br>
|
||||
Banned categories are the following, <i>but not limited to</i>:<br>
|
||||
<strong>Child pornography.</strong><br>
|
||||
Virus/malware, or anything Google Safe Search would categorize as <i>unwanted software</i> *.<br>
|
||||
Copyrighted content. Meaning I will respond to copyright takedown notices,... <i>if any</i>.<br>
|
||||
<strong>Full-length episodes of anime or TV shows.</strong> These include <strong>audio files from CD dramas</strong>.<br>
|
||||
<br>
|
||||
However, we also have temporary uploads feature which will automatically delete your files after a certain period of time.<br>
|
||||
You can configure this feature through our homepage's Config tab.
|
||||
Any of such uploads, when found, will be purged immediately without any prior notice.<br>
|
||||
Repeat offenders will have their IPs permanently blocked from accessing <i>*.fiery.me</i> network.<br>
|
||||
For child pornography specifically, first offenders will immediately be blocked permanently.<br>
|
||||
<br>
|
||||
* When Google Safe Search detects <i>unwanted software</i>, Chrome's users will be warned whenever they want to download anything from <i>*.fiery.me</i>, that the site is <i>unsafe</i>.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle'>How can I keep track of my uploads?</h2>
|
||||
<h2 class='subtitle is-brighter'>Will you keep my uploads forever?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Simply create a user on the site and every upload will be associated with your account, granting you access to your uploaded files through our dashboard.<br>
|
||||
You will <strong>need</strong> to do this if you ever want to delete your own uploads in the future, unless you choose to use temporary uploads.
|
||||
Unless the uploads are included within the banned categories above, or some other bullshit, I will.<br>
|
||||
In case I have to take down any uploads, I will log their names and explanations in <a href="https://safe.fiery.me/takedowns" target="_blank">here</a>.<br>
|
||||
<br>
|
||||
Otherwise, we also have temporary uploads feature, with which you can have your uploads be automatically deleted after a period of time.<br>
|
||||
It is disabled by default, but you can configure it through our homepage uploader's Config tab.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle'>What are albums?</h2>
|
||||
<h2 class='subtitle is-brighter'>How can I keep track of my uploads?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Albums are a simple way of sorting uploads together.<br>
|
||||
You can then share public links to these albums, to allow everyone else to view a pretty listing of the uploads in them.<br>
|
||||
<br>
|
||||
As long as you are logged in, you can create albums through our homepage or dashboard,<br>
|
||||
then afterwards you can use them with our <a href="https://addons.mozilla.org/en-US/firefox/addon/lolisafe/" target="_blank" rel="noopener">Firefox extension</a> or <a href="https://chrome.google.com/webstore/detail/loli-safe-uploader/enkkmplljfjppcdaancckgilmgoiofnj" target="_blank" rel="noopener">Chrome extension</a>,<br>
|
||||
which will enable you to <strong>right click -> send file to safe</strong>, or to a desired album if you have any.<br>
|
||||
With the Chrome extension, you will have to manually set the domain in the extension's settings to <strong>https://safe.fiery.me</strong>.<br>
|
||||
<br>
|
||||
If you use a Linux desktop, we also have a bash uploader that supports uploading to albums.<br>
|
||||
You can learn more about it <a href="https://github.com/BobbyWibowo/uguush" target="_blank" rel="noopener">here</a>.
|
||||
Simply create a user on the site and every uploads will be associated with your account, granting you access to your uploads through our Dashboard.<br>
|
||||
You will <strong>have</strong> to do this if you ever want to delete your own uploads in the future, unless you choose to use the temporary uploads feature.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle'>Why should I use this?</h2>
|
||||
<h2 class='subtitle is-brighter'>What are albums?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Albums are a simple way of sorting/categorizing uploads together.<br>
|
||||
You can then share public links to these albums, to allow everyone else to view pretty listings of the uploads in them.<br>
|
||||
Albums can also be downloaded as Zip-archives containing all the uploads in the albums.<br>
|
||||
Both public links and download feature of albums can be toggled on/off from the Dashboard.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>Why should I use this?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
I don't know.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle'>I saw something too illegal for my tastes here, what should I do?</h2>
|
||||
<h2 class='subtitle is-brighter'>I saw something too illegal for my tastes here, what should I do?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Send a strongly worded email to <a href="mailto:bobby@fiery.me">bobby@fiery.me</a> and I will try to get back to you within <strong>48 hours</strong>.
|
||||
Send a strongly worded email to <a href="mailto:bobby@fiery.me">bobby@fiery.me</a> and I will try to get back to you within <strong>48 hours</strong>.<br>
|
||||
These include copyright takedown notices and reports about uploads violating banned categories.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle'>I found a bug! -or- I want to request a feature!</h2>
|
||||
<h2 class='subtitle is-brighter'>How can I support safe.fiery.me?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Feel free to create a GitHub issue <a href="https://github.com/BobbyWibowo/lolisafe/issues/new/choose" target="_blank" rel="noopener">here</a>.</br>
|
||||
Or if you don't want to use GitHub, you can also contact me through my email above.
|
||||
Thanks! You can become a patron on my <a href="https://www.patreon.com/bobbywibowo" target="_blank" rel="noopener">Patreon</a>!
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<h2 class='subtitle'>How do I delete my own account <strong>and</strong> all the uploads associated with it?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
For the time being, you will need to contact me through my email above.<br>
|
||||
A feature to delete your own account yourself is currently still being worked on.<br>
|
||||
Otherwise, if you don't mind a record of your username being left here, it should be easy to bulk delete all your uploads from the dashboard anyway.
|
||||
</div>
|
||||
</article>
|
||||
<section class="section">
|
||||
<div class="container has-text-left">
|
||||
<h1 class='title is-spaced'>Technical</h1>
|
||||
|
||||
<h2 class='subtitle'>Where is the server located at?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Paris, France.{#<br>
|
||||
We are using <a href="https://www.cloudflare.com/cdn/" target="_blank" rel="noopener">Cloudflare</a> though, so you can expect your uploads to be delivered quickly all over the world after they have been cached.#}
|
||||
</div>
|
||||
</article>
|
||||
|
||||
{#<h2 class='subtitle'>Since my uploads are cached, what about after I delete them from the dashboard?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
We will send API requests to Cloudflare to purge their cache immediately after you delete your uploads from the dashboard.<br>
|
||||
Cache of their thumbnails will also be purged, if applicable.
|
||||
</div>
|
||||
</article>#}
|
||||
|
||||
<h2 class='subtitle'>Do you have a No-JS uploader form?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Yes, check out <a href="nojs" target="_blank">this page</a>.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
{% if noJsMaxSizeInt and chunkSizeInt -%}
|
||||
<h2 class='subtitle'>Why is the maximum file size in the No-JS uploader form smaller?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
This site is using Cloudflare, which limits the maximum upload size.<br>
|
||||
Since the homepage uploader chunks your uploads through JS magic, it is possible to increase the maximum file size there.
|
||||
</div>
|
||||
</article>
|
||||
{%- endif %}
|
||||
|
||||
{% if chunkSizeInt -%}
|
||||
<h2 class='subtitle'>So your API supports chunked uploads?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Yes, the homepage uploader was coded to chunk uploads into {{ chunkSizeInt }} MB pieces by default (configurable through the homepage's Config tab).<br>
|
||||
If you want to chunk your API uploads, feel free to inspect the <a href="https://github.com/BobbyWibowo/lolisafe" target="_blank" rel="noopener">source code</a> to see how it works.<br>
|
||||
<br>
|
||||
A rough description of how it works is to simply upload the chunks with their UUID information attached, and then call the "finish chunks" API with the said UUID, to rebuild them into a single proper file.
|
||||
</div>
|
||||
</article>
|
||||
{%- endif %}
|
||||
|
||||
<h2 class='subtitle'>What are the allowed extensions here?</h2>
|
||||
<h2 class='subtitle is-brighter'>What are the allowed extensions here?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
{% if extensionsFilter.length -%}
|
||||
@ -139,16 +109,159 @@
|
||||
We only support the following extensions:
|
||||
{%- else -%}
|
||||
We support any file extensions, except the following:
|
||||
{%- endif -%}<br>
|
||||
{%- endif -%}
|
||||
{% set comma = joiner(' ') -%}
|
||||
{%- for extension in extensionsFilter -%}
|
||||
<div class="is-spaced">{%- for extension in extensionsFilter -%}
|
||||
{{ comma() }}<code>{{ extension }}</code>
|
||||
{%- endfor -%}
|
||||
{%- endfor -%}</div>
|
||||
{%- else -%}
|
||||
We support any file extensions.
|
||||
{%- endif %}
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>Why are my <strong>.htm/.html</strong> uploads being served as plain text?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
There had been too many phishing pages being uploaded in the past.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>Where is the server located?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Paris, <strong>France</strong>.{#<br>
|
||||
We are using <a href="https://www.cloudflare.com/cdn/" target="_blank" rel="noopener">Cloudflare</a> though, so you can expect your uploads to be delivered quickly all over the world after they have been cached.#}
|
||||
</div>
|
||||
</article>
|
||||
|
||||
{#<h2 class='subtitle is-brighter'>Since my uploads are cached, what about after I delete them from the dashboard?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
We will send API requests to Cloudflare to purge their cache immediately after you delete your uploads from the dashboard.<br>
|
||||
Cache of their thumbnails will also be purged, if applicable.
|
||||
</div>
|
||||
</article>#}
|
||||
|
||||
<h2 class='subtitle is-brighter'>Are there any Desktop clients?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
We do have some browser extensions:<br>
|
||||
<a href="https://addons.mozilla.org/en-US/firefox/addon/lolisafe/" target="_blank" rel="noopener">Firefox extension</a>. Maintained by me. Its GitHub repository is located <a href="https://github.com/BobbyWibowo/loli-safe-extension" target="_blank" rel="noopener">here</a>.<br>
|
||||
<a href="https://chrome.google.com/webstore/detail/loli-safe-uploader/enkkmplljfjppcdaancckgilmgoiofnj" target="_blank" rel="noopener">Chrome extension</a>. Maintained by lolisafe's team. Its GitHub repository is located <a href="https://github.com/WeebDev/loli-safe-extension" target="_blank" rel="noopener">here</a>.<br>
|
||||
With the Chrome extension specifically, you will have to manually set the domain in the extension's settings to <code>https://safe.fiery.me</code>.<br>
|
||||
<br>
|
||||
If you use Windows desktop, the safe support uploads from <a href="https://github.com/ShareX/ShareX" target="_blank" rel="noopener">ShareX</a>.<br>
|
||||
You can download the config file by clicking on the ShareX icon on the homepage.<br>
|
||||
When logged in, the config file will also be automatically populated with your account's token.<br>
|
||||
This will allow you to manage your ShareX uploads from our Dashboard.<br>
|
||||
<br>
|
||||
If you use Linux desktop, there is a compatible bash uploader which I also maintain.<br>
|
||||
You can learn more about it from <a href="https://github.com/BobbyWibowo/uguush" target="_blank" rel="noopener">its GitHub repository</a>.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>Do you have a No-JS uploader form?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
<a href="nojs" target="_blank"><strong>Yes!</strong></a>
|
||||
</div>
|
||||
</article>
|
||||
|
||||
{% if noJsMaxSizeInt and chunkSizeInt -%}
|
||||
<h2 class='subtitle is-brighter'>Why is the maximum file size in the No-JS uploader form smaller?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
This site is using Cloudflare, which limits the maximum upload size.<br>
|
||||
Since the homepage uploader chunks your uploads through JS wizardry, it is possible to increase the maximum file size there.
|
||||
</div>
|
||||
</article>
|
||||
{%- endif %}
|
||||
|
||||
{% if chunkSizeInt -%}
|
||||
<h2 class='subtitle is-brighter'>So your API supports chunked uploads?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
<strong>Yes.</strong> The homepage uploader was coded to chunk uploads into {{ chunkSizeInt }} MB pieces by default. However, this is configurable through its Config tab.<br>
|
||||
<br>
|
||||
If you want to chunk your API uploads, feel free to inspect the source code to see how it works.<br>
|
||||
A rough description of how it works is to simply upload the chunks with their UUID information attached,<br>
|
||||
and then call the "finish chunks" API with the said UUID, to rebuild them into a single proper file.
|
||||
</div>
|
||||
</article>
|
||||
{%- endif %}
|
||||
|
||||
<h2 class='subtitle is-brighter'>I found a bug! -or- I want to request a feature!</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Feel free to create a GitHub issue <a href="https://github.com/BobbyWibowo/lolisafe/issues/new/choose" target="_blank" rel="noopener">here</a>.</br>
|
||||
If you do not have a GitHub account, you can also email <a href="mailto:bobby@fiery.me">bobby@fiery.me</a>.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>How do I delete my own account <strong>and</strong> all the uploads associated with it?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
For now, you will also have to contact me through my email above.<br>
|
||||
A feature to delete your own account by yourself is still <strong>work in progress</strong>.<br>
|
||||
Otherwise, if you do not mind a record of your username being left here, it should be easy to bulk delete all your uploads from the Dashboard anyway.
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="section has-extra-bottom-padding">
|
||||
<div class="container has-text-left">
|
||||
<h1 class='title is-spaced'>Privacy</h1>
|
||||
|
||||
<h2 class='subtitle is-brighter'>What information is kept with uploads?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
The uploader's <strong>IP address</strong>.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>What information is kept with users?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Technically, <strong>none</strong>.<br>
|
||||
After all, not even an email address is required to register an account.<br>
|
||||
Anything will do as your usernames, and passwords are also encrypted.<br>
|
||||
If a registered user has not uploaded anything even once, then I will not even have their IP address.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>Why do you need to keep my IP address?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
<strong>Security purposes.</strong><br>
|
||||
For example, in the case that it is necessary to purge uploads from a specific IP address due to abuse, it <i>will</i> help a lot to be able to find all uploads by that specific uploader.<br>
|
||||
My safe have been plagued by aplenty of abuse, so this policy will remain as long as the safe lives on.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>Does the server have some sort of access logs?</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
<strong>Yes.</strong> The logs will contain each visitor's IP address.<br>
|
||||
This is required by our automated system, that checks both access and error logs in real time to detect and punish abuse, such as DDoS attempts, scanners, and so on.<br>
|
||||
Logs are rotated daily, and the server will only keep the last 10 logs.<br>
|
||||
So you can be reassured that the logs will only be kept for 10 days at most.
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<h2 class='subtitle is-brighter'>I still have more unanswered questions!</h2>
|
||||
<article class="message">
|
||||
<div class="message-body">
|
||||
Feel free to email <a href="mailto:bobby@fiery.me">bobby@fiery.me</a>.
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<a class="floating-home-button" title="Back to Safe" href=".">
|
||||
<span class="icon is-medium">
|
||||
<i class="icon-home icon-2x"></i>
|
||||
</span>
|
||||
</a>
|
||||
{% endblock %}
|
||||
|
Loading…
Reference in New Issue
Block a user