Added licenses to Excel Password Remover, Filed file input on standalone, Added auto-clear to file input
Update excel-password-remover.yml, excel-password-remover.yml, and 3 more files...
This commit is contained in:
@@ -1,58 +1,43 @@
|
||||
# EN - Excel Password Remover
|
||||
|
||||
meta.title: Excel Password Remover
|
||||
meta.description: >-
|
||||
meta:
|
||||
title: Excel Password Remover
|
||||
description: >-
|
||||
Small web application from which you can easily remove a password from an Excel
|
||||
worksheet. It works by leaving the task of editing the XML files on an Excel
|
||||
document to your browser instead to keep everything local.
|
||||
meta.description.light: >-
|
||||
description.light: >-
|
||||
Small web application from which you can easily remove a password from an Excel
|
||||
worksheet directly in your browser.
|
||||
|
||||
#article.subtitle: >-
|
||||
# <a
|
||||
# href="https://github.com/aziascreations/Excel-Worksheet-Password-Remover"><i
|
||||
# class="fab fa-github"></i> View on GitHub</a>
|
||||
#intro.title: Introduction
|
||||
#intro.p1: >-
|
||||
# This project aims to simplify the removal of passwords on Excel's Worksheet by
|
||||
# leaving the task of editing the XML files on an Excel document to your
|
||||
# browser.
|
||||
#working.title: Security & Internal workings
|
||||
#working.p1: >-
|
||||
# In terms of security, your browser handles all the data without sending any of
|
||||
# it to a central server like many web apps do.<br>This makes it, and your data,
|
||||
# as safe as your browser can be since it is the only potential point of failure
|
||||
# here.
|
||||
#working.p2: >-
|
||||
# As for the internal workings, the only thing this tool does is extract the
|
||||
# content of the <code>.xlsx</code> file you gave it and removes the passwords
|
||||
# on any worksheets and makes a new file with all the changes.<br>Once all of
|
||||
# that is done, the file is downloaded via a <a
|
||||
# href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs">data
|
||||
# URL</a>.
|
||||
#usage.title: Usage
|
||||
#usage.p1: >-
|
||||
# To use this tool you can either visit "<a
|
||||
# href="https://aziascreations.github.io/Excel-Worksheet-Password-Remover">aziascreations.github.io/Excel-Worksheet-Password-Remover</a>"
|
||||
# or download the repository and host the web page yourself.
|
||||
#demo.title: Demonstration video
|
||||
#links.title: Links
|
||||
#content.link.demo: Demo hosted on GitHub
|
||||
|
||||
|
||||
eula.1: "This tool should only be used with files you have the express permission to unlock."
|
||||
eula.2: "All password removal is done locally in your browser, and <span class='t-bold'>no data is sent online</span>.<br>
|
||||
eula:
|
||||
1: "This tool should only be used with files you have the express permission to unlock."
|
||||
2: "All password removal is done locally in your browser, and <span class='t-bold'>no data is sent online</span>.<br>
|
||||
The original password cannot be revealed as it’s secure by design and not stored in plain text; it simply gets removed."
|
||||
eula.3: "By using this tool, you accept full responsibility, and that it is provided “as is” without any warranty."
|
||||
3: "By using this tool, you accept full responsibility, and that it is provided “as is” without any warranty."
|
||||
|
||||
file.selection.title: "File Selection"
|
||||
file.selection.1: "Drop your excel file(s) here or click on the buttons."
|
||||
file:
|
||||
selection:
|
||||
title: "File Selection"
|
||||
1: "Drop your excel file(s) here or click on the buttons."
|
||||
|
||||
details.title : "Result(s)"
|
||||
details.empty.1 : "Your Excel files with their password removed will end up here."
|
||||
details:
|
||||
title : "Result(s)"
|
||||
empty:
|
||||
1 : "Your Excel files with their password removed will end up here."
|
||||
|
||||
result.success.count: "Removed <span id=\"tmpl-success-password-count\">???</span> password(s)"
|
||||
result.warning.extension: "The file doesn't appear to be an Excel Worksheet !"
|
||||
result.warning.password: "The Excel Worksheet didn't contain any password !"
|
||||
result.error.jszip: "JSZip was unable to open the file !"
|
||||
result:
|
||||
success:
|
||||
count: "Removed <span id=\"tmpl-success-password-count\">???</span> password(s)"
|
||||
warning:
|
||||
extension: "The file doesn't appear to be an Excel Worksheet !"
|
||||
password: "The Excel Worksheet didn't contain any password !"
|
||||
error:
|
||||
jszip: "JSZip was unable to open the file !"
|
||||
|
||||
license:
|
||||
title: "Licenses"
|
||||
text:
|
||||
1: "This tool uses the <a href=\"https://stuk.github.io/jszip/\">JSZip</a>
|
||||
library, which is licensed under the <a href=\"https://github.com/Stuk/jszip/blob/main/LICENSE.markdown\">MIT license</a>."
|
||||
2: "The rest of this tool's code is released in the <a href=\"https://github.com/aziascreations/Web-NibblePoker\">public domain</a>."
|
||||
|
@@ -1,53 +1,44 @@
|
||||
# FR - Excel Password Remover
|
||||
|
||||
meta.title: Excel Password Remover
|
||||
meta.description: >-
|
||||
meta:
|
||||
title: Excel Password Remover
|
||||
description: >-
|
||||
Petite application web qui permet de facilement retirer le mot de passe d'une
|
||||
feuille de calcul Excel depuis votre navigateur web sans avoir à uploader le
|
||||
fichier sur internet. Cette application laisse votre navigateur modifier les
|
||||
fichiers XML du fichier Excel afin de tout garder en local.
|
||||
meta.description.light: >-
|
||||
description.light: >-
|
||||
Application web qui permet de facilement retirer le mot de passe d'un ficher Excel depuis
|
||||
votre navigateur web sans avoir à uploader le fichier sur internet.
|
||||
|
||||
#article.subtitle: >-
|
||||
# <a
|
||||
# href="https://github.com/aziascreations/Excel-Worksheet-Password-Remover"><i
|
||||
# class="fab fa-github"></i> Voir sur GitHub</a>
|
||||
#intro.title: Introduction
|
||||
#intro.p1: >-
|
||||
# Ce projet vise à simplifier le processus de suppression des mots de passes sur
|
||||
# les "worksheet" d'Excel en laissant votre navigateur web s'en charger.
|
||||
#working.title: Sécurité & Fonctionnement
|
||||
#working.p1: >-
|
||||
# Cet outil charge le ficher que vous lui donnez en mémoire et travaille
|
||||
# directement dessus dans le navigateur web sans utiliser un serveur central,
|
||||
# vos données restent donc entièrement sur votre machine.
|
||||
#working.p2: >-
|
||||
# Par sécurité, nous vous demandons quand même de n'utiliser cet outil qu'avec
|
||||
# des fichiers pour lesquels vous avez été explicitement autorisés à enlever le
|
||||
# mot de passe.
|
||||
#usage.title: Utilisation
|
||||
#usage.p1: >-
|
||||
# Vous pouvez utiliser cet outil en allant sur "<a
|
||||
# href="https://aziascreations.github.io/Excel-Worksheet-Password-Remover">aziascreations.github.io/Excel-Worksheet-Password-Remover</a>"
|
||||
# ou en téléchargeant le dépôt et en hébergeant la page web vous-même.
|
||||
#demo.title: Vidéo de démonstration
|
||||
#links.title: Liens
|
||||
#content.link.demo: Démo hébergée sur GitHub
|
||||
|
||||
eula.1 : "Cet outil ne doit être utilisé qu'avec des fichiers pour lesquels vous avez l'autorisation de les déverrouiller."
|
||||
eula.2 : "Toute suppression de mot de passe se fait localement dans votre navigateur, et <span class='t-bold'>aucune donnée n'est envoyée via Internet</span>.<br>
|
||||
eula:
|
||||
1: "Cet outil ne doit être utilisé qu'avec des fichiers pour lesquels vous avez l'autorisation de les déverrouiller."
|
||||
2: "Toute suppression de mot de passe se fait localement dans votre navigateur, et <span class='t-bold'>aucune donnée n'est envoyée via Internet</span>.<br>
|
||||
Le mot de passe original ne peut pas être révélé car il est sécurisé par Excel et n'est pas stocké en texte clair ; il est simplement supprimé."
|
||||
eula.3 : "En utilisant cet outil, vous acceptez l'entière responsabilité de vos action, et le fait qu'il est fourni “tel quel” sans aucune garantie."
|
||||
3: "En utilisant cet outil, vous acceptez l'entière responsabilité de vos action, et le fait qu'il est fourni “tel quel” sans aucune garantie."
|
||||
|
||||
file.selection.title : "Sélection de fichier(s)"
|
||||
file.selection.1 : "Déposez vos fichiers Excel ici ou cliquez sur les boutons."
|
||||
file:
|
||||
selection:
|
||||
title: "Sélection de fichier(s)"
|
||||
1: "Déposez vos fichiers Excel ici ou cliquez sur les boutons."
|
||||
|
||||
details.title: "Résultat(s)"
|
||||
details.empty.1 : "Vos fichiers Excel sans leurs mots de passe finiront ici."
|
||||
details:
|
||||
title: "Résultat(s)"
|
||||
empty:
|
||||
1: "Vos fichiers Excel sans leurs mots de passe finiront ici."
|
||||
|
||||
result.success.count: "Mot de passe(s) supprimé(s) : <span id=\"tmpl-success-password-count\">???</span>"
|
||||
result.warning.extension: "Le fichier ne semble pas être une feuille de calcul Excel !"
|
||||
result.warning.password: "La feuille de calcul Excel ne contenait aucun mot de passe !"
|
||||
result.error.jszip: "JSZip n'a pas pu ouvrir le fichier !"
|
||||
result:
|
||||
success:
|
||||
count: "Mot de passe(s) supprimé(s) : <span id=\"tmpl-success-password-count\">???</span>"
|
||||
warning:
|
||||
extension: "Le fichier ne semble pas être une feuille de calcul Excel !"
|
||||
password: "La feuille de calcul Excel ne contenait aucun mot de passe !"
|
||||
error:
|
||||
jszip: "JSZip n'a pas pu ouvrir le fichier !"
|
||||
|
||||
license:
|
||||
title: "Licences"
|
||||
text:
|
||||
1: "Cet outil utilise la bibliothèque <a href=\"https://stuk.github.io/jszip/\">JSZip</a>,
|
||||
qui est distribuée sous licence <a href=\"https://github.com/Stuk/jszip/blob/main/LICENSE.markdown\">MIT</a>."
|
||||
2: "Le reste du code de cet outil est placé dans le <a href=\"https://github.com/aziascreations/Web-NibblePoker\">domaine public</a>."
|
||||
|
@@ -48,7 +48,6 @@ export function initCore() {
|
||||
|
||||
// Setting up the file drop inputs
|
||||
document.querySelectorAll(".np-file-input-drop-container").forEach(eRootContainer => {
|
||||
//console.log(eRootContainer);
|
||||
|
||||
/** @type {HTMLInputElement} */
|
||||
const eFileDropInput = eRootContainer.querySelector("input[type=file]");
|
||||
@@ -58,7 +57,6 @@ export function initCore() {
|
||||
|
||||
/** @type {string} */
|
||||
const inputId = eFileDropInput.getAttribute("id");
|
||||
//console.log(inputId);
|
||||
|
||||
/** @type {HTMLElement} */
|
||||
const eFileDropTextEmpty = eRootContainer.querySelector(`#${inputId}-text-drop`);
|
||||
@@ -78,14 +76,7 @@ export function initCore() {
|
||||
/** @type {NodeListOf<HTMLElement>} */
|
||||
const eFileDropSelectionCounts = eRootContainer.querySelectorAll(`.np-file-drop-count`);
|
||||
|
||||
if(eFileDropAddButton !== null) {
|
||||
eFileDropAddButton.addEventListener("click", function() {
|
||||
eFileDropInput.click();
|
||||
});
|
||||
}
|
||||
|
||||
if(eFileDropClearButton !== null) {
|
||||
eFileDropClearButton.addEventListener("click", function() {
|
||||
function handleFileDropClear() {
|
||||
eFileDropInput.value = '';
|
||||
if(eFileDropTextSingle !== null) {
|
||||
eFileDropTextSingle.hidden = true;
|
||||
@@ -96,6 +87,18 @@ export function initCore() {
|
||||
if(eFileDropTextEmpty !== null) {
|
||||
eFileDropTextEmpty.hidden = false;
|
||||
}
|
||||
}
|
||||
|
||||
if(eFileDropAddButton !== null) {
|
||||
eFileDropAddButton.addEventListener("click", function() {
|
||||
handleFileDropClear();
|
||||
eFileDropInput.click();
|
||||
});
|
||||
}
|
||||
|
||||
if(eFileDropClearButton !== null) {
|
||||
eFileDropClearButton.addEventListener("click", function() {
|
||||
handleFileDropClear();
|
||||
});
|
||||
}
|
||||
|
||||
|
@@ -27,6 +27,14 @@
|
||||
</div>
|
||||
|
||||
<div id="{{ applet_data.id }}-details-populated" hidden>
|
||||
{% if is_standalone %}
|
||||
{{ render_button(
|
||||
l10n("download.action.all", "commons", user_lang),
|
||||
false, applet_data.id + "-files-download-all", "bkgd-green") }}
|
||||
{{ render_button(
|
||||
l10n("clear.all.files", "commons", user_lang),
|
||||
false, applet_data.id + "-files-clear", "bkgd-orange") }}
|
||||
{% else %}
|
||||
{{ render_button(
|
||||
"<i class=\"fa-duotone fa-solid fa-floppy-disks mr-xs\"></i>" +
|
||||
l10n("download.action.all", "commons", user_lang),
|
||||
@@ -35,6 +43,7 @@
|
||||
"<i class=\"fa-duotone fa-solid fa-trash mr-xs\"></i>" +
|
||||
l10n("clear.all.files", "commons", user_lang),
|
||||
false, applet_data.id + "-files-clear", "bkgd-orange") }}
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div id="{{ applet_data.id }}-result-container" class="mt-s"></div>
|
||||
@@ -46,13 +55,21 @@
|
||||
<table class="table-p-xxs table-v-center">
|
||||
<tr>
|
||||
<td rowspan="2" class="br bkgd-green bkgd-grid30 rl-l">
|
||||
{% if is_standalone %}
|
||||
<span class="mx-xxs">✅</span>
|
||||
{% else %}
|
||||
<i class="fa-duotone fa-solid fa-circle-check mx-s"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td class="w-full t-bold">
|
||||
<span id="tmpl-success-filename">PlaceholderSuccessName.xlsx</span>
|
||||
</td>
|
||||
<td rowspan="2" class="bl bkgd-blue bkgd-grid30 rr-l">
|
||||
{% if is_standalone %}
|
||||
<span class="mx-xxs">💾</span>
|
||||
{% else %}
|
||||
<i class="fa-duotone fa-download mx-s"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="t-italic">
|
||||
@@ -67,7 +84,11 @@
|
||||
<table class="table-p-xxs table-v-center">
|
||||
<tr>
|
||||
<td rowspan="2" class="br bkgd-orange bkgd-grid30 rl-l">
|
||||
{% if is_standalone %}
|
||||
<span class="mx-xxs">⚠️</span>
|
||||
{% else %}
|
||||
<i class="fa-duotone fa-solid fa-triangle-exclamation mx-s"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td class="w-full t-bold">
|
||||
<span id="tmpl-warning-filename">PlaceholderWarningName.xlsx</span>
|
||||
@@ -92,7 +113,11 @@
|
||||
<table class="table-p-xxs table-v-center">
|
||||
<tr>
|
||||
<td rowspan="2" class="br bkgd-red bkgd-grid30 rl-l">
|
||||
{% if is_standalone %}
|
||||
<span class="mx-xxs">❌</span>
|
||||
{% else %}
|
||||
<i class="fa-duotone fa-solid fa-hexagon-exclamation mx-s"></i>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td class="w-full t-bold">
|
||||
<span id="tmpl-error-filename">PlaceholderErrorName.xlsx</span>
|
||||
@@ -110,8 +135,13 @@
|
||||
</template>
|
||||
|
||||
{% if is_standalone %}
|
||||
<section id="{{ applet_data.id }}-licenses">
|
||||
{{ render_h2(l10n("licenses.title", applet_data.id, user_lang)) }}
|
||||
<p>123</p>
|
||||
<section id="{{ applet_data.id }}-licenses" class="mt-l mt-0-if-first">
|
||||
{{ render_h2(l10n("license.title", applet_data.id, user_lang)) }}
|
||||
|
||||
<div class="content-spacer">
|
||||
{{ render_paragraph(
|
||||
l10n("license.text.1", applet_data.id, user_lang) + "<br>" + l10n("license.text.2", applet_data.id, user_lang)
|
||||
) }}
|
||||
</div>
|
||||
</section>
|
||||
{% endif %}
|
||||
|
@@ -23,7 +23,10 @@
|
||||
<div class="np-file-drop-buttons pb-s">
|
||||
{% if file_upload_button %}
|
||||
<button id="{{ file_input_id }}-add" class="p-xs r-s border btn-primary np-file-drop-button">
|
||||
{% if not is_standalone %}
|
||||
<i class="fa-duotone fa-solid fa-cloud-arrow-up mr-xxs"></i>
|
||||
{% endif %}
|
||||
|
||||
{% if file_multiple %}
|
||||
{{ l10n("file.drop.upload.multiple", "commons", user_lang) }}
|
||||
{% else %}
|
||||
@@ -34,7 +37,11 @@
|
||||
|
||||
{% if file_clear_button %}
|
||||
<button id="{{ file_input_id }}-reset" class="p-xs r-s border btn-warning np-file-drop-button">
|
||||
{{ "<i class=\"fa-duotone fa-solid fa-trash mr-xs\"></i>" + l10n("file.drop.clear", "commons", user_lang) }}
|
||||
{% if not is_standalone %}
|
||||
<i class="fa-duotone fa-solid fa-trash mr-xs"></i>
|
||||
{% endif %}
|
||||
|
||||
{{ l10n("file.drop.clear", "commons", user_lang) }}
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
Reference in New Issue
Block a user