Plots2: Ocultar las respuestas a los comentarios que han recibido spam o que aún no están moderados

Creado en 15 dic. 2020  ·  23Comentarios  ·  Fuente: publiclab/plots2

Parece que las respuestas a los comentarios no se filtran por correo no deseado. Deberíamos ver este mensaje:

"¿Está seguro? El usuario ya no podrá iniciar sesión ni publicar, y su contenido se ocultará excepto los comentarios ". parece mal

Ejemplo de esto sucediendo: https://publiclab.org/notes/bhamster/09-02-2020/public-lab-virtual-event-on-all-things-microplastics

Ver esta respuesta a un comentario:

image

En su lugar, debería tener un mensaje como este, que funciona para comentarios regulares (aquellos que responden a una publicación, no a otro comentario:

image

ASUNTO

(Esto podría estar solucionado por ahora ... escribamos una prueba para confirmarlo y corregir cualquier falla que pueda surgir de la prueba):

Las respuestas a los comentarios no filtran los comentarios no deseados. Usamos este método replied_comments en varios lugares, por lo que es posible que necesitemos hacer esta corrección varias veces.

https://github.com/publiclab/plots2/search?q=replied_comments

No podemos hacerlo en la definición porque en realidad es una relación ActiveRecord, no un método personalizado al que podemos agregar filtros: https://github.com/publiclab/plots2/blob/828321c2a8fd91e7a55140a511ed4e6dda718b61/app/models/comment.rb# L10

Deberíamos filtrar status = 0 en la definición de comment.replied_comments , y también para status = 4 mostrar el mensaje de arriba.

Entonces, deberíamos escribir algunas pruebas básicas:

https://github.com/publiclab/plots2/blob/876d0fc084064aaecc23f8003630d7d1ab858fa1/test/functional/comment_controller_test.rb#L57 -L61

Ruby help wanted testing

Comentario más útil

@ 17sushmita Sí, definitivamente, adelante, ¡eso sería muy apreciado!

Todos 23 comentarios

¡Esto parece algo en mi timonera! Puedo dividirlo en subtemas en un momento en el que me siento por delante de mi trabajo.

Estaba probando esto localmente para convertirlo en un ftos, parece que el problema ya está solucionado. ¿Podría alguien confirmar que lo mismo ocurre por su parte ... @ noi5e tal vez lo resolvió en algún lugar de su proyecto ...

@cesswairimu ¡¡Hmm !! Creo que alguien más lo hizo 😅

@cesswairimu ¿ Alguien podría escribir una prueba para esto, si no consigo hacerlo? Eso es demasiado complicado para una FTO, pero creo que las pruebas de redacción pueden enseñar mucho a los solicitantes. Además, tal vez no deberíamos cerrar este problema hasta que se escriba una prueba

@ noi5e Estoy de acuerdo, actualizaré esto para que sea más un problema de escritura de prueba. Gracias

Hmm, no estoy seguro, ¿quizás la prueba pueda ser lo primero para confirmar si realmente está arreglado?

Debido a que solo podemos filtrar por uso, no en la definición de has_many , parece, y no veo un .where.not(status: 0) en estos:

https://github.com/publiclab/plots2/blob/ebf57e0cdd1dcc9d5cc884a15e7cd5b5bbe78390/app/views/notes/_comments.html.erb#L8

https://github.com/publiclab/plots2/blob/401874455490c6300270ef54490fe9452e0ca522/app/views/questions/show.html.erb#L69

https://github.com/publiclab/plots2/blob/ebf57e0cdd1dcc9d5cc884a15e7cd5b5bbe78390/app/views/notes/_comment.html.erb#L162

¿Qué piensas?

¡¡¡Gracias a todos!!! 💯

ah y supongo que en esos includes() , tendría que ser nombrado, así que tal vez ... .where('comments.status != 0') ?

Sí, creo que es correcto, consulte el uso aquí:

https://github.com/publiclab/plots2/blob/672d63ab11c2159e28d2cc502c47a3b3c83730b9/app/models/node.rb#L1114

@jywarren @cesswairimu @ noi5e ¿ Puedo trabajar en la redacción de pruebas para esto?

@ 17sushmita Sí, definitivamente, adelante, ¡eso sería muy apreciado!

Parece que las respuestas a los comentarios no se filtran por correo no deseado. Deberíamos ver este mensaje:

"¿Está seguro? El usuario ya no podrá iniciar sesión ni publicar, y su contenido se ocultará excepto los comentarios ". parece mal

@jywarren ¿Qué significa esto al decir que este mensaje parece incorrecto? ¿No se supone que debe mostrarse cuando el moderador intenta marcar el comentario como spam? Por favor, dale un poco más de contexto.

@ 17sushmita Estoy un poco confundido por eso también. Creo que tal vez Jeffrey quiso decir que el texto aparecía en amarillo en la imagen de abajo, en lugar de Moderate first-time comment . Si es así, parece incorrecto.

102243313-05b48f80-3ec9-11eb-919a-d2dd39d84c45

Mientras esperamos una aclaración, aún puede seguir adelante y escribir una prueba. Solo voy a publicar algunas sugerencias aquí que pueden ser útiles.

Para empezar, puede insertar un comentario de spam / primer póster en la base de datos de prueba que es una respuesta a otro comentario:

nodes(node_name).add_comment({
  uid: user_id,
  body: comment_text
  reply_to: parent_comment_id
  status: 0 # comment status: 0 for banned, 4 for first-time poster (a moderator has to approve the comment)
})

Luego, escriba el resto de la prueba desde allí, asegurándose de que el método que usamos para recuperar comentarios no obtenga respuestas a comentarios con estado 0 o 4.

¡Algo como eso! Probablemente tendrás que investigar un poco. Definitivamente, deje un comentario aquí si se queda atascado o si necesita algunos consejos sobre dónde buscar en la base de código. ¡Estamos aquí para ayudar!

@ noi5e , muchas gracias por ayudar 😃️ !! Necesito una aclaración más. ¿Necesito crear un nuevo archivo para las pruebas de respuesta a comentarios o realizar cambios en quizás /plots2/test/functional/admin_controller_test.rb o /plots2/test/system/spam2_test.rb o /plots2/test/functional/comment_controller_test.rb o cualquier otro archivo?

@ 17sushmita No estoy 100% seguro de esto, pero estoy pensando /test/functional/comment_controller_test.rb . El otro lugar en el que estaba pensando era una prueba unitaria para comentarios. ¿Pensamientos de alguien más?

Mientras tanto, siéntase libre de comenzar a trabajar en esto mientras esperamos que otros opinen.

@ 17sushmita No estoy 100% seguro de esto, pero estoy pensando /test/functional/comment_controller_test.rb . El otro lugar en el que estaba pensando era una prueba unitaria para comentarios. ¿Pensamientos de alguien más?

Mientras tanto, siéntase libre de comenzar a trabajar en esto mientras esperamos que otros opinen.

Gracias, comencé a escribir las pruebas, pero una cosa que observé es que incluso después de marcar el comentario como spam, sí aparece y según el software es correcto porque al marcarlo como spam, genera una advertencia como lo menciona @jywarren arriba "¿Estás seguro? El usuario ya no podrá iniciar sesión ni publicar, y su contenido se ocultará excepto los comentarios ". pero, ¿es realmente apropiado mostrar comentarios marcados como spam? 🤔️

¿Es realmente apropiado mostrar comentarios marcados como spam? 🤔️

¡No lo creo!

Este texto que mencionas es bastante interesante:

"¿Estás seguro? El usuario ya no podrá iniciar sesión ni publicar, y su contenido se ocultará excepto los comentarios "

Me hace pensar que quizás en el pasado, no moderamos los comentarios. Creo que ese texto está desactualizado.

Cualquiera que sea el caso, creo que todos estamos de acuerdo en que definitivamente deberíamos filtrar todos los comentarios. Para que podamos evitar los spambots que @jywarren mencionó originalmente .

Acabo de probar esto localmente y, para mí, parece que no se ha solucionado. Actualmente no estamos filtrando spam o RESPUESTAS a comentarios moderados por primera vez ... Tenga en cuenta que los comentarios regulares (que no son RESPUESTAS a otros comentarios) se están filtrando, por lo que esto solo se aplica a las respuestas. (Probé comentarios que NO son respuestas y están siendo moderados)

Voy a desglosar esto un poco más. A nivel local, creé una cuenta nueva y publiqué un comentario en una nota. Esto es lo que veo cuando publico un comentario. Hasta aquí todo bien:

Screen Shot 2021-03-22 at 11 39 30 AM

Como usuario, el mensaje _ "Pendiente de aprobación de los moderadores de la comunidad" _ me hace pensar que mi comentario no aparecerá públicamente.

Sin embargo, el comentario se ha manifestado públicamente! Cuando visito la misma nota en una ventana de incógnito que está desconectada del sitio, el comentario aparece exactamente como le apareció al usuario _cisco_:

Screen Shot 2021-03-22 at 11 43 21 AM

Prohibir al usuario _cisco_ tampoco parece cambiar mucho las cosas. El mensaje _ "Aprobación pendiente" _ desaparece, pero el comentario aún se puede ver desde una ventana de incógnito:

Screen Shot 2021-03-22 at 11 46 06 AM

Así que sí, esto definitivamente debe cambiar.

@ 17sushmita ¡ Adelante, sigue trabajando en esto!

Además, si aún no lo ha encontrado, tenemos un usuario _spammer_ prohibido ya creado en /test/fixtures/users.yml

@ noi5e Esa fue una explicación muy clara. Yo también probé de manera muy similar en mi sistema local y los resultados fueron los mismos, lo que me hizo pensar que sí. Entonces, primero trabajaré para eliminar los comentarios de spam y luego escribiré una prueba para ver si está arreglado o no.

Además, parece que las respuestas a los comentarios no aparecen actualmente en el panel de moderación de spam del administrador:

Screen Shot 2021-03-22 at 11 40 21 AM

Y si el usuario cisco publica una respuesta a un comentario, no los hace aparecer en Usuarios activos:

Screen Shot 2021-03-22 at 11 40 35 AM

¿Posible problema para el proyecto de moderación de correo no deseado de Outreachy mencionado en # 9257?

Gracias @ 17sushmita y @ noi5e por desempacar esto tan a fondo. Mis disculpas por la nota poco clara en mi mensaje original, pero @ noi5e es completamente correcto - solo necesitamos el mensaje más simple "Moderar el primer comentario".

filtrado de spam o comentarios moderados por primera vez RESPUESTAS

Y una gran trampa que aún está sin resolver para RESPUESTAS.

Súper agradezco toda su ayuda, los dos. 🎉

¡Notaré el problema del panel de spam en la descripción del nuevo proyecto!

Hola @jywarren @ noi5e , Perdón por volver a preguntar, pero tuve una confusión más. ¿Deberíamos mostrar un comentario que no es spam pero el usuario está prohibido? ¿Qué hacer en tales casos?

Sí, actualmente el estado de los usuarios prohibidos no afecta la visibilidad de sus
comentarios. ¡Gracias!

El miércoles 24 de marzo de 2021 a las 8:17 a.m. Sushmita @ . * > escribió:

Hola @jywarren https://github.com/jywarren @ noi5e
https://github.com/noi5e , Perdón por volver a preguntar pero tenía uno más
confusión. ¿Deberíamos mostrar un comentario que no es spam pero el usuario es
¿prohibido? ¿Qué hacer en tales casos?

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/publiclab/plots2/issues/8854#issuecomment-805774370 ,
o darse de baja
https://github.com/notifications/unsubscribe-auth/AAAF6J4WSMFWF64K72GXR5TTFHJ6NANCNFSM4U4TWDIQ
.

Además, parece que las respuestas a los comentarios no aparecen actualmente en el panel de moderación de spam del administrador:

Screen Shot 2021-03-22 at 11 40 21 AM

Y si el usuario cisco publica una respuesta a un comentario, no los hace aparecer en Usuarios activos:

Screen Shot 2021-03-22 at 11 40 35 AM

¿Posible problema para el proyecto de moderación de correo no deseado de Outreachy mencionado en # 9257?

@ noi5e No puedo reproducir el problema de las respuestas a los comentarios localmente. Inicié sesión como nuevo usuario, respondí a un comentario, cerré la sesión y luego inicié sesión como administrador y luego marqué la respuesta al comentario como spam. Fui a la página de moderación de spam y encontré la respuesta al comentario debajo de comentarios.

image

image

¿Se me escapa algo?

Hola @TildaDares , creo que este problema se ha solucionado en # 9381

Gracias @jcads

¿Fue útil esta página
0 / 5 - 0 calificaciones