Melhorias nas Edições Compartilhadas

Realizamos testes adicionais sobre comportamentos estranhos do modo de edição compartilhada — que, de resto, é excelente. Aqui estão algumas descobertas:

Observe que o plugin não habilita o acesso à edição em si. Isso significa que, se você quiser que usuários não moderadores possam editar o post colaborativamente, também deve torná-lo um Wiki (verde, opcional):

Se eu ativar os Edits Compartilhados, tenho a opção de torná-lo um Wiki também. Mas, se eu fizer isso pela opção Tornar Wiki, ainda aparecerá escrito “Tornar Wiki”. Ele entrará no modo Wiki, no entanto. Não há como revogar o modo Wiki.

Moderadores podem ativar ou desativar os edits compartilhados em um tópico (vermelho) pelo ícone de engrenagem na barra do compositor

Gostaria de ver uma opção em que o direito de iniciar/parar os edits compartilhados esteja vinculado ao direito de iniciar/encerrar um Wiki. A funcionalidade é bastante similar; por que escolher permissões diferentes (apenas moderadores)?

Agora, este é um ponto crítico:

  1. Defino um post no modo Wiki e no modo de edição compartilhada.
  2. Algumas pessoas começam a editar no compositor de edição compartilhada.
  3. Algumas outras pessoas usam o editor “clássico” de Wiki — pelo link de revisões no mesmo post, ao mesmo tempo:

E então, na parte inferior, clicam em Editar Post:

Aí as coisas ficam feias rapidamente. Muito feias. Muitas coisas sobrescritas, alterações não salvas, conflitos de revisão. Minha compreensão é que os edits compartilhados não foram projetados para funcionar ao mesmo tempo que a edição clássica de Wiki (completamente compreensível do ponto de vista técnico).

Acho que a melhor maneira de resolver isso seria redirecionar o botão Editar Post para o novo compositor de edits compartilhados.

Como o compositor de edits compartilhados não oferece a opção de editar os metadados do post (título, tags etc.), também é preciso encontrar uma solução para isso.

Alguém poderia argumentar: “Basta dizer às pessoas para evitarem o lápis de revisões”, mas não é assim que funciona — muitos de nossos usuários preferem esse método em vez de rolar até o final de um post longo no WikiPad.

Vejo que isso pode não ser fácil de corrigir, mas, no momento, o recurso de edits compartilhados está bastante quebrado. Testamos em vários posts com pessoas diferentes e sempre surgiram conflitos.

9 curtidas

Alguma notícia sobre isso? Nós o “corrigimos” adicionando

div#revision-footer-buttons button:nth-of-type(1) {
    display: none !important;
}

ao CSS, mas obviamente esta é uma correção, não uma solução…

3 curtidas

Você articulou de forma muito clara como a funcionalidade de wiki e as edições compartilhadas interagem. E não é nada bonito. Obrigado pela solução alternativa / correção!!

Eu a incorporei ao meu pequeno Wikified Posts Component, pois é um pequeno aprimoramento agradável da funcionalidade de wiki.

1 curtida

Ah - eu não sabia sobre nosso Componente, muito útil (acabei de usar o antigo para colorir posts da Wiki e vou mudar agora)

2 curtidas

Você pode adicionar isso à aba common > header do seu tema (ou em /common/header.html em um componente remoto), e isso adicionará uma classe shared-edits-post às postagens de edições compartilhadas se o usuário atual puder editá-las.

<script type="text/discourse-plugin" version="0.8">
  api.addPostClassesCallback((attrs) => {
    if (attrs.shared_edits_enabled && attrs.canEdit) return ["shared-edits-post"];
  });
</script>

então em CSS

.shared-edits-post {
  // faça algum trabalho
}
5 curtidas

Feito!! Agora está tudo incluído no Wikified Posts Component:


Obrigado Joe - tornou tudo possível!!

O que eu realmente preciso direcionar é o primeiro revision-footer-button (com o texto Edit Wiki) e escondê-lo apenas para posts de Edições Compartilhadas. Alguma forma de fazer essa classe cobrir o painel/diálogo de revisão também?

3 curtidas

Fiz algumas alterações.

Isso foi corrigido. Alternar wiki ativado/desativado em uma postagem de edição compartilhada agora mostrará o rótulo correto.

