Erro na Mod

Suporte aos MODs/Hacks para phpBB.
alessfrei
Novato
Novato
Mensagens: 26
Registrado em: 24 Jun 2006, 08:17
Localização: Belo Horizonte
Contato:

Erro na Mod

  • Favoritar esta postagem
  • Mensagem por alessfrei »

    Olá pessoal!

    Instalei a mod Adaptive_Hide_BBcodes_1_0_2 do link http://www.phpbb.com/community/viewtopic.php?t=1501835

    E estou tendo um problema ao acessar a pagina como visitante!
    Esta dando o erro:
    Fatal error: Call to undefined method user::lang() in /home/linuxwin/public_html/forum/includes/bbcode.php on line 124


    bbcode.php

    Código: Selecionar todos

    <?php
    /**
    *
    * @package phpBB3
    * @version $Id: bbcode.php,v 1.114 2007/10/07 10:34:45 naderman Exp $
    * @copyright (c) 2005 phpBB Group
    * @license http://opensource.org/licenses/gpl-license.php GNU Public License
    *
    */
    
    /**
    * @ignore
    */
    if (!defined('IN_PHPBB'))
    {
    	exit;
    }
    
    /**
    * BBCode class
    * @package phpBB3
    */
    class bbcode
    {
    	var $bbcode_uid = '';
    	var $bbcode_bitfield = '';
    	var $bbcode_cache = array();
    	var $bbcode_template = array();
    
    	var $bbcodes = array();
    
    	var $template_bitfield;
    	var $template_filename = '';
    
    	/**
    	* Constructor
    	* Init bbcode cache entries if bitfield is specified
    	*/
    	function bbcode($bitfield = '')
    	{
    		if ($bitfield)
    		{
    			$this->bbcode_bitfield = $bitfield;
    			$this->bbcode_cache_init();
    		}
    	}
    
    	/**
    	* Second pass bbcodes
    	*/
    	function bbcode_second_pass(&$message, $bbcode_uid = '', $bbcode_bitfield = false)
    	{
    global $auth, $db, $user, $row, $author_id, $group_ids; // Adaptive Hide BBcodes MOD
    
    		if ($bbcode_uid)
    		{
    			$this->bbcode_uid = $bbcode_uid;
    		}
    
    		if ($bbcode_bitfield !== false)
    		{
    			$this->bbcode_bitfield = $bbcode_bitfield;
    
    			// Init those added with a new bbcode_bitfield (already stored codes will not get parsed again)
    			$this->bbcode_cache_init();
    		}
    
    		if (!$this->bbcode_bitfield)
    		{
    			// Remove the uid from tags that have not been transformed into HTML
    			if ($this->bbcode_uid)
    			{
    				$message = str_replace(':' . $this->bbcode_uid, '', $message);
    			}
    
    			return;
    		}
    
    		$str = array('search' => array(), 'replace' => array());
    		$preg = array('search' => array(), 'replace' => array());
    
    		$bitfield = new bitfield($this->bbcode_bitfield);
    		$bbcodes_set = $bitfield->get_all_set();
    
    		$undid_bbcode_specialchars = false;
    		foreach ($bbcodes_set as $bbcode_id)
    		{
    			if (!empty($this->bbcode_cache[$bbcode_id]))
    			{
    				foreach ($this->bbcode_cache[$bbcode_id] as $type => $array)
    				{
    					foreach ($array as $search => $replace)
    					{
    						${$type}['search'][] = str_replace('$uid', $this->bbcode_uid, $search);
    						${$type}['replace'][] = $replace;
    					}
    
    					if (sizeof($str['search']))
    					{
    						$message = str_replace($str['search'], $str['replace'], $message);
    						$str = array('search' => array(), 'replace' => array());
    					}
    
    					if (sizeof($preg['search']))
    					{
    						// we need to turn the entities back into their original form to allow the
    						// search patterns to work properly
    						if (!$undid_bbcode_specialchars)
    						{
    							$message = str_replace(array('&#58;', '&#46;'), array(':', '.'), $message);
    							$undid_bbcode_specialchars = true;
    						}
    // Adaptive Hide BBcodes MOD
    						if (substr_count($preg['search'][0], 'hide'))
    						{
    							$poster_id = isset($row['user_id']) ? $row['user_id'] : (isset($row['poster_id']) ? $row['poster_id'] : (isset($author_id) ? $author_id : 2));
    							if (!isset($row['forum_id']))
    							{
    								$row['forum_id'] = 0;
    							}
    							$user->setup('mods/adaptive_hide_bbcodes');
    							if (substr_count($preg['search'][0], '[hide:') && ($user->data['user_id'] == ANONYMOUS || $user->data['is_bot'] == 1))
    							{							
    								$message = preg_replace($preg['search'], array(0 => '[hide:' . $this->bbcode_uid . ']' . $user->lang('ADAPT_HIDE_GUEST') . '[/hide:' . $this->bbcode_uid . ']'), $message);
    							}
    							if (substr_count($preg['search'][0], '[hide\=') && !$auth->acl_get('m_edit', $row['forum_id']) && $user->data['user_id'] != $poster_id)
    							{
    								$sql = 'SELECT group_id 
    									FROM ' . USER_GROUP_TABLE . ' 
    									WHERE user_id = ' . (int)$poster_id . ' 
    									AND user_pending = 0';
    								$result = $db->sql_query($sql);
    								$poster_groups = array();
    								while ($sql_row = $db->sql_fetchrow($result))
    								{
    									$poster_groups[] = $sql_row['group_id'];
    								}
    								$db->sql_freeresult($result);
    								$ignore_groups = explode(',', ADAPT_HIDE_IGNORE_LIMIT_GROUPS);
    								$ignore_limit = false;
    								foreach ($poster_groups as $poster_group)
    								{
    									if (in_array($poster_group, $ignore_groups))
    									{
    										$ignore_limit = true;
    										break;
    									}
    								}
    								$sql = 'SELECT user_posts 
    									FROM ' . USERS_TABLE . ' 
    									WHERE user_id = ' . (int)$poster_id;
    								$result = $db->sql_query($sql);
    								$sql_row = $db->sql_fetchrow($result);
    								$db->sql_freeresult($result);
    								$poster_posts = $sql_row['user_posts'];
    								$hide_matches = array();
    								preg_match_all($preg['search'][0], $message, $hide_matches);
    								foreach ($hide_matches[1] as $key => $posts)
    								{
    									if (!$ignore_limit)
    									{
    										$posts = min($posts, ADAPT_HIDE_LIMIT_POSTS, $poster_posts);
    									}
    									$hide_cause = false;
    									if ($user->data['user_id'] == ANONYMOUS || $user->data['is_bot'] == 1)
    									{
    										if ($posts == 0)
    										{
    											$hide_cause = $user->lang('ADAPT_HIDE_GUEST');
    										}
    										else
    										{
    											$hide_cause = sprintf($user->lang('ADAPT_HIDE_GUEST_POSTS'), $posts);
    										}
    									}
    									elseif ($user->data['user_posts'] < $posts)
    									{
    										$hide_cause = sprintf($user->lang('ADAPT_HIDE_POSTS'), $posts);
    									}
    									if ($hide_cause)
    									{
    										$message = str_replace($hide_matches[0][$key], '[hide=' . $posts . ':' . $this->bbcode_uid . ']' . $hide_cause . '[/hide:' . $this->bbcode_uid . ']', $message);
    									}
    								}
    							}
    							if (substr_count($preg['search'][0], '[ghide') && !$auth->acl_get('m_edit', $row['forum_id']) && $user->data['user_id'] != $poster_id)
    							{							
    								if (!sizeof($group_ids))
    								{
    									$sql = 'SELECT group_id 
    										FROM ' . USER_GROUP_TABLE . ' 
    										WHERE user_id = ' . (int)$user->data['user_id'] . ' 
    										AND user_pending = 0';
    									$result = $db->sql_query($sql);
    									$group_ids = array();
    									while ($sql_row = $db->sql_fetchrow($result))
    									{
    										$group_ids[] = $sql_row['group_id'];
    									}
    									$db->sql_freeresult($result);
    								}
    						
    								if (substr_count($preg['search'][0], '[ghide:'))
    								{
    									$sql = 'SELECT group_id 
    										FROM ' . USERS_TABLE . ' 
    										WHERE user_id = ' . (int)$poster_id;
    									$result = $db->sql_query($sql);
    									$sql_row = $db->sql_fetchrow($result);
    									$db->sql_freeresult($result);
    									$poster_group = $sql_row['group_id'];
    									if (!in_array($poster_group, $group_ids))
    									{
    										$message = preg_replace($preg['search'], array(0 => '[ghide:' . $this->bbcode_uid . ']' . $user->lang('ADAPT_HIDE_GROUPS') . '[/ghide:' . $this->bbcode_uid . ']'), $message);
    									}
    								}
    								if (substr_count($preg['search'][0], '[ghide\='))
    								{
    									$hide_matches = array();
    									preg_match_all($preg['search'][0], $message, $hide_matches);
    									foreach ($hide_matches[1] as $key => $groups)
    									{
    										$groups_ary = explode(',', $groups);
    										$ghide = true;
    										foreach ($groups_ary as $group)
    										{
    											if (in_array($group, $group_ids))
    											{
    												$ghide = false;
    												break;
    											}
    										}
    										if ($ghide)
    										{
    											$message = str_replace($hide_matches[0][$key], '[ghide=' . $groups . ':' . $this->bbcode_uid . ']' . $user->lang('ADAPT_HIDE_GROUPS') . '[/ghide:' . $this->bbcode_uid . ']', $message);
    										}
    									}
    								}
    							}
    						}
    						// end Adaptive Hide BBcodes MOD
    
    
    						$message = preg_replace($preg['search'], $preg['replace'], $message);
    						$preg = array('search' => array(), 'replace' => array());
    					}
    				}
    			}
    		}
    
    		// Remove the uid from tags that have not been transformed into HTML
    		$message = str_replace(':' . $this->bbcode_uid, '', $message);
    	}
    
    	/**
    	* Init bbcode cache
    	*
    	* requires: $this->bbcode_bitfield
    	* sets: $this->bbcode_cache with bbcode templates needed for bbcode_bitfield
    	*/
    	function bbcode_cache_init()
    	{
    		global $user, $phpbb_root_path;
    
            
    		if (empty($this->template_filename))
    		{
    			$this->template_bitfield = new bitfield($user->theme['bbcode_bitfield']);
    			$this->template_filename = $phpbb_root_path . 'styles/' . $user->theme['template_path'] . '/template/bbcode.html';
    
    			if (!@file_exists($this->template_filename))
    			{
    				trigger_error('The file ' . $this->template_filename . ' is missing.', E_USER_ERROR);
    			}
    		}
    
    		$bbcode_ids = $rowset = $sql = array();
    
    		$bitfield = new bitfield($this->bbcode_bitfield);
    		$bbcodes_set = $bitfield->get_all_set();
    
    		foreach ($bbcodes_set as $bbcode_id)
    		{
    			if (isset($this->bbcode_cache[$bbcode_id]))
    			{
    				// do not try to re-cache it if it's already in
    				continue;
    			}
    			$bbcode_ids[] = $bbcode_id;
    
    			if ($bbcode_id > NUM_CORE_BBCODES)
    			{
    				$sql[] = $bbcode_id;
    			}
    		}
    
    		if (sizeof($sql))
    		{
    			global $db;
    
    			$sql = 'SELECT *
    				FROM ' . BBCODES_TABLE . '
    				WHERE ' . $db->sql_in_set('bbcode_id', $sql);
    			$result = $db->sql_query($sql, 3600);
    
    			while ($row = $db->sql_fetchrow($result))
    			{
    				// To circumvent replacing newlines with <br /> for the generated html,
    				// we use carriage returns here. They are later changed back to newlines
    				$row['bbcode_tpl'] = str_replace("\n", "\r", $row['bbcode_tpl']);
    				$row['second_pass_replace'] = str_replace("\n", "\r", $row['second_pass_replace']);
    
    				$rowset[$row['bbcode_id']] = $row;
    			}
    			$db->sql_freeresult($result);
    		}
    
    		foreach ($bbcode_ids as $bbcode_id)
    		{
    			switch ($bbcode_id)
    			{
    				case 0:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'str' => array(
    							'[/quote:$uid]'	=> $this->bbcode_tpl('quote_close', $bbcode_id)
    						),
    						'preg' => array(
    							'#\[quote(?:="(.*?)")?:$uid\]((?!\[quote(?:=".*?")?:$uid\]).)?#ise'	=> "\$this->bbcode_second_pass_quote('\$1', '\$2')"
    						)
    					);
    				break;
    
    				case 1:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'str' => array(
    							'[b:$uid]'	=> $this->bbcode_tpl('b_open', $bbcode_id),
    							'[/b:$uid]'	=> $this->bbcode_tpl('b_close', $bbcode_id),
    						)
    					);
    				break;
    
    				case 2:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'str' => array(
    							'[i:$uid]'	=> $this->bbcode_tpl('i_open', $bbcode_id),
    							'[/i:$uid]'	=> $this->bbcode_tpl('i_close', $bbcode_id),
    						)
    					);
    				break;
    
    				case 3:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'preg' => array(
    							'#\[url:$uid\]((.*?))\[/url:$uid\]#s'			=> $this->bbcode_tpl('url', $bbcode_id),
    							//-------- AIR-Box mod change - starts here --------
    //original lines start here------------
    //							'#\[url=([^\[]+?):$uid\](.*?)\[/url:$uid\]#s'	=> $this->bbcode_tpl('url', $bbcode_id),
    //original lines end here------------
    							'#\[url=([^\[]+?):$uid\](\[img:$uid\](.*?)\[/img:$uid\])\[/url:$uid\]#s'	=> str_replace('$2', '<null ="$2', $this->bbcode_tpl('url', $bbcode_id, true)),
    							'#\[url=([^\[]+?):$uid\](.*?)\[/url:$uid\]#s'	=> $this->bbcode_tpl('url', $bbcode_id),
    //-------- AIR-Box mod change - ends here --------						
    )
    					);
    				break;
    
    				case 4:
    					if ($user->optionget('viewimg'))
    					{
    						$this->bbcode_cache[$bbcode_id] = array(
    							'preg' => array(
    								'#\[img:$uid\](.*?)\[/img:$uid\]#s'		=> $this->bbcode_tpl('img', $bbcode_id),
    							)
    						);
    					}
    					else
    					{
    						$this->bbcode_cache[$bbcode_id] = array(
    							'preg' => array(
    								'#\[img:$uid\](.*?)\[/img:$uid\]#s'		=> str_replace('$2', '[ img ]', $this->bbcode_tpl('url', $bbcode_id, true)),
    							)
    						);
    					}
    				break;
    
    				case 5:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'preg' => array(
    							'#\[size=([\-\+]?\d+):$uid\](.*?)\[/size:$uid\]#s'	=> $this->bbcode_tpl('size', $bbcode_id),
    						)
    					);
    				break;
    
    				case 6:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'preg' => array(
    							'!\[color=(#[0-9a-f]{6}|[a-z\-]+):$uid\](.*?)\[/color:$uid\]!is'	=> $this->bbcode_tpl('color', $bbcode_id),
    						)
    					);
    				break;
    
    				case 7:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'str' => array(
    							'[u:$uid]'	=> $this->bbcode_tpl('u_open', $bbcode_id),
    							'[/u:$uid]'	=> $this->bbcode_tpl('u_close', $bbcode_id),
    						)
    					);
    				break;
    
    				case 8:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'preg' => array(
    							'#\[code(?:=([a-z]+))?:$uid\](.*?)\[/code:$uid\]#ise'	=> "\$this->bbcode_second_pass_code('\$1', '\$2')",
    						)
    					);
    				break;
    
    				case 9:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'preg' => array(
    							'#(\[\/?(list|\*):[mou]?:?$uid\])[\n]{1}#'	=> "\$1",
    							'#(\[list=([^\[]+):$uid\])[\n]{1}#'			=> "\$1",
    							'#\[list=([^\[]+):$uid\]#e'					=> "\$this->bbcode_list('\$1')",
    						),
    						'str' => array(
    							'[list:$uid]'		=> $this->bbcode_tpl('ulist_open_default', $bbcode_id),
    							'[/list:u:$uid]'	=> $this->bbcode_tpl('ulist_close', $bbcode_id),
    							'[/list:o:$uid]'	=> $this->bbcode_tpl('olist_close', $bbcode_id),
    							'[*:$uid]'			=> $this->bbcode_tpl('listitem', $bbcode_id),
    							'[/*:$uid]'			=> $this->bbcode_tpl('listitem_close', $bbcode_id),
    							'[/*:m:$uid]'		=> $this->bbcode_tpl('listitem_close', $bbcode_id)
    						),
    					);
    				break;
    
    				case 10:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'preg' => array(
    							'#\[email:$uid\]((.*?))\[/email:$uid\]#is'			=> $this->bbcode_tpl('email', $bbcode_id),
    							'#\[email=([^\[]+):$uid\](.*?)\[/email:$uid\]#is'	=> $this->bbcode_tpl('email', $bbcode_id)
    						)
    					);
    				break;
    
    				case 11:
    					if ($user->optionget('viewflash'))
    					{
    						$this->bbcode_cache[$bbcode_id] = array(
    							'preg' => array(
    								'#\[flash=([0-9]+),([0-9]+):$uid\](.*?)\[/flash:$uid\]#'	=> $this->bbcode_tpl('flash', $bbcode_id),
    							)
    						);
    					}
    					else
    					{
    						$this->bbcode_cache[$bbcode_id] = array(
    							'preg' => array(
    								'#\[flash=([0-9]+),([0-9]+):$uid\](.*?)\[/flash:$uid\]#'	=> str_replace('$1', '$3', str_replace('$2', '[ flash ]', $this->bbcode_tpl('url', $bbcode_id, true)))
    							)
    						);
    					}
    				break;
    
    				case 12:
    					$this->bbcode_cache[$bbcode_id] = array(
    						'str'	=> array(
    							'[/attachment:$uid]'	=> $this->bbcode_tpl('inline_attachment_close', $bbcode_id)
    						),
    						'preg'	=> array(
    							'#\[attachment=([0-9]+):$uid\]#'	=> $this->bbcode_tpl('inline_attachment_open', $bbcode_id)
    						)
    					);
    				break;
    
    
              
    
    				default:
    					if (isset($rowset[$bbcode_id]))
    					{
    						if ($this->template_bitfield->get($bbcode_id))
    						{
    							// The bbcode requires a custom template to be loaded
    							if (!$bbcode_tpl = $this->bbcode_tpl($rowset[$bbcode_id]['bbcode_tag'], $bbcode_id))
    							{
    								// For some reason, the required template seems not to be available, use the default template
    								$bbcode_tpl = (!empty($rowset[$bbcode_id]['second_pass_replace'])) ? $rowset[$bbcode_id]['second_pass_replace'] : $rowset[$bbcode_id]['bbcode_tpl'];
    							}
    							else
    							{
    								// In order to use templates with custom bbcodes we need
    								// to replace all {VARS} to corresponding backreferences
    								// Note that backreferences are numbered from bbcode_match
    								if (preg_match_all('/\{(URL|LOCAL_URL|EMAIL|TEXT|SIMPLETEXT|IDENTIFIER|COLOR|NUMBER)[0-9]*\}/', $rowset[$bbcode_id]['bbcode_match'], $m))
    								{
    									foreach ($m[0] as $i => $tok)
    									{
    										$bbcode_tpl = str_replace($tok, '$' . ($i + 1), $bbcode_tpl);
    									}
    								}
    							}
    						}
    						else
    						{
    							// Default template
    							$bbcode_tpl = (!empty($rowset[$bbcode_id]['second_pass_replace'])) ? $rowset[$bbcode_id]['second_pass_replace'] : $rowset[$bbcode_id]['bbcode_tpl'];
    						}
    
    						// Replace {L_*} lang strings
    						$bbcode_tpl = preg_replace('/{L_([A-Z_]+)}/e', "(!empty(\$user->lang['\$1'])) ? \$user->lang['\$1'] : ucwords(strtolower(str_replace('_', ' ', '\$1')))", $bbcode_tpl);
    
    						if (!empty($rowset[$bbcode_id]['second_pass_replace']))
    						{
    							// The custom BBCode requires second-pass pattern replacements
    							$this->bbcode_cache[$bbcode_id] = array(
    								'preg' => array($rowset[$bbcode_id]['second_pass_match'] => $bbcode_tpl)
    							);
    						}
    						else
    						{
    							$this->bbcode_cache[$bbcode_id] = array(
    								'str' => array($rowset[$bbcode_id]['second_pass_match'] => $bbcode_tpl)
    							);
    						}
    					}
    					else
    					{
    						$this->bbcode_cache[$bbcode_id] = false;
    					}
    				break;
    			}
    		}
    	}
    
    	/**
    	* Return bbcode template
    	*/
    	function bbcode_tpl($tpl_name, $bbcode_id = -1, $skip_bitfield_check = false)
    	{
    		static $bbcode_hardtpl = array();
    		if (empty($bbcode_hardtpl))
    		{
    			global $user;
    			
    			$bbcode_hardtpl = array(
    				'b_open'	=> '<span style="font-weight: bold">',
    				'b_close'	=> '</span>',
    				'i_open'	=> '<span style="font-style: italic">',
    				'i_close'	=> '</span>',
    				'u_open'	=> '<span style="text-decoration: underline">',
    				'u_close'	=> '</span>',
    				//-------- AIR-Box mod change - starts here --------
                   //original line starts here
                //'img'      => '<img src="$1" alt="' . $user->lang['IMAGE'] . '" />',
                //original line ends here --------
                'img'      => '<a href="$1" rel="lightbox[slideshow]" /><img class="postimage" src="$1" alt="' . $user->lang['IMAGE'] . '" /></a>',         
    //-------- AIR-Box mod change - ends here --------
    				'size'		=> '<span style="font-size: $1%; line-height: normal">$2</span>',
    				'color'		=> '<span style="color: $1">$2</span>',
    				'email'		=> '<a href="mailto:$1">$2</a>'
    			);
    		}
    
    		if ($bbcode_id != -1 && !$skip_bitfield_check && !$this->template_bitfield->get($bbcode_id))
    		{
    			return (isset($bbcode_hardtpl[$tpl_name])) ? $bbcode_hardtpl[$tpl_name] : false;
    		}
    
    		if (empty($this->bbcode_template))
    		{
    			if (($tpl = file_get_contents($this->template_filename)) === false)
    			{
    				trigger_error('Could not load bbcode template', E_USER_ERROR);
    			}
    
    			// replace \ with \\ and then ' with \'.
    			$tpl = str_replace('\\', '\\\\', $tpl);
    			$tpl = str_replace("'", "\'", $tpl);
    
    			// strip newlines and indent
    			$tpl = preg_replace("/\n[\n\r\s\t]*/", '', $tpl);
    
    			// Turn template blocks into PHP assignment statements for the values of $bbcode_tpl..
    			$this->bbcode_template = array();
    
    			$matches = preg_match_all('#<!-- BEGIN (.*?) -->(.*?)<!-- END (?:.*?) -->#', $tpl, $match);
    
    			for ($i = 0; $i < $matches; $i++)
    			{
    				if (empty($match[1][$i]))
    				{
    					continue;
    				}
    
    				$this->bbcode_template[$match[1][$i]] = $this->bbcode_tpl_replace($match[1][$i], $match[2][$i]);
    			}
    		}
    
    		return (isset($this->bbcode_template[$tpl_name])) ? $this->bbcode_template[$tpl_name] : ((isset($bbcode_hardtpl[$tpl_name])) ? $bbcode_hardtpl[$tpl_name] : false);
    	}
    
    	/**
    	* Return bbcode template replacement
    	*/
    	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')
    		);
    
    		$tpl = preg_replace('/{L_([A-Z_]+)}/e', "(!empty(\$user->lang['\$1'])) ? \$user->lang['\$1'] : ucwords(strtolower(str_replace('_', ' ', '\$1')))", $tpl);
    
    		if (!empty($replacements[$tpl_name]))
    		{
    			$tpl = strtr($tpl, $replacements[$tpl_name]);
    		}
    
    		return trim($tpl);
    	}
    
    	/**
    	* Second parse list bbcode
    	*/
    	function bbcode_list($type)
    	{
    		if ($type == '')
    		{
    			$tpl = 'ulist_open_default';
    			$type = 'default';
    		}
    		else if ($type == 'i')
    		{
    			$tpl = 'olist_open';
    			$type = 'lower-roman';
    		}
    		else if ($type == 'I')
    		{
    			$tpl = 'olist_open';
    			$type = 'upper-roman';
    		}
    		else if (preg_match('#^(disc|circle|square)$#i', $type))
    		{
    			$tpl = 'ulist_open';
    			$type = strtolower($type);
    		}
    		else if (preg_match('#^[a-z]$#', $type))
    		{
    			$tpl = 'olist_open';
    			$type = 'lower-alpha';
    		}
    		else if (preg_match('#[A-Z]#', $type))
    		{
    			$tpl = 'olist_open';
    			$type = 'upper-alpha';
    		}
    		else if (is_numeric($type))
    		{
    			$tpl = 'olist_open';
    			$type = 'arabic-numbers';
    		}
    		else
    		{
    			$tpl = 'olist_open';
    			$type = 'arabic-numbers';
    		}
    
    		return str_replace('{LIST_TYPE}', $type, $this->bbcode_tpl($tpl));
    	}
    
    	/**
    	* Second parse quote tag
    	*/
    	function bbcode_second_pass_quote($username, $quote)
    	{
    		// when using the /e modifier, preg_replace slashes double-quotes but does not
    		// seem to slash anything else
    		$quote = str_replace('\"', '"', $quote);
    		$username = str_replace('\"', '"', $username);
    
    		// remove newline at the beginning
    		if ($quote == "\n")
    		{
    			$quote = '';
    		}
    
    		$quote = (($username) ? str_replace('$1', $username, $this->bbcode_tpl('quote_username_open')) : $this->bbcode_tpl('quote_open')) . $quote;
    
    		return $quote;
    	}
    
    	/**
    	* Second parse code tag
    	*/
    	function bbcode_second_pass_code($type, $code)
    	{
    		// when using the /e modifier, preg_replace slashes double-quotes but does not
    		// seem to slash anything else
    		$code = str_replace('\"', '"', $code);
    
    		switch ($type)
    		{
    			case 'php':
    				// Not the english way, but valid because of hardcoded syntax highlighting
    				if (strpos($code, '<span class="syntaxdefault"><br /></span>') === 0)
    				{
    					$code = substr($code, 41);
    				}
    
    			// no break;
    
    			default:
    				$code = str_replace("\t", '&nbsp; &nbsp;', $code);
    				$code = str_replace('  ', '&nbsp; ', $code);
    				$code = str_replace('  ', ' &nbsp;', $code);
    
    				// remove newline at the beginning
    				if (!empty($code) && $code[0] == "\n")
    				{
    					$code = substr($code, 1);
    				}
    			break;
    		}
    
    
    		$code = $this->bbcode_tpl('code_open') . $code . $this->bbcode_tpl('code_close');
    
    		return $code;
    	}
    
    
    }
    
    ?>
    Peço uma ajuda, obrigado...
    Imagem
    Imagem
    RobsonArsB
    Membro Recente
    Membro Recente
    Mensagens: 333
    Registrado em: 27 Jan 2007, 11:02
    Localização: Itapevi/SP
    Contato:
    MSG 100+

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por RobsonArsB »

    qual o endereço do seu fórum?

    já revisou a instalação do mod, para ver se está tudo ok?
    Não dou suporte Via MP, mande sua mensagem no fórum, para que todos que tiverem a mesma duvida tenham em mão a solução! Att: RobsonArsB
    Avatar do usuário
    Chico Gois
    Administrador
    Administrador
    Mensagens: 3923
    Registrado em: 03 Jul 2004, 03:53
    Nome Real: Chico Gois
    Localização: São Paulo - Capital
    Contato:
    MSG 1500+AvatarLenda

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por Chico Gois »

    No mod, dentro da pasta ROOT tem apenas o arquivo de lingua en.

    Colocou tambem o arquivo dentro da pasta pt_br?
    alessfrei
    Novato
    Novato
    Mensagens: 26
    Registrado em: 24 Jun 2006, 08:17
    Localização: Belo Horizonte
    Contato:

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por alessfrei »

    Fiz a conferencia do Mod e estar tudo certo!

    A pasta "en" eu coloquei dentro da pt_br.
    Imagem
    Imagem
    Avatar do usuário
    Chico Gois
    Administrador
    Administrador
    Mensagens: 3923
    Registrado em: 03 Jul 2004, 03:53
    Nome Real: Chico Gois
    Localização: São Paulo - Capital
    Contato:
    MSG 1500+AvatarLenda

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por Chico Gois »

    O arquivo ai de cima parece certo, teria que rever sua instalação.
    Avatar do usuário
    _Vinny_
    Administrador
    Administrador
    Mensagens: 6023
    Registrado em: 03 Set 2009, 21:59
    Contato:
    LendaMSG 1500+Avatar

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por _Vinny_ »

    alessfrei, baixe aqui a tradução:
    http://www.suportephpbb.com.br/blog/dow ... load/5/140
    Tradução Português Brasileiro: https://www.phpbb.com/customise/db/translation/brazilian_portuguese/

    Precisa de serviços phpBB? Me mande um mensagem privada ou visite https://vinny.quest
    alessfrei
    Novato
    Novato
    Mensagens: 26
    Registrado em: 24 Jun 2006, 08:17
    Localização: Belo Horizonte
    Contato:

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por alessfrei »

    Obrigado pela indicação da tradução!

    Apos instalar a tradução o erro ainda continua o mesmo!
    Imagem
    Imagem
    RobsonArsB
    Membro Recente
    Membro Recente
    Mensagens: 333
    Registrado em: 27 Jan 2007, 11:02
    Localização: Itapevi/SP
    Contato:
    MSG 100+

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por RobsonArsB »

    Não dou suporte Via MP, mande sua mensagem no fórum, para que todos que tiverem a mesma duvida tenham em mão a solução! Att: RobsonArsB
    Avatar do usuário
    _Vinny_
    Administrador
    Administrador
    Mensagens: 6023
    Registrado em: 03 Set 2009, 21:59
    Contato:
    LendaMSG 1500+Avatar

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por _Vinny_ »

    alessfrei, revise a sua instalação, deve ter feito com algum erro. Eu instalei aqui e funcionou perfeitamente. ;)

    Leia aqui como instalar uma modificação: kb.php?a=2
    Tradução Português Brasileiro: https://www.phpbb.com/customise/db/translation/brazilian_portuguese/

    Precisa de serviços phpBB? Me mande um mensagem privada ou visite https://vinny.quest
    alessfrei
    Novato
    Novato
    Mensagens: 26
    Registrado em: 24 Jun 2006, 08:17
    Localização: Belo Horizonte
    Contato:

    Re: Erro na Mod

  • Favoritar esta postagem
  • Mensagem por alessfrei »

    Respondendo o amigo RobsonArsB:
    Muito obrigado pela sugestão!
    Mas sei como se instala um mod, já perdi a conta de quantas mod em fóruns já instalei!

    Respondendo ao _Vinny_:
    Com relação a revisar a instalação revisei por duas vezes e não encontrei nada de errado com o indicado no install.

    Pergunta:

    Pode ter algum problema com relação a versão do fórum?

    Tenho que fazer alguma configuração além de criar os bbcodes?

    Como por exemplo alguma configuração no grupo de usuário?

    Obrigado desde já!
    Imagem
    Imagem
    Trancado