diff --git a/www/common/diffMarked.js b/www/common/diffMarked.js
index f8e006216..ccf2fc162 100644
--- a/www/common/diffMarked.js
+++ b/www/common/diffMarked.js
@@ -287,6 +287,23 @@ define([
return patch;
};
+ var removeMermaidClickables = function ($el) {
+ // find all links in the tree and do the following for each one
+ $el.find('a').each(function (index, a) {
+ var parent = a.parentElement;
+ if (!parent) { return; }
+ // iterate over the links' children and transform them into preceding children
+ // to preserve their visible ordering
+ slice(a.children).forEach(function (child) {
+ parent.insertBefore(child, a);
+ });
+ // remove the link once it has been emptied
+ $(a).remove();
+ });
+ // finally, find all 'clickable' items and remove the class
+ $el.find('.clickable').removeClass('clickable');
+ };
+
DiffMd.apply = function (newHtml, $content, common) {
var contextMenu = common.importMediaTagMenu();
var id = $content.attr('id');
@@ -364,7 +381,7 @@ define([
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
if (mutation.type === 'childList') {
- var list_values = [].slice.call(mutation.target.children)
+ var list_values = slice(mutation.target.children)
.map(function (el) { return el.outerHTML; })
.join('');
mediaMap[mutation.target.getAttribute('src')] = list_values;
@@ -400,7 +417,13 @@ define([
// check if you had cached a pre-rendered instance of the supplied source
if (typeof(cached) !== 'object') {
try {
- Mermaid.init(undefined, $(el));
+ var $el = $(el);
+ Mermaid.init(undefined, $el);
+ // clickable elements in mermaid don't work well with our sandboxing setup
+ // the function below strips clickable elements but still leaves behind some artifacts
+ // tippy tooltips might still be useful, so they're not removed. It would be
+ // preferable to just support links, but this covers up a rough edge in the meantime
+ removeMermaidClickables($el);
} catch (e) { console.error(e); }
return;
}
diff --git a/www/common/translations/messages.it.json b/www/common/translations/messages.it.json
index 0bd465dbd..737d39f11 100644
--- a/www/common/translations/messages.it.json
+++ b/www/common/translations/messages.it.json
@@ -1306,7 +1306,7 @@
"team_cat_general": "Info",
"properties_passwordWarning": "La password è stata cambiata ma non siamo in grado di aggiornare il tuo CryptDrive con i nuovi dati. Devi rimuovere i vecchi pad manualmente.
Premi OK per ricaricare ed aggiornare i tuoi diritti di accesso.",
"share_embedCategory": "Incorporamento",
- "chrome68": "Sembra che tu stia usando il browser Chrome o Chromium versione 68. Contiene un bug che si manifesta nella pagina che diventa completamente bianca dopo alcuni secondi o smette di rispondere ai clic. Per risolvere il problema puoi passare ad un'altra tab e tornare a questa, o provare a scorrere la pagina. Questo problema sarà risolto nella prossima versione del tuo browser.",
+ "chrome68": "Sembra che tu stia usando il browser Chrome o Chromium versione 68. Contiene un bug che si manifesta nella pagina che diventa completamente bianca dopo alcuni secondi o smette di rispondere ai clic. Per risolvere il problema puoi passare ad un'altra scheda e tornare a questa, o provare a scorrere la pagina. Questo problema sarà risolto nella prossima versione del tuo browser.",
"crowdfunding_popup_text": "