Página 1 de 1

Ocultar enlaces pero no miniaturas

Publicado: 04 Sep 2011, 14:29
por Luprix
Hola.

Un saludo al foro. Aunque es mi primer post, llevo leyéndoos desde hace tiempo. Enhorabuena y gracias por vuestro trabajo.

Estoy usando el Mod de ThE KuKa ( http://www.phpbb-es.com/foro/guias-phpb ... 16095.html ), y lo utilizo para descargar imágenes usando:

Código: Seleccionar todo

[url=http://misitio.tld/imagen_completa.jpg][img]http://misitio.tld/imagen_miniatura.jpg[/img][/url]
Este Mod substituye todo el contenido dentro de las etiquetas URL y oculta también las miniaturas.
¿Cómo podría hacer para que no se ocultara la imagen en miniatura a los Invitados?

Re: Ocultar enlaces pero no miniaturas

Publicado: 04 Sep 2011, 14:33
por zoby

Muevo a Soporte phpBB3, ya que en el foro de Tutoriales no se da soporte :wink:


Re: Ocultar enlaces pero no miniaturas

Publicado: 04 Sep 2011, 17:57
por Luprix
zoby escribió:

Muevo a Soporte phpBB3, ya que en el foro de Tutoriales no se da soporte :wink:


Oido cocina. Gracias.

Re: Ocultar enlaces pero no miniaturas

Publicado: 05 Sep 2011, 01:32
por Luprix
Me respondo a mí mismo. Me he puesto las pilas y he reformado el MOD.

Por si a alguien le sirve:

en viewtopic.php, cambiar:

Código: Seleccionar todo

$message = preg_replace( '/<.*href="(.*?)">(.*?)(<\/a>)/', '<a href="ucp.php?mode=register">'.$user->lang["BBCODE_GIZLI_LINK"].'</a>', $message );
por:

Código: Seleccionar todo

$message = preg_replace( '/<.*href="(.*?)">/', '<a href="ucp.php?mode=register">', $message );
en includes/bbcode.php, cambiar:

Código: Seleccionar todo

function bbcode_tpl_replace($tpl_name, $tpl)
   {
      global $user;

      static $replacements = array(
         'quote_username_open'   => array('{USERNAME}'   => '$1'),
         'color'               => array('{COLOR}'      => '$1', '{TEXT}'         => '$2'),
         'size'               => array('{SIZE}'      => '$1', '{TEXT}'         => '$2'),
         'img'               => array('{URL}'      => '$1'),
         'flash'               => array('{WIDTH}'      => '$1', '{HEIGHT}'         => '$2', '{URL}'   => '$3'),
         'url'               => array('{URL}'      => '$1', '{DESCRIPTION}'   => '$2'),
         'email'               => array('{EMAIL}'      => '$1', '{DESCRIPTION}'   => '$2')
      );

      static $replacements2 = array(
         'quote_username_open'   => array('{USERNAME}'   => '$1'),
         'color'               => array('{COLOR}'      => '$1', '{TEXT}'         => '$2'),
         'size'               => array('{SIZE}'      => '$1', '{TEXT}'         => '$2'),
         'img'               => array('{URL}'      => '$1'),
         'flash'               => array('{WIDTH}'      => '$1', '{HEIGHT}'         => '$2', '{URL}'   => '$3'),
         'url'               => array('{URL}'      => 'ucp.php?mode=register', '{DESCRIPTION}'   => 'warn_link'),
         'email'               => array('{EMAIL}'      => '$1', '{DESCRIPTION}'   => '$2')
      );

      $tpl = preg_replace('/{L_([A-Z_]+)}/e', "(!empty(\$user->lang['\$1'])) ? \$user->lang['\$1'] : ucwords(strtolower(str_replace('_', ' ', '\$1')))", $tpl);

      if ($user->data['user_id'] != ANONYMOUS)
      {
         if (!empty($replacements[$tpl_name]))
         {
            $tpl = strtr($tpl, $replacements[$tpl_name]);
         }
      }
      else
      {
         if (!empty($replacements2[$tpl_name]))
         {
            $tpl = strtr($tpl, $replacements2[$tpl_name]);
         }
         $tpl = str_replace("warn_link", $user->lang["BBCODE_GIZLI_LINK"], $tpl);
      }
      
      return trim($tpl);
   }	
por:

Código: Seleccionar todo

function bbcode_tpl_replace($tpl_name, $tpl)
   {
      global $user;

      static $replacements = array(
         'quote_username_open'   => array('{USERNAME}'   => '$1'),
         'color'               => array('{COLOR}'      => '$1', '{TEXT}'         => '$2'),
         'size'               => array('{SIZE}'      => '$1', '{TEXT}'         => '$2'),
         'img'               => array('{URL}'      => '$1'),
         'flash'               => array('{WIDTH}'      => '$1', '{HEIGHT}'         => '$2', '{URL}'   => '$3'),
         'url'               => array('{URL}'      => '$1', '{DESCRIPTION}'   => '$2'),
         'email'               => array('{EMAIL}'      => '$1', '{DESCRIPTION}'   => '$2')
      );

      static $replacements2 = array(
         'quote_username_open'   => array('{USERNAME}'   => '$1'),
         'color'               => array('{COLOR}'      => '$1', '{TEXT}'         => '$2'),
         'size'               => array('{SIZE}'      => '$1', '{TEXT}'         => '$2'),
         'img'               => array('{URL}'      => '$1'),
         'flash'               => array('{WIDTH}'      => '$1', '{HEIGHT}'         => '$2', '{URL}'   => '$3'),
         'url'               => array('{URL}'      => 'ucp.php?mode=register', '{DESCRIPTION}'   => '$2'),
         'email'               => array('{EMAIL}'      => '$1', '{DESCRIPTION}'   => '$2')
      );

      $tpl = preg_replace('/{L_([A-Z_]+)}/e', "(!empty(\$user->lang['\$1'])) ? \$user->lang['\$1'] : ucwords(strtolower(str_replace('_', ' ', '\$1')))", $tpl);

      if ($user->data['user_id'] != ANONYMOUS)
      {
         if (!empty($replacements[$tpl_name]))
         {
            $tpl = strtr($tpl, $replacements[$tpl_name]);
         }
      }
      else
      {
         if (!empty($replacements2[$tpl_name]))
         {
            $tpl = strtr($tpl, $replacements2[$tpl_name]);
         }
         $tpl = str_replace("warn_link", $user->lang["BBCODE_GIZLI_LINK"], $tpl);
      }
      
      return trim($tpl);
   }	
Parece que funciona correctamente tanto con enlaces de texto como con imágenes.

Re: Ocultar enlaces pero no miniaturas  Tema Solucionado

Publicado: 05 Sep 2011, 04:10
por Luprix
En mi anterior post, en la modificación de includes/bbcode.php, en cambiar por, no he puesto correctamente el modificado.

cambiar por:

Código: Seleccionar todo

function bbcode_tpl_replace($tpl_name, $tpl)
   {
      global $user;

      static $replacements = array(
         'quote_username_open'   => array('{USERNAME}'   => '$1'),
         'color'               => array('{COLOR}'      => '$1', '{TEXT}'         => '$2'),
         'size'               => array('{SIZE}'      => '$1', '{TEXT}'         => '$2'),
         'img'               => array('{URL}'      => '$1'),
         'flash'               => array('{WIDTH}'      => '$1', '{HEIGHT}'         => '$2', '{URL}'   => '$3'),
         'url'               => array('{URL}'      => '$1', '{DESCRIPTION}'   => '$2'),
         'email'               => array('{EMAIL}'      => '$1', '{DESCRIPTION}'   => '$2')
      );

      static $replacements2 = array(
         'quote_username_open'   => array('{USERNAME}'   => '$1'),
         'color'               => array('{COLOR}'      => '$1', '{TEXT}'         => '$2'),
         'size'               => array('{SIZE}'      => '$1', '{TEXT}'         => '$2'),
         'img'               => array('{URL}'      => '$1'),
         'flash'               => array('{WIDTH}'      => '$1', '{HEIGHT}'         => '$2', '{URL}'   => '$3'),
         'url'               => array('{URL}'      => 'ucp.php?mode=register', '{DESCRIPTION}'   => '$2'),
         'email'               => array('{EMAIL}'      => '$1', '{DESCRIPTION}'   => '$2')
      );

      $tpl = preg_replace('/{L_([A-Z_]+)}/e', "(!empty(\$user->lang['\$1'])) ? \$user->lang['\$1'] : ucwords(strtolower(str_replace('_', ' ', '\$1')))", $tpl);

      if ($user->data['user_id'] != ANONYMOUS)
      {
         if (!empty($replacements[$tpl_name]))
         {
            $tpl = strtr($tpl, $replacements[$tpl_name]);
         }
      }
      else
      {
         if (!empty($replacements2[$tpl_name]))
         {
            $tpl = strtr($tpl, $replacements2[$tpl_name]);
         }
      }
      return trim($tpl);
   }