Abraço.


Código: Selecionar todos
<?php
/**
*
* @package phpBB3
* @version $Id$
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
exit;
}
if (!class_exists('bbcode'))
{
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
}
/**
* BBCODE FIRSTPASS
* BBCODE first pass class (functions for parsing messages for db storage)
* @package phpBB3
*/
class bbcode_firstpass extends bbcode
{
var $message = '';
var $warn_msg = array();
var $parsed_items = array();
/**
* Parse BBCode
*/
function parse_bbcode()
{
if (!$this->bbcodes)
{
$this->bbcode_init();
}
global $user;
$this->bbcode_bitfield = '';
$bitfield = new bitfield();
foreach ($this->bbcodes as $bbcode_name => $bbcode_data)
{
if (isset($bbcode_data['disabled']) && $bbcode_data['disabled'])
{
foreach ($bbcode_data['regexp'] as $regexp => $replacement)
{
if (preg_match($regexp, $this->message))
{
$this->warn_msg[] = sprintf($user->lang['UNAUTHORISED_BBCODE'] , '[' . $bbcode_name . ']');
continue;
}
}
}
else
{
foreach ($bbcode_data['regexp'] as $regexp => $replacement)
{
// The pattern gets compiled and cached by the PCRE extension,
// it should not demand recompilation
if (preg_match($regexp, $this->message))
{
$this->message = preg_replace($regexp, $replacement, $this->message);
$bitfield->set($bbcode_data['bbcode_id']);
}
}
}
}
$this->bbcode_bitfield = $bitfield->get_base64();
}
/**
* Prepare some bbcodes for better parsing
*/
function prepare_bbcodes()
{
// Ok, seems like users instead want the no-parsing of urls, smilies, etc. after and before and within quote tags being tagged as "not a bug".
// Fine by me ;) Will ease our live... but do not come back and cry at us, we won't hear you.
/* Add newline at the end and in front of each quote block to prevent parsing errors (urls, smilies, etc.)
if (strpos($this->message, '[quote') !== false && strpos($this->message, '[/quote]') !== false)
{
$this->message = str_replace("\r\n", "\n", $this->message);
// We strip newlines and spaces after and before quotes in quotes (trimming) and then add exactly one newline
$this->message = preg_replace('#\[quote(=".*?")?\]\s*(.*?)\s*\[/quote\]#siu', '[quote\1]' . "\n" . '\2' ."\n[/quote]", $this->message);
}
*/
// Add other checks which needs to be placed before actually parsing anything (be it bbcodes, smilies, urls...)
}
/**
* Init bbcode data for later parsing
*/
function bbcode_init()
{
static $rowset;
// This array holds all bbcode data. BBCodes will be processed in this
// order, so it is important to keep [code] in first position and
// [quote] in second position.
$this->bbcodes = array(
'code' => array('bbcode_id' => 8, 'regexp' => array('#\[code(?:=([a-z]+))?\](.+\[/code\])#ise' => "\$this->bbcode_code('\$1', '\$2')")),
'quote' => array('bbcode_id' => 0, 'regexp' => array('#\[quote(?:="(.*?)")?\](.+)\[/quote\]#ise' => "\$this->bbcode_quote('\$0')")),
'attachment' => array('bbcode_id' => 12, 'regexp' => array('#\[attachment=([0-9]+)\](.*?)\[/attachment\]#ise' => "\$this->bbcode_attachment('\$1', '\$2')")),
'b' => array('bbcode_id' => 1, 'regexp' => array('#\[b\](.*?)\[/b\]#ise' => "\$this->bbcode_strong('\$1')")),
'i' => array('bbcode_id' => 2, 'regexp' => array('#\[i\](.*?)\[/i\]#ise' => "\$this->bbcode_italic('\$1')")),
'url' => array('bbcode_id' => 3, 'regexp' => array('#\[url(=(.*))?\](.*)\[/url\]#iUe' => "\$this->validate_url('\$2', '\$3')")),
'img' => array('bbcode_id' => 4, 'regexp' => array('#\[img\](.*)\[/img\]#iUe' => "\$this->bbcode_img('\$1')")),
'size' => array('bbcode_id' => 5, 'regexp' => array('#\[size=([\-\+]?\d+)\](.*?)\[/size\]#ise' => "\$this->bbcode_size('\$1', '\$2')")),
'color' => array('bbcode_id' => 6, 'regexp' => array('!\[color=(#[0-9a-f]{3}|#[0-9a-f]{6}|[a-z\-]+)\](.*?)\[/color\]!ise' => "\$this->bbcode_color('\$1', '\$2')")),
'u' => array('bbcode_id' => 7, 'regexp' => array('#\[u\](.*?)\[/u\]#ise' => "\$this->bbcode_underline('\$1')")),
'list' => array('bbcode_id' => 9, 'regexp' => array('#\[list(?:=(?:[a-z0-9]|disc|circle|square))?].*\[/list]#ise' => "\$this->bbcode_parse_list('\$0')")),
'email' => array('bbcode_id' => 10, 'regexp' => array('#\[email=?(.*?)?\](.*?)\[/email\]#ise' => "\$this->validate_email('\$1', '\$2')")),
'flash' => array('bbcode_id' => 11, 'regexp' => array('#\[flash=([0-9]+),([0-9]+)\](.*?)\[/flash\]#ie' => "\$this->bbcode_flash('\$1', '\$2', '\$3')"))
);
// Zero the parsed items array
$this->parsed_items = array();
foreach ($this->bbcodes as $tag => $bbcode_data)
{
$this->parsed_items[$tag] = 0;
}
if (!is_array($rowset))
{
global $db;
$rowset = array();
$sql = 'SELECT *
FROM ' . BBCODES_TABLE;
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$rowset[] = $row;
}
$db->sql_freeresult($result);
}
foreach ($rowset as $row)
{
$this->bbcodes[$row['bbcode_tag']] = array(
'bbcode_id' => (int) $row['bbcode_id'],
'regexp' => array($row['first_pass_match'] => str_replace('$uid', $this->bbcode_uid, $row['first_pass_replace']))
);
}
}
/**
* Making some pre-checks for bbcodes as well as increasing the number of parsed items
*/
function check_bbcode($bbcode, &$in)
{
// when using the /e modifier, preg_replace slashes double-quotes but does not
// seem to slash anything else
$in = str_replace("\r\n", "\n", str_replace('\"', '"', $in));
// Trimming here to make sure no empty bbcodes are parsed accidently
if (trim($in) == '')
{
return false;
}
$this->parsed_items[$bbcode]++;
return true;
}
/**
* Transform some characters in valid bbcodes
*/
function bbcode_specialchars($text)
{
$str_from = array('<', '>', '[', ']', '.', ':');
$str_to = array('<', '>', '[', ']', '.', ':');
return str_replace($str_from, $str_to, $text);
}
/**
* Parse size tag
*/
function bbcode_size($stx, $in)
{
global $user, $config;
if (!$this->check_bbcode('size', $in))
{
return $in;
}
if ($config['max_' . $this->mode . '_font_size'] && $config['max_' . $this->mode . '_font_size'] < $stx)
{
$this->warn_msg[] = sprintf($user->lang['MAX_FONT_SIZE_EXCEEDED'], $config['max_' . $this->mode . '_font_size']);
return '[size=' . $stx . ']' . $in . '[/size]';
}
// Do not allow size=0
if ($stx <= 0)
{
return '[size=' . $stx . ']' . $in . '[/size]';
}
return '[size=' . $stx . ':' . $this->bbcode_uid . ']' . $in . '[/size:' . $this->bbcode_uid . ']';
}
/**
* Parse color tag
*/
function bbcode_color($stx, $in)
{
if (!$this->check_bbcode('color', $in))
{
return $in;
}
return '[color=' . $stx . ':' . $this->bbcode_uid . ']' . $in . '[/color:' . $this->bbcode_uid . ']';
}
/**
* Parse u tag
*/
function bbcode_underline($in)
{
if (!$this->check_bbcode('u', $in))
{
return $in;
}
return '[u:' . $this->bbcode_uid . ']' . $in . '[/u:' . $this->bbcode_uid . ']';
}
/**
* Parse b tag
*/
function bbcode_strong($in)
{
if (!$this->check_bbcode('b', $in))
{
return $in;
}
return '[b:' . $this->bbcode_uid . ']' . $in . '[/b:' . $this->bbcode_uid . ']';
}
/**
* Parse i tag
*/
function bbcode_italic($in)
{
if (!$this->check_bbcode('i', $in))
{
return $in;
}
return '[i:' . $this->bbcode_uid . ']' . $in . '[/i:' . $this->bbcode_uid . ']';
}
/**
* Parse img tag
*/
function bbcode_img($in)
{
global $user, $config;
if (!$this->check_bbcode('img', $in))
{
return $in;
}
$in = trim($in);
$error = false;
$in = str_replace(' ', '%20', $in);
// Checking urls
if (!preg_match('#^' . get_preg_expression('url') . '$#i', $in) && !preg_match('#^' . get_preg_expression('www_url') . '$#i', $in))
{
return '[img]' . $in . '[/img]';
}
// Try to cope with a common user error... not specifying a protocol but only a subdomain
if (!preg_match('#^[a-z0-9]+://#i', $in))
{
$in = 'http://' . $in;
}
if ($config['max_' . $this->mode . '_img_height'] || $config['max_' . $this->mode . '_img_width'])
{
$stats = @getimagesize($in);
if ($stats === false)
{
$error = true;
$this->warn_msg[] = $user->lang['UNABLE_GET_IMAGE_SIZE'];
}
else
{
if ($config['max_' . $this->mode . '_img_height'] && $config['max_' . $this->mode . '_img_height'] < $stats[1])
{
$error = true;
$this->warn_msg[] = sprintf($user->lang['MAX_IMG_HEIGHT_EXCEEDED'], $config['max_' . $this->mode . '_img_height']);
}
if ($config['max_' . $this->mode . '_img_width'] && $config['max_' . $this->mode . '_img_width'] < $stats[0])
{
$error = true;
$this->warn_msg[] = sprintf($user->lang['MAX_IMG_WIDTH_EXCEEDED'], $config['max_' . $this->mode . '_img_width']);
}
}
}
if ($error || $this->path_in_domain($in))
{
return '[img]' . $in . '[/img]';
}
return '[img:' . $this->bbcode_uid . ']' . $this->bbcode_specialchars($in) . '[/img:' . $this->bbcode_uid . ']';
}
/**
* Parse flash tag
*/
function bbcode_flash($width, $height, $in)
{
global $user, $config;
if (!$this->check_bbcode('flash', $in))
{
return $in;
}
$in = trim($in);
$error = false;
// Do not allow 0-sizes generally being entered
if ($width <= 0 || $height <= 0)
{
return '[flash=' . $width . ',' . $height . ']' . $in . '[/flash]';
}
// Apply the same size checks on flash files as on images
if ($config['max_' . $this->mode . '_img_height'] || $config['max_' . $this->mode . '_img_width'])
{
if ($config['max_' . $this->mode . '_img_height'] && $config['max_' . $this->mode . '_img_height'] < $height)
{
$error = true;
$this->warn_msg[] = sprintf($user->lang['MAX_FLASH_HEIGHT_EXCEEDED'], $config['max_' . $this->mode . '_img_height']);
}
if ($config['max_' . $this->mode . '_img_width'] && $config['max_' . $this->mode . '_img_width'] < $width)
{
$error = true;
$this->warn_msg[] = sprintf($user->lang['MAX_FLASH_WIDTH_EXCEEDED'], $config['max_' . $this->mode . '_img_width']);
}
}
if ($error || $this->path_in_domain($in))
{
return '[flash=' . $width . ',' . $height . ']' . $in . '[/flash]';
}
return '[flash=' . $width . ',' . $height . ':' . $this->bbcode_uid . ']' . $this->bbcode_specialchars($in) . '[/flash:' . $this->bbcode_uid . ']';
}
/**
* Parse inline attachments [ia]
*/
function bbcode_attachment($stx, $in)
{
if (!$this->check_bbcode('attachment', $in))
{
return $in;
}
return '[attachment=' . $stx . ':' . $this->bbcode_uid . ']<!-- ia' . $stx . ' -->' . trim($in) . '<!-- ia' . $stx . ' -->[/attachment:' . $this->bbcode_uid . ']';
}
/**
* Parse code text from code tag
* @access private
*/
function bbcode_parse_code($stx, &$code)
{
switch (strtolower($stx))
{
case 'php':
$remove_tags = false;
$str_from = array('<', '>', '[', ']', '.', ':', ':');
$str_to = array('<', '>', '[', ']', '.', ':', ':');
$code = str_replace($str_from, $str_to, $code);
if (!preg_match('/\<\?.*?\?\>/is', $code))
{
$remove_tags = true;
$code = "<?php $code ?>";
}
$conf = array('highlight.bg', 'highlight.comment', 'highlight.default', 'highlight.html', 'highlight.keyword', 'highlight.string');
foreach ($conf as $ini_var)
{
@ini_set($ini_var, str_replace('highlight.', 'syntax', $ini_var));
}
// Because highlight_string is specialcharing the text (but we already did this before), we have to reverse this in order to get correct results
$code = htmlspecialchars_decode($code);
$code = highlight_string($code, true);
$str_from = array('<span style="color: ', '<font color="syntax', '</font>', '<code>', '</code>','[', ']', '.', ':');
$str_to = array('<span class="', '<span class="syntax', '</span>', '', '', '[', ']', '.', ':');
if ($remove_tags)
{
$str_from[] = '<span class="syntaxdefault"><?php </span>';
$str_to[] = '';
$str_from[] = '<span class="syntaxdefault"><?php ';
$str_to[] = '<span class="syntaxdefault">';
}
$code = str_replace($str_from, $str_to, $code);
$code = preg_replace('#^(<span class="[a-z_]+">)\n?(.*?)\n?(</span>)$#is', '$1$2$3', $code);
if ($remove_tags)
{
$code = preg_replace('#(<span class="[a-z]+">)?\?>(</span>)#', '$1 $2', $code);
}
$code = preg_replace('#^<span class="[a-z]+"><span class="([a-z]+)">(.*)</span></span>#s', '<span class="$1">$2</span>', $code);
$code = preg_replace('#(?:\s++| )*+</span>$#u', '</span>', $code);
// remove newline at the end
if (!empty($code) && substr($code, -1) == "\n")
{
$code = substr($code, 0, -1);
}
return "[code=$stx:" . $this->bbcode_uid . ']' . $code . '[/code:' . $this->bbcode_uid . ']';
break;
default:
return '[code:' . $this->bbcode_uid . ']' . $this->bbcode_specialchars($code) . '[/code:' . $this->bbcode_uid . ']';
break;
}
}
/**
* Parse code tag
* Expects the argument to start right after the opening [code] tag and to end with Código: Selecionar todos
blocks
// Additionally, magic url parsing should go after parsing bbcodes, but for safety those are stripped out too...
$htm_match = get_preg_expression('bbcode_htm');
unset($htm_match[4], $htm_match[5]);
$htm_replace = array('\1', '\1', '\2', '\1');
$out = $code_block = '';
$open = 1;
while ($in)
{
// Determine position and tag length of next code block
preg_match('#(.*?)(\[code(?:=([a-z]+))?\])(.+)#is', $in, $buffer);
$pos = (isset($buffer[1])) ? strlen($buffer[1]) : false;
$tag_length = (isset($buffer[2])) ? strlen($buffer[2]) : false;
// Determine position of ending code tag
$pos2 = stripos($in, '.quote-icon dentro de todos os arquivos .css da pasta styles/prosilver/theme e aqueles que o tiver, poste todo o conteúdo destes arquivos.
Código: Selecionar todos
/* Button Styles
---------------------------------------- */
/* Rollover buttons
Based on: http://wellstyled.com/css-nopreload-rollovers.html
----------------------------------------*/
.buttons {
float: left;
width: auto;
height: auto;
}
/* Rollover state */
.buttons div {
float: left;
margin: 0 5px 0 0;
background-position: 0 100%;
}
/* Rolloff state */
.buttons div a {
display: block;
width: 100%;
height: 100%;
background-position: 0 0;
position: relative;
overflow: hidden;
}
/* Hide <a> text and hide off-state image when rolling over (prevents flicker in IE) */
/*.buttons div span { display: none; }*/
/*.buttons div a:hover { background-image: none; }*/
.buttons div span { position: absolute; width: 100%; height: 100%; cursor: pointer;}
.buttons div a:hover span { background-position: 0 100%; }
/* Big button images */
.reply-icon span { background: transparent none 0 0 no-repeat; }
.post-icon span { background: transparent none 0 0 no-repeat; }
.locked-icon span { background: transparent none 0 0 no-repeat; }
.pmreply-icon span { background: none 0 0 no-repeat; }
.newpm-icon span { background: none 0 0 no-repeat; }
.forwardpm-icon span { background: none 0 0 no-repeat; }
/* Set big button dimensions */
.buttons div.reply-icon { width: {IMG_BUTTON_TOPIC_REPLY_WIDTH}px; height: {IMG_BUTTON_TOPIC_REPLY_HEIGHT}px; }
.buttons div.post-icon { width: {IMG_BUTTON_TOPIC_NEW_WIDTH}px; height: {IMG_BUTTON_TOPIC_NEW_HEIGHT}px; }
.buttons div.locked-icon { width: {IMG_BUTTON_TOPIC_LOCKED_WIDTH}px; height: {IMG_BUTTON_TOPIC_LOCKED_HEIGHT}px; }
.buttons div.pmreply-icon { width: {IMG_BUTTON_PM_REPLY_WIDTH}px; height: {IMG_BUTTON_PM_REPLY_HEIGHT}px; }
.buttons div.newpm-icon { width: {IMG_BUTTON_PM_NEW_WIDTH}px; height: {IMG_BUTTON_PM_NEW_HEIGHT}px; }
.buttons div.forwardpm-icon { width: {IMG_BUTTON_PM_FORWARD_WIDTH}px; height: {IMG_BUTTON_PM_FORWARD_HEIGHT}px; }
/* Sub-header (navigation bar)
--------------------------------------------- */
a.print, a.sendemail, a.fontsize {
display: block;
overflow: hidden;
height: 18px;
text-indent: -5000px;
text-align: left;
background-repeat: no-repeat;
}
a.print {
background-image: none;
width: 22px;
}
a.sendemail {
background-image: none;
width: 22px;
}
a.fontsize {
background-image: none;
background-position: 0 -1px;
width: 29px;
}
a.fontsize:hover {
background-position: 0 -20px;
text-decoration: none;
}
/* Icon images
---------------------------------------- */
.sitehome, .icon-faq, .icon-chat, .icon-members, .icon-home, .icon-ucp, .icon-register, .icon-logout,
.icon-bookmark, .icon-bump, .icon-subscribe, .icon-unsubscribe, .icon-pages, .icon-search {
background-position: 0 50%;
background-repeat: no-repeat;
background-image: none;
padding: 1px 0 0 17px;
}
/* Poster profile icons
----------------------------------------*/
ul.profile-icons {
padding-top: 10px;
list-style: none;
}
/* Rollover state */
ul.profile-icons li {
float: left;
margin: 0 6px 3px 0;
background-position: 0 100%;
}
/* Rolloff state */
ul.profile-icons li a {
display: block;
width: 100%;
height: 100%;
background-position: 0 0;
}
/* Hide <a> text and hide off-state image when rolling over (prevents flicker in IE) */
ul.profile-icons li span { display:none; }
ul.profile-icons li a:hover { background: none; }
/* Positioning of moderator icons */
.postbody ul.profile-icons {
float: right;
width: auto;
padding: 0;
}
.postbody ul.profile-icons li {
margin: 0 3px;
}
/* Profile & navigation icons */
.email-icon, .email-icon a { background: none top left no-repeat; }
.aim-icon, .aim-icon a { background: none top left no-repeat; }
.yahoo-icon, .yahoo-icon a { background: none top left no-repeat; }
.web-icon, .web-icon a { background: none top left no-repeat; }
.msnm-icon, .msnm-icon a { background: none top left no-repeat; }
.icq-icon, .icq-icon a { background: none top left no-repeat; }
.jabber-icon, .jabber-icon a { background: none top left no-repeat; }
.pm-icon, .pm-icon a { background: none top left no-repeat; }
.quote-icon, .quote-icon a { background: none top left no-repeat; }
/* Moderator icons */
.report-icon, .report-icon a { background: none top left no-repeat; }
.warn-icon, .warn-icon a { background: none top left no-repeat; }
.edit-icon, .edit-icon a { background: none top left no-repeat; }
.delete-icon, .delete-icon a { background: none top left no-repeat; }
.info-icon, .info-icon a { background: none top left no-repeat; }
/* Set profile icon dimensions */
ul.profile-icons li.email-icon { width: {IMG_ICON_CONTACT_EMAIL_WIDTH}px; height: {IMG_ICON_CONTACT_EMAIL_HEIGHT}px; }
ul.profile-icons li.aim-icon { width: {IMG_ICON_CONTACT_AIM_WIDTH}px; height: {IMG_ICON_CONTACT_AIM_HEIGHT}px; }
ul.profile-icons li.yahoo-icon { width: {IMG_ICON_CONTACT_YAHOO_WIDTH}px; height: {IMG_ICON_CONTACT_YAHOO_HEIGHT}px; }
ul.profile-icons li.web-icon { width: {IMG_ICON_CONTACT_WWW_WIDTH}px; height: {IMG_ICON_CONTACT_WWW_HEIGHT}px; }
ul.profile-icons li.msnm-icon { width: {IMG_ICON_CONTACT_MSNM_WIDTH}px; height: {IMG_ICON_CONTACT_MSNM_HEIGHT}px; }
ul.profile-icons li.icq-icon { width: {IMG_ICON_CONTACT_ICQ_WIDTH}px; height: {IMG_ICON_CONTACT_ICQ_HEIGHT}px; }
ul.profile-icons li.jabber-icon { width: {IMG_ICON_CONTACT_JABBER_WIDTH}px; height: {IMG_ICON_CONTACT_JABBER_HEIGHT}px; }
ul.profile-icons li.pm-icon { width: {IMG_ICON_CONTACT_PM_WIDTH}px; height: {IMG_ICON_CONTACT_PM_HEIGHT}px; }
ul.profile-icons li.quote-icon { width: {IMG_ICON_POST_QUOTE_WIDTH}px; height: {IMG_ICON_POST_QUOTE_HEIGHT}px; }
ul.profile-icons li.report-icon { width: {IMG_ICON_POST_REPORT_WIDTH}px; height: {IMG_ICON_POST_REPORT_HEIGHT}px; }
ul.profile-icons li.edit-icon { width: {IMG_ICON_POST_EDIT_WIDTH}px; height: {IMG_ICON_POST_EDIT_HEIGHT}px; }
ul.profile-icons li.delete-icon { width: {IMG_ICON_POST_DELETE_WIDTH}px; height: {IMG_ICON_POST_DELETE_HEIGHT}px; }
ul.profile-icons li.info-icon { width: {IMG_ICON_POST_INFO_WIDTH}px; height: {IMG_ICON_POST_INFO_HEIGHT}px; }
ul.profile-icons li.warn-icon { width: {IMG_ICON_USER_WARN_WIDTH}px; height: {IMG_ICON_USER_WARN_HEIGHT}px; }
/* Fix profile icon default margins */
ul.profile-icons li.edit-icon { margin: 0 0 0 3px; }
ul.profile-icons li.quote-icon { margin: 0 0 0 10px; }
ul.profile-icons li.info-icon, ul.profile-icons li.report-icon { margin: 0 3px 0 0; }Código: Selecionar todos
/*
--------------------------------------------------------------
Colours and backgrounds for common.css
-------------------------------------------------------------- */
html, body {
color: #536482;
background-color: #FFFFFF;
}
h1 {
color: #FFFFFF;
}
h2 {
color: #28313F;
}
h3 {
border-bottom-color: #CCCCCC;
color: #115098;
}
hr {
border-color: #FFFFFF;
border-top-color: #CCCCCC;
}
hr.dashed {
border-top-color: #CCCCCC;
}
/* Search box
--------------------------------------------- */
#search-box {
color: #FFFFFF;
}
#search-box #keywords {
background-color: #FFF;
}
#search-box input {
border-color: #0075B0;
}
/* Round cornered boxes and backgrounds
---------------------------------------- */
.headerbar {
background-color: #12A3EB;
background-image: url("{T_THEME_PATH}/images/bg_header.gif");
color: #FFFFFF;
}
.navbar {
background-color: #cadceb;
}
.forabg {
background-color: #0076b1;
background-image: url("{T_THEME_PATH}/images/bg_list.gif");
}
.forumbg {
background-color: #12A3EB;
background-image: url("{T_THEME_PATH}/images/bg_header.gif");
}
.panel {
background-color: #ECF1F3;
color: #28313F;
}
.post:target .content {
color: #000000;
}
.post:target h3 a {
color: #000000;
}
.bg1 { background-color: #ECF3F7; }
.bg2 { background-color: #e1ebf2; }
.bg3 { background-color: #cadceb; }
.ucprowbg {
background-color: #DCDEE2;
}
.fieldsbg {
background-color: #E7E8EA;
}
span.corners-top {
background-image: url("{T_THEME_PATH}/images/corners_left.png");
}
span.corners-top span {
background-image: url("{T_THEME_PATH}/images/corners_right.png");
}
span.corners-bottom {
background-image: url("{T_THEME_PATH}/images/corners_left.png");
}
span.corners-bottom span {
background-image: url("{T_THEME_PATH}/images/corners_right.png");
}
/* Horizontal lists
----------------------------------------*/
ul.navlinks {
border-bottom-color: #FFFFFF;
}
/* Table styles
----------------------------------------*/
table.table1 thead th {
color: #FFFFFF;
}
table.table1 tbody tr {
border-color: #BFC1CF;
}
table.table1 tbody tr:hover, table.table1 tbody tr.hover {
background-color: #CFE1F6;
color: #000;
}
table.table1 td {
color: #536482;
}
table.table1 tbody td {
border-top-color: #FAFAFA;
}
table.table1 tbody th {
border-bottom-color: #000000;
color: #333333;
background-color: #FFFFFF;
}
table.info tbody th {
color: #000000;
}
/* Misc layout styles
---------------------------------------- */
dl.details dt {
color: #000000;
}
dl.details dd {
color: #536482;
}
.sep {
color: #1198D9;
}
/* Pagination
---------------------------------------- */
.pagination span strong {
color: #FFFFFF;
background-color: #4692BF;
border-color: #4692BF;
}
.pagination span a, .pagination span a:link, .pagination span a:visited {
color: #5C758C;
background-color: #ECEDEE;
border-color: #B4BAC0;
}
.pagination span a:hover {
border-color: #368AD2;
background-color: #368AD2;
color: #FFF;
}
.pagination span a:active {
color: #5C758C;
background-color: #ECEDEE;
border-color: #B4BAC0;
}
/* Pagination in viewforum for multipage topics */
.row .pagination {
background-image: url("{T_THEME_PATH}/images/icon_pages.gif");
}
.row .pagination span a, li.pagination span a {
background-color: #FFFFFF;
}
.row .pagination span a:hover, li.pagination span a:hover {
background-color: #368AD2;
}
/* Miscellaneous styles
---------------------------------------- */
.copyright {
color: #555555;
}
.error {
color: #BC2A4D;
}
.reported {
background-color: #F7ECEF;
}
li.reported:hover {
background-color: #ECD5D8 !important;
}
.sticky, .announce {
/* you can add a background for stickies and announcements*/
}
div.rules {
background-color: #ECD5D8;
color: #BC2A4D;
}
p.rules {
background-color: #ECD5D8;
background-image: none;
}
/*
--------------------------------------------------------------
Colours and backgrounds for links.css
-------------------------------------------------------------- */
a:link { color: #105289; }
a:visited { color: #105289; }
a:hover { color: #D31141; }
a:active { color: #368AD2; }
/* Links on gradient backgrounds */
#search-box a:link, .navbg a:link, .forumbg .header a:link, .forabg .header a:link, th a:link {
color: #FFFFFF;
}
#search-box a:visited, .navbg a:visited, .forumbg .header a:visited, .forabg .header a:visited, th a:visited {
color: #FFFFFF;
}
#search-box a:hover, .navbg a:hover, .forumbg .header a:hover, .forabg .header a:hover, th a:hover {
color: #A8D8FF;
}
#search-box a:active, .navbg a:active, .forumbg .header a:active, .forabg .header a:active, th a:active {
color: #C8E6FF;
}
/* Links for forum/topic lists */
a.forumtitle {
color: #105289;
}
/* a.forumtitle:visited { color: #105289; } */
a.forumtitle:hover {
color: #BC2A4D;
}
a.forumtitle:active {
color: #105289;
}
a.topictitle {
color: #105289;
}
/* a.topictitle:visited { color: #368AD2; } */
a.topictitle:hover {
color: #BC2A4D;
}
a.topictitle:active {
color: #105289;
}
/* Post body links */
.postlink {
color: #368AD2;
border-bottom-color: #368AD2;
}
.postlink:visited {
color: #5D8FBD;
border-bottom-color: #5D8FBD;
}
.postlink:active {
color: #368AD2;
}
.postlink:hover {
background-color: #D0E4F6;
color: #0D4473;
}
.signature a, .signature a:visited, .signature a:hover, .signature a:active {
background-color: transparent;
}
/* Profile links */
.postprofile a:link, .postprofile a:visited, .postprofile dt.author a {
color: #105289;
}
.postprofile a:hover, .postprofile dt.author a:hover {
color: #D31141;
}
.postprofile a:active {
color: #105289;
}
/* Profile searchresults */
.search .postprofile a {
color: #105289;
}
.search .postprofile a:hover {
color: #D31141;
}
/* Back to top of page */
a.top {
background-image: url("{IMG_ICON_BACK_TOP_SRC}");
}
a.top2 {
background-image: url("{IMG_ICON_BACK_TOP_SRC}");
}
/* Arrow links */
a.up { background-image: url("{T_THEME_PATH}/images/arrow_up.gif") }
a.down { background-image: url("{T_THEME_PATH}/images/arrow_down.gif") }
a.left { background-image: url("{T_THEME_PATH}/images/arrow_left.gif") }
a.right { background-image: url("{T_THEME_PATH}/images/arrow_right.gif") }
a.up:hover {
background-color: transparent;
}
a.left:hover {
color: #368AD2;
}
a.right:hover {
color: #368AD2;
}
/*
--------------------------------------------------------------
Colours and backgrounds for content.css
-------------------------------------------------------------- */
ul.forums {
background-color: #eef5f9;
background-image: url("{T_THEME_PATH}/images/gradient.gif");
}
ul.topiclist li {
color: #4C5D77;
}
ul.topiclist dd {
border-left-color: #FFFFFF;
}
.rtl ul.topiclist dd {
border-right-color: #fff;
border-left-color: transparent;
}
ul.topiclist li.row dt a.subforum.read {
background-image: url("{IMG_SUBFORUM_READ_SRC}");
}
ul.topiclist li.row dt a.subforum.unread {
background-image: url("{IMG_SUBFORUM_UNREAD_SRC}");
}
li.row {
border-top-color: #FFFFFF;
border-bottom-color: #00608F;
}
li.row strong {
color: #000000;
}
li.row:hover {
background-color: #F6F4D0;
}
li.row:hover dd {
border-left-color: #CCCCCC;
}
.rtl li.row:hover dd {
border-right-color: #CCCCCC;
border-left-color: transparent;
}
li.header dt, li.header dd {
color: #FFFFFF;
}
/* Forum list column styles */
ul.topiclist dd.searchextra {
color: #333333;
}
/* Post body styles
----------------------------------------*/
.postbody {
color: #333333;
}
/* Content container styles
----------------------------------------*/
.content {
color: #333333;
}
.content h2, .panel h2 {
color: #115098;
border-bottom-color: #CCCCCC;
}
dl.faq dt {
color: #333333;
}
.posthilit {
background-color: #F3BFCC;
color: #BC2A4D;
}
/* Post signature */
.signature {
border-top-color: #CCCCCC;
}
/* Post noticies */
.notice {
border-top-color: #CCCCCC;
}
/* BB Code styles
----------------------------------------*/
/* Quote block */
blockquote {
background-color: #EBEADD;
background-image: url("{T_THEME_PATH}/images/quote.gif");
border-color:#DBDBCE;
}
.rtl blockquote {
background-image: url("{T_THEME_PATH}/images/quote_rtl.gif");
}
blockquote blockquote {
/* Nested quotes */
background-color:#EFEED9;
}
blockquote blockquote blockquote {
/* Nested quotes */
background-color: #EBEADD;
}
/* Hide block */
dl.hidebox {
background-color: #FFFFFF;
border-color: #C9D2D8;
}
dl.hidebox dt {
border-bottom-color: #CCCCCC;
}
/* Code block */
dl.codebox {
background-color: #FFFFFF;
border-color: #C9D2D8;
}
dl.codebox dt {
border-bottom-color: #CCCCCC;
}
dl.codebox code {
color: #2E8B57;
}
.syntaxbg { color: #FFFFFF; }
.syntaxcomment { color: #FF8000; }
.syntaxdefault { color: #0000BB; }
.syntaxhtml { color: #000000; }
.syntaxkeyword { color: #007700; }
.syntaxstring { color: #DD0000; }
/* Attachments
----------------------------------------*/
.attachbox {
background-color: #FFFFFF;
border-color: #C9D2D8;
}
.pm-message .attachbox {
background-color: #F2F3F3;
}
.attachbox dd {
border-top-color: #C9D2D8;
}
.attachbox p {
color: #666666;
}
.attachbox p.stats {
color: #666666;
}
.attach-image img {
border-color: #999999;
}
/* Inline image thumbnails */
dl.file dd {
color: #666666;
}
dl.thumbnail img {
border-color: #666666;
background-color: #FFFFFF;
}
dl.thumbnail dd {
color: #666666;
}
dl.thumbnail dt a:hover {
background-color: #EEEEEE;
}
dl.thumbnail dt a:hover img {
border-color: #368AD2;
}
/* Post poll styles
----------------------------------------*/
fieldset.polls dl {
border-top-color: #DCDEE2;
color: #666666;
}
fieldset.polls dl.voted {
color: #000000;
}
fieldset.polls dd div {
color: #FFFFFF;
}
.rtl .pollbar1, .rtl .pollbar2, .rtl .pollbar3, .rtl .pollbar4, .rtl .pollbar5 {
border-right-color: transparent;
}
.pollbar1 {
background-color: #AA2346;
border-bottom-color: #74162C;
border-right-color: #74162C;
}
.rtl .pollbar1 {
border-left-color: #74162C;
}
.pollbar2 {
background-color: #BE1E4A;
border-bottom-color: #8C1C38;
border-right-color: #8C1C38;
}
.rtl .pollbar2 {
border-left-color: #8C1C38;
}
.pollbar3 {
background-color: #D11A4E;
border-bottom-color: #AA2346;
border-right-color: #AA2346;
}
.rtl .pollbar3 {
border-left-color: #AA2346;
}
.pollbar4 {
background-color: #E41653;
border-bottom-color: #BE1E4A;
border-right-color: #BE1E4A;
}
.rtl .pollbar4 {
border-left-color: #BE1E4A;
}
.pollbar5 {
background-color: #F81157;
border-bottom-color: #D11A4E;
border-right-color: #D11A4E;
}
.rtl .pollbar5 {
border-left-color: #D11A4E;
}
/* Poster profile block
----------------------------------------*/
.postprofile {
color: #666666;
border-left-color: #FFFFFF;
}
.rtl .postprofile {
border-right-color: #FFFFFF;
border-left-color: transparent;
}
.pm .postprofile {
border-left-color: #DDDDDD;
}
.rtl .pm .postprofile {
border-right-color: #DDDDDD;
border-left-color: transparent;
}
.postprofile strong {
color: #000000;
}
.online {
background-image: url("{IMG_ICON_USER_ONLINE_SRC}");
}
/*
--------------------------------------------------------------
Colours and backgrounds for buttons.css
-------------------------------------------------------------- */
/* Big button images */
.reply-icon span { background-image: url("{IMG_BUTTON_TOPIC_REPLY_SRC}"); }
.post-icon span { background-image: url("{IMG_BUTTON_TOPIC_NEW_SRC}"); }
.locked-icon span { background-image: url("{IMG_BUTTON_TOPIC_LOCKED_SRC}"); }
.pmreply-icon span { background-image: url("{IMG_BUTTON_PM_REPLY_SRC}") ;}
.newpm-icon span { background-image: url("{IMG_BUTTON_PM_NEW_SRC}") ;}
.forwardpm-icon span { background-image: url("{IMG_BUTTON_PM_FORWARD_SRC}") ;}
a.print {
background-image: url("{T_THEME_PATH}/images/icon_print.gif");
}
a.sendemail {
background-image: url("{T_THEME_PATH}/images/icon_sendemail.gif");
}
a.fontsize {
background-image: url("{T_THEME_PATH}/images/icon_fontsize.gif");
}
/* Icon images
---------------------------------------- */
.sitehome { background-image: url("{T_THEME_PATH}/images/icon_home.gif"); }
.icon-faq { background-image: url("{T_THEME_PATH}/images/icon_faq.gif"); }
.icon-chat { background-image: url("{T_THEME_PATH}/images/icon_123flash_chat.gif"); }
.icon-members { background-image: url("{T_THEME_PATH}/images/icon_members.gif"); }
.icon-home { background-image: url("{T_THEME_PATH}/images/icon_home.gif"); }
.icon-ucp { background-image: url("{T_THEME_PATH}/images/icon_ucp.gif"); }
.icon-register { background-image: url("{T_THEME_PATH}/images/icon_register.gif"); }
.icon-logout { background-image: url("{T_THEME_PATH}/images/icon_logout.gif"); }
.icon-bookmark { background-image: url("{T_THEME_PATH}/images/icon_bookmark.gif"); }
.icon-bump { background-image: url("{T_THEME_PATH}/images/icon_bump.gif"); }
.icon-subscribe { background-image: url("{T_THEME_PATH}/images/icon_subscribe.gif"); }
.icon-unsubscribe { background-image: url("{T_THEME_PATH}/images/icon_unsubscribe.gif"); }
.icon-pages { background-image: url("{T_THEME_PATH}/images/icon_pages.gif"); }
.icon-search { background-image: url("{T_THEME_PATH}/images/icon_search.gif"); }
/* Profile & navigation icons */
.email-icon, .email-icon a { background-image: url("{IMG_ICON_CONTACT_EMAIL_SRC}"); }
.aim-icon, .aim-icon a { background-image: url("{IMG_ICON_CONTACT_AIM_SRC}"); }
.yahoo-icon, .yahoo-icon a { background-image: url("{IMG_ICON_CONTACT_YAHOO_SRC}"); }
.web-icon, .web-icon a { background-image: url("{IMG_ICON_CONTACT_WWW_SRC}"); }
.msnm-icon, .msnm-icon a { background-image: url("{IMG_ICON_CONTACT_MSNM_SRC}"); }
.icq-icon, .icq-icon a { background-image: url("{IMG_ICON_CONTACT_ICQ_SRC}"); }
.jabber-icon, .jabber-icon a { background-image: url("{IMG_ICON_CONTACT_JABBER_SRC}"); }
.pm-icon, .pm-icon a { background-image: url("{IMG_ICON_CONTACT_PM_SRC}"); }
.quote-icon, .quote-icon a { background-image: url("{IMG_ICON_POST_QUOTE_SRC}"); }
/* Moderator icons */
.report-icon, .report-icon a { background-image: url("{IMG_ICON_POST_REPORT_SRC}"); }
.edit-icon, .edit-icon a { background-image: url("{IMG_ICON_POST_EDIT_SRC}"); }
.delete-icon, .delete-icon a { background-image: url("{IMG_ICON_POST_DELETE_SRC}"); }
.info-icon, .info-icon a { background-image: url("{IMG_ICON_POST_INFO_SRC}"); }
.warn-icon, .warn-icon a { background-image: url("{IMG_ICON_USER_WARN_SRC}"); } /* Need updated warn icon */
/*
--------------------------------------------------------------
Colours and backgrounds for cp.css
-------------------------------------------------------------- */
/* Main CP box
----------------------------------------*/
#cp-main h3, #cp-main hr, #cp-menu hr {
border-color: #A4B3BF;
}
#cp-main .panel li.row {
border-bottom-color: #B5C1CB;
border-top-color: #F9F9F9;
}
ul.cplist {
border-top-color: #B5C1CB;
}
#cp-main .panel li.header dd, #cp-main .panel li.header dt {
color: #000000;
}
#cp-main table.table1 thead th {
color: #333333;
border-bottom-color: #333333;
}
#cp-main .pm-message {
border-color: #DBDEE2;
background-color: #FFFFFF;
}
/* CP tabbed menu
----------------------------------------*/
#tabs a {
background-image: url("{T_THEME_PATH}/images/bg_tabs1.gif");
}
#tabs a span {
background-image: url("{T_THEME_PATH}/images/bg_tabs2.gif");
color: #536482;
}
#tabs a:hover span {
color: #BC2A4D;
}
#tabs .activetab a {
border-bottom-color: #CADCEB;
}
#tabs .activetab a span {
color: #333333;
}
#tabs .activetab a:hover span {
color: #000000;
}
/* Mini tabbed menu used in MCP
----------------------------------------*/
#minitabs li {
background-color: #E1EBF2;
}
#minitabs li.activetab {
background-color: #F9F9F9;
}
#minitabs li.activetab a, #minitabs li.activetab a:hover {
color: #333333;
}
/* UCP navigation menu
----------------------------------------*/
/* Link styles for the sub-section links */
#navigation a {
color: #333;
background-color: #B2C2CF;
background-image: url("{T_THEME_PATH}/images/bg_menu.gif");
}
.rtl #navigation a {
background-image: url("{T_THEME_PATH}/images/bg_menu_rtl.gif");
background-position: 0 100%;
}
#navigation a:hover {
background-color: #aabac6;
color: #BC2A4D;
}
#navigation #active-subsection a {
color: #D31141;
background-color: #F9F9F9;
background-image: none;
}
#navigation #active-subsection a:hover {
color: #D31141;
}
/* Preferences pane layout
----------------------------------------*/
#cp-main h2 {
color: #333333;
}
#cp-main .panel {
background-color: #F9F9F9;
}
#cp-main .pm {
background-color: #FFFFFF;
}
#cp-main span.corners-top, #cp-menu span.corners-top {
background-image: url("{T_THEME_PATH}/images/corners_left2.gif");
}
#cp-main span.corners-top span, #cp-menu span.corners-top span {
background-image: url("{T_THEME_PATH}/images/corners_right2.gif");
}
#cp-main span.corners-bottom, #cp-menu span.corners-bottom {
background-image: url("{T_THEME_PATH}/images/corners_left2.gif");
}
#cp-main span.corners-bottom span, #cp-menu span.corners-bottom span {
background-image: url("{T_THEME_PATH}/images/corners_right2.gif");
}
/* Topicreview */
#cp-main .panel #topicreview span.corners-top, #cp-menu .panel #topicreview span.corners-top {
background-image: url("{T_THEME_PATH}/images/corners_left.gif");
}
#cp-main .panel #topicreview span.corners-top span, #cp-menu .panel #topicreview span.corners-top span {
background-image: url("{T_THEME_PATH}/images/corners_right.gif");
}
#cp-main .panel #topicreview span.corners-bottom, #cp-menu .panel #topicreview span.corners-bottom {
background-image: url("{T_THEME_PATH}/images/corners_left.gif");
}
#cp-main .panel #topicreview span.corners-bottom span, #cp-menu .panel #topicreview span.corners-bottom span {
background-image: url("{T_THEME_PATH}/images/corners_right.gif");
}
/* Friends list */
.cp-mini {
background-color: #eef5f9;
}
dl.mini dt {
color: #425067;
}
/* PM Styles
----------------------------------------*/
/* PM Message history */
.current {
color: #000000 !important;
}
/* PM panel adjustments */
.pm-panel-header,
#cp-main .pm-message-nav {
border-bottom-color: #A4B3BF;
}
/* PM marking colours */
.pmlist li.pm_message_reported_colour, .pm_message_reported_colour {
border-left-color: #BC2A4D;
border-right-color: #BC2A4D;
}
.pmlist li.pm_marked_colour, .pm_marked_colour {
border-color: #FF6600;
}
.pmlist li.pm_replied_colour, .pm_replied_colour {
border-color: #A9B8C2;
}
.pmlist li.pm_friend_colour, .pm_friend_colour {
border-color: #5D8FBD;
}
.pmlist li.pm_foe_colour, .pm_foe_colour {
border-color: #000000;
}
/* Avatar gallery */
#gallery label {
background-color: #FFFFFF;
border-color: #CCC;
}
#gallery label:hover {
background-color: #EEE;
}
/*
--------------------------------------------------------------
Colours and backgrounds for forms.css
-------------------------------------------------------------- */
/* General form styles
----------------------------------------*/
select {
border-color: #666666;
background-color: #FAFAFA;
color: #000;
}
label {
color: #425067;
}
option.disabled-option {
color: graytext;
}
/* Definition list layout for forms
---------------------------------------- */
dd label {
color: #333;
}
/* Hover effects */
fieldset dl:hover dt label {
color: #000000;
}
fieldset.fields2 dl:hover dt label {
color: inherit;
}
/* Quick-login on index page */
fieldset.quick-login input.inputbox {
background-color: #F2F3F3;
}
/* Posting page styles
----------------------------------------*/
#message-box textarea {
color: #333333;
}
/* Input field styles
---------------------------------------- */
.inputbox {
background-color: #FFFFFF;
border-color: #B4BAC0;
color: #333333;
}
.inputbox:hover {
border-color: #11A3EA;
}
.inputbox:focus {
border-color: #11A3EA;
color: #0F4987;
}
/* PM Notify & Guest Register bar
----------------------------------------*/
#info {
overflow: visible;
min-width: 750px;
width: 100%;
position: fixed;
left: 0;
z-index:200;
margin-top: -15px;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 1.5em;
font-weight: bold;
}
#infobar a, #infobar a:link, #infobar a:visited, #infobar a:active {
display: block;
float: left;
width:100%;
clear: both;
color: #fff;
padding: .85em 0 .85em 0;
border-bottom: .25em solid #fff;
text-align: center;
text-decoration: none;
background-image: url("{T_THEME_PATH}/images/pmreg.png");
background-position: bottom;
background-repeat:repeat-x;
}
#infobar a:hover {
color: #fff;
background-image: url("{T_THEME_PATH}/images/pmreg.png");
background-position: top;
background-repeat:repeat-x;
border-bottom: .25em solid #fff;
cursor: pointer;
}
/* Form button styles
---------------------------------------- */
a.button1, input.button1, input.button3, a.button2, input.button2 {
color: #000;
background-color: #FAFAFA;
background-image: url("{T_THEME_PATH}/images/bg_button.gif");
}
a.button1, input.button1 {
border-color: #666666;
}
input.button3 {
background-image: none;
}
/* Alternative button */
a.button2, input.button2, input.button3 {
border-color: #666666;
}
/* <a> button in the style of the form buttons */
a.button1, a.button1:link, a.button1:visited, a.button1:active, a.button2, a.button2:link, a.button2:visited, a.button2:active {
color: #000000;
}
/* Hover states */
a.button1:hover, input.button1:hover, a.button2:hover, input.button2:hover, input.button3:hover {
border-color: #BC2A4D;
color: #BC2A4D;
}
input.search {
background-image: url("{T_THEME_PATH}/images/icon_textbox_search.gif");
}
input.disabled {
color: #666666;
}
#thumbBox{ /*Outermost DIV for thumbnail viewer*/
position: absolute;
left: 0;
top: 0;
width: auto;
padding: 7px;
padding-bottom: 0;
background: #151515;
visibility: hidden;
z-index: 10;
cursor: pointer;
}
#thumbBox .footerbar{ /*Footer DIV of thumbbox that contains "close" link */
font: bold 16px Tahoma;
letter-spacing: 5px;
line-height: 1.1em;
color: white;
padding: 5px 0;
text-align: right;
}
#thumbBox #thumbImage{ /*DIV within thumbbox that holds the enlarged image */
background-color: #151515;
color: #FFFFFF;
text-align: left;
font-weight: bold;
}
#thumbLoading{ /*DIV for showing "loading" status while thumbbox is being generated*/
position: absolute;
visibility: hidden;
border: 1px solid black;
background-color: #EFEFEF;
padding: 5px;
z-index: 5;
}
#thumbBox{ /*Outermost DIV for thumbnail viewer*/
position: absolute;
left: 0;
top: 0;
width: auto;
padding: 7px;
padding-bottom: 0;
background: #151515;
visibility: hidden;
z-index: 10;
cursor: pointer;
}
#thumbBox .footerbar{ /*Footer DIV of thumbbox that contains "close" link */
font: bold 16px Tahoma;
letter-spacing: 5px;
line-height: 1.1em;
color: white;
padding: 5px 0;
text-align: right;
}
#thumbBox #thumbImage{ /*DIV within thumbbox that holds the enlarged image */
background-color: #151515;
color: #FFFFFF;
text-align: left;
font-weight: bold;
}
#thumbLoading{ /*DIV for showing "loading" status while thumbbox is being generated*/
position: absolute;
visibility: hidden;
border: 1px solid black;
background-color: #EFEFEF;
padding: 5px;
z-index: 5;}
Código: Selecionar todos
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Untitled document</title>
</head>
<body>
<p><!-- INCLUDE overall_header.html --> <!-- IF U_MCP --></p>
<p>[ <a href="{U_MCP}">{L_MCP}</a> ]</p>
<p><!-- ENDIF --></p>
<h2><a href="{U_VIEW_TOPIC}">{TOPIC_TITLE}</a></h2>
<p><!-- NOTE: remove the style="display: none" when you want to have the forum description on the topic body --> <!-- IF FORUM_DESC --></p>
<div style="display: none !important;">{FORUM_DESC}<br /></div>
<p><!-- ENDIF --> <!-- IF MODERATORS --></p>
<p><strong><!-- IF S_SINGLE_MODERATOR -->{L_MODERATOR}<!-- ELSE -->{L_MODERATORS}<!-- ENDIF -->:</strong> {MODERATORS}</p>
<p><!-- ENDIF --> <!-- IF S_FORUM_RULES --></p>
<div class="rules">
<div class="inner"><span class="corners-top"><span></span></span> <!-- IF U_FORUM_RULES --> <a href="{U_FORUM_RULES}">{L_FORUM_RULES}</a> <!-- ELSE --> <strong>{L_FORUM_RULES}</strong><br /> {FORUM_RULES}
<!-- ENDIF --> <span class="corners-bottom"><span></span></span></div>
</div>
<p><!-- ENDIF --></p>
<div class="topic-actions">
<div class="buttons"><!-- IF not S_IS_BOT and S_DISPLAY_REPLY_INFO -->
<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->reply-icon<!-- ENDIF -->"><a href="{U_POST_REPLY_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED_SHORT}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF --></a></div>
<!-- ENDIF --></div>
<!-- IF S_DISPLAY_SEARCHBOX -->
<div class="search-box"><form method="get" id="topic-search" action="{S_SEARCHBOX_ACTION}"> <fieldset> <input class="inputbox search tiny" type="text" name="keywords" id="search_keywords" size="20" value="{L_SEARCH_TOPIC}" onclick="if(this.value=='{LA_SEARCH_TOPIC}')this.value='';" onblur="if(this.value=='')this.value='{LA_SEARCH_TOPIC}';" /> <input class="button2" type="submit" value="{L_SEARCH}" /> {S_SEARCH_LOCAL_HIDDEN_FIELDS} </fieldset> </form></div>
<!-- ENDIF --> <!-- IF PAGINATION or TOTAL_POSTS -->
<div class="pagination"><!-- IF U_VIEW_UNREAD_POST and not S_IS_BOT --><a href="{U_VIEW_UNREAD_POST}">{L_VIEW_UNREAD_POST}</a> • <!-- ENDIF -->{TOTAL_POSTS}
<!-- IF PAGE_NUMBER --><!-- IF PAGINATION --> • <a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{PAGE_NUMBER}</a> • <span>{PAGINATION}</span><!-- ELSE --> • {PAGE_NUMBER}<!-- ENDIF --><!-- ENDIF --></div>
<!-- ENDIF --></div>
<div class="clear"></div>
<p><!-- IF S_HAS_POLL --></p>
<form method="post" action="{S_POLL_ACTION}">
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>
<div class="content">
<h2>{POLL_QUESTION}</h2>
<p class="author">{L_POLL_LENGTH}<!-- IF S_CAN_VOTE and L_POLL_LENGTH --><br /><!-- ENDIF --><!-- IF S_CAN_VOTE -->{L_MAX_VOTES}<!-- ENDIF --></p>
<fieldset class="polls"> <!-- BEGIN poll_option --> <dl class="<!-- IF poll_option.POLL_OPTION_VOTED -->voted<!-- ENDIF -->"> title="{L_POLL_VOTED_OPTION}"<!-- ENDIF -->>
<dt><!-- IF S_CAN_VOTE --><label for="vote_{poll_option.POLL_OPTION_ID}">{poll_option.POLL_OPTION_CAPTION}</label><!-- ELSE -->{poll_option.POLL_OPTION_CAPTION}<!-- ENDIF --></dt> <!-- IF S_CAN_VOTE --><dd style="width: auto;"><!-- IF S_IS_MULTI_CHOICE --><input type="checkbox" name="vote_id[]" id="vote_{poll_option.POLL_OPTION_ID}" value="{poll_option.POLL_OPTION_ID}" /> checked="checked"<!-- ENDIF --> /><!-- ELSE --><input type="radio" name="vote_id[]" id="vote_{poll_option.POLL_OPTION_ID}" value="{poll_option.POLL_OPTION_ID}" /> checked="checked"<!-- ENDIF --> /><!-- ENDIF --></dd><!-- ENDIF --> <!-- IF S_DISPLAY_RESULTS --><dd class="resultbar">
<div class="<!-- IF poll_option.POLL_OPTION_PCT < 20 -->pollbar1<!-- ELSEIF poll_option.POLL_OPTION_PCT < 40 -->pollbar2<!-- ELSEIF poll_option.POLL_OPTION_PCT < 60 -->pollbar3<!-- ELSEIF poll_option.POLL_OPTION_PCT < 80 -->pollbar4<!-- ELSE -->pollbar5<!-- ENDIF -->" style="width: {poll_option.POLL_OPTION_PERCENT};">{poll_option.POLL_OPTION_RESULT}</div>
</dd> <dd><!-- IF poll_option.POLL_OPTION_RESULT == 0 -->{L_NO_VOTES}<!-- ELSE -->{poll_option.POLL_OPTION_PERCENT}<!-- ENDIF --></dd><!-- ENDIF --> </dl> <!-- END poll_option --> <!-- IF S_DISPLAY_RESULTS --> <dl> <dt> </dt> <dd class="resultbar">{L_TOTAL_VOTES} : {TOTAL_VOTES}</dd> </dl> <!-- ENDIF --> <!-- IF S_CAN_VOTE --> <dl style="border-top: none;"> <dt> </dt> <dd class="resultbar"><input type="submit" name="update" value="{L_SUBMIT_VOTE}" class="button1" /></dd> </dl> <!-- ENDIF --> <!-- IF not S_DISPLAY_RESULTS --> <dl style="border-top: none;"> <dt> </dt> <dd class="resultbar"><a href="{U_VIEW_RESULTS}">{L_VIEW_RESULTS}</a></dd> </dl> <!-- ENDIF --> </fieldset></div>
<span class="corners-bottom"><span></span></span></div>
{S_FORM_TOKEN}
{S_HIDDEN_FIELDS}</div>
</form>
<hr />
<p><!-- ENDIF --> <!-- BEGIN postrow --> <!-- IF postrow.S_FIRST_UNREAD --><a id="unread"></a><!-- ENDIF --></p>
<div id="p{postrow.POST_ID}" class="post <!-- IF postrow.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF --><!-- IF postrow.S_UNREAD_POST --> unreadpost<!-- ENDIF --><!-- IF postrow.S_POST_REPORTED --> reported<!-- ENDIF --><!-- IF postrow.S_ONLINE and not postrow.S_IGNORE_POST --> online<!-- ENDIF -->">
<div class="inner"><span class="corners-top"><span></span></span>
<div class="postbody"><!-- IF postrow.S_IGNORE_POST -->
<div class="ignore">{postrow.L_IGNORE_POST}</div>
<!-- ELSE --> <!-- IF not S_IS_BOT --> <!-- IF postrow.U_EDIT or postrow.U_DELETE or postrow.U_REPORT or postrow.U_WARN or postrow.U_INFO or postrow.U_QUOTE -->
<ul class="profile-icons">
<!-- IF postrow.U_EDIT -->
<li class="edit-icon"><a href="{postrow.U_EDIT}" title="{L_EDIT_POST}"><span>{L_EDIT_POST}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_DELETE -->
<li class="delete-icon"><a href="{postrow.U_DELETE}" title="{L_DELETE_POST}"><span>{L_DELETE_POST}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_REPORT -->
<li class="report-icon"><a href="{postrow.U_REPORT}" title="{L_REPORT_POST}"><span>{L_REPORT_POST}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_WARN -->
<li class="warn-icon"><a href="{postrow.U_WARN}" title="{L_WARN_USER}"><span>{L_WARN_USER}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_INFO -->
<li class="info-icon"><a href="{postrow.U_INFO}" title="{L_INFORMATION}"><span>{L_INFORMATION}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_QUOTE and $user->data['group_id'] == 5 || $user->data['group_id'] == 4 || $user->data['group_id'] == 8-->
<div class="quote-icon"><a href="{postrow.U_QUOTE}" title="{L_REPLY_WITH_QUOTE}"><span>{L_REPLY_WITH_QUOTE}</span></a></div>
<!-- ENDIF -->
</ul>
<!-- ENDIF --> <!-- ENDIF -->
<h3>class="first"<!-- ENDIF -->><!-- IF postrow.POST_ICON_IMG --><img src="{T_ICONS_PATH}{postrow.POST_ICON_IMG}" width="{postrow.POST_ICON_IMG_WIDTH}" height="{postrow.POST_ICON_IMG_HEIGHT}" /> <!-- ENDIF --><a href="#p{postrow.POST_ID}">{postrow.POST_SUBJECT}</a></h3>
<p class="author"><!-- IF S_IS_BOT -->{postrow.MINI_POST_IMG}<!-- ELSE --><a href="{postrow.U_MINI_POST}">{postrow.MINI_POST_IMG}</a><!-- ENDIF -->{L_POST_BY_AUTHOR} <strong>{postrow.POST_AUTHOR_FULL}</strong> » {postrow.POST_DATE}</p>
<!-- IF postrow.S_POST_UNAPPROVED or postrow.S_POST_REPORTED -->
<p class="rules"><!-- IF postrow.S_POST_UNAPPROVED -->{UNAPPROVED_IMG} <a href="{postrow.U_MCP_APPROVE}"><strong>{L_POST_UNAPPROVED}</strong></a><br /><!-- ENDIF --> <!-- IF postrow.S_POST_REPORTED -->{REPORTED_IMG} <a href="{postrow.U_MCP_REPORT}"><strong>{L_POST_REPORTED}</strong></a><!-- ENDIF --></p>
<!-- ENDIF -->
<div class="content">{postrow.MESSAGE}</div>
<!-- IF postrow.S_HAS_ATTACHMENTS --> <dl class="attachbox"> <dt>{L_ATTACHMENTS}</dt> <!-- BEGIN attachment --> <dd>{postrow.attachment.DISPLAY_ATTACHMENT}</dd> <!-- END attachment --> </dl> <!-- ENDIF --> <!-- IF postrow.S_DISPLAY_NOTICE -->
<div class="rules">{L_DOWNLOAD_NOTICE}</div>
<!-- ENDIF --> <!-- IF postrow.EDITED_MESSAGE or postrow.EDIT_REASON -->
<div class="notice">{postrow.EDITED_MESSAGE}
<!-- IF postrow.EDIT_REASON --><br /><strong>{L_REASON}:</strong> <em>{postrow.EDIT_REASON}</em><!-- ENDIF --></div>
<!-- ENDIF --> <!-- IF postrow.BUMPED_MESSAGE -->
<div class="notice"><br /><br />{postrow.BUMPED_MESSAGE}</div>
<!-- ENDIF --> <!-- IF postrow.SIGNATURE -->
<div id="sig{postrow.POST_ID}" class="signature">{postrow.SIGNATURE}</div>
<!-- ENDIF --> <!-- ENDIF --></div>
<!-- IF not postrow.S_IGNORE_POST --> <dl class="postprofile" id="profile{postrow.POST_ID}"> <dt> <!-- IF postrow.POSTER_AVATAR --> <!-- IF postrow.U_POST_AUTHOR --><a href="{postrow.U_POST_AUTHOR}">{postrow.POSTER_AVATAR}</a><!-- ELSE -->{postrow.POSTER_AVATAR}<!-- ENDIF --><br /> <!-- ENDIF --> <!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF --> </dt> <!-- IF postrow.RANK_TITLE or postrow.RANK_IMG --><dd>{postrow.RANK_TITLE}<!-- IF postrow.RANK_TITLE and postrow.RANK_IMG --><br /><!-- ENDIF -->{postrow.RANK_IMG}</dd><!-- ENDIF --> <dd> </dd> <!-- IF postrow.POSTER_POSTS != '' --><dd><strong>{L_POSTS}:</strong> {postrow.POSTER_POSTS}</dd><!-- ENDIF --> <!-- IF postrow.POSTER_JOINED --><dd><strong>{L_JOINED}:</strong> {postrow.POSTER_JOINED}</dd><!-- ENDIF --> <!-- IF postrow.POSTER_FROM --><dd><strong>{L_LOCATION}:</strong> {postrow.POSTER_FROM}</dd><!-- ENDIF --> <!-- IF postrow.S_PROFILE_FIELD1 --> <!-- Use a construct like this to include admin defined profile fields. Replace FIELD1 with the name of your field. --> <dd><strong>{postrow.PROFILE_FIELD1_NAME}:</strong> {postrow.PROFILE_FIELD1_VALUE}</dd> <!-- ENDIF --> <!-- BEGIN custom_fields --> <dd><strong>{postrow.custom_fields.PROFILE_FIELD_NAME}:</strong> {postrow.custom_fields.PROFILE_FIELD_VALUE}</dd> <!-- END custom_fields --> <!-- IF not S_IS_BOT --> <!-- IF postrow.U_PM or postrow.U_EMAIL or postrow.U_WWW or postrow.U_FACEBOOK or postrow.U_MSN or postrow.U_ICQ or postrow.U_YIM or postrow.U_AIM or postrow.U_JABBER --> <dd>
<ul class="profile-icons">
<!-- IF postrow.U_PM -->
<li class="pm-icon"><a href="{postrow.U_PM}" title="{L_PRIVATE_MESSAGE}"><span>{L_PRIVATE_MESSAGE}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_EMAIL -->
<li class="email-icon"><a href="{postrow.U_EMAIL}" title="{L_SEND_EMAIL_USER} {postrow.POST_AUTHOR}"><span>{L_SEND_EMAIL_USER} {postrow.POST_AUTHOR}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_WWW -->
<li class="web-icon"><a href="{postrow.U_WWW}" title="{L_VISIT_WEBSITE}: {postrow.U_WWW}"><span>{L_WEBSITE}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_FACEBOOK -->
<li class="facebook-icon"><a href="{postrow.U_FACEBOOK}" onclick="popup(this.href, 550, 320); return false;" title="{L_FACEBOOK}"><span>{L_FACEBOOK}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_MSN -->
<li class="msnm-icon"><a href="{postrow.U_MSN}" onclick="popup(this.href, 550, 320); return false;" title="{L_MSNM}"><span>{L_MSNM}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_ICQ -->
<li class="icq-icon"><a href="{postrow.U_ICQ}" onclick="popup(this.href, 550, 320); return false;" title="{L_ICQ}"><span>{L_ICQ}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_YIM -->
<li class="yahoo-icon"><a href="{postrow.U_YIM}" onclick="popup(this.href, 780, 550); return false;" title="{L_YIM}"><span>{L_YIM}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_AIM -->
<li class="aim-icon"><a href="{postrow.U_AIM}" onclick="popup(this.href, 550, 320); return false;" title="{L_AIM}"><span>{L_AIM}</span></a></li>
<!-- ENDIF --> <!-- IF postrow.U_JABBER -->
<li class="jabber-icon"><a href="{postrow.U_JABBER}" onclick="popup(this.href, 550, 320); return false;" title="{L_JABBER}"><span>{L_JABBER}</span></a></li>
<!-- ENDIF -->
</ul>
</dd> <!-- ENDIF --> <!-- ENDIF --> </dl> <!-- ENDIF -->
<div class="back2top"><a href="#wrap" class="top" title="{L_BACK_TO_TOP}">{L_BACK_TO_TOP}</a></div>
<span class="corners-bottom"><span></span></span></div>
</div>
<hr class="divider" />
<p><!-- END postrow --> <!-- IF S_QUICK_REPLY --> <!-- INCLUDE quickreply_editor.html --> <!-- ENDIF --> <!-- IF S_NUM_POSTS > 1 or PREVIOUS_PAGE --></p>
<form id="viewtopic" method="post" action="{S_TOPIC_ACTION}"> <fieldset class="display-options" style="margin-top: 0; "> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}" class="left-box {S_CONTENT_FLOW_BEGIN}">{L_PREVIOUS}</a><!-- ENDIF --> <!-- IF NEXT_PAGE --><a href="{NEXT_PAGE}" class="right-box {S_CONTENT_FLOW_END}">{L_NEXT}</a><!-- ENDIF --> <!-- IF not S_IS_BOT --> <label>{L_DISPLAY_POSTS}: {S_SELECT_SORT_DAYS}</label> <label>{L_SORT_BY} {S_SELECT_SORT_KEY}</label> <label>{S_SELECT_SORT_DIR} <input type="submit" name="sort" value="{L_GO}" class="button2" /></label> <!-- ENDIF --> </fieldset> </form>
<hr />
<p><!-- ENDIF --></p>
<div class="topic-actions">
<div class="buttons"><!-- IF not S_IS_BOT and S_DISPLAY_REPLY_INFO -->
<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->reply-icon<!-- ENDIF -->"><a href="{U_POST_REPLY_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_TOPIC_LOCKED_SHORT}<!-- ELSE -->{L_POST_REPLY}<!-- ENDIF --></a></div>
<!-- ENDIF --></div>
<!-- IF PAGINATION or TOTAL_POSTS -->
<div class="pagination">{TOTAL_POSTS}
<!-- IF PAGE_NUMBER --><!-- IF PAGINATION --> • <a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{PAGE_NUMBER}</a> • <span>{PAGINATION}</span><!-- ELSE --> • {PAGE_NUMBER}<!-- ENDIF --><!-- ENDIF --></div>
<!-- ENDIF --></div>
<p><!-- INCLUDE jumpbox.html --> <!-- IF S_TOPIC_MOD --></p>
<form method="post" action="{S_MOD_ACTION}"> <fieldset class="quickmod"> <label for="quick-mod-select">{L_QUICK_MOD}:</label> {S_TOPIC_MOD} <input type="submit" value="{L_GO}" class="button2" /> {S_FORM_TOKEN} </fieldset> </form>
<p><!-- ENDIF --> <!-- IF S_DISPLAY_ONLINE_LIST --></p>
<h3><!-- IF U_VIEWONLINE --><a href="{U_VIEWONLINE}">{L_WHO_IS_ONLINE}</a><!-- ELSE -->{L_WHO_IS_ONLINE}<!-- ENDIF --></h3>
<p>{LOGGED_IN_USER_LIST}</p>
<p><!-- ENDIF --> <!-- MOD : AOS Who Visited a Topic - Start --> <!-- IF S_WHO_VISITED_A_TOPIC --></p>
<h3><a href="{U_WVT}" onclick="window.open(this.href,'','statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=500,height=300'); return false;">{L_WHO_VISITED_A_TOPIC}</a></h3>
<p><!-- IF NUM_VISITORS -->{NUM_VISITORS}<!-- IF NUM_VISITORS == 1 -->{L_USER_VISIT}<!-- ELSE -->{L_USER_VISITS}<!-- ENDIF --><!-- BEGIN visited_topic --><span title="{visited_topic.USER_LAST_VIEW_TIME}">{visited_topic.USER}</span><!-- IF VIEW_COUNT --> ({visited_topic.USER_VIEW_COUNT})<!-- ENDIF --><!-- IF not visited_topic.S_LAST_ROW -->, <!-- ENDIF --><!-- END visited_topic --><!-- IF NUM_USER_IN_TOPIC -->, ... [<a href="{U_WVT}" onclick="window.open(this.href,'','statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=500,height=300'); return false;">{L_VIEW_MORE}</a>]<!-- ENDIF --><!-- ELSE -->{L_NONE_USER_VISIT}<!-- ENDIF --></p>
<p><!-- ENDIF --> <!-- MOD : AOS Who Visited a Topic - End --> <!-- INCLUDE overall_footer.html --></p>
</body>
</html>
Pois é... não é aconselhável instalar o phpBB pelos servições de scripts oferecidos pelo servidor de hospedagem como "Fantástico" ou "Softaculous", porque geralmente apresentam problemas.tucao escreveu:Ele estava com problemas, depois você me passou um outro arquivo, onde eu fiz as alterações do MOD-aos_who_visited_a_topic_1_0_2_2 e voltou a funcionar.
Esse phpbb fiz a instalação fazem quase 2 anos e fui atualizando, foi do proprio site de hospedagem (Godaddy)
