Bienvenido, Invitado
Nombre de Usuario: Contraseña: Recordarme

TEMA: Esconder Links para usuarios no registrados

Esconder Links para usuarios no registrados 9 años 9 meses ago #15253

  • romanamr
  • Avatar de romanamr
  • Offline
  • Publicador
  • Mensajes: 59
  • Karma: 0
Hola, tengo instalado la version: Kunena 1.5.8 (Kunena JoniJnm Edition 1.4.1) | 2009-12-18 | 1863 [ Whisper ]
El problema es que los links no se ocultan para los usuarios no registrados, hay que activar algo?

Gracias! :)
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15266

  • JoniJnm
  • Avatar de JoniJnm
  • Offline
  • Administrador
  • Mensajes: 4579
  • Gracias recibidas 544
  • Karma: 160
Es normal que no se oculten. Si quieres que se oculten deberías usar el bbcode [hide/]
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15273

  • romanamr
  • Avatar de romanamr
  • Offline
  • Publicador
  • Mensajes: 59
  • Karma: 0
Perdón creo que formulé mal la pregunta, no quiero que se oculte, lo que quiero es que en vez de que se vean los links, se vea un texto que diga que debes estar registrado para ver los links, yo lo tenía así con la versión que utilizaba, la de Kunena Spanish, pero ahora no encuentro como configurarlo en la versión JoniJnm :(
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15279

  • JoniJnm
  • Avatar de JoniJnm
  • Offline
  • Administrador
  • Mensajes: 4579
  • Gracias recibidas 544
  • Karma: 160
Como digo, deberías usar la etiqueta [hide/] para que no lo vean los no registrados. Pero si quieres que se haga automático, en el archivo lib/kunena.parser.php cambia
case 'url':
                $tempstr = kunena_htmlspecialchars($between, ENT_QUOTES);
                if(substr($tempstr, 0, 7)!='http://') {
                  $tempstr = 'http://'.$tempstr;
                }
                if (JoniJnm_API::plugin_exists("frameset")) {
					$frameset =& JoniJnm_API::load("frameset");
					$tag_new = "<a href='".$frameset->getUrl($tempstr)."' target=\"_blank\">".$tempstr.'</a>';
				}
				else {
					$tag_new = "<a href='".$tempstr."' rel=\"nofollow\" target=\"_blank\">".$between.'</a>';
				}
                return TAGPARSER_RET_REPLACED;
                break;
 
//POR
            case 'url':
                $user =& JFactory::getDBO();
				if ($user->id) {
					$tempstr = kunena_htmlspecialchars($between, ENT_QUOTES);
					if(substr($tempstr, 0, 7)!='http://') {
					  $tempstr = 'http://'.$tempstr;
					}
					if (JoniJnm_API::plugin_exists("frameset")) {
						$frameset =& JoniJnm_API::load("frameset");
						$tag_new = "<a href='".$frameset->getUrl($tempstr)."' target=\"_blank\">".$tempstr.'</a>';
					}
					else {
						$tag_new = "<a href='".$tempstr."' rel=\"nofollow\" target=\"_blank\">".$between.'</a>';
					}
				}
				else {
					if ($fbConfig->fb_profile == 'cb') {
						$l = CKunenaCBProfile::getLoginURL();
						$r = CKunenaCBProfile::getRegisterURL();
					}
					else if ($fbConfig->fb_profile == 'jomsocial') {
						$l = JRoute::_('index.php?option=com_community&amp;view=frontpage');
						$r = JRoute::_('index.php?option=com_community&amp;view=register');
					}
					else {
						$l = JRoute::_('index.php?option=com_user&amp;view=login');
						$r = JRoute::_('index.php?option=com_user&amp;task=register');
					}
					$tag_new = '<b>' . str_replace("%l", $l, str_replace("%r", $r, JText::_("KUNENA_JONI_BBCODE_HIDE_ID0"))) . '</b>';
				}
                return TAGPARSER_RET_REPLACED;
                break;

Si no se cambia avísame (prueba con urls con el bbcode [url/])
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15283

  • romanamr
  • Avatar de romanamr
  • Offline
  • Publicador
  • Mensajes: 59
  • Karma: 0
Ya hice las pruebas reemplazando el código pero los nombres de texto con enlace siguen viendose para los usuarios no registrados.
También probé estas formas:
Con [url/] sin texto: Al hacerlo el texto desaparece tanto para usuarios registrados y no registrados, para ambos desaparece (No se ve nada).
Con [url/] con texto: Al hacerlo se ve el texto y el link quedan descubiertos tanto para registrados y no registrados.
:(
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15371

  • romanamr
  • Avatar de romanamr
  • Offline
  • Publicador
  • Mensajes: 59
  • Karma: 0
Hola Joni,

Hice unas pruebas en otro servidor con otra cuenta y otro dominio, instalé Kunena directo de la web Kunena sin modificaciones y puse un link y me desconecté, el link es visible para usuarios no registrados.

Luego instalé la versión de Kunena Spanish y hice lo mismo y con esa versión si funciona, me sale esto cuando el usuario no está registrado:

Enlaces ocultos para usuarios no registrados. Inicie sesión o regístrese Aquí

Y hasta ahora no logro hacerlo con Kunena Jonijnm Edition. :(

Cual crees que pueda ser el problema?

Se que andas muy ocupado, me respondes cuando puedas ;)
Un abrazo!
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15395

  • JoniJnm
  • Avatar de JoniJnm
  • Offline
  • Administrador
  • Mensajes: 4579
  • Gracias recibidas 544
  • Karma: 160
Ok, a parte del cambio que te dije arriba, haz este (en el mismo archivo):
case 'url':
                $task->autolink_disable--;
                // www. > http://www.
                if(isset($tag->options['default'])) {
                    $tempstr = $tag->options['default'];
                    if(substr($tempstr, 0, 4)=='www.') {
                      $tempstr = 'http://'.kunena_htmlspecialchars($tempstr, ENT_QUOTES);
                    }
					if (JoniJnm_API::plugin_exists("frameset")) {
						$frameset =& JoniJnm_API::load("frameset");
						$tns = "<a href='".$frameset->getUrl($tempstr)."' target=\"_blank\">";
					}
                    else {
						$tns = "<a href='".$tempstr."' rel=\"nofollow\" target=\"_blank\">"; 
					}
					$tne = '</a>';
                    return TAGPARSER_RET_REPLACED;
                }
                break;
 
//Por
	case 'url':
		$task->autolink_disable--;
		// www. > http://www.
		if(isset($tag->options['default'])) {
			$tempstr = $tag->options['default'];
			if(substr($tempstr, 0, 4)=='www.')
				$tempstr = 'http://'.kunena_htmlspecialchars($tempstr, ENT_QUOTES);
			if (JoniJnm_API::plugin_exists("frameset")) {
				$frameset =& JoniJnm_API::load("frameset");
				$tns = "<a href='".$frameset->getUrl($tempstr)."' target=\"_blank\">";
			}
			else
				$tns = "<a href='".$tempstr."' rel=\"nofollow\" target=\"_blank\">"; 
			$tne = '</a>';
			$user =& JFactory::getDBO();
			if (!$user->id) {
				if ($fbConfig->fb_profile == 'cb') {
					$l = CKunenaCBProfile::getLoginURL();
					$r = CKunenaCBProfile::getRegisterURL();
				}
				else if ($fbConfig->fb_profile == 'jomsocial') {
					$l = JRoute::_('index.php?option=com_community&amp;view=frontpage');
					$r = JRoute::_('index.php?option=com_community&amp;view=register');
				}
				else {
					$l = JRoute::_('index.php?option=com_user&amp;view=login');
					$r = JRoute::_('index.php?option=com_user&amp;task=register');
				}
				$tag_new = '<b>' . str_replace("%l", $l, str_replace("%r", $r, JText::_("KUNENA_JONI_BBCODE_HIDE_ID0"))) . '</b>';
			}
 
			return TAGPARSER_RET_REPLACED;
 
		}
 
		break;
Como dije en el otro lado, prueba con enlaces directos y con enlaces con [url/]
Última Edición: 9 años 9 meses ago por JoniJnm.
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15409

  • NeGRa
  • Avatar de NeGRa
  • Offline
  • Publicador
  • Mensajes: 68
  • Gracias recibidas 9
  • Karma: 6
Acabo de probarlo porque también me interesa y no me funciona.

Definí la línea KUNENA_JONI_BBCODE_HIDE_ID0 en el kunena.spanish.php pero nada, me siguen saliendo las urls tanto en www... como con [url] eso sí las www corta el http://www.
Última Edición: 9 años 9 meses ago por NeGRa.
El administrador ha desactivado la escritura pública.

Re: Esconder Links para usuarios no registrados 9 años 9 meses ago #15418

  • romanamr
  • Avatar de romanamr
  • Offline
  • Publicador
  • Mensajes: 59
  • Karma: 0
Gracias por la respuesta Joni! :)

Acabo de probarlo y como dijo NeGRa no funciona, se siguen viendo los links y los links tras un texto. Lo que si funciona es poner enlaces con "hide" Pero ese no es el problema, la idea es que cada vez que alguien deje un link o un texto con un link escondido, este link no sea visible para los usuarios que no están registrados, sin que cada usuario tenga que hacer un hide a ca link que quiera poner, creo que nadie lo haría, como te comenté ante en la version de KS lo tenían así, quizas no es tan fácil como yo me imagino como copiar el codigo de KS y pegarlo, me imgino que es mucho mas complicado que eso, y quizás la solución esté en el rincón mas oscuro del código! jajaja :laugh:
Te hagoun ejemplo de que quiero esconder para usuarios no registrados:

1. www.tuweb.com
2. TU WEB


Te adjunto una imágen de como se ve con KS, eso es lo que estoy buscando :P
Última Edición: 9 años 9 meses ago por romanamr. Razón: La imagen no se podía adjuntar =P
El administrador ha desactivado la escritura pública.
Tiempo de carga de la página: 0.190 segundos