diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 000000000..87694ddab
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,19 @@
+# EditorConfig helps developers define and maintain consistent
+# coding styles between different editors and IDEs
+# editorconfig.org
+
+root = true
+
+[*]
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+indent_style = space
+indent_size = 2
+
+[*.{diff,md}]
+trim_trailing_whitespace = false
+
+[*.php]
+indent_size = 4
diff --git a/.gitignore b/.gitignore
index 451adc104..aa95de5ab 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,9 @@
### TorrentPier ###
-.idea/
+.idea
+bower_components
composer.phar
composer.lock
+configs/local.php
data/avatars
data/torrent_files
internal_data/ajax_html
@@ -11,6 +13,7 @@ internal_data/log
internal_data/sitemap
internal_data/triggers
library/config.local.php
+node_modules
vendor
### Archives ###
@@ -35,4 +38,4 @@ $RECYCLE.BIN/
.Spotlight-V100
.Trashes
*.orig
-*.rej
\ No newline at end of file
+*.rej
diff --git a/.scrutinizer.yml b/.scrutinizer.yml
new file mode 100644
index 000000000..a6719f51d
--- /dev/null
+++ b/.scrutinizer.yml
@@ -0,0 +1,32 @@
+build:
+ environment:
+ php:
+ version: 5.6
+
+filter:
+ excluded_paths:
+ - 'tests/*'
+
+checks:
+ php:
+ one_class_per_file: false
+ side_effects_or_types: false
+ no_mixed_inline_html: false
+ require_braces_around_control_structures: false
+ php5_style_constructor: false
+ no_global_keyword: false
+ avoid_usage_of_logical_operators: false
+ no_underscore_prefix_in_properties: false
+ no_underscore_prefix_in_methods: false
+ single_namespace_per_use: false
+ avoid_superglobals: false
+ no_exit: false
+
+coding_style:
+ php:
+ indentation:
+ general:
+ use_tabs: true
+ spaces:
+ around_operators:
+ concatenation: true
\ No newline at end of file
diff --git a/admin/admin_bt_tracker_cfg.php b/admin/admin_bt_tracker_cfg.php
index 9406a5b89..d6388f4cb 100644
--- a/admin/admin_bt_tracker_cfg.php
+++ b/admin/admin_bt_tracker_cfg.php
@@ -7,6 +7,9 @@ if (!empty($setmodules))
}
require('./pagestart.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
if (!IS_SUPER_ADMIN) bb_die($lang['NOT_ADMIN']);
require(INC_DIR .'functions_admin_torrent.php');
@@ -51,9 +54,9 @@ set_tpl_vars ($default_cfg_num, $tr_cfg);
set_tpl_vars_lang ($default_cfg_num);
$template->assign_vars(array(
- 'IGNORE_REPORTED_IP' => $bb_cfg['ignore_reported_ip'],
- 'ANNOUNCE_INTERVAL' => $bb_cfg['announce_interval'],
- 'PASSKEY_KEY' => $bb_cfg['passkey_key'],
+ 'IGNORE_REPORTED_IP' => $di->config->get('ignore_reported_ip'),
+ 'ANNOUNCE_INTERVAL' => $di->config->get('announce_interval'),
+ 'PASSKEY_KEY' => $di->config->get('passkey_key'),
'GOLD_SILVER_ENABLED' => $tr_cfg['gold_silver_enabled'],
'DISABLE_SUBMIT' => true,
diff --git a/admin/admin_log.php b/admin/admin_log.php
index 023cebb7b..d98c866d1 100644
--- a/admin/admin_log.php
+++ b/admin/admin_log.php
@@ -7,6 +7,9 @@ if (!empty($setmodules))
}
require('./pagestart.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
$datastore->enqueue(array(
'moderators',
));
@@ -155,7 +158,7 @@ if (($var =& $_REQUEST[$daysback_key]) && ($var != $def_days))
}
if (($var =& $_REQUEST[$datetime_key]) && ($var != $def_datetime))
{
- $tz = TIMENOW + (3600 * $bb_cfg['board_timezone']);
+ $tz = TIMENOW + (3600 * $di->config->get('board_timezone'));
if (($tmp_timestamp = strtotime($var, $tz)) > 0)
{
$datetime_val = $tmp_timestamp;
diff --git a/admin/admin_mass_email.php b/admin/admin_mass_email.php
index be9cb7882..0cb59e4e0 100644
--- a/admin/admin_mass_email.php
+++ b/admin/admin_mass_email.php
@@ -7,6 +7,9 @@ if (!empty($setmodules))
}
require('./pagestart.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
set_time_limit(1200);
$subject = (string) trim(request_var('subject', ''));
@@ -57,9 +60,9 @@ if (isset($_POST['submit']))
foreach ($user_list as $i => $row)
{
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
- $emailer->from($bb_cfg['sitename'] ." <{$bb_cfg['board_email']}>");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
$emailer->email_address($row['username'] ." <{$row['user_email']}>");
$emailer->use_template('admin_send_email');
diff --git a/admin/admin_sitemap.php b/admin/admin_sitemap.php
index 6edeb817a..c397c3267 100644
--- a/admin/admin_sitemap.php
+++ b/admin/admin_sitemap.php
@@ -21,10 +21,10 @@ if (request_var('submit', '')) {
bb_die('' . $lang['GO_BACK'] . '');
}
-$s_mess = $lang['SITEMAP_CREATED'].': '. bb_date($bb_cfg['sitemap_time'], $bb_cfg['post_date_format']) .' '. $lang['SITEMAP_AVAILABLE'] .': '. make_url('sitemap.xml') .'';
+$s_mess = $lang['SITEMAP_CREATED'].': '. bb_date($di->config->get('sitemap_time'), $di->config->get('post_date_format')) .' '. $lang['SITEMAP_AVAILABLE'] .': '. make_url('sitemap.xml') .'';
$template->assign_vars(array(
- 'STATIC_SITEMAP' => $bb_cfg['static_sitemap'],
+ 'STATIC_SITEMAP' => $di->config->get('static_sitemap'),
'MESSAGE' => (file_exists(INT_DATA_DIR ."sitemap/sitemap.xml")) ? $s_mess : $lang['SITEMAP_NOT_CREATED'],
));
diff --git a/admin/admin_smilies.php b/admin/admin_smilies.php
index 8c59ff95a..4a5a8d5bc 100644
--- a/admin/admin_smilies.php
+++ b/admin/admin_smilies.php
@@ -7,6 +7,9 @@ if (!empty($setmodules))
}
require('./pagestart.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
// Check to see what mode we should operate in
if (isset($_POST['mode']) || isset($_GET['mode']))
{
@@ -21,13 +24,13 @@ else
$delimeter = '=+:';
// Read a listing of uploaded smilies for use in the add or edit smliey code
-$dir = opendir(BB_ROOT . $bb_cfg['smilies_path']);
+$dir = opendir(BB_ROOT . $di->config->get('smilies_path'));
while ($file = readdir($dir))
{
- if (!is_dir(bb_realpath(BB_ROOT . $bb_cfg['smilies_path'] . '/' . $file)))
+ if (!is_dir(bb_realpath(BB_ROOT . $di->config->get('smilies_path') . '/' . $file)))
{
- $img_size = getimagesize(BB_ROOT . $bb_cfg['smilies_path'] . '/' . $file);
+ $img_size = getimagesize(BB_ROOT . $di->config->get('smilies_path') . '/' . $file);
if ($img_size[0] && $img_size[1])
{
@@ -78,7 +81,7 @@ if (isset($_GET['import_pack']) || isset($_POST['import_pack']))
}
}
- $fcontents = file(BB_ROOT . $bb_cfg['smilies_path'] . '/'. $smile_pak);
+ $fcontents = file(BB_ROOT . $di->config->get('smilies_path') . '/'. $smile_pak);
if (empty($fcontents))
{
@@ -197,11 +200,11 @@ else if (isset($_POST['add']) || isset($_GET['add']))
$template->assign_vars(array(
'TPL_SMILE_EDIT' => true,
- 'SMILEY_IMG' => BB_ROOT . $bb_cfg['smilies_path'] . '/' . $smiley_images[0],
+ 'SMILEY_IMG' => BB_ROOT . $di->config->get('smilies_path') . '/' . $smiley_images[0],
'S_SMILEY_ACTION' => "admin_smilies.php",
'S_HIDDEN_FIELDS' => $s_hidden_fields,
'S_FILENAME_OPTIONS' => $filename_list,
- 'S_SMILEY_BASEDIR' => BB_ROOT . $bb_cfg['smilies_path']
+ 'S_SMILEY_BASEDIR' => BB_ROOT . $di->config->get('smilies_path')
));
}
else if ( $mode != '' )
@@ -256,11 +259,11 @@ else if ( $mode != '' )
'TPL_SMILE_EDIT' => true,
'SMILEY_CODE' => $smile_data['code'],
'SMILEY_EMOTICON' => $smile_data['emoticon'],
- 'SMILEY_IMG' => BB_ROOT . $bb_cfg['smilies_path'] . '/' . $smiley_edit_img,
+ 'SMILEY_IMG' => BB_ROOT . $di->config->get('smilies_path') . '/' . $smiley_edit_img,
'S_SMILEY_ACTION' => "admin_smilies.php",
'S_HIDDEN_FIELDS' => $s_hidden_fields,
'S_FILENAME_OPTIONS' => $filename_list,
- 'S_SMILEY_BASEDIR' => BB_ROOT . $bb_cfg['smilies_path'],
+ 'S_SMILEY_BASEDIR' => BB_ROOT . $di->config->get('smilies_path'),
));
break;
@@ -357,7 +360,7 @@ else
$template->assign_block_vars('smiles', array(
'ROW_CLASS' => $row_class,
- 'SMILEY_IMG' => BB_ROOT . $bb_cfg['smilies_path'] .'/'. $smilies[$i]['smile_url'],
+ 'SMILEY_IMG' => BB_ROOT . $di->config->get('smilies_path') .'/'. $smilies[$i]['smile_url'],
'CODE' => $smilies[$i]['code'],
'EMOT' => $smilies[$i]['emoticon'],
diff --git a/admin/admin_terms.php b/admin/admin_terms.php
index cb9437927..c1415bbb5 100644
--- a/admin/admin_terms.php
+++ b/admin/admin_terms.php
@@ -7,9 +7,12 @@ if (!empty($setmodules))
}
require('./pagestart.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
require(INC_DIR .'bbcode.php');
-if (isset($_POST['post']) && $bb_cfg['terms'] != $_POST['message'])
+if (isset($_POST['post']) && $di->config->get('terms') != $_POST['message'])
{
bb_update_config(array('terms' => $_POST['message']));
bb_die($lang['CONFIG_UPDATED']);
@@ -17,8 +20,8 @@ if (isset($_POST['post']) && $bb_cfg['terms'] != $_POST['message'])
$template->assign_vars(array(
'S_ACTION' => 'admin_terms.php',
- 'EXT_LINK_NW' => $bb_cfg['ext_link_new_win'],
- 'MESSAGE' => ($bb_cfg['terms']) ? $bb_cfg['terms'] : '',
+ 'EXT_LINK_NW' => $di->config->get('ext_link_new_win'),
+ 'MESSAGE' => ($di->config->get('terms')) ? $di->config->get('terms') : '',
'PREVIEW_HTML' => (isset($_REQUEST['preview'])) ? bbcode2html($_POST['message']) : '',
));
diff --git a/admin/admin_user_search.php b/admin/admin_user_search.php
index 31340431e..a1c0c3384 100644
--- a/admin/admin_user_search.php
+++ b/admin/admin_user_search.php
@@ -7,6 +7,9 @@ if (!empty($setmodules))
}
require('./pagestart.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
array_deep($_POST, 'trim');
require(INC_DIR .'functions_selects.php');
@@ -945,10 +948,10 @@ else
}
else
{
- $offset = ( ($page - 1) * $bb_cfg['topics_per_page']);
+ $offset = ( ($page - 1) * $di->config->get('topics_per_page'));
}
- $limit = "LIMIT $offset, ".$bb_cfg['topics_per_page'];
+ $limit = "LIMIT $offset, ".$di->config->get('topics_per_page');
$select_sql .= " $limit";
@@ -966,7 +969,7 @@ else
bb_die($lang['SEARCH_NO_RESULTS']);
}
}
- $num_pages = ceil( ( $total_pages['total'] / $bb_cfg['topics_per_page'] ) );
+ $num_pages = ceil( ( $total_pages['total'] / $di->config->get('topics_per_page') ) );
$pagination = '';
diff --git a/admin/admin_words.php b/admin/admin_words.php
index 76ba696b9..752987788 100644
--- a/admin/admin_words.php
+++ b/admin/admin_words.php
@@ -13,9 +13,9 @@ $di = \TorrentPier\Di::getInstance();
/** @var \TorrentPier\Cache\Adapter $cache */
$cache = $di->cache;
-if (!$bb_cfg['use_word_censor'])
+if (!$di->config->get('use_word_censor'))
{
- bb_die('Word censor disabled For advertising please contact: For advertising please contact: config->get('adv_email'); ?>
($bb_cfg[\'use_word_censor\'] in config.php)');
+ bb_die('Word censor disabled');
}
$mode = request_var('mode', '');
diff --git a/admin/index.php b/admin/index.php
index 301ea5292..2166d5b7e 100644
--- a/admin/index.php
+++ b/admin/index.php
@@ -65,7 +65,7 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
{
$template->assign_vars(array(
'TPL_ADMIN_MAIN' => true,
- 'ADMIN_LOCK' => ($bb_cfg['board_disable']) ? true : false,
+ 'ADMIN_LOCK' => ($di->config->get('board_disable')) ? true : false,
'ADMIN_LOCK_CRON' => (file_exists(BB_DISABLED)) ? true :false,
));
@@ -73,8 +73,8 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
$total_posts = get_db_stat('postcount');
$total_users = get_db_stat('usercount');
$total_topics = get_db_stat('topiccount');
- $start_date = bb_date($bb_cfg['board_startdate']);
- $boarddays = (TIMENOW - $bb_cfg['board_startdate']) / 86400;
+ $start_date = bb_date($di->config->get('board_startdate'));
+ $boarddays = (TIMENOW - $di->config->get('board_startdate')) / 86400;
$posts_per_day = sprintf('%.2f', $total_posts / $boarddays);
$topics_per_day = sprintf('%.2f', $total_topics / $boarddays);
@@ -82,13 +82,13 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
$avatar_dir_size = 0;
- if ($avatar_dir = opendir(BB_ROOT . $bb_cfg['avatar_path']))
+ if ($avatar_dir = opendir(BB_ROOT . $di->config->get('avatar_path')))
{
while( $file = readdir($avatar_dir) )
{
if( $file != '.' && $file != '..' )
{
- $avatar_dir_size += filesize(BB_ROOT . $bb_cfg['avatar_path'] . '/' . $file);
+ $avatar_dir_size += filesize(BB_ROOT . $di->config->get('avatar_path') . '/' . $file);
}
}
closedir($avatar_dir);
@@ -125,7 +125,7 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
if (preg_match('/^(3\.23|4\.|5\.|10\.)/', $version))
{
$dblist = array();
- foreach ($bb_cfg['db'] as $name => $row)
+ foreach ($di->config->get('db') as $name => $row)
{
$sql = "SHOW TABLE STATUS FROM {$row[1]}";
if ($result = DB()->sql_query($sql))
@@ -165,9 +165,9 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
'USERS_PER_DAY' => $users_per_day,
'AVATAR_DIR_SIZE' => $avatar_dir_size,
'DB_SIZE' => $dbsize,
- 'GZIP_COMPRESSION' => ($bb_cfg['gzip_compress']) ? $lang['ON'] : $lang['OFF'],
- 'TP_VERSION' => $bb_cfg['tp_version'] . (!empty($bb_cfg['tp_release_state']) ? ' :: ' . $bb_cfg['tp_release_state'] : ''),
- 'TP_RELEASE_DATE' => $bb_cfg['tp_release_date'],
+ 'GZIP_COMPRESSION' => ($di->config->get('gzip_compress')) ? $lang['ON'] : $lang['OFF'],
+ 'TP_VERSION' => $di->config->get('tp_version') . (!empty($di->config->get('tp_release_state')) ? ' :: ' . $di->config->get('tp_release_state') : ''),
+ 'TP_RELEASE_DATE' => $di->config->get('tp_release_date'),
'ZF_VERSION' => Zend\Version\Version::VERSION,
));
@@ -237,7 +237,7 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
'STARTED' => bb_date($onlinerow_reg[$i]['session_start'], 'H:i', false),
'LASTUPDATE' => bb_date($onlinerow_reg[$i]['user_session_time'], 'H:i', false),
'IP_ADDRESS' => $reg_ip,
- 'U_WHOIS_IP' => $bb_cfg['whois_info'] . $reg_ip,
+ 'U_WHOIS_IP' => $di->config->get('whois_info') . $reg_ip,
));
}
}
@@ -262,7 +262,7 @@ elseif (isset($_GET['pane']) && $_GET['pane'] == 'right')
'STARTED' => bb_date($onlinerow_guest[$i]['session_start'], 'H:i', false),
'LASTUPDATE' => bb_date($onlinerow_guest[$i]['session_time'], 'H:i' , false),
'IP_ADDRESS' => $guest_ip,
- 'U_WHOIS_IP' => $bb_cfg['whois_info'] . $guest_ip,
+ 'U_WHOIS_IP' => $di->config->get('whois_info') . $guest_ip,
));
}
}
@@ -278,7 +278,7 @@ else
{
// Generate frameset
$template->assign_vars(array(
- 'CONTENT_ENCODING' => $bb_cfg['lang'][$userdata['user_lang']]['encoding'],
+ 'CONTENT_ENCODING' => $di->config->get('lang.' . $userdata['user_lang'] . '.encoding'),
'TPL_ADMIN_FRAMESET' => true,
));
send_no_cache_headers();
diff --git a/admin/stats/tracker.php b/admin/stats/tracker.php
index 69d9922d8..a709bf72a 100644
--- a/admin/stats/tracker.php
+++ b/admin/stats/tracker.php
@@ -4,6 +4,9 @@ define('IN_ADMIN', true);
define('BB_ROOT', './../../');
require(BB_ROOT .'common.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
$user->session_start();
if (!IS_ADMIN) bb_die($lang['NOT_AUTHORISED']);
@@ -11,7 +14,7 @@ if (!IS_ADMIN) bb_die($lang['NOT_AUTHORISED']);
$peers_in_last_minutes = array(30, 15, 5, 1);
$peers_in_last_sec_limit = 300;
-$announce_interval = intval($bb_cfg['announce_interval']);
+$announce_interval = intval($di->config->get('announce_interval'));
$stat = array();
define('TMP_TRACKER_TABLE', 'tmp_tracker');
diff --git a/app.php b/app.php
index 4434da1f5..7c56997ca 100644
--- a/app.php
+++ b/app.php
@@ -7,17 +7,12 @@ $view = $di->view;
/** @var \TorrentPier\Db\Adapter $db */
$db = $di->db;
-
$view->addGlobal('title', 'Title Page Simple');
-
$categories = $db->select('bb_categories', function (\Zend\Db\Sql\Select $query) {
$query->join('bb_forums', 'bb_categories.cat_id = bb_forums.cat_id');
})->all();
-
-
-
echo $view->make('app', [
'data' => 'Hello world',
'categories' => $categories
diff --git a/bootstrap.php b/bootstrap.php
index 3c4ca85c8..e9171a804 100644
--- a/bootstrap.php
+++ b/bootstrap.php
@@ -2,8 +2,8 @@
require_once __DIR__ . '/vendor/autoload.php';
-use TorrentPier\Di,
- TorrentPier\ServiceProviders;
+use TorrentPier\Di;
+use TorrentPier\ServiceProviders;
$di = new Di();
diff --git a/bower.json b/bower.json
new file mode 100644
index 000000000..eca6c23f5
--- /dev/null
+++ b/bower.json
@@ -0,0 +1,24 @@
+{
+ "name": "torrentpier",
+ "description": "TorrentPier. Bittorrent-tracker engine",
+ "main": "build/index.js",
+ "authors": [
+ "Exile ';
+ $pm = ($di->config->get('text_buttons')) ? ''. $lang['SEND_PM_TXTB'] .'' : '
';
$avatar = get_avatar($row['user_id'], $row['avatar_ext_id'], !bf($row['user_opt'], 'user_opt', 'dis_avatar'), '', 50, 50);
if (bf($row['user_opt'], 'user_opt', 'user_viewemail') || $group_mod)
{
- $email_uri = ($bb_cfg['board_email_form']) ? ("profile.php?mode=email&". POST_USERS_URL ."=".$row['user_id']) : 'mailto:'. $row['user_email'];
+ $email_uri = ($di->config->get('board_email_form')) ? ("profile.php?mode=email&". POST_USERS_URL ."=".$row['user_id']) : 'mailto:'. $row['user_email'];
$email = ''. $row['user_email'] .'';
}
else $email = '';
if ($row['user_website'])
{
- $www = ($bb_cfg['text_buttons']) ? ''. $lang['VISIT_WEBSITE_TXTB'] .'' : '
';
+ $www = ($di->config->get('text_buttons')) ? ''. $lang['VISIT_WEBSITE_TXTB'] .'' : '
';
}
else $www = '';
@@ -44,7 +50,7 @@ set_die_append_msg();
$group_id = isset($_REQUEST[POST_GROUPS_URL]) ? intval($_REQUEST[POST_GROUPS_URL]) : null;
$start = isset($_REQUEST['start']) ? abs(intval($_REQUEST['start'])) : 0;
-$per_page = $bb_cfg['group_members_per_page'];
+$per_page = $di->config->get('group_members_per_page');
$view_mode = isset($_REQUEST['view']) ? (string) $_REQUEST['view'] : null;
$rel_limit = 50;
@@ -217,19 +223,19 @@ else if (isset($_POST['joingroup']) && $_POST['joingroup'])
add_user_into_group($group_id, $userdata['user_id'], 1, TIMENOW);
- if ($bb_cfg['group_send_email'])
+ if ($di->config->get('group_send_email'))
{
require(CLASS_DIR .'emailer.php');
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
- $emailer->from($bb_cfg['sitename'] ." <{$bb_cfg['board_email']}>");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
$emailer->email_address($moderator['username'] ." <{$moderator['user_email']}>");
$emailer->use_template('group_request', $moderator['user_lang']);
$emailer->assign_vars(array(
'USER' => $userdata['username'],
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'GROUP_MODERATOR' => $moderator['username'],
'U_GROUP' => make_url(GROUP_URL . $group_id),
));
@@ -269,18 +275,18 @@ else
add_user_into_group($group_id, $row['user_id']);
- if ($bb_cfg['group_send_email'])
+ if ($di->config->get('group_send_email'))
{
require(CLASS_DIR .'emailer.php');
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
- $emailer->from($bb_cfg['sitename'] ." <{$bb_cfg['board_email']}>");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
$emailer->email_address($row['username'] ." <{$row['user_email']}>");
$emailer->use_template('group_added', $row['user_lang']);
$emailer->assign_vars(array(
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'GROUP_NAME' => $group_info['group_name'],
'U_GROUP' => make_url(GROUP_URL . $group_id),
));
@@ -330,7 +336,7 @@ else
}
}
// Email users when they are approved
- if (!empty($_POST['approve']) && $bb_cfg['group_send_email'])
+ if (!empty($_POST['approve']) && $di->config->get('group_send_email'))
{
$sql_select = "SELECT username, user_email, user_lang
FROM ". BB_USERS ."
@@ -342,9 +348,9 @@ else
}
require(CLASS_DIR .'emailer.php');
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
- $emailer->from($bb_cfg['sitename'] ." <{$bb_cfg['board_email']}>");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
foreach (DB()->fetch_rowset($sql_select) as $row)
{
@@ -353,7 +359,7 @@ else
}
$emailer->assign_vars(array(
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'GROUP_NAME' => $group_info['group_name'],
'U_GROUP' => make_url(GROUP_URL . $group_id),
));
@@ -438,7 +444,7 @@ else
$username = $group_moderator['username'];
$user_id = $group_moderator['user_id'];
- generate_user_info($group_moderator, $bb_cfg['default_dateformat'], $is_moderator, $from, $posts, $joined, $pm, $email, $www, $user_time, $avatar);
+ generate_user_info($group_moderator, $di->config->get('default_dateformat'), $is_moderator, $from, $posts, $joined, $pm, $email, $www, $user_time, $avatar);
$group_type = '';
if ($group_info['group_type'] == GROUP_OPEN)
@@ -597,7 +603,7 @@ else
{
$user_id = $member['user_id'];
- generate_user_info($member, $bb_cfg['default_dateformat'], $is_moderator, $from, $posts, $joined, $pm, $email, $www, $user_time, $avatar);
+ generate_user_info($member, $di->config->get('default_dateformat'), $is_moderator, $from, $posts, $joined, $pm, $email, $www, $user_time, $avatar);
if ($group_info['group_type'] != GROUP_HIDDEN || $is_group_member || $is_moderator)
{
@@ -658,7 +664,7 @@ else
{
$user_id = $member['user_id'];
- generate_user_info($member, $bb_cfg['default_dateformat'], $is_moderator, $from, $posts, $joined, $pm, $email, $www, $user_time, $avatar);
+ generate_user_info($member, $di->config->get('default_dateformat'), $is_moderator, $from, $posts, $joined, $pm, $email, $www, $user_time, $avatar);
$row_class = !($i % 2) ? 'row1' : 'row2';
diff --git a/group_edit.php b/group_edit.php
index 4b1daa07c..edd460c66 100644
--- a/group_edit.php
+++ b/group_edit.php
@@ -5,6 +5,9 @@ define('BB_ROOT', './');
require(BB_ROOT .'common.php');
require(INC_DIR .'functions_group.php');
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
$page_cfg['include_bbcode_js'] = true;
// Start session management
@@ -34,12 +37,12 @@ if ($is_moderator)
// Avatar
if ($submit)
{
- if (!empty($_FILES['avatar']['name']) && $bb_cfg['group_avatars']['up_allowed'])
+ if (!empty($_FILES['avatar']['name']) && $di->config->get('group_avatars.up_allowed'))
{
require(INC_DIR .'functions_upload.php');
$upload = new upload_common();
- if ($upload->init($bb_cfg['group_avatars'], $_FILES['avatar']) && $upload->store('avatar', array("user_id" => GROUP_AVATAR_MASK . $group_id, "avatar_ext_id" => $group_info['avatar_ext_id'])))
+ if ($upload->init($di->config->get('group_avatars'), $_FILES['avatar']) && $upload->store('avatar', array("user_id" => GROUP_AVATAR_MASK . $group_id, "avatar_ext_id" => $group_info['avatar_ext_id'])))
{
$avatar_ext_id = (int) $upload->file_ext_id;
}
@@ -86,7 +89,7 @@ if ($is_moderator)
'S_HIDDEN_FIELDS' => $s_hidden_fields,
'S_GROUP_CONFIG_ACTION' => "group_edit.php?" . POST_GROUPS_URL . "=$group_id",
- 'AVATAR_EXPLAIN' => sprintf($lang['AVATAR_EXPLAIN'], $bb_cfg['group_avatars']['max_width'], $bb_cfg['group_avatars']['max_height'], (round($bb_cfg['group_avatars']['max_size'] / 1024))),
+ 'AVATAR_EXPLAIN' => sprintf($lang['AVATAR_EXPLAIN'], $di->config->get('group_avatars.max_width'), $di->config->get('group_avatars.max_height'), (round($di->config->get('group_avatars.max_size') / 1024))),
'AVATAR_IMG' => get_avatar(GROUP_AVATAR_MASK . $group_id, $group_info['avatar_ext_id']),
));
diff --git a/index.php b/index.php
index 44580d6c2..80a1c2b9b 100644
--- a/index.php
+++ b/index.php
@@ -23,11 +23,11 @@ $datastore->enqueue(array(
'stats',
'moderators',
));
-if ($bb_cfg['show_latest_news'])
+if ($di->config->get('show_latest_news'))
{
$datastore->enqueue('latest_news');
}
-if ($bb_cfg['show_network_news'])
+if ($di->config->get('show_network_news'))
{
$datastore->enqueue('network_news');
}
@@ -269,7 +269,7 @@ foreach ($cat_forums as $cid => $c)
'LAST_TOPIC_ID' => $f['last_topic_id'],
'LAST_TOPIC_TIP' => $f['last_topic_title'],
'LAST_TOPIC_TITLE' => wbr(str_short($f['last_topic_title'], $last_topic_max_len)),
- 'LAST_POST_TIME' => bb_date($f['last_post_time'], $bb_cfg['last_post_date_format']),
+ 'LAST_POST_TIME' => bb_date($f['last_post_time'], $di->config->get('last_post_date_format')),
'LAST_POST_USER' => profile_url(array('username' => str_short($f['last_post_username'], 15), 'user_id' => $f['last_post_user_id'], 'user_rank' => $f['last_post_user_rank'])),
));
}
@@ -285,14 +285,14 @@ $template->assign_vars(array(
'TOTAL_TOPICS' => sprintf($lang['POSTED_TOPICS_TOTAL'], $stats['topiccount']),
'TOTAL_POSTS' => sprintf($lang['POSTED_ARTICLES_TOTAL'], $stats['postcount']),
'TOTAL_USERS' => sprintf($lang['REGISTERED_USERS_TOTAL'], $stats['usercount']),
- 'TOTAL_GENDER' => ($bb_cfg['gender']) ? sprintf($lang['USERS_TOTAL_GENDER'], $stats['male'], $stats['female'], $stats['unselect']) : '',
+ 'TOTAL_GENDER' => ($di->config->get('gender')) ? sprintf($lang['USERS_TOTAL_GENDER'], $stats['male'], $stats['female'], $stats['unselect']) : '',
'NEWEST_USER' => sprintf($lang['NEWEST_USER'], profile_url($stats['newestuser'])),
// Tracker stats
- 'TORRENTS_STAT' => ($bb_cfg['tor_stats']) ? sprintf($lang['TORRENTS_STAT'], $stats['torrentcount'], humn_size($stats['size'])) : '',
- 'PEERS_STAT' => ($bb_cfg['tor_stats']) ? sprintf($lang['PEERS_STAT'], $stats['peers'], $stats['seeders'], $stats['leechers']) : '',
- 'SPEED_STAT' => ($bb_cfg['tor_stats']) ? sprintf($lang['SPEED_STAT'], humn_size($stats['speed']) .'/s') : '',
- 'SHOW_MOD_INDEX' => $bb_cfg['show_mod_index'],
+ 'TORRENTS_STAT' => ($di->config->get('tor_stats')) ? sprintf($lang['TORRENTS_STAT'], $stats['torrentcount'], humn_size($stats['size'])) : '',
+ 'PEERS_STAT' => ($di->config->get('tor_stats')) ? sprintf($lang['PEERS_STAT'], $stats['peers'], $stats['seeders'], $stats['leechers']) : '',
+ 'SPEED_STAT' => ($di->config->get('tor_stats')) ? sprintf($lang['SPEED_STAT'], humn_size($stats['speed']) .'/s') : '',
+ 'SHOW_MOD_INDEX' => $di->config->get('show_mod_index'),
'FORUM_IMG' => $images['forum'],
'FORUM_NEW_IMG' => $images['forum_new'],
'FORUM_LOCKED_IMG' => $images['forum_locked'],
@@ -310,13 +310,13 @@ $template->assign_vars(array(
));
// Set tpl vars for bt_userdata
-if ($bb_cfg['bt_show_dl_stat_on_index'] && !IS_GUEST)
+if ($di->config->get('bt_show_dl_stat_on_index') && !IS_GUEST)
{
show_bt_userdata($userdata['user_id']);
}
// Latest news
-if ($bb_cfg['show_latest_news'])
+if ($di->config->get('show_latest_news'))
{
if (!$latest_news = $datastore->get('latest_news'))
{
@@ -332,7 +332,7 @@ if ($bb_cfg['show_latest_news'])
{
$template->assign_block_vars('news', array(
'NEWS_TOPIC_ID' => $news['topic_id'],
- 'NEWS_TITLE' => str_short($news['topic_title'], $bb_cfg['max_news_title']),
+ 'NEWS_TITLE' => str_short($news['topic_title'], $di->config->get('max_news_title')),
'NEWS_TIME' => bb_date($news['topic_time'], 'd-M', false),
'NEWS_IS_NEW' => is_unread($news['topic_time'], $news['topic_id'], $news['forum_id']),
));
@@ -340,7 +340,7 @@ if ($bb_cfg['show_latest_news'])
}
// Network news
-if ($bb_cfg['show_network_news'])
+if ($di->config->get('show_network_news'))
{
if (!$network_news = $datastore->get('network_news'))
{
@@ -356,14 +356,14 @@ if ($bb_cfg['show_network_news'])
{
$template->assign_block_vars('net', array(
'NEWS_TOPIC_ID' => $net['topic_id'],
- 'NEWS_TITLE' => str_short($net['topic_title'], $bb_cfg['max_net_title']),
+ 'NEWS_TITLE' => str_short($net['topic_title'], $di->config->get('max_net_title')),
'NEWS_TIME' => bb_date($net['topic_time'], 'd-M', false),
'NEWS_IS_NEW' => is_unread($net['topic_time'], $net['topic_id'], $net['forum_id']),
));
}
}
-if ($bb_cfg['birthday_check_day'] && $bb_cfg['birthday_enabled'])
+if ($di->config->get('birthday_check_day') && $di->config->get('birthday_enabled'))
{
$week_list = $today_list = array();
$week_all = $today_all = false;
@@ -381,9 +381,9 @@ if ($bb_cfg['birthday_check_day'] && $bb_cfg['birthday_enabled'])
$week_list[] = profile_url($week) .' ('. birthday_age($week['user_birthday']-1) .')';
}
$week_all = ($week_all) ? ' ...' : '';
- $week_list = sprintf($lang['BIRTHDAY_WEEK'], $bb_cfg['birthday_check_day'], join(', ', $week_list)) . $week_all;
+ $week_list = sprintf($lang['BIRTHDAY_WEEK'], $di->config->get('birthday_check_day'), join(', ', $week_list)) . $week_all;
}
- else $week_list = sprintf($lang['NOBIRTHDAY_WEEK'], $bb_cfg['birthday_check_day']);
+ else $week_list = sprintf($lang['NOBIRTHDAY_WEEK'], $di->config->get('birthday_check_day'));
if ($stats['birthday_today_list'])
{
diff --git a/install/upgrade/r496-user_birthday.php b/install/upgrade/r496-user_birthday.php
index 1d84435f9..257d598e9 100644
--- a/install/upgrade/r496-user_birthday.php
+++ b/install/upgrade/r496-user_birthday.php
@@ -1,5 +1,9 @@
request['mode'];
$user_id = (int) $this->request['user_id'];
@@ -22,7 +25,7 @@ switch ($mode)
case 'delete':
delete_avatar($user_id, $u_data['avatar_ext_id']);
$new_ext_id = 0;
- $response = '
';
+ $response = '
';
break;
default:
$this->ajax_die('Invalid mode');
diff --git a/library/ajax/change_tor_status.php b/library/ajax/change_tor_status.php
index 03da8b89f..880aa99ac 100644
--- a/library/ajax/change_tor_status.php
+++ b/library/ajax/change_tor_status.php
@@ -2,14 +2,17 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $userdata, $bb_cfg, $lang;
+global $userdata, $lang;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
if (!isset($this->request['topic_id'])) $this->ajax_die('Invalid topic_id');
$topic_id = (int) $this->request['topic_id'];
$mode = (string) $this->request['mode'];
-if ($bb_cfg['tor_comment'])
+if ($di->config->get('tor_comment'))
{
$comment = (string) $this->request['comment'];
}
@@ -73,14 +76,14 @@ switch ($mode)
change_tor_status($topic_id, $new_status);
- $this->response['status'] = $bb_cfg['tor_icons'][$new_status] .' '. $lang['TOR_STATUS_NAME'][$new_status]. ' · '. profile_url($userdata) .' · '. delta_time(TIMENOW) . $lang['TOR_BACK']. '';
+ $this->response['status'] = $di->config->get('tor_icons.' . $new_status) .' '. $lang['TOR_STATUS_NAME'][$new_status]. ' · '. profile_url($userdata) .' · '. delta_time(TIMENOW) . $lang['TOR_BACK']. '';
- if ($bb_cfg['tor_comment'] && (($comment && $comment != $lang['COMMENT']) || in_array($new_status, $bb_cfg['tor_reply'])))
+ if ($di->config->get('tor_comment') && (($comment && $comment != $lang['COMMENT']) || in_array($new_status, $di->config->get('tor_reply'))))
{
if ($tor['poster_id'] > 0)
{
$subject = sprintf($lang['TOR_MOD_TITLE'], $tor['topic_title']);
- $message = sprintf($lang['TOR_MOD_MSG'], get_username($tor['poster_id']), make_url(TOPIC_URL . $topic_id), $bb_cfg['tor_icons'][$new_status] .' '.$lang['TOR_STATUS_NAME'][$new_status]);
+ $message = sprintf($lang['TOR_MOD_MSG'], get_username($tor['poster_id']), make_url(TOPIC_URL . $topic_id), $di->config->get('tor_icons.' . $new_status) .' '.$lang['TOR_STATUS_NAME'][$new_status]);
if ($comment && $comment != $lang['COMMENT']) $message .= "\n\n[b]". $lang['COMMENT'] .'[/b]: '. $comment;
@@ -91,7 +94,7 @@ switch ($mode)
break;
case 'status_reply':
- if (!$bb_cfg['tor_comment']) $this->ajax_die($lang['MODULE_OFF']);
+ if (!$di->config->get('tor_comment')) $this->ajax_die($lang['MODULE_OFF']);
$subject = sprintf($lang['TOR_AUTH_TITLE'], $tor['topic_title']);
$message = sprintf($lang['TOR_AUTH_MSG'], get_username($tor['checked_user_id']), make_url(TOPIC_URL . $topic_id), $tor['topic_title']);
diff --git a/library/ajax/edit_group_profile.php b/library/ajax/edit_group_profile.php
index 8621f75fc..3bbca2615 100644
--- a/library/ajax/edit_group_profile.php
+++ b/library/ajax/edit_group_profile.php
@@ -2,7 +2,10 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $bb_cfg, $userdata, $lang;
+global $userdata, $lang;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
if (!($group_id = intval($this->request['group_id'])) || !($group_info = get_group_data($group_id)))
{
diff --git a/library/ajax/edit_user_profile.php b/library/ajax/edit_user_profile.php
index d9b37fd96..acf351c51 100644
--- a/library/ajax/edit_user_profile.php
+++ b/library/ajax/edit_user_profile.php
@@ -2,7 +2,10 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $bb_cfg, $lang;
+global $lang;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
if (!($user_id = intval($this->request['user_id'])) || !($profiledata = get_userdata($user_id)))
{
@@ -47,7 +50,7 @@ switch ($field)
break;
case 'user_gender':
- if (!$bb_cfg['gender']) $this->ajax_die($lang['MODULE_OFF']);
+ if (!$di->config->get('gender')) $this->ajax_die($lang['MODULE_OFF']);
if (!isset($lang['GENDER_SELECT'][$value]))
{
$this->ajax_die($lang['ERROR']);
@@ -56,7 +59,7 @@ switch ($field)
break;
case 'user_birthday':
- if (!$bb_cfg['birthday_enabled']) $this->ajax_die($lang['MODULE_OFF']);
+ if (!$di->config->get('birthday_enabled')) $this->ajax_die($lang['MODULE_OFF']);
$birthday_date = date_parse($value);
if (!empty($birthday_date['year']))
@@ -65,13 +68,13 @@ switch ($field)
{
$this->ajax_die($lang['WRONG_BIRTHDAY_FORMAT']);
}
- elseif (bb_date(TIMENOW, 'Y', 'false') - $birthday_date['year'] > $bb_cfg['birthday_max_age'])
+ elseif (bb_date(TIMENOW, 'Y', 'false') - $birthday_date['year'] > $di->config->get('birthday_max_age'))
{
- $this->ajax_die(sprintf($lang['BIRTHDAY_TO_HIGH'], $bb_cfg['birthday_max_age']));
+ $this->ajax_die(sprintf($lang['BIRTHDAY_TO_HIGH'], $di->config->get('birthday_max_age')));
}
- elseif (bb_date(TIMENOW, 'Y', 'false') - $birthday_date['year'] < $bb_cfg['birthday_min_age'])
+ elseif (bb_date(TIMENOW, 'Y', 'false') - $birthday_date['year'] < $di->config->get('birthday_min_age'))
{
- $this->ajax_die(sprintf($lang['BIRTHDAY_TO_LOW'], $bb_cfg['birthday_min_age']));
+ $this->ajax_die(sprintf($lang['BIRTHDAY_TO_LOW'], $di->config->get('birthday_min_age')));
}
}
@@ -111,8 +114,8 @@ switch ($field)
case 'user_regdate':
case 'user_lastvisit':
- $tz = TIMENOW + (3600 * $bb_cfg['board_timezone']);
- if ((($value = strtotime($value, $tz)) < $bb_cfg['board_startdate']) || ($value > TIMENOW))
+ $tz = TIMENOW + (3600 * $di->config->get('board_timezone'));
+ if ((($value = strtotime($value, $tz)) < $di->config->get('board_startdate')) || ($value > TIMENOW))
{
$this->ajax_die($lang['INVALID_DATE'] . $this->request['value']);
}
diff --git a/library/ajax/index_data.php b/library/ajax/index_data.php
index 8ac61ea90..c6aa002e2 100644
--- a/library/ajax/index_data.php
+++ b/library/ajax/index_data.php
@@ -2,7 +2,10 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $bb_cfg, $lang, $userdata, $datastore;
+global $lang, $userdata, $datastore;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
$mode = (string) $this->request['mode'];
$html = '';
@@ -21,9 +24,9 @@ switch($mode)
{
$html[] = profile_url($week) .' ('. birthday_age($week['user_birthday']) .')';
}
- $html = sprintf($lang['BIRTHDAY_WEEK'], $bb_cfg['birthday_check_day'], join(', ', $html));
+ $html = sprintf($lang['BIRTHDAY_WEEK'], $di->config->get('birthday_check_day'), join(', ', $html));
}
- else $html = sprintf($lang['NOBIRTHDAY_WEEK'], $bb_cfg['birthday_check_day']);
+ else $html = sprintf($lang['NOBIRTHDAY_WEEK'], $di->config->get('birthday_check_day'));
break;
case 'birthday_today':
@@ -79,13 +82,8 @@ switch($mode)
$tz = (int) $this->request['tz'];
if ($tz < -12) $tz = -12;
if ($tz > 13) $tz = 13;
- if ($tz != $bb_cfg['board_timezone'])
- {
- // Set current user timezone
- DB()->query("UPDATE ". BB_USERS ." SET user_timezone = $tz WHERE user_id = ". $userdata['user_id'] ." LIMIT 1");
- $bb_cfg['board_timezone'] = $tz;
- cache_rm_user_sessions ($userdata['user_id']);
- }
+ DB()->query("UPDATE " . BB_USERS . " SET user_timezone = $tz WHERE user_id = " . $userdata['user_id'] . " LIMIT 1");
+ cache_rm_user_sessions($userdata['user_id']);
break;
case 'get_traf_stats':
@@ -104,7 +102,7 @@ switch($mode)
'. $lang['UPLOADED'] .'
'. $lang['RELEASED'] .'
'. $lang['BONUS'] .' ';
- $html .= ($bb_cfg['seed_bonus_enabled']) ? ''. $lang['SEED_BONUS'] .' ' : '';
+ $html .= ($di->config->get('seed_bonus_enabled')) ? ''. $lang['SEED_BONUS'] .' ' : '';
$html .= '
'. $lang['TOTAL_TRAF'] .'
@@ -112,17 +110,17 @@ switch($mode)
' .humn_size($btu['u_up_total']) .'
'. humn_size($btu['u_up_release']) .'
'. humn_size($btu['u_up_bonus']) .' ';
- $html .= ($bb_cfg['seed_bonus_enabled']) ? ''. $profiledata['user_points'] .' ' : '';
+ $html .= ($di->config->get('seed_bonus_enabled')) ? ''. $profiledata['user_points'] .' ' : '';
$html .= '
';
$this->response['user_ratio'] = '
- '. $lang['SPEED'] .'
'. $lang['DL_DL_SPEED'] .': '. $speed_down .'
'. $lang['DL_UL_SPEED'] .': '. $speed_up .' ';
- $html .= ($bb_cfg['seed_bonus_enabled']) ? '' : '';
+ $html .= ($di->config->get('seed_bonus_enabled')) ? ' ' : '';
$html .= ' '. $lang['USER_RATIO'] .':
+ '. $lang['USER_RATIO'] .':
'. $user_ratio .'
';
break;
diff --git a/library/ajax/manage_admin.php b/library/ajax/manage_admin.php
index 6d22c3c95..63069f346 100644
--- a/library/ajax/manage_admin.php
+++ b/library/ajax/manage_admin.php
@@ -2,7 +2,7 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $userdata, $lang, $bb_cfg;
+global $userdata, $lang;
/** @var \TorrentPier\Di $di */
$di = \TorrentPier\Di::getInstance();
@@ -55,22 +55,22 @@ switch ($mode)
case 'indexer':
- exec("indexer --config {$bb_cfg['sphinx_config_path']} --all --rotate", $result);
+ exec("indexer --config {$di->config->get('sphinx_config_path')} --all --rotate", $result);
- if (!is_file($bb_cfg['sphinx_config_path'].".log"))
+ if (!is_file($di->config->get('sphinx_config_path').".log"))
{
- file_put_contents($bb_cfg['sphinx_config_path'].".log", "####Logger from dimka3210.####".date("H:i:s", TIMENOW)."##############################\r\n\r\n\r\n\r\n", FILE_APPEND);
+ file_put_contents($di->config->get('sphinx_config_path').".log", "####Logger from dimka3210.####".date("H:i:s", TIMENOW)."##############################\r\n\r\n\r\n\r\n", FILE_APPEND);
}
- file_put_contents($bb_cfg['sphinx_config_path'].".log", "##############################".date("H:i:s", TIMENOW)."##############################\r\n", FILE_APPEND);
+ file_put_contents($di->config->get('sphinx_config_path').".log", "##############################".date("H:i:s", TIMENOW)."##############################\r\n", FILE_APPEND);
foreach ($result as $row)
{
- file_put_contents($bb_cfg['sphinx_config_path'].".log", $row."\r\n", FILE_APPEND);
+ file_put_contents($di->config->get('sphinx_config_path').".log", $row."\r\n", FILE_APPEND);
}
- file_put_contents($bb_cfg['sphinx_config_path'].".log", "\r\n", FILE_APPEND);
- file_put_contents($bb_cfg['sphinx_config_path'].".log", "\r\n", FILE_APPEND);
+ file_put_contents($di->config->get('sphinx_config_path').".log", "\r\n", FILE_APPEND);
+ file_put_contents($di->config->get('sphinx_config_path').".log", "\r\n", FILE_APPEND);
$this->response['indexer_html'] = ''. $lang['INDEXER'] .'';
diff --git a/library/ajax/manage_user.php b/library/ajax/manage_user.php
index b1783e083..df31ade5a 100644
--- a/library/ajax/manage_user.php
+++ b/library/ajax/manage_user.php
@@ -2,7 +2,10 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $userdata, $lang, $bb_cfg;
+global $userdata, $lang;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
$mode = (string) $this->request['mode'];
$user_id = $this->request['user_id'];
diff --git a/library/ajax/mod_action.php b/library/ajax/mod_action.php
index 68a158432..b9d7c9d7b 100644
--- a/library/ajax/mod_action.php
+++ b/library/ajax/mod_action.php
@@ -2,7 +2,10 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $userdata, $bb_cfg, $lang, $datastore;
+global $userdata, $lang, $datastore;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
$mode = (string) $this->request['mode'];
@@ -25,7 +28,7 @@ switch ($mode)
change_tor_status($topic_id, $status);
}
- $this->response['status'] = $bb_cfg['tor_icons'][$status];
+ $this->response['status'] = $di->config->get('tor_icons.' . $status);
$this->response['topics'] = $topic_ids;
break;
@@ -48,15 +51,15 @@ switch ($mode)
DB()->query("UPDATE ". BB_TOPICS ." SET topic_title = '$topic_title_sql' WHERE topic_id = $topic_id LIMIT 1");
// Обновление кеша новостей на главной
- $news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id']));
- if (isset($news_forums[$t_data['forum_id']]) && $bb_cfg['show_latest_news'])
+ $news_forums = array_flip(explode(',', $di->config->get('latest_news_forum_id')));
+ if (isset($news_forums[$t_data['forum_id']]) && $di->config->get('show_latest_news'))
{
$datastore->enqueue('latest_news');
$datastore->update('latest_news');
}
- $net_forums = array_flip(explode(',', $bb_cfg['network_news_forum_id']));
- if (isset($net_forums[$t_data['forum_id']]) && $bb_cfg['show_network_news'])
+ $net_forums = array_flip(explode(',', $di->config->get('network_news_forum_id')));
+ if (isset($net_forums[$t_data['forum_id']]) && $di->config->get('show_network_news'))
{
$datastore->enqueue('network_news');
$datastore->update('network_news');
@@ -109,8 +112,8 @@ switch ($mode)
{
$user_reg_ip = decode_ip($profiledata['user_reg_ip']);
$user_last_ip = decode_ip($profiledata['user_last_ip']);
- $reg_ip = ''. $user_reg_ip .'';
- $last_ip = ''. $user_last_ip .'';
+ $reg_ip = ''. $user_reg_ip .'';
+ $last_ip = ''. $user_last_ip .'';
}
$this->response['ip_list_html'] = '
diff --git a/library/ajax/posts.php b/library/ajax/posts.php
index e518f305b..143844e50 100644
--- a/library/ajax/posts.php
+++ b/library/ajax/posts.php
@@ -2,7 +2,10 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $lang, $bb_cfg, $userdata;
+global $lang, $userdata;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
if (!isset($this->request['type']))
{
@@ -138,12 +141,12 @@ switch($this->request['type'])
{
if ($text != $post['post_text'])
{
- if ($bb_cfg['max_smilies'])
+ if ($di->config->get('max_smilies'))
{
- $count_smilies = substr_count(bbcode2html($text), 'request['type'])
{
if ($userdata['user_level'] == USER)
{
- if (TIMENOW - $row['last_post_time'] < $bb_cfg['flood_interval'])
+ if (TIMENOW - $row['last_post_time'] < $di->config->get('flood_interval'))
{
$this->ajax_die($lang['FLOOD_ERROR']);
}
@@ -287,12 +290,12 @@ switch($this->request['type'])
}
}
- if ($bb_cfg['max_smilies'])
+ if ($di->config->get('max_smilies'))
{
- $count_smilies = substr_count(bbcode2html($message), '
'.make_url('sitemap.xml').'';
+ $html .= $lang['SITEMAP_CREATED'].': '.bb_date(TIMENOW, $di->config->get('post_date_format')).' '.$lang['SITEMAP_AVAILABLE'].': '.make_url('sitemap.xml').'';
} else {
$html .= $lang['SITEMAP_NOT_CREATED'];
}
diff --git a/library/ajax/user_register.php b/library/ajax/user_register.php
index 818b95c28..66ec1cde7 100644
--- a/library/ajax/user_register.php
+++ b/library/ajax/user_register.php
@@ -2,7 +2,10 @@
if (!defined('IN_AJAX')) die(basename(__FILE__));
-global $bb_cfg, $lang, $userdata;
+global $lang, $userdata;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
$mode = (string) $this->request['mode'];
diff --git a/library/ajax/view_torrent.php b/library/ajax/view_torrent.php
index f2cd345e9..8373f29d7 100644
--- a/library/ajax/view_torrent.php
+++ b/library/ajax/view_torrent.php
@@ -155,11 +155,14 @@ class torrent
function build_file_item ($name, $length)
{
- global $bb_cfg, $images, $lang;
+ global $images, $lang;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$magnet_name = $magnet_ext = '';
- if ($bb_cfg['magnet_links_enabled'])
+ if ($di->config->get('magnet_links_enabled'))
{
$magnet_name = '
';
$magnet_ext = '
';
diff --git a/library/config.php b/library/config.php
index c2901a69f..3ce4f4827 100644
--- a/library/config.php
+++ b/library/config.php
@@ -110,7 +110,6 @@ $config = [
// Cache
'cache' => [
- 'pconnect' => true,
'db_dir' => realpath(BB_ROOT) .'/internal_data/cache/filecache/',
'prefix' => 'tp_', // Префикс кеша ('tp_')
'memcache' => [
@@ -123,16 +122,6 @@ $config = [
'host' => '127.0.0.1',
'port' => 6379,
'con_required' => true,
- ],
- 'engines' => [
- // Available cache types: memcache, sqlite, redis, apc, xcache (default of filecache)
- # name => array( (string) type, (array) cfg )
- 'bb_cache' => ['filecache', []],
- 'bb_config' => ['filecache', []],
- 'tr_cache' => ['filecache', []],
- 'session_cache' => ['filecache', []],
- 'bb_login_err' => ['filecache', []],
- 'bb_poll_data' => ['filecache', []],
]
],
@@ -205,7 +194,6 @@ $config = [
// Language
'charset' => 'utf8', // page charset
- 'auto_language' => true, // select user-preferred language automatically
'lang' => [
'ru' => [
'name' => 'Русский',
@@ -361,9 +349,9 @@ $config = [
// PM
'privmsg_disable' => false, // отключить систему личных сообщений на форуме
'max_outgoing_pm_cnt' => 10, // ограничение на кол. одновременных исходящих лс (для замедления рассылки спама)
- 'max_inbox_privmsgs' => 200, // максимальное число сообщений в папке входящие
- 'max_savebox_privmsgs' => 25, // максимальное число сообщений в папке сохраненные
- 'max_sentbox_privmsgs' => 50, // максимальное число сообщений в папке отправленные
+ 'max_inbox_privmsgs' => 500, // максимальное число сообщений в папке входящие (удалить)
+ 'max_savebox_privmsgs' => 500, // максимальное число сообщений в папке сохраненные (удалить)
+ 'max_sentbox_privmsgs' => 500, // максимальное число сообщений в папке отправленные (удалить)
'pm_days_keep' => 180, // время хранения ЛС
// Actions log
@@ -523,33 +511,72 @@ $config = [
'0.4' => 1,
'0.5' => 2,
'0.6' => 3,
- ]
+ ],
+
+ // Иконки статусов раздач
+ 'tor_icons' => [
+ TOR_NOT_APPROVED => ' ',
+ TOR_CLOSED => ' ',
+ TOR_APPROVED => ' ',
+ TOR_NEED_EDIT => ' ',
+ TOR_NO_DESC => ' ',
+ TOR_DUP => ' ',
+ TOR_CLOSED_CPHOLD => ' ',
+ TOR_CONSUMED => ' ',
+ TOR_DOUBTFUL => ' ',
+ TOR_CHECKING => ' ',
+ TOR_TMP => ' ',
+ TOR_PREMOD => ' ',
+ ],
+
+ // Запрет на скачивание
+ 'tor_frozen' => [
+ TOR_CHECKING => true,
+ TOR_CLOSED => true,
+ TOR_CLOSED_CPHOLD => true,
+ TOR_CONSUMED => true,
+ TOR_DUP => true,
+ TOR_NO_DESC => true,
+ TOR_PREMOD => true,
+ ],
+
+ // Разрешение на скачку автором, если закрыто на скачивание.
+ 'tor_frozen_author_download' => [
+ TOR_CHECKING => true,
+ TOR_NO_DESC => true,
+ TOR_PREMOD => true,
+ ],
+
+ // Запрет на редактирование головного сообщения
+ 'tor_cannot_edit' => [
+ TOR_CHECKING => true,
+ TOR_CLOSED => true,
+ TOR_CONSUMED => true,
+ TOR_DUP => true,
+ ],
+
+ // Запрет на создание новых раздач если стоит статус недооформлено/неоформлено/сомнительно
+ 'tor_cannot_new' => [TOR_NEED_EDIT, TOR_NO_DESC, TOR_DOUBTFUL],
+
+ // Разрешение на ответ релизера, если раздача исправлена.
+ 'tor_reply' => [TOR_NEED_EDIT, TOR_NO_DESC, TOR_DOUBTFUL],
+
+ // Если такой статус у релиза, то статистика раздачи будет скрыта
+ 'tor_no_tor_act' => [
+ TOR_CLOSED => true,
+ TOR_DUP => true,
+ TOR_CLOSED_CPHOLD => true,
+ TOR_CONSUMED => true,
+ ],
+
+ // Vote graphic length defines the maximum length of a vote result graphic, ie. 100% = this length
+ 'vote_graphic_length' => 205,
+ 'privmsg_graphic_length' => 175,
+ 'topic_left_column_witdh' => 150,
+
+ // Images auto-resize
+ 'post_img_width_decr' => 52,
+ 'attach_img_width_decr' => 130,
];
-if (!empty($_SERVER['HTTP_ACCEPT_LANGUAGE']) && $config['auto_language'])
-{
- $user_lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
- if (file_exists(LANG_ROOT_DIR . $user_lang .'/'))
- {
- $config['default_lang_dir'] = LANG_ROOT_DIR . $user_lang .'/';
- $config['default_lang'] = $user_lang;
- }
- else
- {
- $config['default_lang_dir'] = LANG_ROOT_DIR .'en/';
- $config['default_lang'] = 'en';
- }
-}
-else
-{
- if (isset($config['default_lang']) && file_exists(LANG_ROOT_DIR . $config['default_lang'] .'/'))
- {
- $config['default_lang_dir'] = LANG_ROOT_DIR . $config['default_lang'] .'/';
- }
- else
- {
- $config['default_lang_dir'] = LANG_ROOT_DIR .'en/';
- }
-}
-
return $config;
diff --git a/library/defines.php b/library/defines.php
index 0cf6be440..660029f16 100644
--- a/library/defines.php
+++ b/library/defines.php
@@ -61,4 +61,20 @@ define('CRON_RUNNING', TRIGGERS_DIR .'cron_running');
// Misc
define('MEM_USAGE', function_exists('memory_get_usage'));
-define('GZIP_OUTPUT_ALLOWED', (extension_loaded('zlib') && !ini_get('zlib.output_compression')));
\ No newline at end of file
+// Gzip
+define('GZIP_OUTPUT_ALLOWED', (extension_loaded('zlib') && !ini_get('zlib.output_compression')));
+
+// TODO: temporary, move to another place
+// Torrents (reserved: -1)
+define('TOR_NOT_APPROVED', 0); // не проверено
+define('TOR_CLOSED', 1); // закрыто
+define('TOR_APPROVED', 2); // проверено
+define('TOR_NEED_EDIT', 3); // недооформлено
+define('TOR_NO_DESC', 4); // неоформлено
+define('TOR_DUP', 5); // повтор
+define('TOR_CLOSED_CPHOLD', 6); // закрыто правообладателем
+define('TOR_CONSUMED', 7); // поглощено
+define('TOR_DOUBTFUL', 8); // сомнительно
+define('TOR_CHECKING', 9); // проверяется
+define('TOR_TMP', 10); // временная
+define('TOR_PREMOD', 11); // премодерация
\ No newline at end of file
diff --git a/library/includes/bbcode.php b/library/includes/bbcode.php
index 9c260d7d9..4c23bc89b 100644
--- a/library/includes/bbcode.php
+++ b/library/includes/bbcode.php
@@ -96,7 +96,10 @@ function prepare_message ($message)
// Either in a window or inline
function generate_smilies($mode)
{
- global $bb_cfg, $template, $lang, $datastore;
+ global $template, $lang, $datastore;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$inline_columns = 4;
$inline_rows = 7;
@@ -120,7 +123,6 @@ function generate_smilies($mode)
if ($num_smilies)
{
- $smilies_count = ($mode == 'inline') ? min(19, $num_smilies) : $num_smilies;
$smilies_split_row = ($mode == 'inline') ? $inline_columns - 1 : $window_columns - 1;
$s_colspan = 0;
@@ -136,7 +138,7 @@ function generate_smilies($mode)
$template->assign_block_vars('smilies_row.smilies_col', array(
'SMILEY_CODE' => $data['code'],
- 'SMILEY_IMG' => $bb_cfg['smilies_path'] . '/' . $smile_url,
+ 'SMILEY_IMG' => $di->config->get('smilies_path') . '/' . $smile_url,
'SMILEY_DESC' => $data['emoticon'],
));
@@ -347,11 +349,12 @@ function strip_bbcode ($message, $stripquotes = true, $fast_and_dirty = false, $
function extract_search_words ($text)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
- $max_words_count = $bb_cfg['max_search_words_per_post'];
- $min_word_len = max(2, $bb_cfg['search_min_word_len'] - 1);
- $max_word_len = $bb_cfg['search_max_word_len'];
+ $max_words_count = $di->config->get('max_search_words_per_post');
+ $min_word_len = max(2, $di->config->get('search_min_word_len') - 1);
+ $max_word_len = $di->config->get('search_max_word_len');
$text = ' ' . str_compact(strip_tags(mb_strtolower($text))) . ' ';
$text = str_replace(array('[', ']'), array('[', ']'), $text);
@@ -415,12 +418,13 @@ function replace_synonyms ($text)
function add_search_words ($post_id, $post_message, $topic_title = '', $only_return_words = false)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$text = $topic_title .' '. $post_message;
$words = ($text) ? extract_search_words($text) : array();
- if ($only_return_words || $bb_cfg['sphinx_enabled'])
+ if ($only_return_words || $di->config->get('sphinx_enabled'))
{
return join("\n", $words);
}
@@ -557,7 +561,8 @@ class bbcode
*/
function bbcode2html ($text)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$text = " $text ";
$text = $this->clean_up($text);
@@ -594,7 +599,7 @@ class bbcode
$text = $this->new_line2html($text);
$text = trim($text);
- if ($bb_cfg['tidy_post'])
+ if ($di->config->get('tidy_post'))
{
$text = $this->tidy($text);
}
@@ -627,7 +632,9 @@ class bbcode
*/
private function spam_filter ($text)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
static $spam_words = null;
static $spam_replace = ' СПАМ';
@@ -637,21 +644,19 @@ class bbcode
}
// set $spam_words and $spam_replace
- if (!$bb_cfg['spam_filter_file_path'])
+ if (!$di->config->get('spam_filter_file_path'))
{
return $text;
}
if (is_null($spam_words))
{
- $spam_words = file_get_contents($bb_cfg['spam_filter_file_path']);
+ $spam_words = file_get_contents($di->config->get('spam_filter_file_path'));
$spam_words = strtolower($spam_words);
$spam_words = explode("\n", $spam_words);
}
$found_spam = array();
- $tm_start = utime();
-
$msg_decoded = $text;
$msg_decoded = html_entity_decode($msg_decoded);
$msg_decoded = urldecode($msg_decoded);
@@ -681,7 +686,6 @@ class bbcode
$text = preg_replace("/($spam_exp)(\S*)/i", $spam_replace, $msg_decoded);
$text = htmlCHR($text, false, ENT_NOQUOTES);
-# bb_log(date("H:i:s") ." | ". sprintf('%.4f', (utime() - $tm_start)) ." | ". sprintf('%-6s', strlen($text)) ." | ". join(' ** ', $found_spam) ."\n", 'spam_filter');
}
return $text;
@@ -713,14 +717,15 @@ class bbcode
*/
function url_callback ($m)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$url = trim($m[1]);
$url_name = (isset($m[2])) ? trim($m[2]) : $url;
if (!preg_match("#^https?://#isu", $url) && !preg_match("/^#/", $url)) $url = 'http://' . $url;
- if (in_array(parse_url($url, PHP_URL_HOST), $bb_cfg['nofollow']['allowed_url']) || $bb_cfg['nofollow']['disabled'])
+ if (in_array(parse_url($url, PHP_URL_HOST), $di->config->get('nofollow.allowed_url')) || $di->config->get('nofollow.disabled'))
{
$link = "$url_name";
}
@@ -791,13 +796,14 @@ class bbcode
*/
function make_url_clickable_callback ($m)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$max_len = 70;
$href = $m[1];
$name = (mb_strlen($href, 'UTF-8') > $max_len) ? mb_substr($href, 0, $max_len - 19) .'...'. mb_substr($href, -16) : $href;
- if (in_array(parse_url($href, PHP_URL_HOST), $bb_cfg['nofollow']['allowed_url']) || $bb_cfg['nofollow']['disabled'])
+ if (in_array(parse_url($href, PHP_URL_HOST), $di->config->get('nofollow.allowed_url')) || $di->config->get('nofollow.disabled'))
{
$link = "$name";
}
@@ -972,15 +978,18 @@ function get_words_rate ($text)
function hide_passkey ($str)
{
- global $bb_cfg;
- return preg_replace("#\?{$bb_cfg['passkey_key']}=[a-zA-Z0-9]{". BT_AUTH_KEY_LENGTH ."}#", "?{$bb_cfg['passkey_key']}=passkey", $str);
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ return preg_replace("#\?{$di->config->get('passkey_key')}=[a-zA-Z0-9]{". BT_AUTH_KEY_LENGTH ."}#", "?{$di->config->get('passkey_key')}=passkey", $str);
}
function get_parsed_post ($postrow, $mode = 'full', $return_chars = 600)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
- if ($bb_cfg['use_posts_cache'] && !empty($postrow['post_html']))
+ if ($di->config->get('use_posts_cache') && !empty($postrow['post_html']))
{
return $postrow['post_html'];
}
@@ -988,7 +997,7 @@ function get_parsed_post ($postrow, $mode = 'full', $return_chars = 600)
$message = bbcode2html($postrow['post_text']);
// Posts cache
- if ($bb_cfg['use_posts_cache'])
+ if ($di->config->get('use_posts_cache'))
{
DB()->shutdown['post_html'][] = array(
'post_id' => (int) $postrow['post_id'],
@@ -1002,4 +1011,4 @@ function get_parsed_post ($postrow, $mode = 'full', $return_chars = 600)
function update_post_html ($postrow)
{
DB()->query("DELETE FROM ". BB_POSTS_HTML ." WHERE post_id = ". (int) $postrow['post_id'] ." LIMIT 1");
-}
\ No newline at end of file
+}
diff --git a/library/includes/classes/emailer.php b/library/includes/classes/emailer.php
index a2f6dab67..86d750938 100644
--- a/library/includes/classes/emailer.php
+++ b/library/includes/classes/emailer.php
@@ -15,26 +15,24 @@ class emailer
function emailer ($use_smtp/*$tpl_name, $sbj, $to_address*/)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$this->reset();
- $this->from = $bb_cfg['board_email'];
- $this->reply_to = $bb_cfg['board_email'];
- $this->use_smtp = $use_smtp; /*!empty($bb_cfg['smtp_host']);
-
- $this->use_template($tpl_name);
- $this->set_subject($sbj);
- $this->email_address($to_address);*/
+ $this->from = $di->config->get('board_email');
+ $this->reply_to = $di->config->get('board_email');
+ $this->use_smtp = $use_smtp;
}
function set_default_vars ()
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$this->vars = array(
- 'BOARD_EMAIL' => $bb_cfg['board_email'],
- 'SITENAME' => $bb_cfg['board_email_sitename'],
- 'EMAIL_SIG' => !empty($bb_cfg['board_email_sig']) ? "-- \n{$bb_cfg['board_email_sig']}" : '',
+ 'BOARD_EMAIL' => $di->config->get('board_email'),
+ 'SITENAME' => $di->config->get('board_email_sitename'),
+ 'EMAIL_SIG' => !empty($di->config->get('board_email_sig')) ? "-- \n{$di->config->get('board_email_sig')}" : '',
);
}
@@ -86,7 +84,8 @@ class emailer
function use_template ($template_file, $template_lang = '')
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (trim($template_file) == '')
{
@@ -95,7 +94,7 @@ class emailer
if (trim($template_lang) == '')
{
- $template_lang = $bb_cfg['default_lang'];
+ $template_lang = $di->config->get('default_lang');
}
if (empty($this->tpl_msg[$template_lang . $template_file]))
@@ -104,7 +103,7 @@ class emailer
if (!file_exists(bb_realpath($tpl_file)))
{
- $tpl_file = LANG_ROOT_DIR ."{$bb_cfg['default_lang']}/email/$template_file.html";
+ $tpl_file = LANG_ROOT_DIR ."{$di->config->get('default_lang')}/email/$template_file.html";
if (!file_exists(bb_realpath($tpl_file)))
{
@@ -135,9 +134,12 @@ class emailer
// Send the mail out to the recipients set previously in var $this->address
function send ($email_format = 'text')
{
- global $bb_cfg, $userdata;
+ global $userdata;
- if ($bb_cfg['emailer_disabled'])
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ if ($di->config->get('emailer_disabled'))
{
return false;
}
@@ -178,12 +180,12 @@ class emailer
if (preg_match('#^(Charset:(.*?))$#m', $this->msg, $match))
{
- $this->encoding = (trim($match[2]) != '') ? trim($match[2]) : trim($bb_cfg['lang'][$userdata['user_lang']]['encoding']);
+ $this->encoding = (trim($match[2]) != '') ? trim($match[2]) : trim($di->config->get('lang.' . $userdata['user_lang'] . '.encoding'));
$drop_header .= '[\r\n]*?' . preg_quote($match[1], '#');
}
else
{
- $this->encoding = trim($bb_cfg['lang'][$userdata['user_lang']]['encoding']);
+ $this->encoding = trim($di->config->get('lang.' . $userdata['user_lang'] . '.encoding'));
}
$this->subject = $this->encode($this->subject);
@@ -199,7 +201,7 @@ class emailer
// Build header
$type = ($email_format == 'html') ? 'html' : 'plain';
- $this->extra_headers = (($this->reply_to != '') ? "Reply-to: $this->reply_to\n" : '') . (($this->from != '') ? "From: $this->from\n" : "From: " . $bb_cfg['board_email'] . "\n") . "Return-Path: " . $bb_cfg['board_email'] . "\nMessage-ID: <" . md5(uniqid(TIMENOW)) . "@" . $bb_cfg['server_name'] . ">\nMIME-Version: 1.0\nContent-type: text/$type; charset=" . $this->encoding . "\nContent-transfer-encoding: 8bit\nDate: " . date('r', TIMENOW) . "\nX-Priority: 0\nX-MSMail-Priority: Normal\nX-Mailer: Microsoft Office Outlook, Build 11.0.5510\nX-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441\nX-Sender: " . $bb_cfg['board_email'] . "\n" . $this->extra_headers . (($cc != '') ? "Cc: $cc\n" : '') . (($bcc != '') ? "Bcc: $bcc\n" : '');
+ $this->extra_headers = (($this->reply_to != '') ? "Reply-to: $this->reply_to\n" : '') . (($this->from != '') ? "From: $this->from\n" : "From: " . $di->config->get('board_email') . "\n") . "Return-Path: " . $di->config->get('board_email') . "\nMessage-ID: <" . md5(uniqid(TIMENOW)) . "@" . $di->config->get('server_name') . ">\nMIME-Version: 1.0\nContent-type: text/$type; charset=" . $this->encoding . "\nContent-transfer-encoding: 8bit\nDate: " . date('r', TIMENOW) . "\nX-Priority: 0\nX-MSMail-Priority: Normal\nX-Mailer: Microsoft Office Outlook, Build 11.0.5510\nX-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441\nX-Sender: " . $di->config->get('board_email') . "\n" . $this->extra_headers . (($cc != '') ? "Cc: $cc\n" : '') . (($bcc != '') ? "Bcc: $bcc\n" : '');
// Send message
if ($this->use_smtp)
diff --git a/library/includes/classes/sitemap.php b/library/includes/classes/sitemap.php
index dbe56862a..e59f522e3 100644
--- a/library/includes/classes/sitemap.php
+++ b/library/includes/classes/sitemap.php
@@ -120,14 +120,15 @@ class sitemap
}
function get_static () {
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$xml = '';
$lm = date('c');
$this->priority = $this->stat_priority;
- if (isset($bb_cfg['static_sitemap'])) {
- $static_url = preg_replace("/\s/", '', $bb_cfg['static_sitemap']); //вырезаем переносы строк
+ if ($di->config->get('static_sitemap')) {
+ $static_url = preg_replace("/\s/", '', $di->config->get('static_sitemap')); //вырезаем переносы строк
preg_match_all('#(https?://[\w-]+[\.\w-]+/((?!https?://)[\w- ./?%&=])+)#', $static_url, $out);
$static_url = count($out['0']);
diff --git a/library/includes/cron/jobs/board_maintenance.php b/library/includes/cron/jobs/board_maintenance.php
index fb14a1b16..dc7bae484 100644
--- a/library/includes/cron/jobs/board_maintenance.php
+++ b/library/includes/cron/jobs/board_maintenance.php
@@ -2,6 +2,9 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
require_once(INC_DIR .'functions_admin.php');
// Синхронизация
@@ -10,7 +13,7 @@ sync('user_posts', 'all');
sync_all_forums();
// Чистка bb_poll_users
-if ($poll_max_days = (int) $bb_cfg['poll_max_days'])
+if ($poll_max_days = (int) $di->config->get('poll_max_days'))
{
$per_cycle = 20000;
$row = DB()->fetch_row("SELECT MIN(topic_id) AS start_id, MAX(topic_id) AS finish_id FROM ". BB_POLL_USERS);
@@ -43,7 +46,7 @@ if ($poll_max_days = (int) $bb_cfg['poll_max_days'])
DB()->query("UPDATE ". BB_USERS ." SET user_newpasswd = '' WHERE user_lastvisit < ". (TIMENOW - 7*86400));
// Чистка кеша постов
-if ($posts_days = intval($bb_cfg['posts_cache_days_keep']))
+if ($posts_days = intval($di->config->get('posts_cache_days_keep')))
{
DB()->query("DELETE FROM ". BB_POSTS_HTML ." WHERE post_html_time < DATE_SUB(NOW(), INTERVAL $posts_days DAY)");
}
\ No newline at end of file
diff --git a/library/includes/cron/jobs/clean_dlstat.php b/library/includes/cron/jobs/clean_dlstat.php
index 5c19c66dc..6e0698cc2 100644
--- a/library/includes/cron/jobs/clean_dlstat.php
+++ b/library/includes/cron/jobs/clean_dlstat.php
@@ -2,12 +2,15 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
// Delete staled dl-status records
$keeping_dlstat = array(
- DL_STATUS_WILL => (int) $bb_cfg['dl_will_days_keep'],
- DL_STATUS_DOWN => (int) $bb_cfg['dl_down_days_keep'],
- DL_STATUS_COMPLETE => (int) $bb_cfg['dl_complete_days_keep'],
- DL_STATUS_CANCEL => (int) $bb_cfg['dl_cancel_days_keep'],
+ DL_STATUS_WILL => (int) $di->config->get('dl_will_days_keep'),
+ DL_STATUS_DOWN => (int) $di->config->get('dl_down_days_keep'),
+ DL_STATUS_COMPLETE => (int) $di->config->get('dl_complete_days_keep'),
+ DL_STATUS_CANCEL => (int) $di->config->get('dl_cancel_days_keep'),
);
$delete_dlstat_sql = array();
@@ -45,7 +48,7 @@ DB()->query("
");
// Tor-Stats cleanup
-if ($torstat_days_keep = intval($bb_cfg['torstat_days_keep']))
+if ($torstat_days_keep = intval($di->config->get('torstat_days_keep')))
{
DB()->query("DELETE QUICK FROM ". BB_BT_TORSTAT ." WHERE last_modified_torstat < DATE_SUB(NOW(), INTERVAL $torstat_days_keep DAY)");
}
diff --git a/library/includes/cron/jobs/clean_log.php b/library/includes/cron/jobs/clean_log.php
index 9fb3455e0..96ef50020 100644
--- a/library/includes/cron/jobs/clean_log.php
+++ b/library/includes/cron/jobs/clean_log.php
@@ -2,7 +2,10 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-$log_days_keep = (int) $bb_cfg['log_days_keep'];
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
+$log_days_keep = (int) $di->config->get('log_days_keep');
DB()->query("
DELETE FROM ". BB_LOG ."
diff --git a/library/includes/cron/jobs/prune_forums.php b/library/includes/cron/jobs/prune_forums.php
index 303b7ff4a..3b5e48e82 100644
--- a/library/includes/cron/jobs/prune_forums.php
+++ b/library/includes/cron/jobs/prune_forums.php
@@ -2,9 +2,12 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
require_once(INC_DIR .'functions_admin.php');
-if ($bb_cfg['prune_enable'])
+if ($di->config->get('prune_enable'))
{
$sql = "SELECT forum_id, prune_days FROM ". BB_FORUMS ." WHERE prune_days != 0";
diff --git a/library/includes/cron/jobs/prune_inactive_users.php b/library/includes/cron/jobs/prune_inactive_users.php
index 6634856a1..c763d8c15 100644
--- a/library/includes/cron/jobs/prune_inactive_users.php
+++ b/library/includes/cron/jobs/prune_inactive_users.php
@@ -2,6 +2,9 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
require_once(INC_DIR .'functions_admin.php');
$users_per_cycle = 1000;
@@ -12,7 +15,7 @@ while (true)
$prune_users = $not_activated_users = $not_active_users = array();
- if ($not_activated_days = intval($bb_cfg['user_not_activated_days_keep']))
+ if ($not_activated_days = intval($di->config->get('user_not_activated_days_keep')))
{
$sql = DB()->fetch_rowset("SELECT user_id FROM ". BB_USERS ."
WHERE user_level = 0
@@ -28,7 +31,7 @@ while (true)
}
}
- if ($not_active_days = intval($bb_cfg['user_not_active_days_keep']))
+ if ($not_active_days = intval($di->config->get('user_not_active_days_keep')))
{
$sql = DB()->fetch_rowset("SELECT user_id FROM ". BB_USERS ."
WHERE user_level = 0
diff --git a/library/includes/cron/jobs/prune_topic_moved.php b/library/includes/cron/jobs/prune_topic_moved.php
index 4624718a2..519540ac3 100644
--- a/library/includes/cron/jobs/prune_topic_moved.php
+++ b/library/includes/cron/jobs/prune_topic_moved.php
@@ -2,9 +2,12 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-if ($bb_cfg['topic_moved_days_keep'])
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
+if ($di->config->get('topic_moved_days_keep'))
{
- $prune_time = TIMENOW - 86400*$bb_cfg['topic_moved_days_keep'];
+ $prune_time = TIMENOW - 86400*$di->config->get('topic_moved_days_keep');
DB()->query("
DELETE FROM ". BB_TOPICS ."
diff --git a/library/includes/cron/jobs/sessions_cleanup.php b/library/includes/cron/jobs/sessions_cleanup.php
index 81ea0c841..ff76d0a12 100644
--- a/library/includes/cron/jobs/sessions_cleanup.php
+++ b/library/includes/cron/jobs/sessions_cleanup.php
@@ -2,10 +2,13 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-$user_session_expire_time = TIMENOW - intval($bb_cfg['user_session_duration']);
-$admin_session_expire_time = TIMENOW - intval($bb_cfg['admin_session_duration']);
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
-$user_session_gc_time = $user_session_expire_time - intval($bb_cfg['user_session_gc_ttl']);
+$user_session_expire_time = TIMENOW - intval($di->config->get('user_session_duration'));
+$admin_session_expire_time = TIMENOW - intval($di->config->get('admin_session_duration'));
+
+$user_session_gc_time = $user_session_expire_time - intval($di->config->get('user_session_gc_ttl'));
$admin_session_gc_time = $admin_session_expire_time;
// ############################ Tables LOCKED ################################
diff --git a/library/includes/cron/jobs/tr_cleanup_and_dlstat.php b/library/includes/cron/jobs/tr_cleanup_and_dlstat.php
index d27e11905..2c36ef4ad 100644
--- a/library/includes/cron/jobs/tr_cleanup_and_dlstat.php
+++ b/library/includes/cron/jobs/tr_cleanup_and_dlstat.php
@@ -2,6 +2,9 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
$releaser = DL_STATUS_RELEASER;
define('NEW_BB_BT_LAST_TORSTAT', 'new_bt_last_torstat');
@@ -58,7 +61,7 @@ DB()->query("
// Clean peers table
if ($tr_cfg['autoclean'])
{
- $announce_interval = max(intval($bb_cfg['announce_interval']), 60);
+ $announce_interval = max(intval($di->config->get('announce_interval')), 60);
$expire_factor = max(floatval($tr_cfg['expire_factor']), 1);
$peer_expire_time = TIMENOW - floor($announce_interval * $expire_factor);
@@ -94,7 +97,7 @@ if ($tr_cfg['update_dlstat'])
// Update TOTAL user's dlstat
// This is not needed if Ocelot enabled. It's important.
- if (!$bb_cfg['ocelot']['enabled'])
+ if (!$di->config->get('ocelot.enabled'))
{
DB()->query("
UPDATE
diff --git a/library/includes/cron/jobs/tr_complete_count.php b/library/includes/cron/jobs/tr_complete_count.php
index 66230187e..abd2361a5 100644
--- a/library/includes/cron/jobs/tr_complete_count.php
+++ b/library/includes/cron/jobs/tr_complete_count.php
@@ -2,9 +2,10 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bb_cfg;
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
-if ($bb_cfg['ocelot']['enabled'])
+if ($di->config->get('ocelot.enabled'))
{
// Update TORRENT "completed" counters
DB()->query("
diff --git a/library/includes/cron/jobs/tr_maintenance.php b/library/includes/cron/jobs/tr_maintenance.php
index 05644fe81..c7e864edc 100644
--- a/library/includes/cron/jobs/tr_maintenance.php
+++ b/library/includes/cron/jobs/tr_maintenance.php
@@ -2,13 +2,16 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-if (empty($bb_cfg['seeder_last_seen_days_keep']) || empty($bb_cfg['seeder_never_seen_days_keep']))
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
+if (empty($di->config->get('seeder_last_seen_days_keep')) || empty($di->config->get('seeder_never_seen_days_keep')))
{
return;
}
-$last_seen_time = TIMENOW - 86400*$bb_cfg['seeder_last_seen_days_keep'];
-$never_seen_time = TIMENOW - 86400*$bb_cfg['seeder_never_seen_days_keep'];
+$last_seen_time = TIMENOW - 86400*$di->config->get('seeder_last_seen_days_keep');
+$never_seen_time = TIMENOW - 86400*$di->config->get('seeder_never_seen_days_keep');
$limit_sql = 3000;
$topics_sql = [];
diff --git a/library/includes/cron/jobs/tr_make_snapshot.php b/library/includes/cron/jobs/tr_make_snapshot.php
index 7f5041188..5302ae906 100644
--- a/library/includes/cron/jobs/tr_make_snapshot.php
+++ b/library/includes/cron/jobs/tr_make_snapshot.php
@@ -2,14 +2,15 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bb_cfg;
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
DB()->expect_slow_query(600);
//
// Make tracker snapshot
//
-if (!$bb_cfg['ocelot']['enabled'])
+if (!$di->config->get('ocelot.enabled'))
{
define('NEW_BB_BT_TRACKER_SNAP', 'new_tracker_snap');
define('OLD_BB_BT_TRACKER_SNAP', 'old_tracker_snap');
@@ -30,7 +31,7 @@ while (true)
$val = array();
- if (!$bb_cfg['ocelot']['enabled'])
+ if (!$di->config->get('ocelot.enabled'))
{
$sql = "
SELECT
@@ -59,7 +60,7 @@ while (true)
if ($val)
{
- if (!$bb_cfg['ocelot']['enabled'])
+ if (!$di->config->get('ocelot.enabled'))
{
DB()->query("
REPLACE INTO " . NEW_BB_BT_TRACKER_SNAP . "
@@ -91,7 +92,7 @@ while (true)
$start_id += $per_cycle;
}
-if (!$bb_cfg['ocelot']['enabled'])
+if (!$di->config->get('ocelot.enabled'))
{
DB()->query("
RENAME TABLE
@@ -112,7 +113,7 @@ DB()->query("DROP TABLE IF EXISTS ". NEW_BB_BT_DLSTATUS_SNAP .", ". OLD_BB_BT_DL
DB()->query("CREATE TABLE ". NEW_BB_BT_DLSTATUS_SNAP ." LIKE ". BB_BT_DLSTATUS_SNAP);
-if ($bb_cfg['bt_show_dl_list'] && $bb_cfg['bt_dl_list_only_count'])
+if ($di->config->get('bt_show_dl_list') && $di->config->get('bt_dl_list_only_count'))
{
DB()->query("
INSERT INTO ". NEW_BB_BT_DLSTATUS_SNAP ."
@@ -136,7 +137,7 @@ DB()->query("DROP TABLE IF EXISTS ". NEW_BB_BT_DLSTATUS_SNAP .", ". OLD_BB_BT_DL
//
// TORHELP
//
-if ($bb_cfg['torhelp_enabled'])
+if ($di->config->get('torhelp_enabled'))
{
$tor_min_seeders = 0; // "<="
$tor_min_leechers = 2; // ">="
@@ -182,7 +183,7 @@ if ($bb_cfg['torhelp_enabled'])
WHERE
trsn.seeders <= $tor_min_seeders
AND trsn.leechers >= $tor_min_leechers
- AND tor.forum_id != ". (int) $bb_cfg['trash_forum_id'] ."
+ AND tor.forum_id != ". (int) $di->config->get('trash_forum_id') ."
AND tor.complete_count >= $tor_min_completed
AND tor.seeder_last_seen <= (UNIX_TIMESTAMP() - $tor_seed_last_seen_days*86400)
AND dl.user_id IN($online_users_csv)
diff --git a/library/includes/cron/jobs/tr_seed_bonus.php b/library/includes/cron/jobs/tr_seed_bonus.php
index 862adca9c..ef9b61768 100644
--- a/library/includes/cron/jobs/tr_seed_bonus.php
+++ b/library/includes/cron/jobs/tr_seed_bonus.php
@@ -2,9 +2,12 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
DB()->expect_slow_query(600);
-if ($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['seed_bonus_release'])
+if ($di->config->get('seed_bonus_enabled') && $di->config->get('seed_bonus_points') && $di->config->get('seed_bonus_release'))
{
DB()->query("
CREATE TEMPORARY TABLE tmp_bonus (
@@ -13,7 +16,7 @@ if ($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['se
) ENGINE = MEMORY
");
- $tor_size = ($bb_cfg['seed_bonus_tor_size'] * 1073741824);
+ $tor_size = ($di->config->get('seed_bonus_tor_size') * 1073741824);
DB()->query("INSERT INTO tmp_bonus
SELECT bt.user_id, count(bt.seeder) AS release_count
@@ -24,8 +27,8 @@ if ($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['se
GROUP BY user_id
");
- $seed_bonus = unserialize($bb_cfg['seed_bonus_points']);
- $seed_release = unserialize($bb_cfg['seed_bonus_release']);
+ $seed_bonus = unserialize($di->config->get('seed_bonus_points'));
+ $seed_release = unserialize($di->config->get('seed_bonus_release'));
foreach($seed_bonus as $i => $points)
{
@@ -33,7 +36,7 @@ if ($bb_cfg['seed_bonus_enabled'] && $bb_cfg['seed_bonus_points'] && $bb_cfg['se
$user_points = ((float) $points / 4);
$release = (int) $seed_release[$i];
- $user_regdate = (TIMENOW - $bb_cfg['seed_bonus_user_regdate'] * 86400);
+ $user_regdate = (TIMENOW - $di->config->get('seed_bonus_user_regdate') * 86400);
DB()->query("
UPDATE ". BB_USERS ." u, ". BB_BT_USERS ." bu, tmp_bonus b
diff --git a/library/includes/cron/jobs/update_forums_atom.php b/library/includes/cron/jobs/update_forums_atom.php
index a37875b90..302f0b135 100644
--- a/library/includes/cron/jobs/update_forums_atom.php
+++ b/library/includes/cron/jobs/update_forums_atom.php
@@ -2,16 +2,17 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bb_cfg;
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
require_once(INC_DIR .'functions_atom.php');
$timecheck = TIMENOW - 600;
$forums_data = DB()->fetch_rowset("SELECT forum_id, allow_reg_tracker, forum_name FROM ". BB_FORUMS);
-if (file_exists($bb_cfg['atom']['path'] .'/f/0.atom'))
+if (file_exists($di->config->get('atom.path') .'/f/0.atom'))
{
- if (filemtime($bb_cfg['atom']['path'] .'/f/0.atom') <= $timecheck) update_forum_feed(0, $forums_data);
+ if (filemtime($di->config->get('atom.path') .'/f/0.atom') <= $timecheck) update_forum_feed(0, $forums_data);
}
else
{
@@ -20,9 +21,9 @@ else
foreach ($forums_data as $forum_data)
{
- if (file_exists($bb_cfg['atom']['path'] .'/f/'. $forum_data['forum_id'] .'.atom'))
+ if (file_exists($di->config->get('atom.path') .'/f/'. $forum_data['forum_id'] .'.atom'))
{
- if (filemtime($bb_cfg['atom']['path'] .'/f/'. $forum_data['forum_id'] .'.atom') <= $timecheck) update_forum_feed($forum_data['forum_id'], $forum_data);
+ if (filemtime($di->config->get('atom.path') .'/f/'. $forum_data['forum_id'] .'.atom') <= $timecheck) update_forum_feed($forum_data['forum_id'], $forum_data);
}
else
{
diff --git a/library/includes/datastore/build_cat_forums.php b/library/includes/datastore/build_cat_forums.php
index 32d9d5dfe..8bb770595 100644
--- a/library/includes/datastore/build_cat_forums.php
+++ b/library/includes/datastore/build_cat_forums.php
@@ -2,7 +2,10 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bf, $bb_cfg;
+global $bf;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
//
// cat_forums
@@ -128,9 +131,9 @@ $this->store('viewtopic_forum_select', $data);
//
// latest_news
//
-if ($bb_cfg['show_latest_news'] && ($news_forum_ids = $bb_cfg['latest_news_forum_id']))
+if ($di->config->get('show_latest_news') && ($news_forum_ids = $di->config->get('latest_news_forum_id')))
{
- $news_count = max($bb_cfg['latest_news_count'], 1);
+ $news_count = max($di->config->get('latest_news_count'), 1);
$data = DB()->fetch_rowset("
SELECT topic_id, topic_time, topic_title, forum_id
@@ -147,9 +150,9 @@ if ($bb_cfg['show_latest_news'] && ($news_forum_ids = $bb_cfg['latest_news_forum
//
// Network_news
//
-if ($bb_cfg['show_network_news'] && ($net_forum_ids = $bb_cfg['network_news_forum_id']))
+if ($di->config->get('show_network_news') && ($net_forum_ids = $di->config->get('network_news_forum_id')))
{
- $net_count = max($bb_cfg['network_news_count'], 1);
+ $net_count = max($di->config->get('network_news_count'), 1);
$data = DB()->fetch_rowset("
SELECT topic_id, topic_time, topic_title, forum_id
diff --git a/library/includes/datastore/build_smilies.php b/library/includes/datastore/build_smilies.php
index 01d9ad6a3..23d6e40b0 100644
--- a/library/includes/datastore/build_smilies.php
+++ b/library/includes/datastore/build_smilies.php
@@ -2,9 +2,10 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bb_cfg;
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
-$smilies = array();
+$smilies = [];
$rowset = DB()->fetch_rowset("SELECT * FROM ". BB_SMILIES);
sort($rowset);
@@ -12,7 +13,7 @@ sort($rowset);
foreach ($rowset as $smile)
{
$smilies['orig'][] = '#(?<=^|\W)'. preg_quote($smile['code'], '#') .'(?=$|\W)#';
- $smilies['repl'][] = '
';
+ $smilies['repl'][] = '
';
$smilies['smile'][] = $smile;
}
diff --git a/library/includes/datastore/build_stats.php b/library/includes/datastore/build_stats.php
index 4750aaa04..6efac6284 100644
--- a/library/includes/datastore/build_stats.php
+++ b/library/includes/datastore/build_stats.php
@@ -2,9 +2,10 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bb_cfg;
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
-$data = array();
+$data = [];
// usercount
$row = DB()->fetch_row("SELECT COUNT(*) AS usercount FROM ". BB_USERS ." WHERE user_id NOT IN(". EXCLUDED_USERS .")");
@@ -20,7 +21,7 @@ $data['postcount'] = commify($row['postcount']);
$data['topiccount'] = commify($row['topiccount']);
// Tracker stats
-if ($bb_cfg['tor_stats'])
+if ($di->config->get('tor_stats'))
{
// torrents stat
$row = DB()->fetch_row("SELECT COUNT(topic_id) AS torrentcount, SUM(size) AS size FROM ". BB_BT_TORRENTS);
@@ -36,7 +37,7 @@ if ($bb_cfg['tor_stats'])
}
// gender stat
-if ($bb_cfg['gender'])
+if ($di->config->get('gender'))
{
$male = DB()->fetch_row("SELECT COUNT(user_id) AS male FROM ". BB_USERS ." WHERE user_gender = ". MALE ." AND user_id NOT IN(". EXCLUDED_USERS .")");
$female = DB()->fetch_row("SELECT COUNT(user_id) AS female FROM ". BB_USERS ." WHERE user_gender = ". FEMALE ." AND user_id NOT IN(". EXCLUDED_USERS .")");
@@ -48,7 +49,7 @@ if ($bb_cfg['gender'])
}
// birthday stat
-if ($bb_cfg['birthday_check_day'] && $bb_cfg['birthday_enabled'])
+if ($di->config->get('birthday_check_day') && $di->config->get('birthday_enabled'))
{
$sql = DB()->fetch_rowset("SELECT user_id, username, user_rank , user_birthday
FROM ". BB_USERS ."
@@ -59,7 +60,7 @@ if ($bb_cfg['birthday_check_day'] && $bb_cfg['birthday_enabled'])
");
$date_today = bb_date(TIMENOW, 'md', false);
- $date_forward = bb_date(TIMENOW + ($bb_cfg['birthday_check_day']*86400), 'md', false);
+ $date_forward = bb_date(TIMENOW + ($di->config->get('birthday_check_day')*86400), 'md', false);
$birthday_today_list = $birthday_week_list = array();
diff --git a/library/includes/functions.php b/library/includes/functions.php
index 9e7c0c5ec..730987369 100644
--- a/library/includes/functions.php
+++ b/library/includes/functions.php
@@ -4,22 +4,31 @@ if (!defined('BB_ROOT')) die(basename(__FILE__));
function get_path_from_id ($id, $ext_id, $base_path, $first_div, $sec_div)
{
- global $bb_cfg;
- $ext = isset($bb_cfg['file_id_ext'][$ext_id]) ? $bb_cfg['file_id_ext'][$ext_id] : '';
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ $ext = $di->config->get('file_id_ext.' . $ext_id) ? $di->config->get('file_id_ext.' . $ext_id) : '';
+
return ($base_path ? "$base_path/" : '') . floor($id/$first_div) .'/'. ($id % $sec_div) .'/'. $id . ($ext ? ".$ext" : '');
}
function get_avatar_path ($id, $ext_id, $base_path = null, $first_div = 10000, $sec_div = 100)
{
- global $bb_cfg;
- $base_path = isset($base_path) ? $base_path : $bb_cfg['avatars']['upload_path'];
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ $base_path = isset($base_path) ? $base_path : $di->config->get('avatars.upload_path');
+
return get_path_from_id($id, $ext_id, $base_path, $first_div, $sec_div);
}
function get_attach_path ($id, $ext_id = '', $base_path = null, $first_div = 10000, $sec_div = 100)
{
- global $bb_cfg;
- $base_path = isset($base_path) ? $base_path : $bb_cfg['attach']['upload_path'];
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ $base_path = isset($base_path) ? $base_path : $di->config->get('attach.upload_path');
+
return get_path_from_id($id, $ext_id, $base_path, $first_div, $sec_div);
}
@@ -706,16 +715,6 @@ class html_common
return '';
}
-
-# function build_option ($opt_name, $opt_val, $selected = null, $max_length = false)
-# {
-# return "\t\t\n";
-# }
-
-# function build_optgroup ($label, $contents, $max_length = false)
-# {
-# return "\t\n";
-# }
}
function build_select ($name, $params, $selected = null, $max_length = HTML_SELECT_MAX_LENGTH, $multiple_size = null, $js = '')
@@ -897,7 +896,8 @@ function humn_size ($size, $rounder = null, $min = null, $space = ' ')
function bt_show_ip ($ip, $port = '')
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (IS_AM)
{
@@ -907,13 +907,14 @@ function bt_show_ip ($ip, $port = '')
}
else
{
- return ($bb_cfg['bt_show_ip_only_moder']) ? false : decode_ip_xx($ip);
+ return ($di->config->get('bt_show_ip_only_moder')) ? false : decode_ip_xx($ip);
}
}
function bt_show_port ($port)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (IS_AM)
{
@@ -921,7 +922,7 @@ function bt_show_port ($port)
}
else
{
- return ($bb_cfg['bt_show_port_only_moder']) ? false : $port;
+ return ($di->config->get('bt_show_port_only_moder')) ? false : $port;
}
}
@@ -1479,15 +1480,18 @@ function get_forum_select ($mode = 'guest', $name = POST_FORUM_URL, $selected =
function setup_style ()
{
- global $bb_cfg, $template, $userdata;
+ global $template, $userdata;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
// AdminCP works only with default template
- $tpl_dir_name = defined('IN_ADMIN') ? 'default' : basename($bb_cfg['tpl_name']);
- $stylesheet = defined('IN_ADMIN') ? 'main.css' : basename($bb_cfg['stylesheet']);
+ $tpl_dir_name = defined('IN_ADMIN') ? 'default' : basename($di->config->get('tpl_name'));
+ $stylesheet = defined('IN_ADMIN') ? 'main.css' : basename($di->config->get('stylesheet'));
if (!IS_GUEST && !empty($userdata['tpl_name']))
{
- foreach ($bb_cfg['templates'] as $folder => $name)
+ foreach ($di->config->get('templates') as $folder => $name)
{
if ($userdata['tpl_name'] == $folder) $tpl_dir_name = basename($userdata['tpl_name']);
}
@@ -1500,7 +1504,7 @@ function setup_style ()
'BB_ROOT' => BB_ROOT,
'SPACER' => make_url('styles/images/spacer.gif'),
'STYLESHEET' => make_url($css_dir . $stylesheet),
- 'EXT_LINK_NEW_WIN' => $bb_cfg['ext_link_new_win'],
+ 'EXT_LINK_NEW_WIN' => $di->config->get('ext_link_new_win'),
'TPL_DIR' => make_url($css_dir),
'SITE_URL' => make_url('/'),
));
@@ -1515,14 +1519,17 @@ function setup_style ()
// Create date / time with format and friendly date
function bb_date ($gmepoch, $format = false, $friendly_date = true)
{
- global $bb_cfg, $lang, $userdata;
+ global $lang, $userdata;
- if (!$format) $format = $bb_cfg['default_dateformat'];
- if (empty($lang)) require_once($bb_cfg['default_lang_dir'] .'main.php');
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ if (!$format) $format = $di->config->get('default_dateformat');
+ if (empty($lang)) require_once($di->config->get('default_lang_dir') .'main.php');
if (empty($userdata['session_logged_in']))
{
- $tz = $bb_cfg['board_timezone'];
+ $tz = $di->config->get('board_timezone');
}
else
{
@@ -1565,15 +1572,18 @@ function bb_date ($gmepoch, $format = false, $friendly_date = true)
}
}
- return ($bb_cfg['translate_dates']) ? strtr(strtoupper($date), $lang['DATETIME']) : $date;
+ return ($di->config->get('translate_dates')) ? strtr(strtoupper($date), $lang['DATETIME']) : $date;
}
function birthday_age ($date)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
if (!$date) return false;
- $tz = TIMENOW + (3600 * $bb_cfg['board_timezone']);
+ $tz = TIMENOW + (3600 * $di->config->get('board_timezone'));
+
return delta_time(strtotime($date, $tz));
}
@@ -1705,15 +1715,13 @@ function generate_pagination ($base_url, $num_items, $per_page, $start_item, $ad
//
function obtain_word_list (&$orig_word, &$replacement_word)
{
- global $bb_cfg;
-
/** @var \TorrentPier\Di $di */
$di = \TorrentPier\Di::getInstance();
/** @var \TorrentPier\Cache\Adapter $cache */
$cache = $di->cache;
- if (!$bb_cfg['use_word_censor']) return false;
+ if (!$di->config->get('use_word_censor')) return false;
if (!$cache->has('censored')) {
$sql = DB()->fetch_rowset("SELECT word, replacement FROM " . BB_WORDS);
@@ -1733,7 +1741,10 @@ function obtain_word_list (&$orig_word, &$replacement_word)
function bb_die ($msg_text)
{
- global $ajax, $bb_cfg, $lang, $template, $theme, $user;
+ global $ajax, $lang, $template, $theme, $user;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (defined('IN_AJAX'))
{
@@ -1751,7 +1762,7 @@ function bb_die ($msg_text)
// If empty lang
if (empty($lang))
{
- require($bb_cfg['default_lang_dir'] .'main.php');
+ require($di->config->get('default_lang_dir') .'main.php');
}
// If empty session
@@ -1765,7 +1776,7 @@ function bb_die ($msg_text)
{
if (empty($template))
{
- $template = new Template(BB_ROOT ."templates/{$bb_cfg['tpl_name']}");
+ $template = new Template(BB_ROOT ."templates/{$di->config->get('tpl_name')}");
}
if (empty($theme))
{
@@ -1795,14 +1806,15 @@ function bb_die ($msg_text)
function bb_simple_die ($txt)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (!empty($_COOKIE['explain']))
{
bb_die("bb_simple_die:
$txt");
}
- header('Content-Type: text/plain; charset='. $bb_cfg['charset']);
+ header('Content-Type: text/plain; charset='. $di->config->get('charset'));
die($txt);
}
@@ -1825,7 +1837,8 @@ function meta_refresh ($url, $time = 5)
function redirect ($url)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (headers_sent($filename, $linenum))
{
@@ -1838,11 +1851,11 @@ function redirect ($url)
}
$url = trim($url);
- $server_protocol = ($bb_cfg['cookie_secure']) ? 'https://' : 'http://';
+ $server_protocol = ($di->config->get('cookie_secure')) ? 'https://' : 'http://';
- $server_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($bb_cfg['server_name']));
- $server_port = ($bb_cfg['server_port'] <> 80) ? ':' . trim($bb_cfg['server_port']) : '';
- $script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($bb_cfg['script_path']));
+ $server_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($di->config->get('server_name')));
+ $server_port = ($di->config->get('server_port') <> 80) ? ':' . trim($di->config->get('server_port')) : '';
+ $script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($di->config->get('script_path')));
if ($script_name)
{
@@ -1969,7 +1982,7 @@ class log_action
function init ()
{
- global $lang, $bb_cfg;
+ global $lang;
foreach ($lang['LOG_ACTION']['LOG_TYPE'] as $log_type => $log_desc)
{
@@ -2029,9 +2042,12 @@ class log_action
function get_topic_icon ($topic, $is_unread = null)
{
- global $bb_cfg, $images;
+ global $images;
- $t_hot = ($topic['topic_replies'] >= $bb_cfg['hot_threshold']);
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ $t_hot = ($topic['topic_replies'] >= $di->config->get('hot_threshold'));
$is_unread = is_null($is_unread) ? is_unread($topic['topic_last_post_time'], $topic['topic_id'], $topic['forum_id']) : $is_unread;
if ($topic['topic_status'] == TOPIC_MOVED)
@@ -2142,8 +2158,10 @@ function get_poll_data_items_js ($topic_id)
function poll_is_active ($t_data)
{
- global $bb_cfg;
- return ($t_data['topic_vote'] == 1 && $t_data['topic_time'] > TIMENOW - $bb_cfg['poll_max_days'] * 86400);
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ return ($t_data['topic_vote'] == 1 && $t_data['topic_time'] > TIMENOW - $di->config->get('poll_max_days') * 86400);
}
function print_confirmation ($tpl_vars)
@@ -2210,7 +2228,10 @@ function clean_title ($str, $replace_underscore = false)
function clean_text_match ($text, $ltrim_star = true, $remove_stopwords = false, $die_if_empty = false)
{
- global $bb_cfg, $lang;
+ global $lang;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$text = str_compact($text);
$ltrim_chars = ($ltrim_star) ? ' *-!' : ' ';
@@ -2223,7 +2244,7 @@ function clean_text_match ($text, $ltrim_star = true, $remove_stopwords = false,
$text = remove_stopwords($text);
}
- if ($bb_cfg['sphinx_enabled'])
+ if ($di->config->get('sphinx_enabled'))
{
$text = preg_replace('#(?<=\S)\-#u', ' ', $text); // "1-2-3" -> "1 2 3"
$text = preg_replace('#[^0-9a-zA-Zа-яА-ЯёЁ\-_*|]#u', ' ', $text); // допустимые символы (кроме " которые отдельно)
@@ -2279,19 +2300,22 @@ function log_sphinx_error ($err_type, $err_msg, $query = '')
function get_title_match_topics($search)
{
- global $bb_cfg, $sphinx, $userdata, $lang;
+ global $sphinx, $userdata, $lang;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$where_ids = array();
$forum_ids = (isset($search['ids']) && is_array($search['ids'])) ? array_diff($search['ids'], array(0 => 0)) : '';
$title_match_sql = encode_text_match($search['query']);
- if ($bb_cfg['sphinx_enabled'])
+ if ($di->config->get('sphinx_enabled'))
{
init_sphinx();
$where = (isset($search['topic_match'])) ? 'topics' : 'posts';
- $sphinx->SetServer($bb_cfg['sphinx_topic_titles_host'], $bb_cfg['sphinx_topic_titles_port']);
+ $sphinx->SetServer($di->config->get('sphinx_topic_titles_host'), $di->config->get('sphinx_topic_titles_port'));
if ($forum_ids)
{
$sphinx->SetFilter('forum_id', $forum_ids, false);
@@ -2323,7 +2347,7 @@ function get_title_match_topics($search)
else
{
$where_forum = ($forum_ids) ? "AND forum_id IN(" . join(',', $forum_ids) . ")" : '';
- $search_bool_mode = ($bb_cfg['allow_search_in_bool_mode']) ? ' IN BOOLEAN MODE' : '';
+ $search_bool_mode = ($di->config->get('allow_search_in_bool_mode')) ? ' IN BOOLEAN MODE' : '';
if (isset($search['topic_match']))
{
@@ -2381,17 +2405,20 @@ function pad_with_space ($str)
function create_magnet ($infohash, $auth_key, $logged_in)
{
- global $bb_cfg, $_GET, $images;
+ global $images;
- $passkey_url = ((!$logged_in || isset($_GET['no_passkey'])) && $bb_cfg['bt_tor_browse_only_reg']) ? '' : "?{$bb_cfg['passkey_key']}=$auth_key";
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
- if ($bb_cfg['ocelot']['enabled'])
+ $passkey_url = ((!$logged_in || isset($_GET['no_passkey'])) && $di->config->get('bt_tor_browse_only_reg')) ? '' : "?{$di->config->get('passkey_key')}=$auth_key";
+
+ if ($di->config->get('ocelot.enabled'))
{
- return '';
+ return '
';
}
else
{
- return '
';
+ return '
';
}
}
@@ -2450,7 +2477,10 @@ function send_pm ($user_id, $subject, $message, $poster_id = BOT_UID)
function profile_url ($data)
{
- global $bb_cfg, $lang, $datastore;
+ global $lang, $datastore;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (!$ranks = $datastore->get('ranks'))
{
@@ -2468,7 +2498,7 @@ function profile_url ($data)
if (empty($title)) $title = $lang['USER'];
if (empty($style)) $style = 'colorUser';
- if (!$bb_cfg['color_nick']) $style = '';
+ if (!$di->config->get('color_nick')) $style = '';
$username = !empty($data['username']) ? $data['username'] : $lang['GUEST'];
$user_id = (!empty($data['user_id']) && $username != $lang['GUEST']) ? $data['user_id'] : GUEST_UID;
@@ -2485,7 +2515,8 @@ function profile_url ($data)
function get_avatar ($user_id, $ext_id, $allow_avatar = true, $size = true, $height = '', $width = '')
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if ($size)
{
@@ -2495,11 +2526,11 @@ function get_avatar ($user_id, $ext_id, $allow_avatar = true, $size = true, $hei
$height = ($height != '') ? 'height="'. $height .'"' : '';
$width = ($width != '') ? 'width="'. $width .'"' : '';
- $user_avatar = '
';
+ $user_avatar = '
';
- if ($user_id == BOT_UID && $bb_cfg['avatars']['bot_avatar'])
+ if ($user_id == BOT_UID && $di->config->get('avatars.bot_avatar'))
{
- $user_avatar = '
';
+ $user_avatar = '
';
}
else if ($allow_avatar && $ext_id)
{
@@ -2514,9 +2545,12 @@ function get_avatar ($user_id, $ext_id, $allow_avatar = true, $size = true, $hei
function gender_image ($gender)
{
- global $bb_cfg, $lang, $images;
+ global $lang, $images;
- if (!$bb_cfg['gender'])
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ if (!$di->config->get('gender'))
{
$user_gender = '';
return $user_gender;
diff --git a/library/includes/functions_admin.php b/library/includes/functions_admin.php
index 05e9661d7..04efe3ef3 100644
--- a/library/includes/functions_admin.php
+++ b/library/includes/functions_admin.php
@@ -714,7 +714,10 @@ function post_delete ($mode_or_post_id, $user_id = null, $exclude_first = true)
function user_delete ($user_id, $delete_posts = false)
{
- global $bb_cfg, $log_action;
+ global $log_action;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (!$user_csv = get_id_csv($user_id))
{
@@ -801,7 +804,7 @@ function user_delete ($user_id, $delete_posts = false)
// Delete user feed
foreach (explode(',', $user_csv) as $user_id)
{
- $file_path = $bb_cfg['atom']['path'] .'/u/'. floor($user_id/5000) .'/'. ($user_id % 100) .'/'. $user_id .'.atom';
+ $file_path = $di->config->get('atom.path') .'/u/'. floor($user_id/5000) .'/'. ($user_id % 100) .'/'. $user_id .'.atom';
unlink($file_path);
}
}
diff --git a/library/includes/functions_admin_cron.php b/library/includes/functions_admin_cron.php
index b1464f194..121f863b3 100644
--- a/library/includes/functions_admin_cron.php
+++ b/library/includes/functions_admin_cron.php
@@ -2,7 +2,10 @@
function run_jobs($jobs)
{
- global $bb_cfg, $tr_cfg, $datastore;
+ global $tr_cfg, $datastore;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
define('IN_CRON', true);
diff --git a/library/includes/functions_atom.php b/library/includes/functions_atom.php
index 503e43fd3..956ac2b40 100644
--- a/library/includes/functions_atom.php
+++ b/library/includes/functions_atom.php
@@ -7,8 +7,10 @@ if (!defined('BB_ROOT')) die(basename(__FILE__));
function update_forum_feed ($forum_id, $forum_data)
{
- global $bb_cfg;
- $file_path = $bb_cfg['atom']['path'] .'/f/'. $forum_id .'.atom';
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ $file_path = $di->config->get('atom.path') .'/f/'. $forum_id .'.atom';
$select_tor_sql = $join_tor_sql = '';
if ($forum_id == 0) $forum_data['atom_forum_name'] = 'Общая по всем разделам';
if ($forum_id > 0 && $forum_data['atom_tr_allowed'])
@@ -63,7 +65,7 @@ function update_forum_feed ($forum_id, $forum_data)
}
if (isset($topic['tor_status']))
{
- if (isset($bb_cfg['tor_frozen'][$topic['tor_status']])) continue;
+ if ($di->config->get('tor_frozen.' . $topic['tor_status'])) continue;
}
$topics[] = $topic;
}
@@ -78,8 +80,10 @@ function update_forum_feed ($forum_id, $forum_data)
function update_user_feed ($user_id, $username)
{
- global $bb_cfg;
- $file_path = $bb_cfg['atom']['path'] .'/u/'. floor($user_id/5000) .'/'. ($user_id % 100) .'/'. $user_id .'.atom';
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ $file_path = $di->config->get('atom.path') .'/u/'. floor($user_id/5000) .'/'. ($user_id % 100) .'/'. $user_id .'.atom';
$sql = "
SELECT
t.topic_id, t.topic_title, t.topic_status,
@@ -106,7 +110,7 @@ function update_user_feed ($user_id, $username)
}
if (isset($topic['tor_status']))
{
- if (isset($bb_cfg['tor_frozen'][$topic['tor_status']])) continue;
+ if ($di->config->get('tor_frozen.' . $topic['tor_status'])) continue;
}
$topics[] = $topic;
}
@@ -121,7 +125,9 @@ function update_user_feed ($user_id, $username)
function create_atom ($file_path, $mode, $id, $title, $topics)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
$dir = dirname($file_path);
if (!file_exists($dir))
{
@@ -137,11 +143,11 @@ function create_atom ($file_path, $mode, $id, $title, $topics)
}
$atom = "";
$atom .= "\n";
- $atom .= "
");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
$emailer->email_address($row['username'] ." <{$row['user_email']}>");
$emailer->use_template('topic_notify', $row['user_lang']);
$emailer->assign_vars(array(
'TOPIC_TITLE' => html_entity_decode($topic_title),
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'USERNAME' => $row['username'],
'U_TOPIC' => $u_topic,
'U_STOP_WATCHING_TOPIC' => $unwatch_topic,
diff --git a/library/includes/functions_selects.php b/library/includes/functions_selects.php
index 143845676..fdb209fef 100644
--- a/library/includes/functions_selects.php
+++ b/library/includes/functions_selects.php
@@ -2,65 +2,57 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-//
// Languages
-//
-function language_select ($default_lang, $select_name = 'language')
+function language_select($default_lang, $select_name = 'language')
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
- $lang_select = '';
- return ($x > 1) ? $lang_select : reset($bb_cfg['lang'])['name'];
+ $lang_select = '';
+ return ($x > 1) ? $lang_select : $di->config->get('lang')->ru;
}
-//
// Pick a timezone
-//
-function tz_select ($default, $select_name = 'timezone')
+function tz_select($default, $select_name = 'timezone')
{
- global $sys_timezone, $lang;
+ global $sys_timezone, $lang;
- if (!isset($default))
- {
- $default == $sys_timezone;
- }
- $tz_select = '';
- return $tz_select;
+ return $tz_select;
}
-//
// Templates
-//
-function templates_select ($default_style, $select_name = 'tpl_name')
+function templates_select($default_style, $select_name = 'tpl_name')
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
- $templates_select = '
Скачивание запрещено"); //TODO: перевести
}
@@ -332,7 +344,7 @@ function send_torrent_with_passkey ($t_data)
{
bb_simple_die('Could not generate passkey');
}
- elseif ($bb_cfg['ocelot']['enabled'])
+ elseif ($di->config->get('ocelot.enabled'))
{
ocelot_update_tracker('add_user', array('id' => $user_id ,'passkey' => $passkey_val));
}
@@ -340,7 +352,7 @@ function send_torrent_with_passkey ($t_data)
// Ratio limit for torrents dl
$user_ratio = get_bt_ratio($bt_userdata);
- $min_ratio = $bb_cfg['bt_min_ratio_allow_dl_tor'];
+ $min_ratio = $di->config->get('bt_min_ratio_allow_dl_tor');
if ($min_ratio && $user_id != $poster_id && !is_null($user_ratio))
{
@@ -417,16 +429,16 @@ function send_torrent_with_passkey ($t_data)
unset($tor['nodes']);
// Announce URL
- $announce = $bb_cfg['ocelot']['enabled'] ? strval($bb_cfg['ocelot']['url'] .$passkey_val. "/announce") : strval($bb_cfg['bt_announce_url'] . "?{$bb_cfg['passkey_key']}=$passkey_val");
+ $announce = $di->config->get('ocelot.enabled') ? strval($di->config->get('ocelot.url') .$passkey_val. "/announce") : strval($di->config->get('bt_announce_url') . "?{$di->config->get('passkey_key')}=$passkey_val");
// Replace original announce url with tracker default
- if ($bb_cfg['bt_replace_ann_url'] || !isset($tor['announce']))
+ if ($di->config->get('bt_replace_ann_url') || !isset($tor['announce']))
{
$tor['announce'] = $announce;
}
// Delete all additional urls
- if ($bb_cfg['bt_del_addit_ann_urls'] || $bb_cfg['bt_disable_dht'])
+ if ($di->config->get('bt_del_addit_ann_urls') || $di->config->get('bt_disable_dht'))
{
unset($tor['announce-list']);
}
@@ -455,7 +467,7 @@ function send_torrent_with_passkey ($t_data)
}
// Add publisher & topic url
- $publisher_name = $bb_cfg['server_name'];
+ $publisher_name = $di->config->get('server_name');
$publisher_url = make_url(TOPIC_URL . $topic_id);
$tor['publisher'] = strval($publisher_name);
@@ -469,7 +481,7 @@ function send_torrent_with_passkey ($t_data)
// Send torrent
$output = \Rych\Bencode\Bencode::encode($tor);
- $dl_fname = '['.$bb_cfg['server_name'].'].t' . $topic_id . '.torrent';
+ $dl_fname = '['.$di->config->get('server_name').'].t' . $topic_id . '.torrent';
if (!empty($_COOKIE['explain']))
{
@@ -487,7 +499,10 @@ function send_torrent_with_passkey ($t_data)
function generate_passkey ($user_id, $force_generate = false)
{
- global $bb_cfg, $lang;
+ global $lang;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$user_id = (int) $user_id;
@@ -535,7 +550,7 @@ function generate_passkey ($user_id, $force_generate = false)
if (DB()->affected_rows() == 1)
{
// Ocelot
- if ($bb_cfg['ocelot']['enabled'])
+ if ($di->config->get('ocelot.enabled'))
{
ocelot_update_tracker('change_passkey', array('oldpasskey' => $old_passkey,'newpasskey' => $passkey_val));
}
@@ -580,9 +595,10 @@ function tracker_rm_user ($user_id)
function ocelot_update_tracker ($action, $updates)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
- $get = $bb_cfg['ocelot']['secret'] . "/update?action=$action";
+ $get = $di->config->get('ocelot.secret') . "/update?action=$action";
foreach ($updates as $key => $value)
{
@@ -602,7 +618,8 @@ function ocelot_update_tracker ($action, $updates)
function ocelot_send_request ($get, $max_attempts = 1, &$err = false)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$header = "GET /$get HTTP/1.1\r\nConnection: Close\r\n\r\n";
$attempts = $sleep = $success = $response = 0;
@@ -616,7 +633,7 @@ function ocelot_send_request ($get, $max_attempts = 1, &$err = false)
}
// Send request
- $file = fsockopen($bb_cfg['ocelot']['host'], $bb_cfg['ocelot']['port'], $error_num, $error_string);
+ $file = fsockopen($di->config->get('ocelot.host'), $di->config->get('ocelot.port'), $error_num, $error_string);
if ($file)
{
if (fwrite($file, $header) === false)
diff --git a/library/includes/functions_upload.php b/library/includes/functions_upload.php
index 2174ea04e..b93717582 100644
--- a/library/includes/functions_upload.php
+++ b/library/includes/functions_upload.php
@@ -23,7 +23,7 @@ class upload_common
var $file_ext = '';
var $file_ext_id = '';
var $file_size = '';
- var $ext_ids = array(); // array_flip($bb_cfg['file_id_ext'])
+ var $ext_ids = array(); // array_flip($di->config->get('file_id_ext'))
var $errors = array();
var $img_types = array(
1 => 'gif',
@@ -36,7 +36,10 @@ class upload_common
function init ($cfg = array(), $post_params = array(), $uploaded_only = true)
{
- global $bb_cfg, $lang;
+ global $lang;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$this->cfg = array_merge($this->cfg, $cfg);
$this->file = $post_params;
@@ -73,7 +76,7 @@ class upload_common
return false;
}
// get ext
- $this->ext_ids = array_flip($bb_cfg['file_id_ext']);
+ $this->ext_ids = array_flip($di->config->get('file_id_ext'));
$file_name_ary = explode('.', $this->file['name']);
$this->file_ext = strtolower(end($file_name_ary));
diff --git a/library/includes/init_bb.php b/library/includes/init_bb.php
index dc1521927..f2efc0a3f 100644
--- a/library/includes/init_bb.php
+++ b/library/includes/init_bb.php
@@ -6,6 +6,9 @@ if (!defined('BB_CFG_LOADED')) trigger_error('File config.php not loaded', E_USE
if (PHP_VERSION < '5.5') die('TorrentPier requires PHP version 5.5 and above (ZF requirement). Your PHP version is '. PHP_VERSION);
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
// Define some basic configuration arrays
unset($stopwords, $synonyms_match, $synonyms_replace);
$userdata = $theme = $images = $lang = $nav_links = $bf = [];
@@ -27,9 +30,10 @@ define('UA_GZIP_SUPPORTED', (isset($_SERVER['HTTP_ACCEPT_ENCODING']) && strpos($
function compress_output ($contents)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
- if ($bb_cfg['gzip_compress'] && GZIP_OUTPUT_ALLOWED && !defined('NO_GZIP'))
+ if ($di->config->get('gzip_compress') && GZIP_OUTPUT_ALLOWED && !defined('NO_GZIP'))
{
if (UA_GZIP_SUPPORTED && strlen($contents) > 2000)
{
@@ -48,7 +52,7 @@ if (!defined('IN_AJAX'))
}
// Cookie params
-$c = $bb_cfg['cookie_prefix'];
+$c = $di->config->get('cookie_prefix');
define('COOKIE_DATA', $c .'data');
define('COOKIE_FORUM', $c .'f');
define('COOKIE_MARK', $c .'mark_read');
@@ -64,8 +68,10 @@ define('COOKIE_MAX_TRACKS', 90);
function bb_setcookie ($name, $val, $lifetime = COOKIE_PERSIST, $httponly = false)
{
- global $bb_cfg;
- return setcookie($name, $val, $lifetime, $bb_cfg['script_path'], $bb_cfg['cookie_domain'], $bb_cfg['cookie_secure'], $httponly);
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
+
+ return setcookie($name, $val, $lifetime, $di->config->get('script_path'), $di->config->get('cookie_domain'), $di->config->get('cookie_secure'), $httponly);
}
// Debug options
@@ -163,75 +169,6 @@ define('POLL_FINISHED', 2);
// Group avatars
define('GROUP_AVATAR_MASK', 999000);
-// Torrents (reserved: -1)
-define('TOR_NOT_APPROVED', 0); // не проверено
-define('TOR_CLOSED', 1); // закрыто
-define('TOR_APPROVED', 2); // проверено
-define('TOR_NEED_EDIT', 3); // недооформлено
-define('TOR_NO_DESC', 4); // неоформлено
-define('TOR_DUP', 5); // повтор
-define('TOR_CLOSED_CPHOLD', 6); // закрыто правообладателем
-define('TOR_CONSUMED', 7); // поглощено
-define('TOR_DOUBTFUL', 8); // сомнительно
-define('TOR_CHECKING', 9); // проверяется
-define('TOR_TMP', 10); // временная
-define('TOR_PREMOD', 11); // премодерация
-
-$bb_cfg['tor_icons'] = array(
- TOR_NOT_APPROVED => ' ',
- TOR_CLOSED => ' ',
- TOR_APPROVED => ' ',
- TOR_NEED_EDIT => ' ',
- TOR_NO_DESC => ' ',
- TOR_DUP => ' ',
- TOR_CLOSED_CPHOLD => ' ',
- TOR_CONSUMED => ' ',
- TOR_DOUBTFUL => ' ',
- TOR_CHECKING => ' ',
- TOR_TMP => ' ',
- TOR_PREMOD => ' ',
-);
-
-// Запрет на скачивание
-$bb_cfg['tor_frozen'] = array(
- TOR_CHECKING => true,
- TOR_CLOSED => true,
- TOR_CLOSED_CPHOLD => true,
- TOR_CONSUMED => true,
- TOR_DUP => true,
- TOR_NO_DESC => true,
- TOR_PREMOD => true,
-);
-
-// Разрешение на скачку автором, если закрыто на скачивание.
-$bb_cfg['tor_frozen_author_download'] = array(
- TOR_CHECKING => true,
- TOR_NO_DESC => true,
- TOR_PREMOD => true,
-);
-
-// Запрет на редактирование головного сообщения
-$bb_cfg['tor_cannot_edit'] = array(
- TOR_CHECKING => true,
- TOR_CLOSED => true,
- TOR_CONSUMED => true,
- TOR_DUP => true,
-);
-
-// Запрет на создание новых раздач если стоит статус недооформлено/неоформлено/сомнительно
-$bb_cfg['tor_cannot_new'] = array(TOR_NEED_EDIT, TOR_NO_DESC, TOR_DOUBTFUL);
-
-// Разрешение на ответ релизера, если раздача исправлена.
-$bb_cfg['tor_reply'] = array(TOR_NEED_EDIT, TOR_NO_DESC, TOR_DOUBTFUL);
-
-// Если такой статус у релиза, то статистика раздачи будет скрыта
-$bb_cfg['tor_no_tor_act'] = array(
- TOR_CLOSED => true,
- TOR_DUP => true,
- TOR_CLOSED_CPHOLD => true,
- TOR_CONSUMED => true,
-);
-
// Table names
define('BUF_TOPIC_VIEW', 'buf_topic_view');
define('BUF_LAST_SEEDER', 'buf_last_seeder');
@@ -288,11 +225,11 @@ define('CAT_URL', 'index.php?c=');
define('DOWNLOAD_URL', 'dl.php?t=');
define('FORUM_URL', 'viewforum.php?f=');
define('GROUP_URL', 'group.php?g=');
-define('LOGIN_URL', $bb_cfg['login_url']);
+define('LOGIN_URL', $di->config->get('login_url'));
define('MODCP_URL', 'modcp.php?f=');
-define('PM_URL', $bb_cfg['pm_url']);
+define('PM_URL', $di->config->get('pm_url'));
define('POST_URL', 'viewtopic.php?p=');
-define('POSTING_URL', $bb_cfg['posting_url']);
+define('POSTING_URL', $di->config->get('posting_url'));
define('PROFILE_URL', 'profile.php?mode=viewprofile&u=');
define('BONUS_URL', 'profile.php?mode=bonus');
define('TOPIC_URL', 'viewtopic.php?t=');
@@ -356,31 +293,6 @@ function bb_exit ($output = '')
exit;
}
-function prn_r ($var, $title = '', $print = true)
-{
- $r = ''. (($title) ? "$title\n\n" : '') . htmlspecialchars(print_r($var, true)) .'
';
- if ($print) echo $r;
- return $r;
-}
-
-function pre ($var, $title = '', $print = true)
-{
- prn_r($var, $title, $print);
-}
-
-function prn ()
-{
- if (!DBG_USER) return;
- foreach (func_get_args() as $var) prn_r($var);
-}
-
-function vdump ($var, $title = '')
-{
- echo ''. (($title) ? "$title\n\n" : '');
- var_dump($var);
- echo '
';
-}
-
function htmlCHR ($txt, $double_encode = false, $quote_style = ENT_QUOTES, $charset = 'UTF-8')
{
return (string) htmlspecialchars($txt, $quote_style, $charset, $double_encode);
@@ -401,8 +313,6 @@ require(INC_DIR .'sessions.php');
require(INC_DIR .'template.php');
require(CORE_DIR .'mysql.php');
-$bb_cfg = array_merge(bb_get_config(BB_CONFIG), $bb_cfg);
-
$user = new user_common();
$userdata =& $user->data;
@@ -415,16 +325,16 @@ $log_action = new log_action();
$datastore->enqueue(array('cat_forums'));
// Дата старта вашего проекта
-if (!$bb_cfg['board_startdate'])
+if (!$di->config->get('board_startdate'))
{
bb_update_config(array('board_startdate' => TIMENOW));
DB()->query("UPDATE ". BB_USERS ." SET user_regdate = ". TIMENOW ." WHERE user_id IN(2, ". EXCLUDED_USERS .")");
}
// 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 ((empty($_POST) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !file_exists(CRON_RUNNING) && ($di->config->get('cron_enabled') || defined('START_CRON'))) || defined('FORCE_CRON'))
{
- if (TIMENOW - $bb_cfg['cron_last_check'] > $bb_cfg['cron_check_interval'])
+ if (TIMENOW - $di->config->get('cron_last_check') > $di->config->get('cron_check_interval'))
{
// Update cron_last_check
bb_update_config(array('cron_last_check' => (TIMENOW + 10)));
@@ -452,10 +362,10 @@ if ((empty($_POST) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !file_exist
}
// Exit if board is disabled via ON/OFF trigger or by admin
-if (($bb_cfg['board_disable'] || file_exists(BB_DISABLED)) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !defined('IN_LOGIN'))
+if (($di->config->get('board_disable') || file_exists(BB_DISABLED)) && !defined('IN_ADMIN') && !defined('IN_AJAX') && !defined('IN_LOGIN'))
{
header('HTTP/1.0 503 Service Unavailable');
- if ($bb_cfg['board_disable'])
+ if ($di->config->get('board_disable'))
{
// admin lock
send_no_cache_headers();
@@ -485,7 +395,7 @@ function cron_release_deadlock ()
function cron_release_file_lock ()
{
- $lock_released = rename(CRON_RUNNING, CRON_ALLOWED);
+ rename(CRON_RUNNING, CRON_ALLOWED);
cron_touch_lock_file(CRON_ALLOWED);
}
diff --git a/library/includes/online_userlist.php b/library/includes/online_userlist.php
index f697b6b4a..a9d0994c2 100644
--- a/library/includes/online_userlist.php
+++ b/library/includes/online_userlist.php
@@ -134,7 +134,7 @@ else if (isset($_REQUEST['f']))
$total_online = $logged_online + $guests_online;
-if ($total_online > $bb_cfg['record_online_users'])
+if ($total_online > $di->config->get('record_online_users'))
{
bb_update_config(array(
'record_online_users' => $total_online,
diff --git a/library/includes/page_footer.php b/library/includes/page_footer.php
index 740823672..0214702a9 100644
--- a/library/includes/page_footer.php
+++ b/library/includes/page_footer.php
@@ -2,7 +2,7 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bb_cfg, $userdata, $template, $DBS, $lang;
+global $userdata, $template, $DBS, $lang;
/** @var \TorrentPier\Di $di */
$di = \TorrentPier\Di::getInstance();
@@ -25,7 +25,7 @@ if (!empty($template))
$show_dbg_info = (DBG_USER && IS_ADMIN && !(isset($_GET['pane']) && $_GET['pane'] == 'left'));
-if(!$bb_cfg['gzip_compress'])
+if(!$di->config->get('gzip_compress'))
{
flush();
}
@@ -35,7 +35,7 @@ if ($show_dbg_info)
$gen_time = utime() - TIMESTART;
$gen_time_txt = sprintf('%.3f', $gen_time);
$gzip_text = (UA_GZIP_SUPPORTED) ? 'GZIP ' : 'GZIP ';
- $gzip_text .= ($bb_cfg['gzip_compress']) ? $lang['ON'] : $lang['OFF'];
+ $gzip_text .= ($di->config->get('gzip_compress')) ? $lang['ON'] : $lang['OFF'];
$stat = '[ '. $lang['EXECUTION_TIME'] ." $gen_time_txt ". $lang['SEC'];
@@ -50,7 +50,7 @@ if ($show_dbg_info)
$stat .= " | $gzip_text";
$stat .= ' | '.$lang['MEMORY'];
- $stat .= humn_size($bb_cfg['mem_on_start'], 2) .' / ';
+ $stat .= humn_size($di->config->get('mem_on_start'), 2) .' / ';
$stat .= humn_size(sys('mem_peak'), 2) .' / ';
$stat .= humn_size(sys('mem'), 2);
diff --git a/library/includes/page_header.php b/library/includes/page_header.php
index 50a7947e1..9e99fd64a 100644
--- a/library/includes/page_header.php
+++ b/library/includes/page_header.php
@@ -5,7 +5,7 @@ if (defined('PAGE_HEADER_SENT')) return;
// Parse and show the overall page header
-global $page_cfg, $userdata, $user, $bb_cfg, $template, $lang, $images;
+global $page_cfg, $userdata, $user, $template, $lang, $images;
/** @var \TorrentPier\Di $di */
$di = \TorrentPier\Di::getInstance();
@@ -48,7 +48,7 @@ if (defined('SHOW_ONLINE') && SHOW_ONLINE)
'TOTAL_USERS_ONLINE' => ${$online_list}['stat'],
'LOGGED_IN_USER_LIST' => ${$online_list}['userlist'],
'USERS_ONLINE_COUNTS' => ${$online_list}['cnt'],
- 'RECORD_USERS' => sprintf($lang['RECORD_ONLINE_USERS'], $bb_cfg['record_online_users'], bb_date($bb_cfg['record_online_date'])),
+ 'RECORD_USERS' => sprintf($lang['RECORD_ONLINE_USERS'], $di->config->get('record_online_users'), bb_date($di->config->get('record_online_date'))),
));
}
@@ -113,7 +113,7 @@ $template->assign_vars(array(
// The following assigns all _common_ variables that may be used at any point in a template
$template->assign_vars(array(
'SIMPLE_HEADER' => !empty($gen_simple_header),
- 'CONTENT_ENCODING' => $bb_cfg['lang'][$userdata['user_lang']]['encoding'],
+ 'CONTENT_ENCODING' => $di->config->get('lang.' . $userdata['user_lang'] . '.encoding'),
'IN_ADMIN' => defined('IN_ADMIN'),
'USER_HIDE_CAT' => (BB_SCRIPT == 'index'),
@@ -125,9 +125,9 @@ $template->assign_vars(array(
'USE_TABLESORTER' => !empty($page_cfg['use_tablesorter']),
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'U_INDEX' => BB_ROOT ."index.php",
- 'T_INDEX' => sprintf($lang['FORUM_INDEX'], $bb_cfg['sitename']),
+ 'T_INDEX' => sprintf($lang['FORUM_INDEX'], $di->config->get('sitename')),
'IS_GUEST' => IS_GUEST,
'IS_USER' => IS_USER,
@@ -138,9 +138,9 @@ $template->assign_vars(array(
'FORUM_PATH' => FORUM_PATH,
'FULL_URL' => FULL_URL,
- 'CURRENT_TIME' => sprintf($lang['CURRENT_TIME'], bb_date(TIMENOW, $bb_cfg['last_visit_date_format'], false)),
- 'S_TIMEZONE' => preg_replace('/\(.*?\)/', '', sprintf($lang['ALL_TIMES'], $lang['TZ'][str_replace(',', '.', floatval($bb_cfg['board_timezone']))])),
- 'BOARD_TIMEZONE' => $bb_cfg['board_timezone'],
+ 'CURRENT_TIME' => sprintf($lang['CURRENT_TIME'], bb_date(TIMENOW, $di->config->get('last_visit_date_format'), false)),
+ 'S_TIMEZONE' => preg_replace('/\(.*?\)/', '', sprintf($lang['ALL_TIMES'], $lang['TZ'][str_replace(',', '.', floatval($di->config->get('board_timezone')))])),
+ 'BOARD_TIMEZONE' => $di->config->get('board_timezone'),
'PM_INFO' => $pm_info,
'PRIVMSG_IMG' => $icon_pm,
@@ -151,7 +151,7 @@ $template->assign_vars(array(
'THIS_USER' => profile_url($userdata),
'THIS_AVATAR' => get_avatar($userdata['user_id'], $userdata['avatar_ext_id'], !bf($userdata['user_opt'], 'user_opt', 'dis_avatar')),
'SHOW_LOGIN_LINK' => !defined('IN_LOGIN'),
- 'AUTOLOGIN_DISABLED' => !$bb_cfg['allow_autologin'],
+ 'AUTOLOGIN_DISABLED' => !$di->config->get('allow_autologin'),
'S_LOGIN_ACTION' => LOGIN_URL,
'U_CUR_DOWNLOADS' => PROFILE_URL . $userdata['user_id'],
@@ -167,11 +167,11 @@ $template->assign_vars(array(
'U_REGISTER' => "profile.php?mode=register",
'U_SEARCH' => "search.php",
'U_SEND_PASSWORD' => "profile.php?mode=sendpassword",
- 'U_TERMS' => $bb_cfg['terms_and_conditions_url'],
+ 'U_TERMS' => $di->config->get('terms_and_conditions_url'),
'U_TRACKER' => "tracker.php",
- 'SHOW_SIDEBAR1' => (!empty($page_cfg['show_sidebar1'][BB_SCRIPT]) || $bb_cfg['show_sidebar1_on_every_page']),
- 'SHOW_SIDEBAR2' => (!empty($page_cfg['show_sidebar2'][BB_SCRIPT]) || $bb_cfg['show_sidebar2_on_every_page']),
+ 'SHOW_SIDEBAR1' => (!empty($page_cfg['show_sidebar1'][BB_SCRIPT]) || $di->config->get('show_sidebar1_on_every_page')),
+ 'SHOW_SIDEBAR2' => (!empty($page_cfg['show_sidebar2'][BB_SCRIPT]) || $di->config->get('show_sidebar2_on_every_page')),
'HTML_AGREEMENT' => LANG_DIR . 'html/user_agreement.html',
'HTML_COPYRIGHT' => LANG_DIR . 'html/copyright_holders.html',
@@ -185,11 +185,11 @@ $template->assign_vars(array(
'DOWNLOAD_URL' => BB_ROOT . DOWNLOAD_URL,
'FORUM_URL' => BB_ROOT . FORUM_URL,
'GROUP_URL' => BB_ROOT . GROUP_URL,
- 'LOGIN_URL' => $bb_cfg['login_url'],
+ 'LOGIN_URL' => $di->config->get('login_url'),
'NEWEST_URL' => '&view=newest#newest',
- 'PM_URL' => $bb_cfg['pm_url'],
+ 'PM_URL' => $di->config->get('pm_url'),
'POST_URL' => BB_ROOT . POST_URL,
- 'POSTING_URL' => $bb_cfg['posting_url'],
+ 'POSTING_URL' => $di->config->get('posting_url'),
'PROFILE_URL' => BB_ROOT . PROFILE_URL,
'TOPIC_URL' => BB_ROOT . TOPIC_URL,
@@ -259,7 +259,7 @@ $template->pparse('page_header');
define('PAGE_HEADER_SENT', true);
-if (!$bb_cfg['gzip_compress'])
+if (!$di->config->get('gzip_compress'))
{
flush();
}
\ No newline at end of file
diff --git a/library/includes/sessions.php b/library/includes/sessions.php
index 2bc93a3f7..489a7cacc 100644
--- a/library/includes/sessions.php
+++ b/library/includes/sessions.php
@@ -79,7 +79,8 @@ class user_common
*/
function session_start ($cfg = array())
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$update_sessions_table = false;
$this->cfg = array_merge($this->cfg, $cfg);
@@ -100,7 +101,7 @@ class user_common
{
$SQL['WHERE'][] = "s.session_id = '$session_id'";
- if ($bb_cfg['torhelp_enabled'])
+ if ($di->config->get('torhelp_enabled'))
{
$SQL['SELECT'][] = "th.topic_id_csv AS torhelp";
$SQL['LEFT JOIN'][] = BB_BT_TORHELP ." th ON(u.user_id = th.user_id)";
@@ -120,7 +121,7 @@ class user_common
{
$this->data = DB()->fetch_row($SQL);
- if ($this->data && (TIMENOW - $this->data['session_time']) > $bb_cfg['session_update_intrv'])
+ if ($this->data && (TIMENOW - $this->data['session_time']) > $di->config->get('session_update_intrv'))
{
$this->data['session_time'] = TIMENOW;
$update_sessions_table = true;
@@ -169,7 +170,7 @@ class user_common
if (!$this->data)
{
$login = false;
- $user_id = ($bb_cfg['allow_autologin'] && $this->sessiondata['uk'] && $this->sessiondata['uid']) ? $this->sessiondata['uid'] : GUEST_UID;
+ $user_id = ($di->config->get('allow_autologin') && $this->sessiondata['uk'] && $this->sessiondata['uid']) ? $this->sessiondata['uid'] : GUEST_UID;
if ($userdata = get_userdata(intval($user_id), false, true))
{
@@ -195,7 +196,7 @@ class user_common
define('IS_CP_HOLDER', (!IS_GUEST && $this->data['user_level'] == CP_HOLDER));
define('IS_GROUP_MEMBER', (!IS_GUEST && $this->data['user_level'] == GROUP_MEMBER));
define('IS_USER', (!IS_GUEST && $this->data['user_level'] == USER));
- define('IS_SUPER_ADMIN', (IS_ADMIN && isset($bb_cfg['super_admins'][$this->data['user_id']])));
+ define('IS_SUPER_ADMIN', (IS_ADMIN && $di->config->get('super_admins.' . $this->data['user_id'])));
define('IS_AM', (IS_ADMIN || IS_MOD));
$this->set_shortcuts();
@@ -221,7 +222,8 @@ class user_common
*/
function session_create ($userdata, $auto_created = false)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$this->data = $userdata;
$session_id = $this->sessiondata['sid'];
@@ -282,9 +284,9 @@ class user_common
$last_visit = TIMENOW;
define('FIRST_LOGON', true);
}
- else if ($session_time < (TIMENOW - $bb_cfg['last_visit_update_intrv']))
+ else if ($session_time < (TIMENOW - $di->config->get('last_visit_update_intrv')))
{
- $last_visit = max($session_time, (TIMENOW - 86400*$bb_cfg['max_last_visit_days']));
+ $last_visit = max($session_time, (TIMENOW - 86400*$di->config->get('max_last_visit_days')));
}
if ($last_visit != $this->data['user_lastvisit'])
@@ -304,7 +306,7 @@ class user_common
$this->data['user_lastvisit'] = $last_visit;
}
- if (!empty($_POST['autologin']) && $bb_cfg['allow_autologin'])
+ if (!empty($_POST['autologin']) && $di->config->get('allow_autologin'))
{
if (!$auto_created)
{
@@ -481,7 +483,8 @@ class user_common
*/
function set_session_cookies ($user_id)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if ($user_id == GUEST_UID)
{
@@ -511,7 +514,7 @@ class user_common
{
bb_setcookie(COOKIE_DATA, $c_sdata_curr, COOKIE_PERSIST, true);
}
- if (isset($bb_cfg['dbg_users'][$this->data['user_id']]) && !isset($_COOKIE[COOKIE_DBG]))
+ if ($di->config->get('dbg_users.' . $this->data['user_id']) && !isset($_COOKIE[COOKIE_DBG]))
{
bb_setcookie(COOKIE_DBG, 1, COOKIE_SESSION);
}
@@ -529,7 +532,8 @@ class user_common
*/
function verify_autologin_id ($userdata, $expire_check = false, $create_new = true)
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$autologin_id = $userdata['autologin_id'];
@@ -539,9 +543,9 @@ class user_common
{
return $this->create_autologin_id($userdata);
}
- else if ($autologin_id && $userdata['user_session_time'] && $bb_cfg['max_autologin_time'])
+ else if ($autologin_id && $userdata['user_session_time'] && $di->config->get('max_autologin_time'))
{
- if (TIMENOW - $userdata['user_session_time'] > $bb_cfg['max_autologin_time']*86400)
+ if (TIMENOW - $userdata['user_session_time'] > $di->config->get('max_autologin_time')*86400)
{
return $this->create_autologin_id($userdata, $create_new);
}
@@ -594,34 +598,31 @@ class user_common
*/
function init_userprefs ()
{
- global $bb_cfg, $theme, $lang, $DeltaTime;
+ global $theme, $lang, $DeltaTime;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (defined('LANG_DIR')) return; // prevent multiple calling
- define('DEFAULT_LANG_DIR', LANG_ROOT_DIR . $bb_cfg['default_lang'] .'/');
+ define('DEFAULT_LANG_DIR', LANG_ROOT_DIR . $di->config->get('default_lang') .'/');
define('ENGLISH_LANG_DIR', LANG_ROOT_DIR .'en/');
if ($this->data['user_id'] != GUEST_UID)
{
- if ($this->data['user_lang'] && $this->data['user_lang'] != $bb_cfg['default_lang'])
+ if ($this->data['user_lang'] && $this->data['user_lang'] != $di->config->get('default_lang'))
{
- $bb_cfg['default_lang'] = basename($this->data['user_lang']);
- define('LANG_DIR', LANG_ROOT_DIR . $bb_cfg['default_lang'] .'/');
- }
-
- if (isset($this->data['user_timezone']))
- {
- $bb_cfg['board_timezone'] = $this->data['user_timezone'];
+ define('LANG_DIR', LANG_ROOT_DIR . basename($this->data['user_lang']) .'/');
}
}
- $this->data['user_lang'] = $bb_cfg['default_lang'];
- $this->data['user_timezone'] = $bb_cfg['board_timezone'];
+ $this->data['user_lang'] = $di->config->get('default_lang');
+ $this->data['user_timezone'] = $di->config->get('board_timezone');
if (!defined('LANG_DIR')) define('LANG_DIR', DEFAULT_LANG_DIR);
require(LANG_DIR .'main.php');
- setlocale(LC_ALL, $bb_cfg['lang'][$this->data['user_lang']]['locale']);
+ setlocale(LC_ALL, $di->config->get('lang.' . $this->data['user_lang'] . '.locale'));
$theme = setup_style();
$DeltaTime = new Date_Delta();
diff --git a/library/includes/smtp.php b/library/includes/smtp.php
index 7bf5679be..26cff7680 100644
--- a/library/includes/smtp.php
+++ b/library/includes/smtp.php
@@ -24,7 +24,8 @@ function server_parse($socket, $response, $line = __LINE__)
// Replacement or substitute for PHP's mail command
function smtpmail($mail_to, $subject, $message, $headers = '')
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
// Fix any bare linefeeds in the message to make it RFC821 Compliant.
$message = preg_replace("#(?config->get('smtp_ssl')) ? 'ssl://' : '';
+ if( !$socket = fsockopen($ssl . $di->config->get('smtp_host'), $di->config->get('smtp_port'), $errno, $errstr, 20) )
{
bb_die('Could not connect to smtp host : '. $errno .' : '. $errstr);
}
@@ -95,29 +96,29 @@ function smtpmail($mail_to, $subject, $message, $headers = '')
// Do we want to use AUTH?, send RFC2554 EHLO, else send RFC821 HELO
// This improved as provided by SirSir to accomodate
- if( !empty($bb_cfg['smtp_username']) && !empty($bb_cfg['smtp_password']) )
+ if( !empty($di->config->get('smtp_username')) && !empty($di->config->get('smtp_password')) )
{
- fputs($socket, "EHLO " . $bb_cfg['smtp_host'] . "\r\n");
+ fputs($socket, "EHLO " . $di->config->get('smtp_host') . "\r\n");
server_parse($socket, "250", __LINE__);
fputs($socket, "AUTH LOGIN\r\n");
server_parse($socket, "334", __LINE__);
- fputs($socket, base64_encode($bb_cfg['smtp_username']) . "\r\n");
+ fputs($socket, base64_encode($di->config->get('smtp_username')) . "\r\n");
server_parse($socket, "334", __LINE__);
- fputs($socket, base64_encode($bb_cfg['smtp_password']) . "\r\n");
+ fputs($socket, base64_encode($di->config->get('smtp_password')) . "\r\n");
server_parse($socket, "235", __LINE__);
}
else
{
- fputs($socket, "HELO " . $bb_cfg['smtp_host'] . "\r\n");
+ fputs($socket, "HELO " . $di->config->get('smtp_host') . "\r\n");
server_parse($socket, "250", __LINE__);
}
// From this point onward most server response codes should be 250
// Specify who the mail is from....
- fputs($socket, "MAIL FROM: <" . $bb_cfg['board_email'] . ">\r\n");
+ fputs($socket, "MAIL FROM: <" . $di->config->get('board_email') . ">\r\n");
server_parse($socket, "250", __LINE__);
// Add an additional bit of error checking to the To field.
diff --git a/library/includes/template.php b/library/includes/template.php
index 22bca933a..a8d6e70b4 100644
--- a/library/includes/template.php
+++ b/library/includes/template.php
@@ -93,7 +93,10 @@ class Template
*/
function Template($root = '.')
{
- global $bb_cfg, $lang;
+ global $lang;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
// setting pointer "vars"
$this->vars = &$this->_tpldata['.'][0];
@@ -102,7 +105,7 @@ class Template
$this->root = $root;
$this->tpl = basename($root);
$this->lang =& $lang;
- $this->use_cache = $bb_cfg['xs_use_cache'];
+ $this->use_cache = $di->config->get('xs_use_cache');
}
/**
@@ -227,7 +230,10 @@ class Template
{
$this->cur_tpl = $filename;
- global $lang, $bb_cfg, $user, $tr_cfg;
+ global $lang, $user, $tr_cfg;
+
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
$L =& $lang;
$V =& $this->vars;
@@ -1063,12 +1069,13 @@ class Template
function xs_startup()
{
- global $bb_cfg;
+ /** @var \TorrentPier\Di $di */
+ $di = \TorrentPier\Di::getInstance();
if (empty($this->xs_started)) {
$this->xs_started = 1;
// Adding language variable
- $this->vars['LANG'] = isset($this->vars['LANG']) ? $this->vars['LANG'] : $bb_cfg['default_lang'];
+ $this->vars['LANG'] = isset($this->vars['LANG']) ? $this->vars['LANG'] : $di->config->get('default_lang');
// Adding current template
$tpl = $this->root . '/';
if (substr($tpl, 0, 2) === './') {
diff --git a/library/includes/torrent_show_dl_list.php b/library/includes/torrent_show_dl_list.php
index 458172e01..c29105237 100644
--- a/library/includes/torrent_show_dl_list.php
+++ b/library/includes/torrent_show_dl_list.php
@@ -15,11 +15,11 @@ $dl_users_div_style_overflow = "padding: 6px; height: $dl_users_overflow_div_he
$template->assign_vars(array('DL_BUTTONS' => false));
-$count_mode = ($bb_cfg['bt_dl_list_only_count'] && !($di->request->get('dl') === 'names'));
+$count_mode = ($di->config->get('bt_dl_list_only_count') && !($di->request->get('dl') === 'names'));
-$dl_topic = (isset($t_data['tracker_status']) && !($bb_cfg['bt_dl_list_only_1st_page'] && $start));
-$show_dl_list = ($dl_topic && ($bb_cfg['bt_show_dl_list'] || ($bb_cfg['allow_dl_list_names_mode'] && $di->request->get('dl') === 'names')));
-$show_dl_buttons = ($dl_topic && $bb_cfg['bt_show_dl_list_buttons']);
+$dl_topic = (isset($t_data['tracker_status']) && !($di->config->get('bt_dl_list_only_1st_page') && $start));
+$show_dl_list = ($dl_topic && ($di->config->get('bt_show_dl_list') || ($di->config->get('allow_dl_list_names_mode') && $di->request->get('dl') === 'names')));
+$show_dl_buttons = ($dl_topic && $di->config->get('bt_show_dl_list_buttons'));
// link to clear DL-List
$template->assign_vars(array('S_DL_DELETE' => false));
@@ -122,10 +122,10 @@ if ($show_dl_buttons)
{
$template->assign_vars(array(
'DL_BUTTONS' => true,
- 'DL_BUT_WILL' => $bb_cfg['bt_show_dl_but_will'],
- 'DL_BUT_DOWN' => $bb_cfg['bt_show_dl_but_down'],
- 'DL_BUT_COMPL' => $bb_cfg['bt_show_dl_but_compl'],
- 'DL_BUT_CANCEL' => $bb_cfg['bt_show_dl_but_cancel'],
+ 'DL_BUT_WILL' => $di->config->get('bt_show_dl_but_will'),
+ 'DL_BUT_DOWN' => $di->config->get('bt_show_dl_but_down'),
+ 'DL_BUT_COMPL' => $di->config->get('bt_show_dl_but_compl'),
+ 'DL_BUT_CANCEL' => $di->config->get('bt_show_dl_but_cancel'),
));
$dl_hidden_fields = '
diff --git a/library/includes/ucp/bonus.php b/library/includes/ucp/bonus.php
index b1e3fd290..e6905ed9c 100644
--- a/library/includes/ucp/bonus.php
+++ b/library/includes/ucp/bonus.php
@@ -2,13 +2,16 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
$user_id = $userdata['user_id'];
$user_points = $userdata['user_points'];
-if($bb_cfg['seed_bonus_enabled'] && $bb_cfg['bonus_upload'] && $bb_cfg['bonus_upload_price'])
+if($di->config->get('seed_bonus_enabled') && $di->config->get('bonus_upload') && $di->config->get('bonus_upload_price'))
{
- $upload_row = unserialize($bb_cfg['bonus_upload']);
- $price_row = unserialize($bb_cfg['bonus_upload_price']);
+ $upload_row = unserialize($di->config->get('bonus_upload'));
+ $price_row = unserialize($di->config->get('bonus_upload_price'));
}
else bb_die($lang['EXCHANGE_NOT']);
diff --git a/library/includes/ucp/email.php b/library/includes/ucp/email.php
index 2022dca34..ead271a56 100644
--- a/library/includes/ucp/email.php
+++ b/library/includes/ucp/email.php
@@ -2,8 +2,11 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
// Is send through board enabled? No, return to index
-if (!$bb_cfg['board_email_form'])
+if (!$di->config->get('board_email_form'))
{
redirect("index.php");
}
@@ -50,7 +53,7 @@ if ($row = DB()->fetch_row($sql))
if (!$errors)
{
require(CLASS_DIR .'emailer.php');
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
$emailer->from($userdata['username'] ." <{$userdata['user_email']}>");
$emailer->email_address($username ." <$user_email>");
@@ -59,7 +62,7 @@ if ($row = DB()->fetch_row($sql))
$emailer->set_subject($subject);
$emailer->assign_vars(array(
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'FROM_USERNAME' => $userdata['username'],
'TO_USERNAME' => $username,
'MESSAGE' => $message,
diff --git a/library/includes/ucp/register.php b/library/includes/ucp/register.php
index 966c0da45..324833138 100644
--- a/library/includes/ucp/register.php
+++ b/library/includes/ucp/register.php
@@ -2,14 +2,15 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
array_deep($_POST, 'trim');
set_die_append_msg();
if (IS_ADMIN)
{
- $bb_cfg['reg_email_activation'] = false;
-
$new_user = (int) request_var('admin', '');
if ($new_user) $gen_simple_header = true;
@@ -18,19 +19,21 @@ if (IS_ADMIN)
));
}
+$req_email_activation = (IS_ADMIN) ? false : $di->config->get('reg_email_activation');
+
$can_register = (IS_GUEST || IS_ADMIN);
$submit = !empty($_POST['submit']);
-$errors = array();
+$errors = [];
$adm_edit = false; // редактирование админом чужого профиля
require(INC_DIR .'bbcode.php');
require(INC_DIR .'functions_validate.php');
require(INC_DIR .'functions_selects.php');
-$pr_data = array(); // данные редактируемого либо регистрационного профиля
-$db_data = array(); // данные для базы: регистрационные либо измененные данные юзера
-$tp_data = array(); // данные для tpl
+$pr_data = []; // данные редактируемого либо регистрационного профиля
+$db_data = []; // данные для базы: регистрационные либо измененные данные юзера
+$tp_data = []; // данные для tpl
// Данные профиля
switch ($mode)
@@ -44,20 +47,20 @@ switch ($mode)
if (!IS_ADMIN)
{
// Ограничение по ip
- if($bb_cfg['unique_ip'])
+ if($di->config->get('unique_ip'))
{
if($users = DB()->fetch_row("SELECT user_id, username FROM ". BB_USERS ." WHERE user_reg_ip = '". USER_IP ."' LIMIT 1"))
{
- bb_die(sprintf($lang['ALREADY_REG_IP'], ''. $users['username'] .'', $bb_cfg['tech_admin_email']));
+ bb_die(sprintf($lang['ALREADY_REG_IP'], ''. $users['username'] .'', $di->config->get('tech_admin_email')));
}
}
// Отключение регистрации
- if ($bb_cfg['new_user_reg_disabled'] || ($bb_cfg['reg_email_activation'] && $bb_cfg['emailer_disabled']))
+ if ($di->config->get('new_user_reg_disabled') || ($req_email_activation && $di->config->get('emailer_disabled')))
{
bb_die($lang['NEW_USER_REG_DISABLED']);
}
// Ограничение по времени
- else if ($bb_cfg['new_user_reg_restricted'])
+ else if ($di->config->get('new_user_reg_restricted'))
{
if (in_array(date('G'), array(0,/*1,2,3,4,5,6,7,8,11,12,13,14,15,16,*/17,18,19,20,21,22,23)))
{
@@ -81,8 +84,8 @@ switch ($mode)
'username' => '',
'user_password' => '',
'user_email' => '',
- 'user_timezone' => $bb_cfg['board_timezone'],
- 'user_lang' => $bb_cfg['default_lang'],
+ 'user_timezone' => $di->config->get('board_timezone'),
+ 'user_lang' => $di->config->get('default_lang'),
'user_opt' => 0,
'avatar_ext_id' => 0,
);
@@ -97,7 +100,7 @@ switch ($mode)
// field => can_edit
$profile_fields = array(
'user_active' => IS_ADMIN,
- 'username' => (IS_ADMIN || $bb_cfg['allow_namechange']),
+ 'username' => (IS_ADMIN || $di->config->get('allow_namechange')),
'user_password' => true,
'user_email' => true, // должен быть после user_password
'user_lang' => true,
@@ -149,7 +152,7 @@ switch ($mode)
}
// Captcha
-$need_captcha = ($mode == 'register' && !IS_ADMIN && !$bb_cfg['captcha']['disabled']);
+$need_captcha = ($mode == 'register' && !IS_ADMIN && !$di->config->get('captcha.disabled'));
if ($submit)
{
@@ -279,7 +282,7 @@ foreach ($profile_fields as $field => $can_edit)
{
$errors[] = $err;
}
- if ($bb_cfg['reg_email_activation'])
+ if ($req_email_activation)
{
$pr_data['user_active'] = 0;
$db_data['user_active'] = 0;
@@ -346,13 +349,13 @@ foreach ($profile_fields as $field => $can_edit)
{
$errors[] = $lang['WRONG_BIRTHDAY_FORMAT'];
}
- elseif (bb_date(TIMENOW, 'Y', false) - $birthday_date['year'] > $bb_cfg['birthday_max_age'])
+ elseif (bb_date(TIMENOW, 'Y', false) - $birthday_date['year'] > $di->config->get('birthday_max_age'))
{
- $errors[] = sprintf($lang['BIRTHDAY_TO_HIGH'], $bb_cfg['birthday_max_age']);
+ $errors[] = sprintf($lang['BIRTHDAY_TO_HIGH'], $di->config->get('birthday_max_age'));
}
- elseif (bb_date(TIMENOW, 'Y', false) - $birthday_date['year'] < $bb_cfg['birthday_min_age'])
+ elseif (bb_date(TIMENOW, 'Y', false) - $birthday_date['year'] < $di->config->get('birthday_min_age'))
{
- $errors[] = sprintf($lang['BIRTHDAY_TO_LOW'], $bb_cfg['birthday_min_age']);
+ $errors[] = sprintf($lang['BIRTHDAY_TO_LOW'], $di->config->get('birthday_min_age'));
}
}
@@ -409,12 +412,12 @@ foreach ($profile_fields as $field => $can_edit)
$pr_data['avatar_ext_id'] = 0;
$db_data['avatar_ext_id'] = 0;
}
- else if (!empty($_FILES['avatar']['name']) && $bb_cfg['avatars']['up_allowed'])
+ elseif (!empty($_FILES['avatar']['name']) && $di->config->get('avatars.up_allowed'))
{
require(INC_DIR .'functions_upload.php');
$upload = new upload_common();
- if ($upload->init($bb_cfg['avatars'], $_FILES['avatar']) && $upload->store('avatar', $pr_data))
+ if ($upload->init($di->config->get('avatars'), $_FILES['avatar']) && $upload->store('avatar', $pr_data))
{
$pr_data['avatar_ext_id'] = $upload->file_ext_id;
$db_data['avatar_ext_id'] = (int) $upload->file_ext_id;
@@ -425,7 +428,7 @@ foreach ($profile_fields as $field => $can_edit)
}
}
}
- $tp_data['AVATARS_MAX_SIZE'] = humn_size($bb_cfg['avatars']['max_size']);
+ $tp_data['AVATARS_MAX_SIZE'] = humn_size($di->config->get('avatars.max_size'));
break;
/**
@@ -494,7 +497,7 @@ foreach ($profile_fields as $field => $can_edit)
{
$sig = prepare_message($sig);
- if (mb_strlen($sig, 'UTF-8') > $bb_cfg['max_sig_chars'])
+ if (mb_strlen($sig, 'UTF-8') > $di->config->get('max_sig_chars'))
{
$errors[] = $lang['SIGNATURE_TOO_LONG'];
}
@@ -579,9 +582,9 @@ foreach ($profile_fields as $field => $can_edit)
$templates = htmlCHR($templates);
if ($submit && $templates != $pr_data['tpl_name'])
{
- $pr_data['tpl_name'] = $bb_cfg['tpl_name'];
- $db_data['tpl_name'] = (string) $bb_cfg['tpl_name'];
- foreach ($bb_cfg['templates'] as $folder => $name)
+ $pr_data['tpl_name'] = $di->config->get('tpl_name');
+ $db_data['tpl_name'] = (string) $di->config->get('tpl_name');
+ foreach ($di->config->get('templates') as $folder => $name)
{
if ($templates == $folder)
{
@@ -609,7 +612,7 @@ if ($submit && !$errors)
*/
if ($mode == 'register')
{
- if ($bb_cfg['reg_email_activation'])
+ if ($req_email_activation)
{
$user_actkey = make_rand_str(12);
$db_data['user_active'] = 0;
@@ -624,7 +627,7 @@ if ($submit && !$errors)
if (!IS_ADMIN) $db_data['user_reg_ip'] = USER_IP;
- if (!isset($db_data['tpl_name'])) $db_data['tpl_name'] = (string) $bb_cfg['tpl_name'];
+ if (!isset($db_data['tpl_name'])) $db_data['tpl_name'] = (string) $di->config->get('tpl_name');
$sql_args = DB()->build_array('INSERT', $db_data);
@@ -638,7 +641,7 @@ if ($submit && !$errors)
}
else
{
- if ($bb_cfg['reg_email_activation'])
+ if ($req_email_activation)
{
$message = $lang['ACCOUNT_INACTIVE'];
$email_template = 'user_welcome_inactive';
@@ -650,15 +653,15 @@ if ($submit && !$errors)
}
require(CLASS_DIR .'emailer.php');
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
- $emailer->from($bb_cfg['sitename'] ." <{$bb_cfg['board_email']}>");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
$emailer->email_address($username ." <{$email}>");
$emailer->use_template($email_template, $user_lang);
$emailer->assign_vars(array(
- 'SITENAME' => $bb_cfg['sitename'],
- 'WELCOME_MSG' => sprintf($lang['WELCOME_SUBJECT'], $bb_cfg['sitename']),
+ 'SITENAME' => $di->config->get('sitename'),
+ 'WELCOME_MSG' => sprintf($lang['WELCOME_SUBJECT'], $di->config->get('sitename')),
'USERNAME' => html_entity_decode($username),
'PASSWORD' => $new_pass,
'U_ACTIVATE' => make_url('profile.php?mode=activate&' . POST_USERS_URL . '=' . $new_user_id . '&act_key=' . $db_data['user_actkey'])
@@ -687,14 +690,14 @@ if ($submit && !$errors)
$db_data['user_actkey'] = $user_actkey;
require(CLASS_DIR .'emailer.php');
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
- $emailer->from($bb_cfg['sitename'] ." <{$bb_cfg['board_email']}>");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
$emailer->email_address($username ." <{$email}>");
$emailer->use_template('user_activate', $pr_data['user_lang']);
$emailer->assign_vars(array(
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'USERNAME' => html_entity_decode($username),
'U_ACTIVATE' => make_url("profile.php?mode=activate&u={$pr_data['user_id']}&act_key=$user_actkey"),
));
@@ -761,12 +764,12 @@ $template->assign_vars(array(
'TIMEZONE_SELECT' => tz_select($pr_data['user_timezone'], 'user_timezone'),
'USER_TIMEZONE' => $pr_data['user_timezone'],
- 'AVATAR_EXPLAIN' => sprintf($lang['AVATAR_EXPLAIN'], $bb_cfg['avatars']['max_width'], $bb_cfg['avatars']['max_height'], (round($bb_cfg['avatars']['max_size'] / 1024))),
+ 'AVATAR_EXPLAIN' => sprintf($lang['AVATAR_EXPLAIN'], $di->config->get('avatars.max_width'), $di->config->get('avatars.max_height'), (round($di->config->get('avatars.max_size') / 1024))),
'AVATAR_DISALLOWED' => bf($pr_data['user_opt'], 'user_opt', 'dis_avatar'),
- 'AVATAR_DIS_EXPLAIN' => sprintf($lang['AVATAR_DISABLE'], $bb_cfg['terms_and_conditions_url']),
+ 'AVATAR_DIS_EXPLAIN' => sprintf($lang['AVATAR_DISABLE'], $di->config->get('terms_and_conditions_url')),
'AVATAR_IMG' => get_avatar($pr_data['user_id'], $pr_data['avatar_ext_id'], !bf($pr_data['user_opt'], 'user_opt', 'dis_avatar')),
- 'SIGNATURE_EXPLAIN' => sprintf($lang['SIGNATURE_EXPLAIN'], $bb_cfg['max_sig_chars']),
+ 'SIGNATURE_EXPLAIN' => sprintf($lang['SIGNATURE_EXPLAIN'], $di->config->get('max_sig_chars')),
'SIG_DISALLOWED' => bf($pr_data['user_opt'], 'user_opt', 'dis_sig'),
'PR_USER_ID' => $pr_data['user_id'],
diff --git a/library/includes/ucp/sendpasswd.php b/library/includes/ucp/sendpasswd.php
index 546177c77..9e244bb89 100644
--- a/library/includes/ucp/sendpasswd.php
+++ b/library/includes/ucp/sendpasswd.php
@@ -2,11 +2,14 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
set_die_append_msg();
-if ($bb_cfg['emailer_disabled']) bb_die($lang['EMAILER_DISABLED']);
+if ($di->config->get('emailer_disabled')) bb_die($lang['EMAILER_DISABLED']);
-$need_captcha = ($_GET['mode'] == 'sendpassword' && !IS_ADMIN && !$bb_cfg['captcha']['disabled']);
+$need_captcha = ($_GET['mode'] == 'sendpassword' && !IS_ADMIN && !$di->config->get('captcha.disabled'));
if (isset($_POST['submit']))
{
@@ -41,15 +44,15 @@ if (isset($_POST['submit']))
}
require(CLASS_DIR .'emailer.php');
- $emailer = new emailer($bb_cfg['smtp_delivery']);
+ $emailer = new emailer($di->config->get('smtp_delivery'));
- $emailer->from($bb_cfg['sitename'] ." <{$bb_cfg['board_email']}>");
+ $emailer->from($di->config->get('sitename') ." <{$di->config->get('board_email')}>");
$emailer->email_address("$username <{$row['user_email']}>");
$emailer->use_template('user_activate_passwd', $row['user_lang']);
$emailer->assign_vars(array(
- 'SITENAME' => $bb_cfg['sitename'],
+ 'SITENAME' => $di->config->get('sitename'),
'USERNAME' => $username,
'PASSWORD' => $user_password,
'U_ACTIVATE' => make_url('profile.php?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
diff --git a/library/includes/ucp/topic_watch.php b/library/includes/ucp/topic_watch.php
index 4fad6c02b..1be7cb5c1 100644
--- a/library/includes/ucp/topic_watch.php
+++ b/library/includes/ucp/topic_watch.php
@@ -1,6 +1,9 @@
config->get('topic_notify_enabled')))
{
bb_die($lang['DISABLED']);
}
@@ -11,7 +14,7 @@ $tracking_topics = get_tracks('topic');
$user_id = $userdata['user_id'];
$start = isset($_GET['start']) ? abs(intval($_GET['start'])) : 0;
-$per_page = $bb_cfg['topics_per_page'];
+$per_page = $di->config->get('topics_per_page');
if (isset($_POST['topic_id_list']))
{
@@ -77,7 +80,7 @@ if ($watch_count > 0)
'LAST_POST_ID' => $watch[$i]['topic_last_post_id'],
'IS_UNREAD' => $is_unread,
'TOPIC_ICON' => get_topic_icon($watch[$i], $is_unread),
- 'PAGINATION' => ($watch[$i]['topic_status'] == TOPIC_MOVED) ? '' : build_topic_pagination(TOPIC_URL . $watch[$i]['topic_id'], $watch[$i]['topic_replies'], $bb_cfg['posts_per_page']),
+ 'PAGINATION' => ($watch[$i]['topic_status'] == TOPIC_MOVED) ? '' : build_topic_pagination(TOPIC_URL . $watch[$i]['topic_id'], $watch[$i]['topic_replies'], $di->config->get('posts_per_page')),
));
}
diff --git a/library/includes/ucp/viewprofile.php b/library/includes/ucp/viewprofile.php
index b59bd5980..e7fea1d0d 100644
--- a/library/includes/ucp/viewprofile.php
+++ b/library/includes/ucp/viewprofile.php
@@ -2,6 +2,9 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
+
require(INC_DIR .'bbcode.php');
$datastore->enqueue(array(
@@ -47,7 +50,7 @@ if (IS_ADMIN)
if (bf($profiledata['user_opt'], 'user_opt', 'user_viewemail') || $profiledata['user_id'] == $userdata['user_id'] || IS_AM)
{
- $email_uri = ($bb_cfg['board_email_form']) ? 'profile.php?mode=email&'. POST_USERS_URL .'='. $profiledata['user_id'] : 'mailto:'. $profiledata['user_email'];
+ $email_uri = ($di->config->get('board_email_form')) ? 'profile.php?mode=email&'. POST_USERS_URL .'='. $profiledata['user_id'] : 'mailto:'. $profiledata['user_email'];
$email = ''. $profiledata['user_email'] .'';
}
else
@@ -61,7 +64,7 @@ else
$profile_user_id = ($profiledata['user_id'] == $userdata['user_id']);
-$signature = ($bb_cfg['allow_sig'] && $profiledata['user_sig']) ? $profiledata['user_sig'] : '';
+$signature = ($di->config->get('allow_sig') && $profiledata['user_sig']) ? $profiledata['user_sig'] : '';
if(bf($profiledata['user_opt'], 'user_opt', 'dis_sig'))
{
@@ -103,9 +106,9 @@ $template->assign_vars(array(
'SKYPE' => $profiledata['user_skype'],
'TWITTER' => $profiledata['user_twitter'],
'USER_POINTS' => $profiledata['user_points'],
- 'GENDER' => ($bb_cfg['gender']) ? $lang['GENDER_SELECT'][$profiledata['user_gender']] : '',
- 'BIRTHDAY' => ($bb_cfg['birthday_enabled'] && $profiledata['user_birthday'] != '0000-00-00') ? $profiledata['user_birthday'] : '',
- 'AGE' => ($bb_cfg['birthday_enabled'] && $profiledata['user_birthday'] != '0000-00-00') ? birthday_age($profiledata['user_birthday']) : '',
+ 'GENDER' => ($di->config->get('gender')) ? $lang['GENDER_SELECT'][$profiledata['user_gender']] : '',
+ 'BIRTHDAY' => ($di->config->get('birthday_enabled') && $profiledata['user_birthday'] != '0000-00-00') ? $profiledata['user_birthday'] : '',
+ 'AGE' => ($di->config->get('birthday_enabled') && $profiledata['user_birthday'] != '0000-00-00') ? birthday_age($profiledata['user_birthday']) : '',
'L_VIEWING_PROFILE' => sprintf($lang['VIEWING_USER_PROFILE'], $profiledata['username']),
'L_MY_PROFILE' => sprintf($lang['VIEWING_MY_PROFILE'], 'profile.php?mode=editprofile'),
diff --git a/library/includes/viewtopic_torrent.php b/library/includes/viewtopic_torrent.php
index 226e19912..b11c55747 100644
--- a/library/includes/viewtopic_torrent.php
+++ b/library/includes/viewtopic_torrent.php
@@ -2,7 +2,10 @@
if (!defined('BB_ROOT')) die(basename(__FILE__));
-global $bb_cfg, $t_data, $poster_id, $is_auth, $dl_link_css, $dl_status_css, $lang, $userdata;
+global $t_data, $poster_id, $is_auth, $dl_link_css, $dl_status_css, $lang, $userdata;
+
+/** @var \TorrentPier\Di $di */
+$di = \TorrentPier\Di::getInstance();
$show_peers_limit = 300;
$max_peers_before_overflow = 20;
@@ -88,8 +91,8 @@ if ($tor_reged)
$tor_magnet = create_magnet($tor_info['info_hash'], $passkey['auth_key'], $userdata['session_logged_in']);
// ratio limits
- $min_ratio_dl = $bb_cfg['bt_min_ratio_allow_dl_tor'];
- $min_ratio_warn = $bb_cfg['bt_min_ratio_warning'];
+ $min_ratio_dl = $di->config->get('bt_min_ratio_allow_dl_tor');
+ $min_ratio_warn = $di->config->get('bt_min_ratio_warning');
$dl_allowed = true;
$user_ratio = 0;
@@ -125,7 +128,7 @@ if ($tor_reged)
{
$template->assign_vars(array(
'SHOW_RATIO_WARN' => true,
- 'RATIO_WARN_MSG' => sprintf($lang['BT_RATIO_WARNING_MSG'], $min_ratio_dl, $bb_cfg['ratio_url_help']),
+ 'RATIO_WARN_MSG' => sprintf($lang['BT_RATIO_WARNING_MSG'], $min_ratio_dl, $di->config->get('ratio_url_help')),
));
}
}
@@ -140,15 +143,15 @@ if ($tor_reged)
else
{
$template->assign_vars(array(
- 'DOWNLOAD_NAME' => '['.$bb_cfg['server_name'].'].t' . $topic_id . '.torrent',
+ 'DOWNLOAD_NAME' => '[' . $di->config->get('server_name') . '].t' . $topic_id . '.torrent',
'TOR_SILVER_GOLD' => $tor_info['tor_type'],
- 'TOR_FROZEN' => (!IS_AM) ? (isset($bb_cfg['tor_frozen'][$tor_info['tor_status']]) && !(isset($bb_cfg['tor_frozen_author_download'][$tor_info['tor_status']]) && $userdata['user_id'] == $tor_info['poster_id'])) ? true : '' : '',
+ 'TOR_FROZEN' => (!IS_AM) ? ($di->config->get('tor_frozen.' . $tor_info['tor_status']) && !($di->config->get('tor_frozen_author_download.' . $tor_info['tor_status'])) && $userdata['user_id'] == $tor_info['poster_id']) ? true : '' : '',
'TOR_STATUS_TEXT' => $lang['TOR_STATUS_NAME'][$tor_info['tor_status']],
- 'TOR_STATUS_ICON' => $bb_cfg['tor_icons'][$tor_info['tor_status']],
+ 'TOR_STATUS_ICON' => $di->config->get('tor_icons.' . $tor_info['tor_status']),
'TOR_STATUS_BY' => ($tor_info['checked_user_id'] && $is_auth['auth_mod']) ? (' · '. profile_url($tor_info) .' · '. delta_time($tor_info['checked_time']) . $lang['TOR_BACK'] .'') : '',
'TOR_STATUS_SELECT' => build_select('sel_status', array_flip($lang['TOR_STATUS_NAME']), TOR_APPROVED),
- 'TOR_STATUS_REPLY' => $bb_cfg['tor_comment'] && !IS_GUEST && in_array($tor_info['tor_status'], $bb_cfg['tor_reply']) && $userdata['user_id'] == $tor_info['poster_id'] && $t_data['topic_status'] != TOPIC_LOCKED,
+ 'TOR_STATUS_REPLY' => $di->config->get('tor_comment') && !IS_GUEST && in_array($tor_info['tor_status'], $di->config->get('tor_reply')) && $userdata['user_id'] == $tor_info['poster_id'] && $t_data['topic_status'] != TOPIC_LOCKED,
'DL_LINK_CLASS' => (isset($bt_userdata['user_status'])) ? $dl_link_css[$bt_userdata['user_status']] : 'genmed',
'DL_TITLE_CLASS' => (isset($bt_userdata['user_status'])) ? $dl_status_css[$bt_userdata['user_status']] : 'gen',
@@ -499,7 +502,7 @@ if ($tor_reged)
}
}
-if ($bb_cfg['bt_allow_spmode_change'] && $s_mode != 'full')
+if ($di->config->get('bt_allow_spmode_change') && $s_mode != 'full')
{
$template->assign_vars(array(
'PEERS_FULL_LINK' => true,
@@ -508,13 +511,13 @@ if ($bb_cfg['bt_allow_spmode_change'] && $s_mode != 'full')
}
$template->assign_vars(array(
- 'SHOW_DL_LIST_LINK' => (($bb_cfg['bt_show_dl_list'] || $bb_cfg['allow_dl_list_names_mode']) && $t_data['tracker_status']),
- 'SHOW_TOR_ACT' => ($tor_reged && (!isset($bb_cfg['tor_no_tor_act'][$tor_info['tor_status']]) || IS_AM)),
+ 'SHOW_DL_LIST_LINK' => (($di->config->get('bt_show_dl_list') || $di->config->get('allow_dl_list_names_mode')) && $t_data['tracker_status']),
+ 'SHOW_TOR_ACT' => ($tor_reged && (!$di->config->get('tor_no_tor_act.' . $tor_info['tor_status']) || IS_AM)),
'S_MODE_COUNT' => ($s_mode == 'count'),
'S_MODE_FULL' => ($s_mode == 'full'),
'PEER_EXIST' => ($seeders || $leechers || defined('SEEDER_EXIST') || defined('LEECHER_EXIST')),
'SEED_EXIST' => ($seeders || defined('SEEDER_EXIST')),
'LEECH_EXIST' => ($leechers || defined('LEECHER_EXIST')),
- 'TOR_HELP_LINKS' => $bb_cfg['tor_help_links'],
- 'CALL_SEED' => ($bb_cfg['callseed'] && $tor_reged && !isset($bb_cfg['tor_no_tor_act'][$tor_info['tor_status']]) && $seed_count < 3 && $tor_info['call_seed_time'] < (TIMENOW - 86400)),
+ 'TOR_HELP_LINKS' => $di->config->get('tor_help_links'),
+ 'CALL_SEED' => ($di->config->get('callseed') && $tor_reged && !$di->config->get('tor_no_tor_act.' . $tor_info['tor_status']) && $seed_count < 3 && $tor_info['call_seed_time'] < (TIMENOW - 86400)),
));
\ No newline at end of file
diff --git a/library/language/en/html/advert.html b/library/language/en/html/advert.html
index 80632ba56..cc98a5fa2 100644
--- a/library/language/en/html/advert.html
+++ b/library/language/en/html/advert.html
@@ -1,4 +1,4 @@
Advertising on ">
- Advertising on config->get('server_name')}:{$di->config->get('server_port')}" : $di->config->get('server_name'); ?>">config->get('sitename')?>
+
After that in 48 hours, we will remove interesting you links from the site.
- +Our email: config->get('abuse_email'); ?>
WARNING!
-a) We reserve the right to publish on the site of any information sent to us by mail
+a) We reserve the right to publish on the site of any information sent to us by mail config->get('abuse_email'); ?>
b) We have no control over the actions of users who may be re-post links to information, which is the object of your copyright. Any information the forum, place automatically, without any control from any quarter whatsoever, which corresponds to the generally accepted international practice of placing information on the Internet. However, in any case, we consider all your queries regarding the reference to the information that violates your rights.
diff --git a/library/language/en/html/user_agreement.html b/library/language/en/html/user_agreement.html index eccce4738..fcbc40161 100644 --- a/library/language/en/html/user_agreement.html +++ b/library/language/en/html/user_agreement.html @@ -6,7 +6,7 @@Internet - resource (website) "> (hereinafter - Resource) is an internet site that allows users to share information with each other via bit-torrent, as well as in free form, and provides a means to monitor the integrity of information transmitted (via hash-files).
+Internet - resource (website) config->get('server_name')}:{$di->config->get('server_port')}" : $di->config->get('server_name'); ?>">config->get('sitename')?> (hereinafter - Resource) is an internet site that allows users to share information with each other via bit-torrent, as well as in free form, and provides a means to monitor the integrity of information transmitted (via hash-files).
По вопросам размещения рекламы обращайтесь по адресу:
+По вопросам размещения рекламы обращайтесь по адресу: config->get('adv_email'); ?>
После этого, в течении 48 часов, мы удалим интересующие Вас ссылки с сайта.
- +Наш email: config->get('abuse_email'); ?>
ВНИМАНИЕ!
-а) Мы оставляем за собой право публикации на сайте любой информации присланной нам по почте
+а) Мы оставляем за собой право публикации на сайте любой информации присланной нам по почте config->get('abuse_email'); ?>
б) Мы не осуществляем контроль за действиями пользователей, которые могут повторно размещать ссылки на информацию, являющуюся объектом вашего авторского права. Любая информация на форуме, размещается автоматически, без какого либо контроля с чьей либо стороны, что соответствует общепринятой мировой практике размещения информации в сети интернет. Однако, мы в любом случае рассмотрим все Ваши запросы, относительно ссылок на информацию, нарушающую Ваши права.
diff --git a/library/language/ru/html/user_agreement.html b/library/language/ru/html/user_agreement.html index d68f7df4b..cbd13c1e7 100644 --- a/library/language/ru/html/user_agreement.html +++ b/library/language/ru/html/user_agreement.html @@ -6,7 +6,7 @@Интернет - ресурс (сайт) "> (в дальнейшем - Ресурс) является интернет-сайтом, позволяющим пользователям обмениваться друг с другом информацией по протоколу бит-торрент, а также в свободной форме, и предоставляющим средства для контроля целостности передаваемой информации (посредством hash-файлов).
+Интернет - ресурс (сайт) config->get('server_name')}:{$di->config->get('server_port')}" : $di->config->get('server_name'); ?>">config->get('sitename')?> (в дальнейшем - Ресурс) является интернет-сайтом, позволяющим пользователям обмениваться друг с другом информацией по протоколу бит-торрент, а также в свободной форме, и предоставляющим средства для контроля целостности передаваемой информации (посредством hash-файлов).
З питань розміщення реклами звертайтесь за адресою:
+З питань розміщення реклами звертайтесь за адресою: config->get('adv_email'); ?>
Після цього, протягом 48 годин, ми видалимо ці посилання з сайту.
- +Наш email: config->get('abuse_email'); ?>
УВАГА!
-а) Ми залишаємо за собою право публікації на сайті будь-якої інформації присланої нам по пошті
+а) Ми залишаємо за собою право публікації на сайті будь-якої інформації присланої нам по пошті config->get('abuse_email'); ?>
б) Ми не здійснюємо контроль за діями користувачів, які можуть повторно розміщувати посилання на інформацію, що є об'єктом вашого авторського права. Будь-яка інформація на форумі, розміщується автоматично, без якого контролю з будь якої сторони, що відповідає загальноприйнятій світовій практиці розміщення інформації в мережі інтернет. Проте, ми у будь-якому випадку розглянемо всі Ваші запити, щодо посилань на інформацію, що порушує Ваші права.
diff --git a/library/language/uk/html/user_agreement.html b/library/language/uk/html/user_agreement.html index e597bdbce..cf1da0603 100644 --- a/library/language/uk/html/user_agreement.html +++ b/library/language/uk/html/user_agreement.html @@ -6,7 +6,7 @@Інтернет - ресурс (сайт) "> (надалі - Ресурс) є інтернет-сайтом, що дозволяє користувачам обмінюватися один з одним інформацією по протоколу біт-торрент, а також у вільній формі, що надає засоби для контролю цілісності інформації, що передається (за допомогою hash-файлів).
+Інтернет - ресурс (сайт) config->get('server_name')}:{$di->config->get('server_port')}" : $di->config->get('server_name'); ?>">config->get('sitename')?> (надалі - Ресурс) є інтернет-сайтом, що дозволяє користувачам обмінюватися один з одним інформацією по протоколу біт-торрент, а також у вільній формі, що надає засоби для контролю цілісності інформації, що передається (за допомогою hash-файлів).
{TOTAL_GENDER}
{NEWEST_USER}
- +{TORRENTS_STAT}
{PEERS_STAT}
{SPEED_STAT}
- + - + + - + - + diff --git a/styles/templates/default/viewtopic_tor_guest.tpl b/styles/templates/default/viewtopic_tor_guest.tpl index af0098a72..ab8f9b4fe 100644 --- a/styles/templates/default/viewtopic_tor_guest.tpl +++ b/styles/templates/default/viewtopic_tor_guest.tpl @@ -4,8 +4,8 @@
- {L_HOW_TO_DOWNLOAD} ·
- {L_WHAT_IS_A_TORRENT} ·
- {L_RATINGS_AND_LIMITATIONS}
+ {L_HOW_TO_DOWNLOAD} ·
+ {L_WHAT_IS_A_TORRENT} ·
+ {L_RATINGS_AND_LIMITATIONS}