Fixed 'Save recipe' URL generation issue. Closes #1176

This commit is contained in:
n1474335 2021-02-16 14:12:14 +00:00
parent 22fe5a6ae7
commit c879af6860
3 changed files with 7 additions and 5 deletions

View File

@ -895,8 +895,8 @@ class Utils {
while ((m = recipeRegex.exec(recipe))) { while ((m = recipeRegex.exec(recipe))) {
// Translate strings in args back to double-quotes // Translate strings in args back to double-quotes
args = m[2] args = m[2] // lgtm [js/incomplete-sanitization]
.replace(/"/g, '\\"') // Escape double quotes // lgtm [js/incomplete-sanitization] .replace(/"/g, '\\"') // Escape double quotes
.replace(/(^|,|{|:)'/g, '$1"') // Replace opening ' with " .replace(/(^|,|{|:)'/g, '$1"') // Replace opening ' with "
.replace(/([^\\]|(?:\\\\)+)'(,|:|}|$)/g, '$1"$2') // Replace closing ' with " .replace(/([^\\]|(?:\\\\)+)'(,|:|}|$)/g, '$1"$2') // Replace closing ' with "
.replace(/\\'/g, "'"); // Unescape single quotes .replace(/\\'/g, "'"); // Unescape single quotes

View File

@ -725,7 +725,7 @@ class App {
this.progress = 0; this.progress = 0;
this.autoBake(); this.autoBake();
this.updateTitle(false, null, true); this.updateTitle(true, null, true);
} }

View File

@ -100,7 +100,7 @@ class ControlsWaiter {
const includeRecipe = document.getElementById("save-link-recipe-checkbox").checked; const includeRecipe = document.getElementById("save-link-recipe-checkbox").checked;
const includeInput = document.getElementById("save-link-input-checkbox").checked; const includeInput = document.getElementById("save-link-input-checkbox").checked;
const saveLinkEl = document.getElementById("save-link"); const saveLinkEl = document.getElementById("save-link");
const saveLink = this.generateStateUrl(includeRecipe, includeInput, recipeConfig); const saveLink = this.generateStateUrl(includeRecipe, includeInput, null, recipeConfig);
saveLinkEl.innerHTML = Utils.escapeHtml(Utils.truncate(saveLink, 120)); saveLinkEl.innerHTML = Utils.escapeHtml(Utils.truncate(saveLink, 120));
saveLinkEl.setAttribute("href", saveLink); saveLinkEl.setAttribute("href", saveLink);
@ -128,11 +128,13 @@ class ControlsWaiter {
includeRecipe = includeRecipe && (recipeConfig.length > 0); includeRecipe = includeRecipe && (recipeConfig.length > 0);
// If we don't get passed an input, get it from the current URI // If we don't get passed an input, get it from the current URI
if (input === null) { if (input === null && includeInput) {
const params = this.app.getURIParams(); const params = this.app.getURIParams();
if (params.input) { if (params.input) {
includeInput = true; includeInput = true;
input = params.input; input = params.input;
} else {
includeInput = false;
} }
} }