I’d like to customize the reply/embedded-post. This requires a modification to the _computeCooked method in post-cooked via a plugin; essentially when this.attrs.embeddedPost is true, render something else.
I noticed it’s easier to override or reopen ‘conventional’ Ember classes or the widgets created using ‘createWidget’. What would be the best way to achieve this for the PostCooked class?
por conteúdo personalizado dependendo da categoria. Mas faz sentido. Isso também deve ser possível com decorateCooked. Depois de ler um pouco, parece que decorateCookedElement pode ser o correto, já que não quero usar jQuery. Valeu
Depois de brincar por um dia, encontrei esta resposta.
Parece que foi um esforço inútil e preciso seguir por outro caminho.
Quando defino elem.innerHTML para <script>alert(1)</script>, ele se torna não escapado: <script>alert(1)</script> (eu vejo, enquanto digito isso no compositor, que será removido na prévia se eu digitar sem escapar). Isso é um problema ou a CSP vai bloquear?
Postagens que incluem tags de script como parte de uma explicação também parecem gerar esses erros de CSP. Estou realmente confuso agora. Preciso me preocupar com XSS armazenado de alguma forma, ou a CSP apenas vai bloquear? No compositor, uso o CKEditor, que previne o self-XSS. Se eu precisar me preocupar com isso, parece que preciso remover tags inseguras. No momento, faço apenas:
value = Loofah.fragment(value).scrub!(:escape).to_s
Mas parece não ter nenhum efeito, porque definir elem.innerHTML com esse valor apenas dessescapa as entidades HTML.
EDIT: Finalmente encontrei a fonte da minha confusão: o inspecionar elemento não mostra o HTML real; ele já converte as entidades HTML.
Se você clicar em “Editar como HTML” no inspecionador, fica claro que tudo está realmente certo. Ver tags invisíveis sendo renderizadas já deveria ter me apontado nessa direção.