Merge pull request #15 from torrentpier/develop

R594

Основные изменения в данной ревизии: 

- переделана система отключения форума (триггером и администратором);
- переделано использование конструктора шаблонов для разных стилей;

- исправлена отправка карты сайта (sitemap);
- исправлена работа построения списка разделов в админке, добавлен кеш;
- исправления в локализации и файлах шаблона;
- исправление в классе бб-кодов (символ табуляции, фильтрация спама);

- обновление Bootstrap до версии v3.2.0.
This commit is contained in:
Exile 2014-08-07 19:56:44 +04:00
commit b7d59873f3
76 changed files with 3402 additions and 2838 deletions

View file

@ -17,7 +17,7 @@ require_once('./include/core_announce.php');
$passkey = @$_GET['passkey']; $passkey = @$_GET['passkey'];
if(!$passkey) if (!$passkey)
{ {
err('Passkey required'); err('Passkey required');
} }

View file

@ -29,7 +29,7 @@ if (empty($_POST['confirm']))
} }
else else
{ {
if(!file_exists('passwords.php')) stderr($tracker_lang['error'], 'passwords.php not exists'); if (!file_exists('passwords.php')) stderr($tracker_lang['error'], 'passwords.php not exists');
include('passwords.php'); include('passwords.php');
stdhead(); stdhead();

View file

@ -1,7 +1,6 @@
<?php <?php
define ('IN_FORUM', true); define ('IN_FORUM', true);
define ('IN_SERVICE', true);
define ('BB_ROOT', './'); define ('BB_ROOT', './');
require (BB_ROOT .'common.php'); require (BB_ROOT .'common.php');
require (BB_ROOT .'converter/constants.php'); require (BB_ROOT .'converter/constants.php');

View file

@ -1,8 +1,8 @@
<?php <?php
if (!defined('EXCLUDED_USERS_CSV')) { define('EXCLUDED_USERS_CSV', join(',', array(GUEST_UID, BOT_UID,))); } if (!defined('EXCLUDED_USERS_CSV')) { define('EXCLUDED_USERS_CSV', join(',', array(GUEST_UID, BOT_UID,))); }
define('TB_USERS_TABLE', 'users'); define('TB_USERS_TABLE', 'users');
define('TB_CATEGORIES_TABLE', 'categories'); define('TB_CATEGORIES_TABLE', 'categories');
define('TB_TORRENTS_TABLE', 'torrents'); define('TB_TORRENTS_TABLE', 'torrents');
define('TB_COMMENTS_TABLE', 'comments'); define('TB_COMMENTS_TABLE', 'comments');
define('MYBB_FORUMS_TABLE', 'mybb_forums'); define('MYBB_FORUMS_TABLE', 'mybb_forums');

View file

@ -231,17 +231,17 @@ function append_images($tor)
switch(TR_TYPE) switch(TR_TYPE)
{ {
case 'yse': case 'yse':
if(!empty($tor['image1'])) if (!empty($tor['image1']))
{ {
$poster = "[img=right]".make_img_path($tor['image1'])."[/img]"; $poster = "[img=right]".make_img_path($tor['image1'])."[/img]";
} }
if(!empty($tor['image2'])) if (!empty($tor['image2']))
{ {
$screens = '[spoiler="Скриншоты"][img]'.make_img_path($tor['image2'])."[/img][/spoiler]"; $screens = '[spoiler="Скриншоты"][img]'.make_img_path($tor['image2'])."[/img][/spoiler]";
} }
break; break;
case 'sky': case 'sky':
if(!empty($tor['poster'])) if (!empty($tor['poster']))
{ {
$poster = "[img=right]".make_img_path($tor['poster'])."[/img]"; $poster = "[img=right]".make_img_path($tor['poster'])."[/img]";
} }
@ -249,9 +249,9 @@ function append_images($tor)
if ($has_screens) if ($has_screens)
{ {
$screens .= '[spoiler="Скриншоты"]'; $screens .= '[spoiler="Скриншоты"]';
for ($i = 1; $i<=4; $i++) for ($i = 1; $i <= 4; $i++)
{ {
if(!empty($tor['screenshot'.$i])) if (!empty($tor['screenshot'.$i]))
{ {
$screens .= "[img]".make_img_path($tor['screenshot'.$i])."[/img] \n"; $screens .= "[img]".make_img_path($tor['screenshot'.$i])."[/img] \n";
} }
@ -347,7 +347,7 @@ function convert_torrent($torrent)
"topic_id" => $torrent['topic_id'], "topic_id" => $torrent['topic_id'],
"forum_id" => $torrent['category'], "forum_id" => $torrent['category'],
"attach_id" => $torrent['attach_id'], "attach_id" => $torrent['attach_id'],
"size" => $torrent['size'], "size" => $torrent['size'],
"reg_time" => $torrent['added'], "reg_time" => $torrent['added'],
"complete_count" => $torrent['times_completed'], "complete_count" => $torrent['times_completed'],
"seeder_last_seen" => $torrent['lastseed'], "seeder_last_seen" => $torrent['lastseed'],
@ -406,7 +406,7 @@ function convert_cat($forum, $allow_torrents = true)
"forum_name" => $forum['name'], "forum_name" => $forum['name'],
"forum_order" => $forum['sort'], "forum_order" => $forum['sort'],
"allow_reg_tracker" => $allow_torrents, "allow_reg_tracker" => $allow_torrents,
"allow_porno_topic" => $allow_torrents, "allow_porno_topic" => $allow_torrents,
); );
$columns = $values = array(); $columns = $values = array();

View file

@ -4,16 +4,16 @@ define('TR_TYPE', 'yse'); // 'sky' (SkyTracker) or 'yse' (TBDev YSE)
// Options // Options
define('CLEAN', true); // Clean TorrentPier's database before converting? define('CLEAN', true); // Clean TorrentPier's database before converting?
//Users //Users
define('CONVERT_USERS', true); // Converting users is enabled? define('CONVERT_USERS', true); // Converting users is enabled?
define('C_USERS_PER_ONCE', 250); // Number of users converting per once define('C_USERS_PER_ONCE', 250); // Number of users converting per once
//Torrents and categories //Torrents and categories
define('CONVERT_TORRENTS', true); // Converting torrents and categories is enabled? define('CONVERT_TORRENTS', true); // Converting torrents and categories is enabled?
define('C_TORRENTS_PER_ONCE', 400); // Number of torrents converting per once define('C_TORRENTS_PER_ONCE', 400); // Number of torrents converting per once
define('BDECODE', false); // Recalculate info_hash using bdecode? define('BDECODE', false); // Recalculate info_hash using bdecode?
//Comments //Comments
define('CONVERT_COMMENTS', true); // Converting comments is enabled? define('CONVERT_COMMENTS', true); // Converting comments is enabled?
define('C_COMMENTS_PER_ONCE', 400); // Number of comments converting per once define('C_COMMENTS_PER_ONCE', 400); // Number of comments converting per once
//Mybb forums & topics //Mybb forums & topics
define('CONVERT_MYBB_FORUMS', false); // Converting forums is enabled? define('CONVERT_MYBB_FORUMS', false); // Converting forums is enabled?
define('C_FORUMS_PER_ONCE', 100); // Number of forums converting per once define('C_FORUMS_PER_ONCE', 100); // Number of forums converting per once

View file

@ -1,7 +1,6 @@
<?php <?php
define('IN_FORUM', true); define('IN_FORUM', true);
define('IN_SERVICE', true);
define('BB_ROOT', './'); define('BB_ROOT', './');
require(BB_ROOT .'common.php'); require(BB_ROOT .'common.php');
require(INC_DIR .'functions_torrent.php'); require(INC_DIR .'functions_torrent.php');

View file

@ -1,8 +1,8 @@
<?php <?php
if (!defined('EXCLUDED_USERS_CSV')) { define('EXCLUDED_USERS_CSV', join(',', array(GUEST_UID, BOT_UID,))); } if (!defined('EXCLUDED_USERS_CSV')) { define('EXCLUDED_USERS_CSV', join(',', array(GUEST_UID, BOT_UID,))); }
define('TB_USERS_TABLE', 'users'); define('TB_USERS_TABLE', 'users');
define('TB_CATEGORIES_TABLE', 'categories'); define('TB_CATEGORIES_TABLE', 'categories');
define('TB_TORRENTS_TABLE', 'torrents'); define('TB_TORRENTS_TABLE', 'torrents');
define('TB_COMMENTS_TABLE', 'comments'); define('TB_COMMENTS_TABLE', 'comments');
define('MYBB_FORUMS_TABLE', 'mybb_forums'); define('MYBB_FORUMS_TABLE', 'mybb_forums');

View file

@ -236,17 +236,17 @@ function append_images($tor)
switch(TR_TYPE) switch(TR_TYPE)
{ {
case 'yse': case 'yse':
if(!empty($tor['image1'])) if (!empty($tor['image1']))
{ {
$poster = "[img=right]".make_img_path($tor['image1'])."[/img]"; $poster = "[img=right]".make_img_path($tor['image1'])."[/img]";
} }
if(!empty($tor['image2'])) if (!empty($tor['image2']))
{ {
$screens = '[spoiler="Скриншоты"][img]'.make_img_path($tor['image2'])."[/img][/spoiler]"; $screens = '[spoiler="Скриншоты"][img]'.make_img_path($tor['image2'])."[/img][/spoiler]";
} }
break; break;
case 'sky': case 'sky':
if(!empty($tor['poster'])) if (!empty($tor['poster']))
{ {
$poster = "[img=right]".make_img_path($tor['poster'])."[/img]"; $poster = "[img=right]".make_img_path($tor['poster'])."[/img]";
} }
@ -254,9 +254,9 @@ function append_images($tor)
if ($has_screens) if ($has_screens)
{ {
$screens .= '[spoiler="Скриншоты"]'; $screens .= '[spoiler="Скриншоты"]';
for ($i = 1; $i<=4; $i++) for ($i = 1; $i <= 4; $i++)
{ {
if(!empty($tor['screenshot'.$i])) if (!empty($tor['screenshot'.$i]))
{ {
$screens .= "[img]".make_img_path($tor['screenshot'.$i])."[/img] \n"; $screens .= "[img]".make_img_path($tor['screenshot'.$i])."[/img] \n";
} }

View file

@ -4,16 +4,16 @@ define('TR_TYPE', 'yse'); // 'sky' (SkyTracker) or 'yse' (TBDev YSE)
// Options // Options
define('CLEAN', true); // Clean TorrentPier's database before converting? define('CLEAN', true); // Clean TorrentPier's database before converting?
//Users //Users
define('CONVERT_USERS', true); // Converting users is enabled? define('CONVERT_USERS', true); // Converting users is enabled?
define('C_USERS_PER_ONCE', 250); // Number of users converting per once define('C_USERS_PER_ONCE', 250); // Number of users converting per once
//Torrents and categories //Torrents and categories
define('CONVERT_TORRENTS', true); // Converting torrents and categories is enabled? define('CONVERT_TORRENTS', true); // Converting torrents and categories is enabled?
define('C_TORRENTS_PER_ONCE', 400); // Number of torrents converting per once define('C_TORRENTS_PER_ONCE', 400); // Number of torrents converting per once
define('BDECODE', false); // Recalculate info_hash using bdecode? define('BDECODE', false); // Recalculate info_hash using bdecode?
//Comments //Comments
define('CONVERT_COMMENTS', true); // Converting comments is enabled? define('CONVERT_COMMENTS', true); // Converting comments is enabled?
define('C_COMMENTS_PER_ONCE', 400); // Number of comments converting per once define('C_COMMENTS_PER_ONCE', 400); // Number of comments converting per once
//Mybb forums & topics //Mybb forums & topics
define('CONVERT_MYBB_FORUMS', false); // Converting forums is enabled? define('CONVERT_MYBB_FORUMS', false); // Converting forums is enabled?
define('C_FORUMS_PER_ONCE', 100); // Number of forums converting per once define('C_FORUMS_PER_ONCE', 100); // Number of forums converting per once

View file

@ -1,7 +1,6 @@
<?php <?php
define('IN_FORUM', true); define('IN_FORUM', true);
define('IN_SERVICE', true);
define('BB_ROOT', './'); define('BB_ROOT', './');
require(BB_ROOT .'common.php'); require(BB_ROOT .'common.php');
require(INC_DIR .'functions_torrent.php'); require(INC_DIR .'functions_torrent.php');

View file

@ -1,17 +1,15 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Attachments']['Control_Panel'] = basename(__FILE__); $module['ATTACHMENTS']['CONTROL_PANEL'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$total_attachments = 0; $total_attachments = 0;
if ( ($attach_config['upload_dir'][0] == '/') || ( ($attach_config['upload_dir'][0] != '/') && ($attach_config['upload_dir'][1] == ':') ) ) if (($attach_config['upload_dir'][0] == '/') || (($attach_config['upload_dir'][0] != '/') && ($attach_config['upload_dir'][1] == ':')))
{ {
$upload_dir = $attach_config['upload_dir']; $upload_dir = $attach_config['upload_dir'];
} }

View file

@ -1,20 +1,18 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$filename = basename(__FILE__); $filename = basename(__FILE__);
$module['Attachments']['Manage'] = $filename . '?mode=manage'; $module['ATTACHMENTS']['MANAGE'] = $filename . '?mode=manage';
$module['Attachments']['Special_categories'] = $filename . '?mode=cats'; $module['ATTACHMENTS']['SPECIAL_CATEGORIES'] = $filename . '?mode=cats';
$module['Attachments']['Quota_limits'] = $filename . '?mode=quota'; $module['ATTACHMENTS']['QUOTA_LIMITS'] = $filename . '?mode=quota';
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$error = false; $error = false;
if ( ($attach_config['upload_dir'][0] == '/') || ( ($attach_config['upload_dir'][0] != '/') && ($attach_config['upload_dir'][1] == ':') ) ) if (($attach_config['upload_dir'][0] == '/') || (($attach_config['upload_dir'][0] != '/') && ($attach_config['upload_dir'][1] == ':')))
{ {
$upload_dir = $attach_config['upload_dir']; $upload_dir = $attach_config['upload_dir'];
} }

View file

@ -1,14 +1,12 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['General']['Configuration'] = basename(__FILE__) .'?mode=config'; $module['GENERAL']['CONFIGURATION'] = basename(__FILE__) .'?mode=config';
$module['Mods']['Configuration'] = basename(__FILE__) .'?mode=config_mods'; $module['MODS']['CONFIGURATION'] = basename(__FILE__) .'?mode=config_mods';
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
require(INC_DIR .'functions_selects.php'); require(INC_DIR .'functions_selects.php');
@ -24,13 +22,13 @@ $return_links = array(
// Pull all config data // Pull all config data
// //
$sql = "SELECT * FROM " . BB_CONFIG; $sql = "SELECT * FROM " . BB_CONFIG;
if(!$result = DB()->sql_query($sql)) if (!$result = DB()->sql_query($sql))
{ {
bb_die('Could not query config information in admin_board'); bb_die('Could not query config information in admin_board');
} }
else else
{ {
while( $row = DB()->sql_fetchrow($result) ) while ($row = DB()->sql_fetchrow($result))
{ {
$config_name = $row['config_name']; $config_name = $row['config_name'];
$config_value = $row['config_value']; $config_value = $row['config_value'];
@ -51,7 +49,7 @@ else
} }
} }
switch($mode) switch ($mode)
{ {
case 'config_mods': case 'config_mods':
$template->assign_vars(array( $template->assign_vars(array(

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['TorrentPier']['Forum_Config'] = basename(__FILE__); $module['TP']['FORUM_CONFIG'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$max_forum_name_len = 30; $max_forum_name_len = 30;
$max_forum_rows = 25; $max_forum_rows = 25;

View file

@ -1,16 +1,13 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
if(IS_SUPER_ADMIN){ if (IS_SUPER_ADMIN) $module['TP']['TRACKER_CONFIG'] = basename(__FILE__);
$module['TorrentPier']['Tracker_Config'] = basename(__FILE__);}
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
if(!IS_SUPER_ADMIN) bb_die($lang['NOT_ADMIN']); if (!IS_SUPER_ADMIN) bb_die($lang['NOT_ADMIN']);
require(INC_DIR .'functions_admin_torrent.php'); require(INC_DIR .'functions_admin_torrent.php');

View file

@ -1,12 +1,8 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
if (IS_SUPER_ADMIN) if (IS_SUPER_ADMIN) $module['TP']['CRON'] = basename(__FILE__) . '?mode=list';
{
$module['TorrentPier']['Cron'] = basename(__FILE__) . '?mode=list';
}
return; return;
} }
@ -24,7 +20,6 @@ if ($mode == 'run' && !$job_id)
redirect('admin/'.basename(__FILE__) . '?mode=list'); redirect('admin/'.basename(__FILE__) . '?mode=list');
} }
else require('./pagestart.php'); else require('./pagestart.php');
// ACP Header - END
if (!IS_SUPER_ADMIN) bb_die($lang['NOT_ADMIN']); if (!IS_SUPER_ADMIN) bb_die($lang['NOT_ADMIN']);
@ -52,7 +47,7 @@ $template->assign_vars(array(
'CRON_CHECK_INTERVAL' => $new['cron_check_interval'], 'CRON_CHECK_INTERVAL' => $new['cron_check_interval'],
)); ));
switch($mode) switch ($mode)
{ {
case 'list': case 'list':
$sql = DB()->fetch_rowset("SELECT * FROM ". BB_CRON ." ORDER BY cron_id"); $sql = DB()->fetch_rowset("SELECT * FROM ". BB_CRON ." ORDER BY cron_id");
@ -60,7 +55,7 @@ switch($mode)
foreach ($sql as $i => $row) foreach ($sql as $i => $row)
{ {
$template->assign_block_vars('list', array( $template->assign_block_vars('list', array(
'ROW_CLASS' => !($i % 2) ? 'row2' : 'row1', 'ROW_CLASS' => !($i % 2) ? 'row2' : 'row1',
'JOB_ID' => $i + 1, 'JOB_ID' => $i + 1,
'CRON_ID' => $row['cron_id'], 'CRON_ID' => $row['cron_id'],
'CRON_ACTIVE' => $row['cron_active'] ? '<img src="../images/icon_run.gif" alt="'. $lang['YES'] .'" />' : '<img src="../images/icon_delete.gif" alt="'. $lang['NO'] .'" />', 'CRON_ACTIVE' => $row['cron_active'] ? '<img src="../images/icon_run.gif" alt="'. $lang['YES'] .'" />' : '<img src="../images/icon_delete.gif" alt="'. $lang['NO'] .'" />',
@ -212,7 +207,7 @@ if ($submit)
} }
else if (validate_cron_post($_POST) == 1) else if (validate_cron_post($_POST) == 1)
{ {
if($_POST['mode'] == 'edit') if ($_POST['mode'] == 'edit')
{ {
update_cron_job($_POST); update_cron_job($_POST);
} }

View file

@ -1,17 +1,15 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Users']['Disallow'] = basename(__FILE__); $module['USERS']['DISALLOW'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$message = ''; $message = '';
if( isset($_POST['add_name']) ) if (isset($_POST['add_name']))
{ {
include(INC_DIR .'functions_validate.php'); include(INC_DIR .'functions_validate.php');
@ -75,13 +73,13 @@ $disallowed = DB()->sql_fetchrowset($result);
// //
$disallow_select = '<select name="disallowed_id">'; $disallow_select = '<select name="disallowed_id">';
if( count($disallowed) <= 0 ) if (count($disallowed) <= 0)
{ {
$disallow_select .= '<option value="">' . $lang['NO_DISALLOWED'] . '</option>'; $disallow_select .= '<option value="">' . $lang['NO_DISALLOWED'] . '</option>';
} }
else else
{ {
for( $i = 0; $i < count($disallowed); $i++ ) for ($i = 0; $i < count($disallowed); $i++)
{ {
$disallow_select .= '<option value="' . $disallowed[$i]['disallow_id'] . '">' . $disallowed[$i]['disallow_username'] . '</option>'; $disallow_select .= '<option value="' . $disallowed[$i]['disallow_id'] . '">' . $disallowed[$i]['disallow_username'] . '</option>';
} }

View file

@ -1,23 +1,20 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$filename = basename(__FILE__); $filename = basename(__FILE__);
$module['Attachments']['Extension_control'] = $filename .'?mode=extensions'; $module['ATTACHMENTS']['EXTENSION_CONTROL'] = $filename .'?mode=extensions';
$module['Attachments']['Extension_group_manage'] = $filename .'?mode=groups'; $module['ATTACHMENTS']['EXTENSION_GROUP_MANAGE'] = $filename .'?mode=groups';
return; return;
} }
require('./pagestart.php');
function update_attach_extensions () { function update_attach_extensions () {
$GLOBALS['datastore']->update('attach_extensions'); $GLOBALS['datastore']->update('attach_extensions');
} }
register_shutdown_function('update_attach_extensions'); register_shutdown_function('update_attach_extensions');
require('./pagestart.php'); if (($attach_config['upload_dir'][0] == '/') || (($attach_config['upload_dir'][0] != '/') && ($attach_config['upload_dir'][1] == ':')))
// ACP Header - END
if ( ($attach_config['upload_dir'][0] == '/') || ( ($attach_config['upload_dir'][0] != '/') && ($attach_config['upload_dir'][1] == ':') ) )
{ {
$upload_dir = $attach_config['upload_dir']; $upload_dir = $attach_config['upload_dir'];
} }
@ -434,9 +431,9 @@ if ($mode == 'groups')
'S_FILESIZE' => size_select('add_size_select', $size), 'S_FILESIZE' => size_select('add_size_select', $size),
'S_ADD_DOWNLOAD_MODE' => download_select('add_download_mode'), 'S_ADD_DOWNLOAD_MODE' => download_select('add_download_mode'),
'S_SELECT_CAT' => category_select('add_category'), 'S_SELECT_CAT' => category_select('add_category'),
'S_CANCEL_ACTION' => "admin_extensions.php?mode=groups", 'S_CANCEL_ACTION' => 'admin_extensions.php?mode=groups',
'S_ATTACH_ACTION' => "admin_extensions.php?mode=groups") 'S_ATTACH_ACTION' => 'admin_extensions.php?mode=groups',
); ));
$sql = 'SELECT * FROM ' . BB_EXTENSION_GROUPS; $sql = 'SELECT * FROM ' . BB_EXTENSION_GROUPS;
@ -483,8 +480,8 @@ if ($mode == 'groups')
'MAX_FILESIZE' => $extension_group[$i]['max_filesize'], 'MAX_FILESIZE' => $extension_group[$i]['max_filesize'],
'CAT_BOX' => ( $viewgroup == $extension_group[$i]['group_id'] ) ? '+' : '-', 'CAT_BOX' => ( $viewgroup == $extension_group[$i]['group_id'] ) ? '+' : '-',
'U_VIEWGROUP' => ( $viewgroup == $extension_group[$i]['group_id'] ) ? "admin_extensions.php?mode=groups" : "admin_extensions.php?mode=groups&" . POST_GROUPS_URL . "=" . $extension_group[$i]['group_id'], 'U_VIEWGROUP' => ( $viewgroup == $extension_group[$i]['group_id'] ) ? "admin_extensions.php?mode=groups" : "admin_extensions.php?mode=groups&" . POST_GROUPS_URL . "=" . $extension_group[$i]['group_id'],
'U_FORUM_PERMISSIONS' => "admin_extensions.php?mode=$mode&amp;e_mode=perm&amp;e_group=" . $extension_group[$i]['group_id']) 'U_FORUM_PERMISSIONS' => "admin_extensions.php?mode=$mode&amp;e_mode=perm&amp;e_group=" . $extension_group[$i]['group_id'],
); ));
if ($viewgroup && $viewgroup == $extension_group[$i]['group_id']) if ($viewgroup && $viewgroup == $extension_group[$i]['group_id'])
{ {
@ -690,8 +687,8 @@ if ($e_mode == 'perm' && $group)
$template->assign_vars(array( $template->assign_vars(array(
'TPL_ATTACH_EXTENSION_GROUPS_PERMISSIONS' => true, 'TPL_ATTACH_EXTENSION_GROUPS_PERMISSIONS' => true,
'L_GROUP_PERMISSIONS_TITLE' => sprintf($lang['GROUP_PERMISSIONS_TITLE_ADMIN'], trim($group_name)), 'L_GROUP_PERMISSIONS_TITLE' => sprintf($lang['GROUP_PERMISSIONS_TITLE_ADMIN'], trim($group_name)),
'A_PERM_ACTION' => "admin_extensions.php?mode=groups&amp;e_mode=perm&amp;e_group=$group") 'A_PERM_ACTION' => "admin_extensions.php?mode=groups&amp;e_mode=perm&amp;e_group=$group",
); ));
$forum_option_values = array(0 => $lang['PERM_ALL_FORUMS']); $forum_option_values = array(0 => $lang['PERM_ALL_FORUMS']);

View file

@ -1,16 +1,13 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Forums']['Prune'] = basename(__FILE__); $module['FORUMS']['PRUNE'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$all_forums = -1; $all_forums = -1;
$pruned_total = 0; $pruned_total = 0;
$prune_performed = false; $prune_performed = false;

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Forums']['Permissions'] = basename(__FILE__); $module['FORUMS']['PERMISSIONS'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$forum_auth_fields = array( $forum_auth_fields = array(
'auth_view', 'auth_view',
@ -146,8 +144,8 @@ if (empty($forum_id))
// Output the selection table if no forum id was specified // Output the selection table if no forum id was specified
$template->assign_vars(array( $template->assign_vars(array(
'TPL_AUTH_SELECT_FORUM' => true, 'TPL_AUTH_SELECT_FORUM' => true,
'S_AUTH_ACTION' => "admin_forumauth.php", 'S_AUTH_ACTION' => 'admin_forumauth.php',
'S_AUTH_SELECT' => get_forum_select('admin', 'f', null, 80), 'S_AUTH_SELECT' => get_forum_select('admin', 'f', null, 80),
)); ));
} }
@ -243,11 +241,11 @@ else
$template->assign_vars(array( $template->assign_vars(array(
'TPL_EDIT_FORUM_AUTH' => true, 'TPL_EDIT_FORUM_AUTH' => true,
'FORUM_NAME' => htmlCHR($forum_name), 'FORUM_NAME' => htmlCHR($forum_name),
'U_SWITCH_MODE' => $u_switch_mode, 'U_SWITCH_MODE' => $u_switch_mode,
'S_FORUMAUTH_ACTION' => "admin_forumauth.php", 'S_FORUMAUTH_ACTION' => 'admin_forumauth.php',
'S_COLUMN_SPAN' => $s_column_span, 'S_COLUMN_SPAN' => $s_column_span,
'S_HIDDEN_FIELDS' => $s_hidden_fields, 'S_HIDDEN_FIELDS' => $s_hidden_fields,
)); ));
} }

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Forums']['Permissions_List'] = basename(__FILE__); $module['FORUMS']['PERMISSIONS_LIST'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
// View Read Post Reply Edit Delete Sticky Announce Vote Poll PostAttach Download // View Read Post Reply Edit Delete Sticky Announce Vote Poll PostAttach Download
$simple_auth_ary = array( $simple_auth_ary = array(
@ -354,12 +352,12 @@ else
$s_hidden_fields = '<input type="hidden" name="' . POST_CAT_URL . '" value="' . $cat_id . '">'; $s_hidden_fields = '<input type="hidden" name="' . POST_CAT_URL . '" value="' . $cat_id . '">';
$template->assign_vars(array( $template->assign_vars(array(
'TPL_AUTH_CAT' => true, 'TPL_AUTH_CAT' => true,
'CAT_NAME' => htmlCHR($cat_name), 'CAT_NAME' => htmlCHR($cat_name),
'S_FORUMAUTH_ACTION' => "admin_forumauth_list.php", 'S_FORUMAUTH_ACTION' => 'admin_forumauth_list.php',
'S_COLUMN_SPAN' => count($forum_auth_fields)+1, 'S_COLUMN_SPAN' => count($forum_auth_fields) + 1,
'S_HIDDEN_FIELDS' => $s_hidden_fields) 'S_HIDDEN_FIELDS' => $s_hidden_fields,
); ));
} }
print_page('admin_forumauth_list.tpl', 'admin'); print_page('admin_forumauth_list.tpl', 'admin');

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Forums']['Manage'] = basename(__FILE__); $module['FORUMS']['MANAGE'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
require(INC_DIR .'functions_group.php'); require(INC_DIR .'functions_group.php');

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Groups']['Manage'] = basename(__FILE__); $module['GROUPS']['MANAGE'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
require(INC_DIR .'functions_group.php'); require(INC_DIR .'functions_group.php');

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Users']['Actions_log'] = basename(__FILE__); $module['USERS']['ACTIONS_LOG'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$datastore->enqueue(array( $datastore->enqueue(array(
'moderators', 'moderators',

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Mods']['Mass_Email'] = basename(__FILE__); $module['MODS']['MASS_EMAIL'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
@set_time_limit(1200); @set_time_limit(1200);

View file

@ -1,12 +1,10 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['General']['Php_info'] = basename(__FILE__); $module['GENERAL']['PHP_INFO'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
phpinfo(); phpinfo();

View file

@ -1,19 +1,16 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Users']['Ranks'] = basename(__FILE__); $module['USERS']['RANKS'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$_POST['special_rank'] = 1; $_POST['special_rank'] = 1;
$_POST['min_posts'] = -1; $_POST['min_posts'] = -1;
if(isset($_GET['mode']) || isset($_POST['mode'])) if (isset($_GET['mode']) || isset($_POST['mode']))
{ {
$mode = isset($_GET['mode']) ? $_GET['mode'] : $_POST['mode']; $mode = isset($_GET['mode']) ? $_GET['mode'] : $_POST['mode'];
} }

View file

@ -1,16 +1,13 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
if(IS_SUPER_ADMIN){ if (IS_SUPER_ADMIN) $module['GENERAL']['REBUILD_SEARCH_INDEX'] = basename(__FILE__);
$module['General']['Rebuild_Search_Index'] = basename(__FILE__);}
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
if(!IS_SUPER_ADMIN) bb_die($lang['NOT_ADMIN']); if (!IS_SUPER_ADMIN) bb_die($lang['NOT_ADMIN']);
require(INC_DIR .'bbcode.php'); require(INC_DIR .'bbcode.php');

View file

@ -2,11 +2,9 @@
if (!empty($setmodules)) if (!empty($setmodules))
{ {
if($bb_cfg['reports_enabled']){ if ($bb_cfg['reports_enabled']) $module['MODS']['REPORTS'] = basename(__FILE__) .'?mode=config';
$module['Mods']['REPORTS'] = basename(__FILE__) .'?mode=config';}
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
require(INC_DIR . 'functions_report.php'); require(INC_DIR . 'functions_report.php');

View file

@ -2,7 +2,7 @@
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Mods']['SITEMAP'] = basename(__FILE__); $module['MODS']['SITEMAP'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');

View file

@ -1,17 +1,14 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['General']['Smilies'] = basename(__FILE__); $module['GENERAL']['SMILIES'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
// Check to see what mode we should operate in // Check to see what mode we should operate in
if( isset($_POST['mode']) || isset($_GET['mode']) ) if (isset($_POST['mode']) || isset($_GET['mode']))
{ {
$mode = ( isset($_POST['mode']) ) ? $_POST['mode'] : $_GET['mode']; $mode = ( isset($_POST['mode']) ) ? $_POST['mode'] : $_GET['mode'];
$mode = htmlspecialchars($mode); $mode = htmlspecialchars($mode);

View file

@ -1,16 +1,14 @@
<?php <?php
$max_forum_name_length = 50;
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Users']['Permissions'] = basename(__FILE__) .'?mode=user'; $module['USERS']['PERMISSIONS'] = basename(__FILE__) .'?mode=user';
$module['Groups']['Permissions'] = basename(__FILE__) .'?mode=group'; $module['GROUPS']['PERMISSIONS'] = basename(__FILE__) .'?mode=group';
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
$max_forum_name_length = 50;
require(INC_DIR .'functions_group.php'); require(INC_DIR .'functions_group.php');

View file

@ -1,15 +1,13 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Users']['Ban_Management'] = basename(__FILE__); $module['USERS']['BAN_MANAGEMENT'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
if ( isset($_POST['submit']) ) if (isset($_POST['submit']))
{ {
$user_bansql = ''; $user_bansql = '';
$email_bansql = ''; $email_bansql = '';

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['Users']['Search'] = basename(__FILE__); $module['USERS']['SEARCH'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
array_deep($_POST, 'trim'); array_deep($_POST, 'trim');

View file

@ -1,13 +1,11 @@
<?php <?php
// ACP Header - START
if (!empty($setmodules)) if (!empty($setmodules))
{ {
$module['General']['Word_Censor'] = basename(__FILE__); $module['GENERAL']['WORD_CENSOR'] = basename(__FILE__);
return; return;
} }
require('./pagestart.php'); require('./pagestart.php');
// ACP Header - END
if (!$bb_cfg['use_word_censor']) if (!$bb_cfg['use_word_censor'])
{ {

View file

@ -5,32 +5,33 @@ require('./pagestart.php');
// Generate relevant output // Generate relevant output
if (isset($_GET['pane']) && $_GET['pane'] == 'left') if (isset($_GET['pane']) && $_GET['pane'] == 'left')
{ {
$dir = @opendir('.'); if (!$module = CACHE('bb_cache')->get('admin_module'))
$setmodules = 1;
while ($file = @readdir($dir))
{ {
if (preg_match('/^admin_.*?\.php$/', $file)) $dir = @opendir('.');
$setmodules = 1;
while ($file = @readdir($dir))
{ {
include('./' . $file); if (preg_match('/^admin_.*?\.php$/', $file))
{
include('./' . $file);
}
} }
unset($setmodules);
@closedir($dir);
CACHE('bb_cache')->set('admin_module', $module, 600);
} }
@closedir($dir);
unset($setmodules);
$template->assign_vars(array( $template->assign_vars(array(
'TPL_ADMIN_NAVIGATE' => true, 'TPL_ADMIN_NAVIGATE' => true,
'U_FORUM_INDEX' => "../index.php", 'U_FORUM_INDEX' => '../index.php',
'U_ADMIN_INDEX' => "index.php?pane=right", 'U_ADMIN_INDEX' => 'index.php?pane=right',
)); ));
ksort($module); ksort($module);
while (list($cat, $action_array) = each($module)) while (list($cat, $action_array) = each($module))
{ {
$cat = (!empty($lang[strtoupper($cat)])) ? $lang[strtoupper($cat)] : preg_replace('/_/', ' ', $cat); $cat = (!empty($lang[$cat])) ? $lang[$cat] : preg_replace('/_/', ' ', $cat);
$template->assign_block_vars('catrow', array( $template->assign_block_vars('catrow', array(
'ADMIN_CATEGORY' => $cat, 'ADMIN_CATEGORY' => $cat,
@ -39,17 +40,17 @@ if (isset($_GET['pane']) && $_GET['pane'] == 'left')
ksort($action_array); ksort($action_array);
$row_count = 0; $row_count = 0;
while (list($action, $file) = each($action_array)) while (list($action, $file) = each($action_array))
{ {
$row_class = !($row_count % 2) ? 'row1' : 'row2'; $row_class = !($row_count % 2) ? 'row1' : 'row2';
$action = ( !empty($lang[strtoupper($action)]) ) ? $lang[strtoupper($action)] : preg_replace('/_/', ' ', $action); $action = (!empty($lang[$action])) ? $lang[$action] : preg_replace('/_/', ' ', $action);
$template->assign_block_vars('catrow.modulerow', array( $template->assign_block_vars('catrow.modulerow', array(
'ROW_CLASS' => $row_class, 'ROW_CLASS' => $row_class,
'ADMIN_MODULE' => $action, 'ADMIN_MODULE' => $action,
'U_ADMIN_MODULE' => $file) 'U_ADMIN_MODULE' => $file,
); ));
$row_count++; $row_count++;
} }
} }
@ -67,9 +68,9 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
$start_date = bb_date($bb_cfg['board_startdate']); $start_date = bb_date($bb_cfg['board_startdate']);
$boarddays = (TIMENOW - $bb_cfg['board_startdate']) / 86400; $boarddays = (TIMENOW - $bb_cfg['board_startdate']) / 86400;
$posts_per_day = sprintf('%.2f', $total_posts / $boarddays); $posts_per_day = sprintf('%.2f', $total_posts / $boarddays);
$topics_per_day = sprintf('%.2f', $total_topics / $boarddays); $topics_per_day = sprintf('%.2f', $total_topics / $boarddays);
$users_per_day = sprintf('%.2f', $total_users / $boarddays); $users_per_day = sprintf('%.2f', $total_users / $boarddays);
$avatar_dir_size = 0; $avatar_dir_size = 0;
@ -91,17 +92,17 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
$avatar_dir_size = $lang['NOT_AVAILABLE']; $avatar_dir_size = $lang['NOT_AVAILABLE'];
} }
if(intval($posts_per_day) > $total_posts) if (intval($posts_per_day) > $total_posts)
{ {
$posts_per_day = $total_posts; $posts_per_day = $total_posts;
} }
if(intval($topics_per_day) > $total_topics) if (intval($topics_per_day) > $total_topics)
{ {
$topics_per_day = $total_topics; $topics_per_day = $total_topics;
} }
if($users_per_day > $total_users) if ($users_per_day > $total_users)
{ {
$users_per_day = $total_users; $users_per_day = $total_users;
} }
@ -196,7 +197,7 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
{ {
$registered_users = $hidden_users = 0; $registered_users = $hidden_users = 0;
for ($i=0, $cnt=count($onlinerow_reg); $i < $cnt; $i++) for ($i = 0, $cnt = count($onlinerow_reg); $i < $cnt; $i++)
{ {
if (!in_array($onlinerow_reg[$i]['user_id'], $reg_userid_ary)) if (!in_array($onlinerow_reg[$i]['user_id'], $reg_userid_ary))
{ {
@ -232,11 +233,11 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
} }
// Guest users // Guest users
if( count($onlinerow_guest) ) if (count($onlinerow_guest))
{ {
$guest_users = 0; $guest_users = 0;
for($i = 0; $i < count($onlinerow_guest); $i++) for ($i = 0; $i < count($onlinerow_guest); $i++)
{ {
$guest_userip_ary[] = $onlinerow_guest[$i]['session_ip']; $guest_userip_ary[] = $onlinerow_guest[$i]['session_ip'];
$guest_users++; $guest_users++;
@ -258,7 +259,7 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
else else
{ {
$template->assign_vars(array( $template->assign_vars(array(
'USERS_ONLINE_HREF' => "index.php?pane=right&users_online=1", 'USERS_ONLINE_HREF' => 'index.php?pane=right&users_online=1',
)); ));
} }
} }

View file

@ -9,11 +9,15 @@ require('./common.php');
$ajax->init(); $ajax->init();
// Handle "board disabled via ON/OFF trigger" // Exit if board is disabled via ON/OFF trigger or by admin
if (file_exists(BB_DISABLED) || $bb_cfg['board_disable']) if ($bb_cfg['board_disable'])
{ {
$ajax->ajax_die($lang['BOARD_DISABLE']); $ajax->ajax_die($lang['BOARD_DISABLE']);
} }
else if (file_exists(BB_DISABLED))
{
$ajax->ajax_die($lang['BOARD_DISABLE_CRON']);
}
// Load actions required modules // Load actions required modules
switch ($ajax->action) switch ($ajax->action)

View file

@ -40,10 +40,10 @@ switch ($mode)
$html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Yandex: <font style="color: red;">'.$lang['SITEMAP_ERROR'].'</font> URL: <a href="http://ping.blogs.yandex.ru/ping?sitemap='.urlencode($map_link).'" target="_blank">http://ping.blogs.yandex.ru/ping?sitemap='.$map_link.'</a>'; $html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Yandex: <font style="color: red;">'.$lang['SITEMAP_ERROR'].'</font> URL: <a href="http://ping.blogs.yandex.ru/ping?sitemap='.urlencode($map_link).'" target="_blank">http://ping.blogs.yandex.ru/ping?sitemap='.$map_link.'</a>';
} }
if ($map->send_url("http://www.bing.com/webmaster/ping.aspx?siteMap=", $map_link)) { if ($map->send_url("http://www.bing.com/ping?sitemap=", $map_link)) {
$html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Bing: <font style="color: green;">'.$lang['SITEMAP_SENT'].'</font>'; $html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Bing: <font style="color: green;">'.$lang['SITEMAP_SENT'].'</font>';
} else { } else {
$html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Bing: <font style="color: red;">'.$lang['SITEMAP_ERROR'].'</font> URL: <a href="http://www.bing.com/webmaster/ping.aspx?siteMap='.urlencode($map_link).'" target="_blank">http://www.bing.com/webmaster/ping.aspx?siteMap='.$map_link.'</a>'; $html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Bing: <font style="color: red;">'.$lang['SITEMAP_ERROR'].'</font> URL: <a href="http://www.bing.com/ping?sitemap='.urlencode($map_link).'" target="_blank">http://www.bing.com/ping?sitemap='.$map_link.'</a>';
} }
if (strpos($map->send_url("http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url=", $map_link), "Thanks for the ping") !== false) { if (strpos($map->send_url("http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url=", $map_link), "Thanks for the ping") !== false) {
@ -51,12 +51,6 @@ switch ($mode)
} else { } else {
$html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Weblogs: <font style="color: red;">'.$lang['SITEMAP_ERROR'].'</font> URL: <a href="http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url='.urlencode($map_link).'" target="_blank">http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url='.$map_link.'</a>'; $html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Weblogs: <font style="color: red;">'.$lang['SITEMAP_ERROR'].'</font> URL: <a href="http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url='.urlencode($map_link).'" target="_blank">http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url='.$map_link.'</a>';
} }
if ($map->send_url("http://search.yahooapis.com/SiteExplorerService/V1/ping?sitemap=", $map_link)) {
$html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Yahoo: <font style="color: green;">'.$lang['SITEMAP_SENT'].'</font>';
} else {
$html .= '<br />'.$lang['SITEMAP_NOTIFY_SEARCH'].' Yahoo: <font style="color: red;">'.$lang['SITEMAP_ERROR'].'</font> URL: <a href="http://search.yahooapis.com/SiteExplorerService/V1/ping?sitemap='.urlencode($map_link).'" target="_blank">http://search.yahooapis.com/SiteExplorerService/V1/ping?sitemap='.$map_link.'</a>';
}
break; break;
} }

View file

@ -70,7 +70,7 @@ function get_config()
// Get Attachment Config // Get Attachment Config
$attach_config = array(); $attach_config = array();
if (!($attach_config = CACHE('bb_cache')->get('attach_config'))) if (!$attach_config = CACHE('bb_cache')->get('attach_config'))
{ {
$attach_config = get_config(); $attach_config = get_config();
CACHE('bb_cache')->set('attach_config', $attach_config, 86400); CACHE('bb_cache')->set('attach_config', $attach_config, 86400);

View file

@ -29,10 +29,10 @@ unset($server_protocol, $server_port);
define('DBG_USER', (isset($_COOKIE[COOKIE_DBG]))); define('DBG_USER', (isset($_COOKIE[COOKIE_DBG])));
// Board/Tracker shared constants and functions // Board/Tracker shared constants and functions
define('BB_BT_TORRENTS', 'bb_bt_torrents'); define('BB_BT_TORRENTS', 'bb_bt_torrents');
define('BB_BT_TRACKER', 'bb_bt_tracker'); define('BB_BT_TRACKER', 'bb_bt_tracker');
define('BB_BT_TRACKER_SNAP', 'bb_bt_tracker_snap'); define('BB_BT_TRACKER_SNAP', 'bb_bt_tracker_snap');
define('BB_BT_USERS', 'bb_bt_users'); define('BB_BT_USERS', 'bb_bt_users');
define('BT_AUTH_KEY_LENGTH', 10); define('BT_AUTH_KEY_LENGTH', 10);
@ -173,7 +173,7 @@ class CACHES
$this->ref[$cache_name] =& $this->obj[$cache_name]; $this->ref[$cache_name] =& $this->obj[$cache_name];
break; break;
case 'db_sqlite': case 'db_sqlite':
if (!isset($this->obj[$cache_name])) if (!isset($this->obj[$cache_name]))
{ {
$cache_cfg['pconnect'] = $this->cfg['pconnect']; $cache_cfg['pconnect'] = $this->cfg['pconnect'];
@ -186,13 +186,13 @@ class CACHES
$this->ref[$cache_name] =& $this->obj[$cache_name]; $this->ref[$cache_name] =& $this->obj[$cache_name];
break; break;
case 'redis': case 'redis':
if (!isset($this->obj[$cache_name])) if (!isset($this->obj[$cache_name]))
{ {
$this->obj[$cache_name] = new cache_redis($this->cfg['redis'], $this->cfg['prefix']); $this->obj[$cache_name] = new cache_redis($this->cfg['redis'], $this->cfg['prefix']);
} }
$this->ref[$cache_name] =& $this->obj[$cache_name]; $this->ref[$cache_name] =& $this->obj[$cache_name];
break; break;
case 'eaccelerator': case 'eaccelerator':
if (!isset($this->obj[$cache_name])) if (!isset($this->obj[$cache_name]))
@ -202,7 +202,7 @@ class CACHES
$this->ref[$cache_name] =& $this->obj[$cache_name]; $this->ref[$cache_name] =& $this->obj[$cache_name];
break; break;
case 'apc': case 'apc':
if (!isset($this->obj[$cache_name])) if (!isset($this->obj[$cache_name]))
{ {
$this->obj[$cache_name] = new cache_apc($this->cfg['prefix']); $this->obj[$cache_name] = new cache_apc($this->cfg['prefix']);
@ -470,8 +470,8 @@ class cache_sqlite extends cache_common
} }
$this->db->shard($name); $this->db->shard($name);
$cached_items = array(); $cached_items = array();
$this->prefix_len = strlen($this->prefix); $this->prefix_len = strlen($this->prefix);
$this->prefix_sql = sqlite_escape_string($this->prefix); $this->prefix_sql = sqlite_escape_string($this->prefix);
$name_ary = $name_sql = (array) $name; $name_ary = $name_sql = (array) $name;
array_deep($name_sql, 'sqlite_escape_string'); array_deep($name_sql, 'sqlite_escape_string');
@ -514,7 +514,7 @@ class cache_sqlite extends cache_common
function set ($name, $value, $ttl = 604800) function set ($name, $value, $ttl = 604800)
{ {
$this->db->shard($this->prefix . $name); $this->db->shard($this->prefix . $name);
$name_sql = sqlite_escape_string($this->prefix . $name); $name_sql = sqlite_escape_string($this->prefix . $name);
$expire = TIMENOW + $ttl; $expire = TIMENOW + $ttl;
$value_sql = sqlite_escape_string(serialize($value)); $value_sql = sqlite_escape_string(serialize($value));

View file

@ -68,8 +68,8 @@ $domain_name = (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : $do
// Version info // Version info
$bb_cfg['tp_version'] = '2.0.9 (RC)'; $bb_cfg['tp_version'] = '2.0.9 (RC)';
$bb_cfg['tp_release_date'] = '05-08-2014'; $bb_cfg['tp_release_date'] = '07-08-2014';
$bb_cfg['tp_release_state'] = 'R593b'; $bb_cfg['tp_release_state'] = 'R594';
// Database // Database
$charset = 'utf8'; $charset = 'utf8';

View file

@ -1,8 +1,7 @@
<?php <?php
define('IN_FORUM', true); define('IN_FORUM', true);
define('BB_SCRIPT', 'dl_list'); define('BB_SCRIPT', 'dl_list');
define('IN_SERVICE', true);
define('BB_ROOT', './'); define('BB_ROOT', './');
require(BB_ROOT .'common.php'); require(BB_ROOT .'common.php');
@ -109,7 +108,7 @@ if ($mode == 'dl_delete' && $topic_id)
print_confirmation(array( print_confirmation(array(
'QUESTION' => $lang['DL_LIST_DEL_CONFIRM'], 'QUESTION' => $lang['DL_LIST_DEL_CONFIRM'],
'FORM_ACTION' => "dl_list.php", 'FORM_ACTION' => 'dl_list.php',
'HIDDEN_FIELDS' => build_hidden_fields($hidden_fields), 'HIDDEN_FIELDS' => build_hidden_fields($hidden_fields),
)); ));
} }

View file

@ -1,8 +1,7 @@
<?php <?php
define('IN_FORUM', true); define('IN_FORUM', true);
define('BB_SCRIPT', 'download'); define('BB_SCRIPT', 'download');
define('IN_SERVICE', true);
define('NO_GZIP', true); define('NO_GZIP', true);
define('BB_ROOT', './'); define('BB_ROOT', './');
require(BB_ROOT .'common.php'); require(BB_ROOT .'common.php');

View file

@ -536,7 +536,7 @@ class bbcode
'[/size]' => '</span>', '[/size]' => '</span>',
'[/align]' => '</span>', '[/align]' => '</span>',
'[/font]' => '</span>', '[/font]' => '</span>',
'[tab]' => ' ', '[tab]' => '&nbsp;&nbsp;&nbsp;&nbsp;',
'[br]' => "\n\n", '[br]' => "\n\n",
'[hr]' => $tpl['hr'], '[hr]' => $tpl['hr'],
'[b]' => '<span class="post-b">', '[b]' => '<span class="post-b">',
@ -623,9 +623,9 @@ class bbcode
static $spam_words = null; static $spam_words = null;
static $spam_replace = ' СПАМ'; static $spam_replace = ' СПАМ';
if (isset($this)) if (isset($text))
{ {
$found_spam =& $this->found_spam; $found_spam =& $text->found_spam;
} }
// set $spam_words and $spam_replace // set $spam_words and $spam_replace

View file

@ -13,7 +13,6 @@ if (@file_exists(BB_ROOT. "/sitemap/sitemap.xml"))
$map->send_url("http://google.com/webmasters/sitemaps/ping?sitemap=", $map_link); $map->send_url("http://google.com/webmasters/sitemaps/ping?sitemap=", $map_link);
$map->send_url("http://ping.blogs.yandex.ru/ping?sitemap=", $map_link); $map->send_url("http://ping.blogs.yandex.ru/ping?sitemap=", $map_link);
$map->send_url("http://www.bing.com/webmaster/ping.aspx?siteMap=", $map_link); $map->send_url("http://www.bing.com/ping?sitemap=", $map_link);
$map->send_url("http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url=", $map_link); $map->send_url("http://rpc.weblogs.com/pingSiteForm?name=InfraBlog&url=", $map_link);
$map->send_url("http://search.yahooapis.com/SiteExplorerService/V1/ping?sitemap=", $map_link);
} }

View file

@ -1829,6 +1829,12 @@ function bb_die ($msg_text)
require(PAGE_HEADER); require(PAGE_HEADER);
} }
// Check for lang variable
if (!empty($lang[$msg_text]))
{
$msg_text = $lang[$msg_text];
}
$template->assign_vars(array( $template->assign_vars(array(
'TPL_BB_DIE' => true, 'TPL_BB_DIE' => true,
'MESSAGE_TEXT' => $msg_text, 'MESSAGE_TEXT' => $msg_text,

View file

@ -5,55 +5,6 @@ if (PHP_VERSION < '5.3') die('TorrentPier II requires PHP version 5.3+. Your PHP
if (!defined('BB_SCRIPT')) define('BB_SCRIPT', 'undefined'); if (!defined('BB_SCRIPT')) define('BB_SCRIPT', 'undefined');
if (!defined('BB_CFG_LOADED')) trigger_error('bb_cfg not loaded', E_USER_ERROR); if (!defined('BB_CFG_LOADED')) trigger_error('bb_cfg not loaded', E_USER_ERROR);
// Exit if board is disabled via ON/OFF trigger
if (!defined('IN_ADMIN') && !defined('IN_AJAX') && !defined('IN_SERVICE'))
{
if (file_exists(BB_DISABLED))
{
cron_release_deadlock(); // Если нужна разблокировка в случае залипания крона, отключающего форум
header('HTTP/1.0 503 Service Unavailable');
require(TEMPLATES_DIR .'board_disabled_exit.php');
}
}
//
// Cron functions
//
function cron_release_deadlock ()
{
if (file_exists(CRON_RUNNING))
{
if (TIMENOW - filemtime(CRON_RUNNING) > 2400)
{
cron_enable_board();
cron_release_file_lock();
}
}
}
function cron_release_file_lock ()
{
$lock_released = @rename(CRON_RUNNING, CRON_ALLOWED);
cron_touch_lock_file(CRON_ALLOWED);
}
function cron_touch_lock_file ($lock_file)
{
file_write(make_rand_str(20), $lock_file, 0, true, true);
}
function cron_enable_board ()
{
@rename(BB_DISABLED, BB_ENABLED);
# bb_update_config(array('board_disable' => 0));
}
function cron_disable_board ()
{
@rename(BB_ENABLED, BB_DISABLED);
# bb_update_config(array('board_disable' => 1));
}
// Define some basic configuration arrays // Define some basic configuration arrays
unset($stopwords, $synonyms_match, $synonyms_replace); unset($stopwords, $synonyms_match, $synonyms_replace);
$userdata = $theme = $images = $lang = $nav_links = $bf = $attach_config = array(); $userdata = $theme = $images = $lang = $nav_links = $bf = $attach_config = array();
@ -528,7 +479,7 @@ if (!$bb_cfg['board_startdate'])
} }
// Cron // Cron
if ((empty($_POST) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !defined('IN_SERVICE') && !file_exists(CRON_RUNNING) && ($bb_cfg['cron_enabled'] || defined('START_CRON'))) || defined('FORCE_CRON')) if ((empty($_POST) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !file_exists(CRON_RUNNING) && ($bb_cfg['cron_enabled'] || defined('START_CRON'))) || defined('FORCE_CRON'))
{ {
if (TIMENOW - $bb_cfg['cron_last_check'] > $bb_cfg['cron_check_interval']) if (TIMENOW - $bb_cfg['cron_last_check'] > $bb_cfg['cron_check_interval'])
{ {
@ -573,8 +524,55 @@ $dl_status_css = array(
DL_STATUS_CANCEL => 'dlCancel', DL_STATUS_CANCEL => 'dlCancel',
); );
// Show 'Board is disabled' message if needed // Exit if board is disabled via ON/OFF trigger or by admin
if ($bb_cfg['board_disable'] && !defined('IN_ADMIN') && !defined('IN_LOGIN') && !defined('IN_AJAX')) if (($bb_cfg['board_disable'] || file_exists(BB_DISABLED)) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !defined('IN_LOGIN'))
{ {
bb_die($lang['BOARD_DISABLE']); header('HTTP/1.0 503 Service Unavailable');
if ($bb_cfg['board_disable'])
{
// admin lock
send_no_cache_headers();
bb_die('BOARD_DISABLE');
}
else if (file_exists(BB_DISABLED))
{
// trigger lock
cron_release_deadlock();
send_no_cache_headers();
bb_die('BOARD_DISABLE_CRON');
}
}
// Cron functions
function cron_release_deadlock ()
{
if (file_exists(CRON_RUNNING))
{
if (TIMENOW - filemtime(CRON_RUNNING) > 2400)
{
cron_enable_board();
cron_release_file_lock();
}
}
}
function cron_release_file_lock ()
{
$lock_released = @rename(CRON_RUNNING, CRON_ALLOWED);
cron_touch_lock_file(CRON_ALLOWED);
}
function cron_touch_lock_file ($lock_file)
{
file_write(make_rand_str(20), $lock_file, 0, true, true);
}
function cron_enable_board ()
{
@rename(BB_DISABLED, BB_ENABLED);
}
function cron_disable_board ()
{
@rename(BB_ENABLED, BB_DISABLED);
} }

View file

@ -79,4 +79,4 @@ if ($edit_tpl_mode)
} }
} }
print_page('posting_tpl.tpl'); print_page(TEMPLATES_DIR . 'posting_tpl.tpl');

View file

@ -257,7 +257,7 @@ class user_common
if (DB()->fetch_row($sql)) if (DB()->fetch_row($sql))
{ {
bb_exit('~'); header('Location: http://torrentpier.me/pages/banned/');
} }
} }

View file

@ -153,10 +153,10 @@ if ($leeching)
} }
$template->assign_vars(array( $template->assign_vars(array(
'SHOW_SEARCH_DL' => IS_AM || $profile_user_id, 'SHOW_SEARCH_DL' => IS_AM || $profile_user_id,
'USERNAME' => $profiledata['username'], 'USERNAME' => $profiledata['username'],
'L_RELEASINGS' => "{$lang['RELEASING']}: ". (($releasing_count) ? "<b>$releasing_count</b>" : '0'), 'L_RELEASINGS' => "{$lang['RELEASING']}: ". (($releasing_count) ? "<b>$releasing_count</b>" : '0'),
'L_SEEDINGS' => "{$lang['SEEDING']}: ". (($seeding_count) ? "<b>$seeding_count</b>" : '0'), 'L_SEEDINGS' => "{$lang['SEEDING']}: ". (($seeding_count) ? "<b>$seeding_count</b>" : '0'),
'L_LEECHINGS' => "{$lang['LEECHING']}: ". (($leeching_count) ? "<b>$leeching_count</b>" : '0'), 'L_LEECHINGS' => "{$lang['LEECHING']}: ". (($leeching_count) ? "<b>$leeching_count</b>" : '0'),
'USER_DLS' => $releasing_count || $seeding_count || $leeching_count, 'USER_DLS' => $releasing_count || $seeding_count || $leeching_count,
)); ));

View file

@ -12,7 +12,7 @@
<div> <div>
<h3>FAQ</h3> <h3>FAQ</h3>
<ul class="med"> <ul class="med">
<li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', InfoWinParams); return false;"><b>Terms of use resource</b></a></li> <li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', IWP); return false;"><b>Terms of use resource</b></a></li>
<li><a href="http://torrentpier.me/threads/faq-для-новичков.260" class="med">FAQ for beginners</a></li> <li><a href="http://torrentpier.me/threads/faq-для-новичков.260" class="med">FAQ for beginners</a></li>
<li><a href="http://torrentpier.me/forums/Основные-вопросы-по-torrentpier-ii.10" class="med">Where is ask a question?</a></li> <li><a href="http://torrentpier.me/forums/Основные-вопросы-по-torrentpier-ii.10" class="med">Where is ask a question?</a></li>
</ul> </ul>

View file

@ -101,7 +101,8 @@ $lang['ALL_CACHE_CLEARED'] = 'Cache has been cleared';
$lang['ALL_TEMPLATE_CLEARED'] = 'Template cache has been cleared'; $lang['ALL_TEMPLATE_CLEARED'] = 'Template cache has been cleared';
$lang['DATASTORE'] = 'Datastore'; $lang['DATASTORE'] = 'Datastore';
$lang['DATASTORE_CLEARED'] = 'Datastore has been cleared'; $lang['DATASTORE_CLEARED'] = 'Datastore has been cleared';
$lang['BOARD_DISABLE'] = 'Sorry, this board is currently not available. Please try again later.'; $lang['BOARD_DISABLE'] = 'Sorry, this forum is disabled. Try to come back later';
$lang['BOARD_DISABLE_CRON'] = 'Forum is down for maintenance. Try to come back later';
$lang['LOADING'] = 'Loading...'; $lang['LOADING'] = 'Loading...';
$lang['JUMPBOX_TITLE'] = 'Select forum'; $lang['JUMPBOX_TITLE'] = 'Select forum';
@ -1713,7 +1714,7 @@ $lang['USERS'] = 'User Admin';
$lang['GROUPS'] = 'Group Admin'; $lang['GROUPS'] = 'Group Admin';
$lang['FORUMS'] = 'Forum Admin'; $lang['FORUMS'] = 'Forum Admin';
$lang['MODS'] = 'Modifications'; $lang['MODS'] = 'Modifications';
$lang['TORRENTPIER'] = 'Product configuration'; $lang['TP'] = 'TorrentPier II';
$lang['CONFIGURATION'] = 'Configuration'; $lang['CONFIGURATION'] = 'Configuration';
$lang['MANAGE'] = 'Management'; $lang['MANAGE'] = 'Management';
@ -1939,7 +1940,7 @@ $lang['ENABLE_PRUNE'] = 'Enable Forum Pruning';
$lang['ALLOW_BBCODE'] = 'Allow BBCode'; $lang['ALLOW_BBCODE'] = 'Allow BBCode';
$lang['ALLOW_SMILIES'] = 'Allow Smilies'; $lang['ALLOW_SMILIES'] = 'Allow Smilies';
$lang['SMILIES_PATH'] = 'Smilies Storage Path'; $lang['SMILIES_PATH'] = 'Smilies Storage Path';
$lang['SMILIES_PATH_EXPLAIN'] = 'Path under your phpBB root dir, e.g. images/smiles'; $lang['SMILIES_PATH_EXPLAIN'] = 'Path under your TorrentPier II root dir, e.g. images/smiles';
$lang['ALLOW_SIG'] = 'Allow Signatures'; $lang['ALLOW_SIG'] = 'Allow Signatures';
$lang['MAX_SIG_LENGTH'] = 'Maximum signature length'; $lang['MAX_SIG_LENGTH'] = 'Maximum signature length';
$lang['MAX_SIG_LENGTH_EXPLAIN'] = 'Maximum number of characters in user signatures'; $lang['MAX_SIG_LENGTH_EXPLAIN'] = 'Maximum number of characters in user signatures';
@ -2334,7 +2335,7 @@ $lang['ATTACH_NUMBER_SETTINGS'] = 'Attachment Number Settings';
$lang['ATTACH_OPTIONS_SETTINGS'] = 'Attachment Options'; $lang['ATTACH_OPTIONS_SETTINGS'] = 'Attachment Options';
$lang['UPLOAD_DIRECTORY'] = 'Upload Directory'; $lang['UPLOAD_DIRECTORY'] = 'Upload Directory';
$lang['UPLOAD_DIRECTORY_EXPLAIN'] = 'Enter the relative path from your phpBB2 installation to the Attachments upload directory. For example, enter \'files\' if your phpBB2 Installation is located at http://www.yourdomain.com/phpBB2 and the Attachment Upload Directory is located at http://www.yourdomain.com/phpBB2/files.'; $lang['UPLOAD_DIRECTORY_EXPLAIN'] = 'Enter the relative path from your TorrentPier II installation to the Attachments upload directory. For example, enter \'files\' if your TorrentPier II Installation is located at http://www.yourdomain.com/torrentpier and the Attachment Upload Directory is located at http://www.yourdomain.com/torrentpier/files.';
$lang['ATTACH_IMG_PATH'] = 'Attachment Posting Icon'; $lang['ATTACH_IMG_PATH'] = 'Attachment Posting Icon';
$lang['ATTACH_IMG_PATH_EXPLAIN'] = 'This Image is displayed next to Attachment Links in individual Postings. Leave this field empty if you don\'t want an icon to be displayed. This Setting will be overwritten by the Settings in Extension Groups Management.'; $lang['ATTACH_IMG_PATH_EXPLAIN'] = 'This Image is displayed next to Attachment Links in individual Postings. Leave this field empty if you don\'t want an icon to be displayed. This Setting will be overwritten by the Settings in Extension Groups Management.';
$lang['ATTACH_TOPIC_ICON'] = 'Attachment Topic Icon'; $lang['ATTACH_TOPIC_ICON'] = 'Attachment Topic Icon';
@ -2776,8 +2777,6 @@ $lang['SIZE_DATABASE'] = 'Database size';
$lang['ACTIVE_PARAMETERS'] = 'Active parameters'; $lang['ACTIVE_PARAMETERS'] = 'Active parameters';
$lang['POSTS_LAST_CYCLE'] = 'Processed post(s) on last cycle'; $lang['POSTS_LAST_CYCLE'] = 'Processed post(s) on last cycle';
$lang['BOARD_STATUS'] = 'Board status'; $lang['BOARD_STATUS'] = 'Board status';
$lang['BOARD_DISABLED'] = 'Disabled';
$lang['BOARD_ENABLED'] = 'Enabled';
$lang['INFO_ESTIMATED_VALUES'] = '(*) All the estimated values are calculated approximately<br /> $lang['INFO_ESTIMATED_VALUES'] = '(*) All the estimated values are calculated approximately<br />
based on the current completed percent and may not represent the actual final values.<br /> based on the current completed percent and may not represent the actual final values.<br />
@ -2990,6 +2989,8 @@ $lang['SITEMAP_GOOGLE_1'] = 'Register your site at <a href="http://www.google.co
$lang['SITEMAP_GOOGLE_2'] = '<a href="https://www.google.com/webmasters/tools/sitemap-list" target="_blank">Add sitemap</a> of site you registered.'; $lang['SITEMAP_GOOGLE_2'] = '<a href="https://www.google.com/webmasters/tools/sitemap-list" target="_blank">Add sitemap</a> of site you registered.';
$lang['SITEMAP_YANDEX_1'] = 'Register your site at <a href="http://webmaster.yandex.ru/sites/" target="_blank">Yandex Webmaster</a> using your Yandex account.'; $lang['SITEMAP_YANDEX_1'] = 'Register your site at <a href="http://webmaster.yandex.ru/sites/" target="_blank">Yandex Webmaster</a> using your Yandex account.';
$lang['SITEMAP_YANDEX_2'] = '<a href="http://webmaster.yandex.ru/site/map.xml" target="_blank">Add sitemap</a> of site you registered.'; $lang['SITEMAP_YANDEX_2'] = '<a href="http://webmaster.yandex.ru/site/map.xml" target="_blank">Add sitemap</a> of site you registered.';
$lang['SITEMAP_BING_1'] = 'Register your site at <a href="https://www.bing.com/webmaster/" target="_blank">Bing Webmaster</a> using your Microsoft account.';
$lang['SITEMAP_BING_2'] = 'Add sitemap of site you registered in its settings.';
$lang['SITEMAP_ADD_TITLE'] = 'Additional pages for sitemap'; $lang['SITEMAP_ADD_TITLE'] = 'Additional pages for sitemap';
$lang['SITEMAP_ADD_PAGE'] = 'Additional pages'; $lang['SITEMAP_ADD_PAGE'] = 'Additional pages';
$lang['SITEMAP_ADD_EXP_1'] = 'You can specify additional pages on your site (for example, <b>http://torrentpier.me/memberlist.php</b>) which should be included in your sitemap file that you creating.'; $lang['SITEMAP_ADD_EXP_1'] = 'You can specify additional pages on your site (for example, <b>http://torrentpier.me/memberlist.php</b>) which should be included in your sitemap file that you creating.';

View file

@ -12,7 +12,7 @@
<div> <div>
<h3>FAQ</h3> <h3>FAQ</h3>
<ul class="med"> <ul class="med">
<li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', InfoWinParams); return false;"><b>Правила пользования данным ресурсом</b></a></li> <li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', IWP); return false;"><b>Правила пользования данным ресурсом</b></a></li>
<li><a href="http://torrentpier.me/threads/faq-для-новичков.260" class="med">FAQ для новичков</a></li> <li><a href="http://torrentpier.me/threads/faq-для-новичков.260" class="med">FAQ для новичков</a></li>
<li><a href="http://torrentpier.me/forums/Основные-вопросы-по-torrentpier-ii.10" class="med">Где задать вопрос?</a></li> <li><a href="http://torrentpier.me/forums/Основные-вопросы-по-torrentpier-ii.10" class="med">Где задать вопрос?</a></li>
</ul> </ul>

View file

@ -101,7 +101,8 @@ $lang['ALL_CACHE_CLEARED'] = 'Кеш очищен';
$lang['ALL_TEMPLATE_CLEARED'] = 'Кеш шаблона очищен'; $lang['ALL_TEMPLATE_CLEARED'] = 'Кеш шаблона очищен';
$lang['DATASTORE'] = 'Datastore'; $lang['DATASTORE'] = 'Datastore';
$lang['DATASTORE_CLEARED'] = 'Datastore очищен'; $lang['DATASTORE_CLEARED'] = 'Datastore очищен';
$lang['BOARD_DISABLE'] = 'Извините, эти форумы отключены. Попробуйте зайти попозже'; $lang['BOARD_DISABLE'] = 'Извините, этот форум отключен. Попробуйте зайти позднее';
$lang['BOARD_DISABLE_CRON'] = 'Форум отключен на техническое обслуживание. Попробуйте зайти позднее';
$lang['LOADING'] = 'Загружается…'; $lang['LOADING'] = 'Загружается…';
$lang['JUMPBOX_TITLE'] = 'Выберите форум для перехода'; $lang['JUMPBOX_TITLE'] = 'Выберите форум для перехода';
@ -1713,7 +1714,7 @@ $lang['USERS'] = 'Пользователи';
$lang['GROUPS'] = 'Группы'; $lang['GROUPS'] = 'Группы';
$lang['FORUMS'] = 'Форумы'; $lang['FORUMS'] = 'Форумы';
$lang['MODS'] = 'Модификации'; $lang['MODS'] = 'Модификации';
$lang['TORRENTPIER'] = 'Технические настройки'; $lang['TP'] = 'TorrentPier II';
$lang['CONFIGURATION'] = 'Конфигурация'; $lang['CONFIGURATION'] = 'Конфигурация';
$lang['MANAGE'] = 'Управление'; $lang['MANAGE'] = 'Управление';
@ -1939,7 +1940,7 @@ $lang['ENABLE_PRUNE'] = 'Включить чистку форумов';
$lang['ALLOW_BBCODE'] = 'Разрешить BBCode'; $lang['ALLOW_BBCODE'] = 'Разрешить BBCode';
$lang['ALLOW_SMILIES'] = 'Разрешить смайлики'; $lang['ALLOW_SMILIES'] = 'Разрешить смайлики';
$lang['SMILIES_PATH'] = 'Путь к смайликам'; $lang['SMILIES_PATH'] = 'Путь к смайликам';
$lang['SMILIES_PATH_EXPLAIN'] = 'Каталог ниже корня phpBB, например images/smilies'; $lang['SMILIES_PATH_EXPLAIN'] = 'Каталог ниже корня TorrentPier II, например images/smilies';
$lang['ALLOW_SIG'] = 'Разрешить подписи'; $lang['ALLOW_SIG'] = 'Разрешить подписи';
$lang['MAX_SIG_LENGTH'] = 'Макс. длина подписи'; $lang['MAX_SIG_LENGTH'] = 'Макс. длина подписи';
$lang['MAX_SIG_LENGTH_EXPLAIN'] = 'Максимальное кол-во символов в подписи пользователя'; $lang['MAX_SIG_LENGTH_EXPLAIN'] = 'Максимальное кол-во символов в подписи пользователя';
@ -2334,7 +2335,7 @@ $lang['ATTACH_NUMBER_SETTINGS'] = 'Настройка количества пр
$lang['ATTACH_OPTIONS_SETTINGS'] = 'Настройка приложений'; $lang['ATTACH_OPTIONS_SETTINGS'] = 'Настройка приложений';
$lang['UPLOAD_DIRECTORY'] = 'Папка для закачанных приложений'; $lang['UPLOAD_DIRECTORY'] = 'Папка для закачанных приложений';
$lang['UPLOAD_DIRECTORY_EXPLAIN'] = 'Задайте относительный путь от папки форума к папке приложений. Например, задайте \'files\', если путь к форуму http://www.yourdomain.com/phpBB2 и папка приложений находится в http://www.yourdomain.com/phpBB2/files.'; $lang['UPLOAD_DIRECTORY_EXPLAIN'] = 'Задайте относительный путь от папки форума к папке приложений. Например, задайте \'files\', если путь к форуму http://www.yourdomain.com/torrentpier и папка приложений находится в http://www.yourdomain.com/torrentpier/files.';
$lang['ATTACH_IMG_PATH'] = 'Иконка для приложений'; $lang['ATTACH_IMG_PATH'] = 'Иконка для приложений';
$lang['ATTACH_IMG_PATH_EXPLAIN'] = 'Эта картинка появляется возле ссылок к приложениям в персональных сообщениях. Оставьте это поле пустым, если не хотите видеть иконку. Эта конфигурация будет переписана настройками в Контроле Групп Расширений.'; $lang['ATTACH_IMG_PATH_EXPLAIN'] = 'Эта картинка появляется возле ссылок к приложениям в персональных сообщениях. Оставьте это поле пустым, если не хотите видеть иконку. Эта конфигурация будет переписана настройками в Контроле Групп Расширений.';
$lang['ATTACH_TOPIC_ICON'] = 'Иконка для тем с приложениями'; $lang['ATTACH_TOPIC_ICON'] = 'Иконка для тем с приложениями';
@ -2776,8 +2777,6 @@ $lang['SIZE_DATABASE'] = 'Размер ДБ';
$lang['ACTIVE_PARAMETERS'] = 'Активные параметры'; $lang['ACTIVE_PARAMETERS'] = 'Активные параметры';
$lang['POSTS_LAST_CYCLE'] = 'Обработанная(ые) запись(и) на последнем цикле'; $lang['POSTS_LAST_CYCLE'] = 'Обработанная(ые) запись(и) на последнем цикле';
$lang['BOARD_STATUS'] = 'Статус форума'; $lang['BOARD_STATUS'] = 'Статус форума';
$lang['BOARD_DISABLED'] = 'Отключен';
$lang['BOARD_ENABLED'] = 'Включен';
$lang['INFO_ESTIMATED_VALUES'] = '(*) Все оценочные значения рассчитываются примерно<br /> $lang['INFO_ESTIMATED_VALUES'] = '(*) Все оценочные значения рассчитываются примерно<br />
на основе текущего завершенного процента и не могут представлять фактического конечного значения.<br /> на основе текущего завершенного процента и не могут представлять фактического конечного значения.<br />
@ -2990,6 +2989,8 @@ $lang['SITEMAP_GOOGLE_1'] = 'Зарегистрируйте ваш сайт в <
$lang['SITEMAP_GOOGLE_2'] = '<a href="https://www.google.com/webmasters/tools/sitemap-list" target="_blank">Добавьте файл sitemap</a> зарегистрированного вами сайта.'; $lang['SITEMAP_GOOGLE_2'] = '<a href="https://www.google.com/webmasters/tools/sitemap-list" target="_blank">Добавьте файл sitemap</a> зарегистрированного вами сайта.';
$lang['SITEMAP_YANDEX_1'] = 'Зарегистрируйте ваш сайт в <a href="http://webmaster.yandex.ru/sites/" target="_blank">Yandex Webmaster</a> с использованием вашей учетной записи Yandex.'; $lang['SITEMAP_YANDEX_1'] = 'Зарегистрируйте ваш сайт в <a href="http://webmaster.yandex.ru/sites/" target="_blank">Yandex Webmaster</a> с использованием вашей учетной записи Yandex.';
$lang['SITEMAP_YANDEX_2'] = '<a href="http://webmaster.yandex.ru/site/map.xml" target="_blank">Добавьте файл sitemap</a> зарегистрированного вами сайта.'; $lang['SITEMAP_YANDEX_2'] = '<a href="http://webmaster.yandex.ru/site/map.xml" target="_blank">Добавьте файл sitemap</a> зарегистрированного вами сайта.';
$lang['SITEMAP_BING_1'] = 'Зарегистрируйте ваш сайт в <a href="https://www.bing.com/webmaster/" target="_blank">Bing Webmaster</a> с использованием вашей учетной записи Microsoft.';
$lang['SITEMAP_BING_2'] = 'Добавьте файл sitemap зарегистрированного вами сайта в его настройках.';
$lang['SITEMAP_ADD_TITLE'] = 'Дополнительные страницы для sitemap'; $lang['SITEMAP_ADD_TITLE'] = 'Дополнительные страницы для sitemap';
$lang['SITEMAP_ADD_PAGE'] = 'Дополнительные страницы'; $lang['SITEMAP_ADD_PAGE'] = 'Дополнительные страницы';
$lang['SITEMAP_ADD_EXP_1'] = 'Здесь вы можете указать дополнительные страницы сайта (например <b>http://torrentpier.me/memberlist.php</b>), которые должны быть включены в создаваемый файл вами файл sitemap.'; $lang['SITEMAP_ADD_EXP_1'] = 'Здесь вы можете указать дополнительные страницы сайта (например <b>http://torrentpier.me/memberlist.php</b>), которые должны быть включены в создаваемый файл вами файл sitemap.';

View file

@ -12,7 +12,7 @@
<div> <div>
<h3>FAQ</h3> <h3>FAQ</h3>
<ul class="med"> <ul class="med">
<li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', InfoWinParams); return false;"><b>Правила користування цим ресурсом</b></a></li> <li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', IWP); return false;"><b>Правила користування цим ресурсом</b></a></li>
<li><a href="http://torrentpier.me/threads/faq-для-новичков.260" class="med">FAQ для новачків</a></li> <li><a href="http://torrentpier.me/threads/faq-для-новичков.260" class="med">FAQ для новачків</a></li>
<li><a href="http://torrentpier.me/forums/Основные-вопросы-по-torrentpier-ii.10" class="med">Де поставити питання?</a></li> <li><a href="http://torrentpier.me/forums/Основные-вопросы-по-torrentpier-ii.10" class="med">Де поставити питання?</a></li>
</ul> </ul>

View file

@ -101,7 +101,8 @@ $lang['ALL_CACHE_CLEARED'] = 'Кеш очищено';
$lang['ALL_TEMPLATE_CLEARED'] = 'Кеш шаблону очищено'; $lang['ALL_TEMPLATE_CLEARED'] = 'Кеш шаблону очищено';
$lang['DATASTORE'] = 'Datastore'; $lang['DATASTORE'] = 'Datastore';
$lang['DATASTORE_CLEARED'] = 'Datastore очищено'; $lang['DATASTORE_CLEARED'] = 'Datastore очищено';
$lang['BOARD_DISABLE'] = 'Вибачте, ці форуми відключені. Спробуйте зайти пізніше'; $lang['BOARD_DISABLE'] = 'Вибачте, цей форум відключений. Спробуйте зайти пізніше';
$lang['BOARD_DISABLE_CRON'] = 'Форум відключений на технічне обслуговування. Спробуйте зайти пізніше';
$lang['LOADING'] = 'Завантаження...'; $lang['LOADING'] = 'Завантаження...';
$lang['JUMPBOX_TITLE'] = 'Оберіть форум для переходу'; $lang['JUMPBOX_TITLE'] = 'Оберіть форум для переходу';
@ -551,9 +552,9 @@ $lang['ALWAYS_NOTIFY_EXPLAIN'] = 'Коли хто-небудь відповіс
$lang['BOARD_LANG'] = 'Мова'; $lang['BOARD_LANG'] = 'Мова';
$lang['GENDER'] = 'Стать'; $lang['GENDER'] = 'Стать';
$lang['GENDER_SELECT'] = array( $lang['GENDER_SELECT'] = array(
0 => 'Не вказаний', 0 => 'Не вказана',
1 => 'Чоловічий', 1 => 'Чоловіча',
2 => 'Жіночий' 2 => 'Жіноча'
); );
$lang['MODULE_OFF'] = 'Модуль відключений!'; $lang['MODULE_OFF'] = 'Модуль відключений!';
@ -1713,7 +1714,7 @@ $lang['USERS'] = 'Користувачі';
$lang['GROUPS'] = 'Групи'; $lang['GROUPS'] = 'Групи';
$lang['FORUMS'] = 'Форуми'; $lang['FORUMS'] = 'Форуми';
$lang['MODS'] = 'Модифікації'; $lang['MODS'] = 'Модифікації';
$lang['TORRENTPIER'] = 'Технічні налаштування'; $lang['TP'] = 'TorrentPier II';
$lang['CONFIGURATION'] = 'Конфігурація'; $lang['CONFIGURATION'] = 'Конфігурація';
$lang['MANAGE'] = 'Керування'; $lang['MANAGE'] = 'Керування';
@ -1939,7 +1940,7 @@ $lang['ENABLE_PRUNE'] = 'Включити чистку форумів';
$lang['ALLOW_BBCODE'] = 'Дозволити BBCode'; $lang['ALLOW_BBCODE'] = 'Дозволити BBCode';
$lang['ALLOW_SMILIES'] = 'Дозволити смайлики'; $lang['ALLOW_SMILIES'] = 'Дозволити смайлики';
$lang['SMILIES_PATH'] = 'Шлях до смайликів'; $lang['SMILIES_PATH'] = 'Шлях до смайликів';
$lang['SMILIES_PATH_EXPLAIN'] = 'Каталог нижче кореня phpBB, наприклад images/smilies'; $lang['SMILIES_PATH_EXPLAIN'] = 'Каталог нижче кореня TorrentPier II, наприклад images/smilies';
$lang['ALLOW_SIG'] = 'Дозволити підпис'; $lang['ALLOW_SIG'] = 'Дозволити підпис';
$lang['MAX_SIG_LENGTH'] = 'Макс. довжина підпису'; $lang['MAX_SIG_LENGTH'] = 'Макс. довжина підпису';
$lang['MAX_SIG_LENGTH_EXPLAIN'] = 'Максимальна кількість символів у підписі користувача'; $lang['MAX_SIG_LENGTH_EXPLAIN'] = 'Максимальна кількість символів у підписі користувача';
@ -2334,7 +2335,7 @@ $lang['ATTACH_NUMBER_SETTINGS'] = 'Налаштування кількості
$lang['ATTACH_OPTIONS_SETTINGS'] = 'Налаштування додатків'; $lang['ATTACH_OPTIONS_SETTINGS'] = 'Налаштування додатків';
$lang['UPLOAD_DIRECTORY'] = 'Папка для завантажених додатків'; $lang['UPLOAD_DIRECTORY'] = 'Папка для завантажених додатків';
$lang['UPLOAD_DIRECTORY_EXPLAIN'] = 'Задайте відносний шлях від папки форуму до папки додатків. Наприклад, задайте \'files\', якщо шлях до форуму http://www.yourdomain.com/phpBB2 і папка додатків знаходиться в http://www.yourdomain.com/phpBB2/files.'; $lang['UPLOAD_DIRECTORY_EXPLAIN'] = 'Задайте відносний шлях від папки форуму до папки додатків. Наприклад, задайте \'files\', якщо шлях до форуму http://www.yourdomain.com/torrentpier і папка додатків знаходиться в http://www.yourdomain.com/torrentpier/files.';
$lang['ATTACH_IMG_PATH'] = 'Іконка для додатків'; $lang['ATTACH_IMG_PATH'] = 'Іконка для додатків';
$lang['ATTACH_IMG_PATH_EXPLAIN'] = "Ця картинка з'являється біля посилань програм в персональних повідомленнях. Залиште це поле порожнім, якщо не хочете бачити іконку. Ця конфігурація буде переписана налаштуваннями в Контролі Груп Розширень."; $lang['ATTACH_IMG_PATH_EXPLAIN'] = "Ця картинка з'являється біля посилань програм в персональних повідомленнях. Залиште це поле порожнім, якщо не хочете бачити іконку. Ця конфігурація буде переписана налаштуваннями в Контролі Груп Розширень.";
$lang['ATTACH_TOPIC_ICON'] = 'Іконка для тем з додатками'; $lang['ATTACH_TOPIC_ICON'] = 'Іконка для тем з додатками';
@ -2776,8 +2777,6 @@ $lang['SIZE_DATABASE'] = 'Розмір БД';
$lang['ACTIVE_PARAMETERS'] = 'Активні параметри'; $lang['ACTIVE_PARAMETERS'] = 'Активні параметри';
$lang['POSTS_LAST_CYCLE'] = 'Оброблена(і) запис(и) на останньому циклі'; $lang['POSTS_LAST_CYCLE'] = 'Оброблена(і) запис(и) на останньому циклі';
$lang['BOARD_STATUS'] = 'Статус форуму'; $lang['BOARD_STATUS'] = 'Статус форуму';
$lang['BOARD_DISABLED'] = 'Вимкнено';
$lang['BOARD_ENABLED'] = 'Включений';
$lang['INFO_ESTIMATED_VALUES'] = '(*) Всі оцінні значення розраховуються приблизно<br /> $lang['INFO_ESTIMATED_VALUES'] = '(*) Всі оцінні значення розраховуються приблизно<br />
на основі поточного завершеного відсотка і не можуть представляти фактичного кінцевого значення.<br /> на основі поточного завершеного відсотка і не можуть представляти фактичного кінцевого значення.<br />
@ -2946,9 +2945,9 @@ $lang['DAY'] = 'День';
$lang['POST_EDIT_CANNOT'] = 'Вибачте, але ви не можете редагувати повідомлення'; $lang['POST_EDIT_CANNOT'] = 'Вибачте, але ви не можете редагувати повідомлення';
$lang['FORUMS_IN_CAT'] = 'форумів у цій категорії'; $lang['FORUMS_IN_CAT'] = 'форумів у цій категорії';
$lang['MC_TITLE'] = 'Модераторському коментар'; $lang['MC_TITLE'] = 'Модераторський коментар';
$lang['MC_LEGEND'] = 'Тип коментаря'; $lang['MC_LEGEND'] = 'Тип коментаря';
$lang['MC_FAQ'] = 'Введена Вами текст буде відображатися під цим повідомленням'; $lang['MC_FAQ'] = 'Доданий Вами текст буде відображатися під цим повідомленням';
$lang['MC_COMMENT_PM_SUBJECT'] = "%s у Вашому повідомленні"; $lang['MC_COMMENT_PM_SUBJECT'] = "%s у Вашому повідомленні";
$lang['MC_COMMENT_PM_MSG'] = "Здрастуйте, [b]%s[/b]\nМодератор залишив у Вашому повідомленні [url=%s][b]%s[/b][/url][quote]\n%s\n[/quote] "; $lang['MC_COMMENT_PM_MSG'] = "Здрастуйте, [b]%s[/b]\nМодератор залишив у Вашому повідомленні [url=%s][b]%s[/b][/url][quote]\n%s\n[/quote] ";
$lang['MC_COMMENT'] = array( $lang['MC_COMMENT'] = array(
@ -2990,6 +2989,8 @@ $lang['SITEMAP_GOOGLE_1'] = 'Зареєструйте ваш сайт в <a href
$lang['SITEMAP_GOOGLE_2'] = '<a href="https://www.google.com/webmasters/tools/sitemap-list" target="_blank">Додайте файл sitemap</a> зареєстрованого вами сайту.'; $lang['SITEMAP_GOOGLE_2'] = '<a href="https://www.google.com/webmasters/tools/sitemap-list" target="_blank">Додайте файл sitemap</a> зареєстрованого вами сайту.';
$lang['SITEMAP_YANDEX_1'] = 'Зареєструйте ваш сайт в <a href="http://webmaster.yandex.ru/sites/" target="_blank">Yandex Webmaster</a> з використанням вашого облікового запису Yandex.'; $lang['SITEMAP_YANDEX_1'] = 'Зареєструйте ваш сайт в <a href="http://webmaster.yandex.ru/sites/" target="_blank">Yandex Webmaster</a> з використанням вашого облікового запису Yandex.';
$lang['SITEMAP_YANDEX_2'] = '<a href="http://webmaster.yandex.ru/site/map.xml" target="_blank">Додайте файл sitemap</a> зареєстрованого вами сайту.'; $lang['SITEMAP_YANDEX_2'] = '<a href="http://webmaster.yandex.ru/site/map.xml" target="_blank">Додайте файл sitemap</a> зареєстрованого вами сайту.';
$lang['SITEMAP_BING_1'] = 'Зареєструйте ваш сайт в <a href="https://www.bing.com/webmaster/" target="_blank">Bing Webmaster</a> з використанням вашого облікового запису Microsoft.';
$lang['SITEMAP_BING_2'] = 'Додайте файл sitemap зареєстрованого вами сайту в його налаштуваннях.';
$lang['SITEMAP_ADD_TITLE'] = 'Додаткові сторінки для sitemap'; $lang['SITEMAP_ADD_TITLE'] = 'Додаткові сторінки для sitemap';
$lang['SITEMAP_ADD_PAGE'] = 'Додаткові сторінки'; $lang['SITEMAP_ADD_PAGE'] = 'Додаткові сторінки';
$lang['SITEMAP_ADD_EXP_1'] = 'Тут ви можете вказати додаткові сторінки сайту (наприклад <b>http://torrentpier.me/memberlist.php</b>), які повинні бути включені в створюваний файл вами файл sitemap.'; $lang['SITEMAP_ADD_EXP_1'] = 'Тут ви можете вказати додаткові сторінки сайту (наприклад <b>http://torrentpier.me/memberlist.php</b>), які повинні бути включені в створюваний файл вами файл sitemap.';

View file

@ -1,5 +1,5 @@
/*! /*!
* Bootstrap v3.1.1 (http://getbootstrap.com) * Bootstrap v3.2.0 (http://getbootstrap.com)
* Copyright 2011-2014 Twitter, Inc. * Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/ */
@ -36,6 +36,8 @@
.btn-default { .btn-default {
text-shadow: 0 1px 0 #fff; text-shadow: 0 1px 0 #fff;
background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -53,8 +55,15 @@
background-color: #e0e0e0; background-color: #e0e0e0;
border-color: #dbdbdb; border-color: #dbdbdb;
} }
.btn-default:disabled,
.btn-default[disabled] {
background-color: #e0e0e0;
background-image: none;
}
.btn-primary { .btn-primary {
background-image: -webkit-linear-gradient(top, #428bca 0%, #2d6ca2 100%); background-image: -webkit-linear-gradient(top, #428bca 0%, #2d6ca2 100%);
background-image: -o-linear-gradient(top, #428bca 0%, #2d6ca2 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#2d6ca2));
background-image: linear-gradient(to bottom, #428bca 0%, #2d6ca2 100%); background-image: linear-gradient(to bottom, #428bca 0%, #2d6ca2 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff2d6ca2', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff2d6ca2', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -71,8 +80,15 @@
background-color: #2d6ca2; background-color: #2d6ca2;
border-color: #2b669a; border-color: #2b669a;
} }
.btn-primary:disabled,
.btn-primary[disabled] {
background-color: #2d6ca2;
background-image: none;
}
.btn-success { .btn-success {
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);
background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641));
background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -89,8 +105,15 @@
background-color: #419641; background-color: #419641;
border-color: #3e8f3e; border-color: #3e8f3e;
} }
.btn-success:disabled,
.btn-success[disabled] {
background-color: #419641;
background-image: none;
}
.btn-info { .btn-info {
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2));
background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -107,8 +130,15 @@
background-color: #2aabd2; background-color: #2aabd2;
border-color: #28a4c9; border-color: #28a4c9;
} }
.btn-info:disabled,
.btn-info[disabled] {
background-color: #2aabd2;
background-image: none;
}
.btn-warning { .btn-warning {
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316));
background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -125,8 +155,15 @@
background-color: #eb9316; background-color: #eb9316;
border-color: #e38d13; border-color: #e38d13;
} }
.btn-warning:disabled,
.btn-warning[disabled] {
background-color: #eb9316;
background-image: none;
}
.btn-danger { .btn-danger {
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a));
background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -143,6 +180,11 @@
background-color: #c12e2a; background-color: #c12e2a;
border-color: #b92c28; border-color: #b92c28;
} }
.btn-danger:disabled,
.btn-danger[disabled] {
background-color: #c12e2a;
background-image: none;
}
.thumbnail, .thumbnail,
.img-thumbnail { .img-thumbnail {
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
@ -152,6 +194,8 @@
.dropdown-menu > li > a:focus { .dropdown-menu > li > a:focus {
background-color: #e8e8e8; background-color: #e8e8e8;
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -161,12 +205,16 @@
.dropdown-menu > .active > a:focus { .dropdown-menu > .active > a:focus {
background-color: #357ebd; background-color: #357ebd;
background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%); background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%);
background-image: -o-linear-gradient(top, #428bca 0%, #357ebd 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#357ebd));
background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%); background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.navbar-default { .navbar-default {
background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%);
background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8));
background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -177,6 +225,8 @@
} }
.navbar-default .navbar-nav > .active > a { .navbar-default .navbar-nav > .active > a {
background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f3f3f3 100%); background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f3f3f3 100%);
background-image: -o-linear-gradient(top, #ebebeb 0%, #f3f3f3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f3f3f3));
background-image: linear-gradient(to bottom, #ebebeb 0%, #f3f3f3 100%); background-image: linear-gradient(to bottom, #ebebeb 0%, #f3f3f3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff3f3f3', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff3f3f3', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -189,6 +239,8 @@
} }
.navbar-inverse { .navbar-inverse {
background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);
background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));
background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
@ -196,6 +248,8 @@
} }
.navbar-inverse .navbar-nav > .active > a { .navbar-inverse .navbar-nav > .active > a {
background-image: -webkit-linear-gradient(top, #222 0%, #282828 100%); background-image: -webkit-linear-gradient(top, #222 0%, #282828 100%);
background-image: -o-linear-gradient(top, #222 0%, #282828 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#222), to(#282828));
background-image: linear-gradient(to bottom, #222 0%, #282828 100%); background-image: linear-gradient(to bottom, #222 0%, #282828 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff282828', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff282828', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -218,6 +272,8 @@
} }
.alert-success { .alert-success {
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc));
background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -225,6 +281,8 @@
} }
.alert-info { .alert-info {
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0));
background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -232,6 +290,8 @@
} }
.alert-warning { .alert-warning {
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0));
background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -239,6 +299,8 @@
} }
.alert-danger { .alert-danger {
background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3));
background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -246,40 +308,57 @@
} }
.progress { .progress {
background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5));
background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.progress-bar { .progress-bar {
background-image: -webkit-linear-gradient(top, #428bca 0%, #3071a9 100%); background-image: -webkit-linear-gradient(top, #428bca 0%, #3071a9 100%);
background-image: -o-linear-gradient(top, #428bca 0%, #3071a9 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#3071a9));
background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%); background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.progress-bar-success { .progress-bar-success {
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);
background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44));
background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.progress-bar-info { .progress-bar-info {
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5));
background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.progress-bar-warning { .progress-bar-warning {
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f));
background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.progress-bar-danger { .progress-bar-danger {
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);
background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c));
background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.progress-bar-striped {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.list-group { .list-group {
border-radius: 4px; border-radius: 4px;
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
@ -290,6 +369,8 @@
.list-group-item.active:focus { .list-group-item.active:focus {
text-shadow: 0 -1px 0 #3071a9; text-shadow: 0 -1px 0 #3071a9;
background-image: -webkit-linear-gradient(top, #428bca 0%, #3278b3 100%); background-image: -webkit-linear-gradient(top, #428bca 0%, #3278b3 100%);
background-image: -o-linear-gradient(top, #428bca 0%, #3278b3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#3278b3));
background-image: linear-gradient(to bottom, #428bca 0%, #3278b3 100%); background-image: linear-gradient(to bottom, #428bca 0%, #3278b3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
@ -301,42 +382,56 @@
} }
.panel-default > .panel-heading { .panel-default > .panel-heading {
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.panel-primary > .panel-heading { .panel-primary > .panel-heading {
background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%); background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%);
background-image: -o-linear-gradient(top, #428bca 0%, #357ebd 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#428bca), to(#357ebd));
background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%); background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.panel-success > .panel-heading { .panel-success > .panel-heading {
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6));
background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.panel-info > .panel-heading { .panel-info > .panel-heading {
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3));
background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.panel-warning > .panel-heading { .panel-warning > .panel-heading {
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc));
background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.panel-danger > .panel-heading { .panel-danger > .panel-heading {
background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc));
background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;
} }
.well { .well {
background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5));
background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
background-repeat: repeat-x; background-repeat: repeat-x;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -250,14 +250,14 @@ switch ($mode)
//Обновление кеша новостей на главной //Обновление кеша новостей на главной
$news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id'])); $news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id']));
if(isset($news_forums[$forum_id]) && $bb_cfg['show_latest_news'] && $result) if (isset($news_forums[$forum_id]) && $bb_cfg['show_latest_news'] && $result)
{ {
$datastore->enqueue('latest_news'); $datastore->enqueue('latest_news');
$datastore->update('latest_news'); $datastore->update('latest_news');
} }
$net_forums = array_flip(explode(',', $bb_cfg['network_news_forum_id'])); $net_forums = array_flip(explode(',', $bb_cfg['network_news_forum_id']));
if(isset($net_forums[$forum_id]) && $bb_cfg['show_network_news'] && $result) if (isset($net_forums[$forum_id]) && $bb_cfg['show_network_news'] && $result)
{ {
$datastore->enqueue('network_news'); $datastore->enqueue('network_news');
$datastore->update('network_news'); $datastore->update('network_news');
@ -286,14 +286,14 @@ switch ($mode)
//Обновление кеша новостей на главной //Обновление кеша новостей на главной
$news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id'])); $news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id']));
if((isset($news_forums[$forum_id]) || isset($news_forums[$new_forum_id])) && $bb_cfg['show_latest_news'] && $result) if ((isset($news_forums[$forum_id]) || isset($news_forums[$new_forum_id])) && $bb_cfg['show_latest_news'] && $result)
{ {
$datastore->enqueue('latest_news'); $datastore->enqueue('latest_news');
$datastore->update('latest_news'); $datastore->update('latest_news');
} }
$net_forums = array_flip(explode(',', $bb_cfg['network_news_forum_id'])); $net_forums = array_flip(explode(',', $bb_cfg['network_news_forum_id']));
if((isset($net_forums[$forum_id]) || isset($net_forums[$new_forum_id])) && $bb_cfg['show_network_news'] && $result) if ((isset($net_forums[$forum_id]) || isset($net_forums[$new_forum_id])) && $bb_cfg['show_network_news'] && $result)
{ {
$datastore->enqueue('network_news'); $datastore->enqueue('network_news');
$datastore->update('network_news'); $datastore->update('network_news');
@ -588,7 +588,7 @@ switch ($mode)
$s_hidden_fields = '<input type="hidden" name="sid" value="' . $userdata['session_id'] . '" /><input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" /><input type="hidden" name="' . POST_TOPIC_URL . '" value="' . $topic_id . '" /><input type="hidden" name="mode" value="split" />'; $s_hidden_fields = '<input type="hidden" name="sid" value="' . $userdata['session_id'] . '" /><input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" /><input type="hidden" name="' . POST_TOPIC_URL . '" value="' . $topic_id . '" /><input type="hidden" name="mode" value="split" />';
if( ( $total_posts = DB()->num_rows($result) ) > 0 ) if (($total_posts = DB()->num_rows($result)) > 0)
{ {
$postrow = DB()->sql_fetchrowset($result); $postrow = DB()->sql_fetchrowset($result);
@ -600,7 +600,7 @@ switch ($mode)
'S_FORUM_SELECT' => get_forum_select('admin', 'new_forum_id', $forum_id), 'S_FORUM_SELECT' => get_forum_select('admin', 'new_forum_id', $forum_id),
)); ));
for($i = 0; $i < $total_posts; $i++) for ($i = 0; $i < $total_posts; $i++)
{ {
$post_id = $postrow[$i]['post_id']; $post_id = $postrow[$i]['post_id'];
$poster_id = $postrow[$i]['poster_id']; $poster_id = $postrow[$i]['poster_id'];
@ -758,7 +758,7 @@ switch ($mode)
$pin = ($mode == 'post_pin'); $pin = ($mode == 'post_pin');
$new_topic_status = ($pin) ? 1 : 0; $new_topic_status = ($pin) ? 1 : 0;
if(count($topic_csv)) if (count($topic_csv))
{ {
$sql = " $sql = "
SELECT topic_id, topic_title SELECT topic_id, topic_title

View file

@ -695,7 +695,7 @@ else
{ {
$template->assign_var('BB_DIE_APPEND_MSG', ' $template->assign_var('BB_DIE_APPEND_MSG', '
<form id="mod-action" method="POST" action="search.php"> <form id="mod-action" method="POST" action="search.php">
<input type="submit" name="add_my_post" value="'. $lang['RESTORE_ALL_POSTS'] .'" class="bold" onclick="if (!window.confirm( this.value +\'?\' )){ return false };" /> <input type="submit" name="add_my_post" value="'. $lang['RESTORE_ALL_POSTS'] .'" class="bold" onclick="if (!window.confirm( this.value +\'?\' )){ return false };" />
</form> </form>
<br /><br /> <br /><br />
<a href="index.php">'. $lang['INDEX_RETURN'] .'</a> <a href="index.php">'. $lang['INDEX_RETURN'] .'</a>
@ -830,7 +830,7 @@ if ($items_display)
$pages = (!$items_count) ? 1 : ceil($items_count / $per_page); $pages = (!$items_count) ? 1 : ceil($items_count / $per_page);
$url = ($search_id) ? url_arg($url, 'id', $search_id) : $url; $url = ($search_id) ? url_arg($url, 'id', $search_id) : $url;
generate_pagination($url, $items_count, $per_page, $start); generate_pagination($url, $items_count, $per_page, $start);
$template->assign_vars(array( $template->assign_vars(array(
'PAGE_TITLE' => $lang['SEARCH'], 'PAGE_TITLE' => $lang['SEARCH'],
@ -917,18 +917,12 @@ function prevent_huge_searches ($SQL)
bb_die('Too_many_search_results'); bb_die('Too_many_search_results');
} }
} }
### TEMP ###
# preg_match("#MATCH \((\w).*?\) AGAINST \('(.*?)' IN BOOLEAN MODE\)#", stripslashes($SQL['WHERE'][count($SQL['WHERE'])-1]), $m);
# $msg = date('m-d | H:i:s | ') . sprintf('%-18s', $GLOBALS['userdata']['username']) .' | '. sprintf('%04d', $row['rows_count']) .' | '. $m[1] .' | '. sprintf('%-40s', $m[2]) .' | ';
# bb_log($msg . str_compact(DB()->build_sql($SQL)) . LOG_LF, 'sql_text_search');
### / TEMP ###
} }
} }
function username_search ($search_match) function username_search ($search_match)
{ {
global $template, $lang; global $template, $lang, $gen_simple_header;
global $gen_simple_header;
$username_list = ''; $username_list = '';

View file

@ -98,6 +98,8 @@ ajax.callback.sitemap = function(data) {
<p>2. {L_SITEMAP_GOOGLE_2}</p> <p>2. {L_SITEMAP_GOOGLE_2}</p>
<p>3. {L_SITEMAP_YANDEX_1}</p> <p>3. {L_SITEMAP_YANDEX_1}</p>
<p>4. {L_SITEMAP_YANDEX_2}</p> <p>4. {L_SITEMAP_YANDEX_2}</p>
<p>5. {L_SITEMAP_BING_1}</p>
<p>6. {L_SITEMAP_BING_2}</p>
</td> </td>
</tr> </tr>
<tr> <tr>

View file

@ -1,49 +0,0 @@
<?php
if (!defined('BB_ROOT')) die(basename(__FILE__));
send_no_cache_headers();
$message = '';
if (!empty($_POST['subject']))
{
$message .= $_POST['subject'] ."\r\n\r\n";
}
if (!empty($_POST['message']))
{
$message .= $_POST['message'];
}
?><!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<title><?php echo $bb_cfg['server_name']; ?></title>
<style type="text/css">
body { min-width: 760px; color: #000000; background: #E3E3E3; font: bold 16px Verdana; }
.msg { font: 12px Verdana; }
</style>
</head>
<body>
<div>
<br />
<br />
<p style="margin: 1em 0; text-align: center;"><?php echo $L['BOARD_DISABLE']; ?></p>
<?php if ($message) { ?>
<br />
<br />
<p class="msg">ваше сообщение не было отправлено:</p>
<textarea rows="18" cols="92"><?php echo $message ?></textarea>
<?php } ?>
</div>
</body>
</html>
<?php exit; ?>

View file

@ -170,7 +170,7 @@
<p id="add_group_member" class="floatL"> <p id="add_group_member" class="floatL">
<input type="text" name="username" maxlength="50" size="20" /> <input type="text" name="username" maxlength="50" size="20" />
<input type="submit" name="add" value="{L_ADD_MEMBER}" class="mainoption" /> <input type="submit" name="add" value="{L_ADD_MEMBER}" class="mainoption" />
<input type="button" name="usersubmit" value="{L_FIND_USERNAME}" class="liteoption" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', 'HEIGHT=250,resizable=yes,WIDTH=400');return false;" /> <input type="button" name="usersubmit" value="{L_FIND_USERNAME}" class="liteoption" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', IWP_US);return false;" />
</p> </p>
<p class="floatR" style="padding-top: 1px;"> <p class="floatR" style="padding-top: 1px;">
<input type="submit" name="remove" value="{L_REMOVE_SELECTED}" class="mainoption" onclick="return confirm('{L_REMOVE_SELECTED}?');" /> <input type="submit" name="remove" value="{L_REMOVE_SELECTED}" class="mainoption" onclick="return confirm('{L_REMOVE_SELECTED}?');" />

View file

@ -28,15 +28,15 @@
<div class="med bold tCenter"> <div class="med bold tCenter">
<!-- IF HTML_AGREEMENT --> <!-- IF HTML_AGREEMENT -->
<a href="{$bb_cfg['user_agreement_url']}" onclick="window.open(this.href, '', InfoWinParams); return false;">{L_USER_AGREEMENT}</a> <a href="{$bb_cfg['user_agreement_url']}" onclick="window.open(this.href, '', IWP); return false;">{L_USER_AGREEMENT}</a>
<!-- ENDIF --> <!-- ENDIF -->
<!-- IF HTML_COPYRIGHT --> <!-- IF HTML_COPYRIGHT -->
<span class="normal">&nbsp;|&nbsp;</span> <span class="normal">&nbsp;|&nbsp;</span>
<a href="{$bb_cfg['copyright_holders_url']}" onclick="window.open(this.href, '', InfoWinParams); return false;">{L_COPYRIGHT_HOLDERS}</a> <a href="{$bb_cfg['copyright_holders_url']}" onclick="window.open(this.href, '', IWP); return false;">{L_COPYRIGHT_HOLDERS}</a>
<!-- ENDIF --> <!-- ENDIF -->
<!-- IF HTML_ADVERT --> <!-- IF HTML_ADVERT -->
<span class="normal">&nbsp;|&nbsp;</span> <span class="normal">&nbsp;|&nbsp;</span>
<a href="{$bb_cfg['advert_url']}" onclick="window.open(this.href, '', InfoWinParams); return false;">{L_ADVERT}</a> <a href="{$bb_cfg['advert_url']}" onclick="window.open(this.href, '', IWP); return false;">{L_ADVERT}</a>
<!-- ENDIF --> <!-- ENDIF -->
</div> </div>
<br /> <br />

View file

@ -33,13 +33,15 @@ var hidePostImg = false;
<!-- ENDIF / INCLUDE_BBCODE_JS --> <!-- ENDIF / INCLUDE_BBCODE_JS -->
<script type="text/javascript"> <script type="text/javascript">
var BB_ROOT = "{#BB_ROOT}"; var BB_ROOT = "{#BB_ROOT}";
var cookieDomain = "{$bb_cfg['cookie_domain']}"; var cookieDomain = "{$bb_cfg['cookie_domain']}";
var cookiePath = "{$bb_cfg['script_path']}"; var cookiePath = "{$bb_cfg['script_path']}";
var cookieSecure = {$bb_cfg['cookie_secure']}; var cookiePrefix = "{$bb_cfg['cookie_prefix']}";
var cookiePrefix = "{$bb_cfg['cookie_prefix']}"; var cookieSecure = {$bb_cfg['cookie_secure']};
var LOGGED_IN = {LOGGED_IN}; var LOGGED_IN = {LOGGED_IN};
var InfoWinParams = 'HEIGHT=510,resizable=yes,WIDTH=780'; var IWP = 'HEIGHT=510,WIDTH=780,resizable=yes';
var IWP_US = 'HEIGHT=250,WIDTH=400,resizable=yes';
var IWP_SM = 'HEIGHT=420,WIDTH=470,resizable=yes,scrollbars=yes';
var user = { var user = {
opt_js: {USER_OPTIONS_JS}, opt_js: {USER_OPTIONS_JS},

View file

@ -79,7 +79,7 @@
<td><b>{L_USERNAME}</b></td> <td><b>{L_USERNAME}</b></td>
<td> <td>
<input type="text" name="username" size="25" maxlength="25" tabindex="1" value="{USERNAME}" />&nbsp; <input type="text" name="username" size="25" maxlength="25" tabindex="1" value="{USERNAME}" />&nbsp;
<input type="submit" name="usersubmit" class="lite" value="{L_FIND_USERNAME}" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', 'HEIGHT=250,resizable=yes,WIDTH=400');return false;" /> <input type="submit" name="usersubmit" class="lite" value="{L_FIND_USERNAME}" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', IWP_US);return false;" />
</td> </td>
</tr> </tr>
<!-- ENDIF --> <!-- ENDIF -->
@ -105,7 +105,7 @@
<!-- END smilies_row --> <!-- END smilies_row -->
<!-- BEGIN switch_smilies_extra --> <!-- BEGIN switch_smilies_extra -->
<tr> <tr>
<td colspan="{S_SMILIES_COLSPAN}"><a href="{U_MORE_SMILIES}" onclick="window.open('{U_MORE_SMILIES}', '_bbsmilies', 'HEIGHT=420,resizable=yes,scrollbars=yes,WIDTH=470'); return false;" target="_bbsmilies" class="med">{L_MORE_EMOTICONS}</a></td> <td colspan="{S_SMILIES_COLSPAN}"><a href="{U_MORE_SMILIES}" onclick="window.open('{U_MORE_SMILIES}', '_bbsmilies', IWP_SM); return false;" target="_bbsmilies" class="med">{L_MORE_EMOTICONS}</a></td>
</tr> </tr>
<!-- END switch_smilies_extra --> <!-- END switch_smilies_extra -->
</table><!--/smilies--> </table><!--/smilies-->

View file

@ -29,7 +29,7 @@
<div> <div>
<p class="input"> <p class="input">
<input style="width: 50%" id="author" type="text" class="post" name="{POSTER_NAME_KEY}" />&nbsp; <input style="width: 50%" id="author" type="text" class="post" name="{POSTER_NAME_KEY}" />&nbsp;
<input style="width: 40%" type="button" value="{L_FIND_USERNAME}" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', 'HEIGHT=250,resizable=yes,WIDTH=400'); return false;" /> <input style="width: 40%" type="button" value="{L_FIND_USERNAME}" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', IWP_US); return false;" />
</p> </p>
<p class="chbox med"> <p class="chbox med">
<label> <label>

View file

@ -263,7 +263,7 @@ $(function(){
<fieldset> <fieldset>
<legend>{L_AUTHOR}</legend> <legend>{L_AUTHOR}</legend>
<div> <div>
<p class="input"><input style="width: 40%" <!-- IF POSTER_ERROR -->style="color: red"<!-- ELSE --> class="post"<!-- ENDIF --> type="text" size="16" maxlength="{POSTER_NAME_MAX}" name="{POSTER_NAME_NAME}" value="{POSTER_NAME_VAL}" /> <input style="width: 40%;" type="button" value="{L_FIND_USERNAME}" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', 'HEIGHT=250,resizable=yes,WIDTH=400'); return false;" /></p> <p class="input"><input style="width: 40%" <!-- IF POSTER_ERROR -->style="color: red"<!-- ELSE --> class="post"<!-- ENDIF --> type="text" size="16" maxlength="{POSTER_NAME_MAX}" name="{POSTER_NAME_NAME}" value="{POSTER_NAME_VAL}" /> <input style="width: 40%;" type="button" value="{L_FIND_USERNAME}" onclick="window.open('{U_SEARCH_USER}', '_bbsearch', IWP_US); return false;" /></p>
</div> </div>
</fieldset> </fieldset>
<fieldset> <fieldset>