Previsualizaciones en línea de PDFs

¿Es este un plugin o un componente?

No pude lograr el comportamiento deseado con un componente.

3 Me gusta

Puedes ver que es un plugin mirando el repositorio de GitHub. Si hay un archivo .rb, es un plugin :slight_smile:

3 Me gusta

Lo sé. Pero con el iPad y el Hub es mucho más fácil preguntar que empezar a saltar y luego buscar en GitHub. Pero la razón principal no es pura pereza (esta vez…), sino que el iPad tendrá poca memoria y el sistema operativo matará DiscourseHub.

Pero claro, decir el truco de .rb es, en general, una forma más informática y útil.

Podría confiar en @Thoka cuando dijo al principio que era un plugin, pero por alguna razón muy extraña no lo hice.

1 me gusta

¿Requiere esto el componente de tema o funciona sin él?

1 me gusta

No necesitas el tema. Funciona sin él. Tampoco hay opciones de configuración. Una vez instalado, todos los PDF se podrán leer directamente en el navegador.

2 Me gusta

Genial, gracias y gracias por crear este nuevo plugin. :vulcan_salute::smiling_face_with_sunglasses::+1:

2 Me gusta

@thoka ¡¡¡Te-rri-fiii-co!!! ¡¡¡Muchísimas gracias!!! :derek_pointing: :bouquet: :sparkling_heart:

3 Me gusta

Lo primero que hay que decir es que el componente funciona perfectamente conmigo con S3, mostrando previsualizaciones en línea.

Uno de los miembros de nuestro foro tiene un enfoque particularmente reacio al riesgo en internet. Está usando Firefox con la configuración de comportamiento de la aplicación cambiada para descargar archivos PDF en lugar de mostrarlos en el navegador.

Cuando abre un tema en particular donde se ha subido previamente el PDF, Firefox descarga automáticamente el archivo cada vez. Es técnicamente competente, aunque no puedo garantizar sus habilidades o experiencia, y ya ha intentado esto:

Sobrescribir el CSS del lado del cliente con “iframe.pdf-preview { display: none!important; }” oculta la ‘previsualización’, pero Firefox todavía descarga el blob.

La respuesta obvia es cambiar la configuración del navegador para previsualizar el archivo en Firefox, pero no es mi lugar decirle a otros cómo mantener su propio perfil de seguridad en línea, al menos no sin intentar encontrar otra solución. ¿Alguna idea?

1 me gusta

Podrías crear otro tema que sea seleccionable por el usuario y no incluir el componente de tema en ese tema. El usuario necesitaría seleccionar el tema desde su perfil.

4 Me gusta

Esa es una solución alternativa interesante, pero quizás un poco como “tirar al niño con el agua del baño”. :slightly_smiling_face:

Tienen la opción de usar el tema Redditish. Casi todo el mundo parece querer quedarse con lo familiar. Lo tendré en cuenta.

1 me gusta

Estás tratando con un usuario que está rompiendo intencionalmente tu sitio y luego se queja de ello. Si no quiere el pdf en línea, ¿cómo le das la oportunidad de no tenerlos tirando nada?

2 Me gusta

Se está quejando de la descarga repetida de un PDF que es una consecuencia de su elección de la configuración de su navegador preferido. Basándose en el dicho de que ‘no se puede complacer a todo el mundo todo el tiempo’, tendrá que vivir con esto.

Nada de lo que haga romperá el sitio para nadie más. Si encuentra una manera de hacer que algo funcione para él, lo llamaría un hack legítimo.

3 Me gusta

Hola,

¿Hay alguna novedad sobre la nueva pestaña?

Gracias.

1 me gusta

Estamos utilizando Discourse send PDF inline para leer archivos PDF cargados localmente en el navegador.

5 Me gusta

hola
esta es la vista previa de mi PDF

estos son los errores de la consola





\u003e Bloqueado Solicitud de Origen Cruzado: La Política del Mismo Origen prohíbe la lectura del recurso remoto en https://cdn.my_site.com/original/1X/0d281938d3ff2377541704cab6ba1c4408420733.pdf. (Razón: Falta la cabecera CORS ‘Access-Control-Allow-Origin’). Código de estado: 200.

el problema es que una imagen funciona al 100%
https://cdn.my_site.com/optimized/1X/b8e363026da621558d8c2a8159a4a7671eaf0285_2_1035x685.jpeg

este enlace PDF con vista previa rota
https://my_site.com/uploads/short-url/1So7iQsrmIZKLQ6UGI86B1cOqD9.pdf

estoy usando CloudFront como CDN.

aquí está la configuración de s3

mi sitio S3
[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "GET"
        ],
        "AllowedOrigins": [
            "http://my_site.com",
            "https://my-test-site.site",    # mi sitio de prueba usa el mismo bucket.
            "https://cdn.my_site.com",
            "https://URL.cloudfront.net"
        ],
        "ExposeHeaders": [
            "Access-Control-Allow-Origin"
        ]
    }
]

me falta algo aquí…

1 me gusta

Echa un vistazo a la configuración de administración de origen CORS.

1 me gusta

añadí mi cdn.my_site a cors origin

/admin/site_settings/category/all_results?filter=cors origin

¡o te referías a otra cosa!

3 Me gusta

Eso es lo que quise decir. Si eso no lo solucionó, entonces tendrás que investigar más. Hay algunas discusiones en este tema, ¡búscalas y dinos cómo te va! Luego podríamos actualizar la primera publicación con una solución.

3 Me gusta

Lo arreglé, pero casi pierdo la cabeza.

Hice un montón de “reconstruir la aplicación” e incluso reinstalé el propio Ubuntu. No estoy seguro de qué estaba mal. En el proceso, arreglé la carga de activos a AWS S3.

Luego seguí intentándolo con el mismo PDF sobre el mismo tema :angry: :angry: sin solución.

Finalmente me rendí, y más tarde subí el PDF a otro tema y funcionó.

1 me gusta