Isso também foi corrigido. Se você clicar no botão do modal de histórico de revisões E a postagem estiver definida como shared-edit, ele abrirá o compositor de edições compartilhadas em vez do padrão.

Adicionei a classe no plugin. Portanto, você pode remover o trecho que adicionou. O plugin agora adicionará essa classe sem a necessidade de modificações.

Acho que você queria isso porque o botão costumava abrir o compositor padrão? Isso agora está corrigido, então você não precisará mais ocultá-lo.

6 curtidas

Isso ainda é um impeditivo para nós: tentamos ter o mínimo de moderadores possível por motivos de privacidade. Portanto, AMARÍAMOS ter uma opção em que todos que podem iniciar uma wiki também possam iniciar as edições compartilhadas - basicamente é a mesma coisa. A propósito: demos a este modo o nome de “WikiPad” - é mais marcante do que edições compartilhadas.

4 curtidas

Claro, totalmente aberto a adicionar uma configuração para “grupos que podem iniciar edições compartilhadas”, com o padrão “staff”, mas permitindo que você a altere para o que quiser.

8 curtidas

Quais são as chances de isso acontecer? Novamente, essa pequena alteração seria uma mudança de jogo em nosso trabalho diário.

5 curtidas

Obrigado por este ótimo plugin, que se encaixa muito bem em nossos casos de uso para usar o Discourse para fazer anotações colaborativas, brainstorming, etc. Ao examinar o plugin, ocasionalmente experimentei falhas, que infelizmente são difíceis de reproduzir consistentemente.

O que experimentei é que uma alteração feita pelo usuário A é desfeita quando o usuário B atualiza o documento, ambas as alterações sendo explicitamente salvas usando o botão Salvar. Suponho que isso possa ser causado por conectividade de rede e consegui reproduzir o comportamento da seguinte forma:

Sei que isso parece bastante artificial, mas foi a única maneira de reproduzir o comportamento que estou experimentando ocasionalmente. Mais alguém encontrou esse problema? Existe talvez até mesmo uma correção para ele?

5 curtidas

Sim, deparei-me com um problema semelhante com uma conexão de internet ruim, às vezes perdendo muitas edições. Isso é muito frustrante. Talvez alguma detecção de desconexão pudesse funcionar e mudar para um buffer de localStorage ou algo assim. Talvez usar localStorage primeiro e sincronizar depois… Não tenho certeza de como é implementado tecnicamente, mas certamente há momentos em que ter a sincronização atrasada em alguns milissegundos seria melhor do que perder texto.

3 curtidas

Este ainda é um problema enorme em nosso site. Talvez esta informação possa ajudar: veja esta edição no histórico:

“system” é a conta raiz do sistema. Por que nenhuma conta de usuário é exibida? Outra variante é esta:

Ainda está atribuído ao sistema, mas com uma informação adicional “editado por xy”. Estranho.

1 curtida

Olá @Ralf_Stockmann :slight_smile:

Dividi suas postagens em um novo tópico de UX para evitar que sejam perdidas pelo cronômetro do tópico. Acho que pode haver alguns problemas incluídos que valem a pena rastrear separadamente (acho que a correção de @Johani lidou com alguns?). Se for o caso, me avise e podemos criar um(s) novo(s) tópico(s) para eles. :+1:

3 curtidas

Obrigado - mas estou sentindo falta agora das postagens de @literarymachine sobre este tópico (um colega meu), onde ele apontou algumas condições de corrida relacionadas à rede deste plugin, que a) ainda não foram corrigidas e b) tornam este plugin, de outra forma fantástico, bastante inútil para trabalho sério…?

3 curtidas

Acho que é só isso. :crossed_fingers:

3 curtidas

Isso surgiu para nós e seria muito útil.

Um PR seria útil para isso? PRs de Plugins Oficiais são bastante desafiadores para hackers como eu, pois exigem mais configuração e expertise do que tenho à mão!

Tl4 agora podem alternar edições compartilhadas, o que lhes dá um pouco mais de flexibilidade.

Pr é bem-vindo para mudar para uma configuração de site baseada em grupo.

2 curtidas

E os moderadores? Ou eles precisam ser promovidos a TL4?

Como eles podem se promover a TL4 de qualquer maneira, faria sentido conceder a todos eles a capacidade de ativar Edições Compartilhadas.

1 curtida