Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con wysisyg

Estas en el tema de Problema con wysisyg en el foro de PHP en Foros del Web. Hola, buen dia. Probablemente esto sea algo muy sencillo pero no tengo idea de como hacerlo. Me descargue el TinyMCE, el cual es un codigo ...
  #1 (permalink)  
Antiguo 13/05/2013, 15:41
 
Fecha de Ingreso: enero-2013
Mensajes: 23
Antigüedad: 11 años, 10 meses
Puntos: 0
Exclamación Problema con wysisyg

Hola, buen dia. Probablemente esto sea algo muy sencillo pero no tengo idea de como hacerlo.

Me descargue el TinyMCE, el cual es un codigo para poner en un sitio web, el cual le permite al usuario crear HTML. Normalmente es llamado WYSIWYG.

Tengo una simple duda, ¿como hago que todos los links que pongan mediante este editor solo sean visibles si estan logeados en su cuenta?

Por ejemplo, tengo un sitio web donde las personas comparten archivos, pero solo quiero que los archivos compartidos puedan ser visibles por personas que esten logeadas en el sitio.
  #2 (permalink)  
Antiguo 13/05/2013, 15:43
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: Problema con wysisyg

Eso no tiene relación con el WYSIWYG, TinyMCE es sólo un editor de texto y no más, tampoco va a resolver nada más por ti.

Esa programación debes hacerla tu, justo en el momento en el que imprimes tu contenido debes procesar los enlaces para que reaccionen como tu quieras, ¿o de verdad pensaste que el WYSIWYG lo iba a hacer por arte de magia?

Hacer una función para procesar los enlaces es pan comido con expresiones regulares, que claro, para que se muestren o no ya depende de la lógica de tu sistema, así que supongo esa parte ya la tienes controlada.

Muestra lo que tienes y vamos viendo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 13/05/2013, 15:50
 
Fecha de Ingreso: enero-2013
Mensajes: 23
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Problema con wysisyg

Cita:
Iniciado por pateketrueke Ver Mensaje
Eso no tiene relación con el WYSIWYG, TinyMCE es sólo un editor de texto y no más, tampoco va a resolver nada más por ti.

Esa programación debes hacerla tu, justo en el momento en el que imprimes tu contenido debes procesar los enlaces para que reaccionen como tu quieras, ¿o de verdad pensaste que el WYSIWYG lo iba a hacer por arte de magia?

Hacer una función para procesar los enlaces es pan comido con expresiones regulares, que claro, para que se muestren o no ya depende de la lógica de tu sistema, así que supongo esa parte ya la tienes controlada.

Si, lo que tengo duda es con la programacion necesaria, por ejemplo:

<?php
if($login==true){echo 'Links...links..links...';}
else {echo 'You have to login to see the links.'}
?>

Pero como la idea es que sea como un foro, yo no puedo escribir ese codigo, ya que la persona que pone la publicacion es la que escribe. Me imagino deberia poner una variable para los links o algo asi. Pero realmente no tengo idea, me puedes asesorar un poco?

Gracias.
  #4 (permalink)  
Antiguo 13/05/2013, 15:59
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: Problema con wysisyg

Claro, esa parte de tu lógica podría ir así.
Código PHP:
Ver original
  1. if (! is_logged()) {
  2.   $content = hide_links($content);
  3. }
  4.  
  5. echo $content;

En el ejemplo $content sería lo que los usuarios publican, con enlaces y todo lo demás.

Al no haber iniciado sesión se procesa $content mediante la función hide_links(), que haría precisamente el reemplazo de los mismos por alguna leyenda de tu elección.

La función de manera muy simple sería así:

Código PHP:
Ver original
  1. function hide_links($text)
  2. {
  3.   return preg_replace('/\w+:\/\/\S+/', '[HIDDEN LINK]', $text);
  4. }

Ojalá te sirva.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 13/05/2013, 16:14
 
Fecha de Ingreso: enero-2013
Mensajes: 23
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Problema con wysisyg

Cita:
Iniciado por pateketrueke Ver Mensaje
Claro, esa parte de tu lógica podría ir así.
Código PHP:
Ver original
  1. if (! is_logged()) {
  2.   $content = hide_links($content);
  3. }
  4.  
  5. echo $content;

En el ejemplo $content sería lo que los usuarios publican, con enlaces y todo lo demás.

Al no haber iniciado sesión se procesa $content mediante la función hide_links(), que haría precisamente el reemplazo de los mismos por alguna leyenda de tu elección.

La función de manera muy simple sería así:

Código PHP:
Ver original
  1. function hide_links($text)
  2. {
  3.   return preg_replace('/\w+:\/\/\S+/', '[HIDDEN LINK]', $text);
  4. }

Ojalá te sirva.

Gracias, si me sirvió. Un saludo.

Etiquetas: links, tinymce, wysiwyg
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:51.