diff --git a/upload/config.php b/upload/config.php index ce35805af..f752dbccb 100644 --- a/upload/config.php +++ b/upload/config.php @@ -57,7 +57,7 @@ $bb_cfg['css_ver'] = 1; // Increase number of revision after update $bb_cfg['tp_version'] = '2.0.2'; -$bb_cfg['tp_release_state'] = 'TP II r82'; +$bb_cfg['tp_release_state'] = 'TP II r83'; $bb_cfg['tp_release_date'] = '05-07-2011'; $bb_cfg['board_disabled_msg'] = 'форум временно отключен'; // 'forums temporarily disabled'; // show this msg if board has been disabled via ON/OFF trigger diff --git a/upload/includes/functions_post.php b/upload/includes/functions_post.php index 7bd82b486..922f829b4 100644 --- a/upload/includes/functions_post.php +++ b/upload/includes/functions_post.php @@ -240,7 +240,7 @@ function submit_post($mode, &$post_data, &$message, &$meta, &$forum_id, &$topic_ 'post_text' => $post_message, )); - // + //Обновление кеша новостей на главной $news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id'])); if(isset($news_forums[$forum_id]) && $bb_cfg['show_latest_news'] && $mode == 'newtopic') { diff --git a/upload/includes/functions_report.php b/upload/includes/functions_report.php index a96fdfc62..6f8eb7f00 100644 --- a/upload/includes/functions_report.php +++ b/upload/includes/functions_report.php @@ -348,7 +348,7 @@ function report_notify($mode) // Obtain notification users // $user_level_sql = ($bb_cfg['report_list_admin']) ? '= ' . ADMIN : 'IN(' . ADMIN . ', ' . MOD . ')'; - $sql = 'SELECT user_id, user_level, user_email, user_lang, user_timezone, user_dateformat + $sql = 'SELECT user_id, user_level, user_email, user_lang FROM ' . BB_USERS . ' WHERE user_active = 1 AND user_level ' . $user_level_sql . ' @@ -439,7 +439,7 @@ function report_notify($mode) // Obtain notification users // $user_level_sql = ($bb_cfg['report_list_admin']) ? '= ' . ADMIN : 'IN(' . ADMIN . ', ' . MOD . ')'; - $sql = 'SELECT user_id, user_level, user_email, user_lang, user_dateformat, user_timezone + $sql = 'SELECT user_id, user_level, user_email, user_lang FROM ' . BB_USERS . ' WHERE user_active = 1 AND user_level ' . $user_level_sql . ' @@ -588,7 +588,7 @@ function report_notify($mode) $vars = array_merge($vars, array( 'REPORT_AUTHOR' => $userdata['username'], - 'REPORT_TIME' => bb_date($report['report_time'], $user_info['user_dateformat'], $user_info['user_timezone']), + 'REPORT_TIME' => bb_date($report['report_time']), 'REPORT_REASON' => $report_reason) ); break; @@ -596,7 +596,7 @@ function report_notify($mode) case 'change': $vars = array_merge($vars, array( 'REPORT_CHANGE_AUTHOR' => $report['username'], - 'REPORT_CHANGE_TIME' => bb_date($report['report_change_time'], $user_info['user_dateformat'], $user_info['user_timezone']), + 'REPORT_CHANGE_TIME' => bb_date($report['report_change_time']), 'REPORT_CHANGE_STATUS' => $lang['REPORT_STATUS'][$status], 'REPORT_CHANGE_COMMENT' => str_replace(array("\r\n", "\r", "\n"), ' ', $report['report_change_comment'])) ); diff --git a/upload/includes/sessions.php b/upload/includes/sessions.php index 048474b23..2490f4b11 100644 --- a/upload/includes/sessions.php +++ b/upload/includes/sessions.php @@ -621,11 +621,6 @@ class user_common define('LANG_DIR', LANG_ROOT_DIR .'lang_'. $bb_cfg['default_lang'] .'/'); } - if ($this->data['user_dateformat']) - { - $bb_cfg['default_dateformat'] = $this->data['user_dateformat']; - } - if (isset($this->data['user_timezone'])) { $bb_cfg['board_timezone'] = $this->data['user_timezone']; @@ -633,7 +628,6 @@ class user_common } $this->data['user_lang'] = $bb_cfg['default_lang']; - $this->data['user_dateformat'] = $bb_cfg['default_dateformat']; $this->data['user_timezone'] = $bb_cfg['board_timezone']; if (!defined('LANG_DIR')) diff --git a/upload/includes/ucp/usercp_register.php b/upload/includes/ucp/usercp_register.php index dcca3cd04..70739a495 100644 --- a/upload/includes/ucp/usercp_register.php +++ b/upload/includes/ucp/usercp_register.php @@ -40,6 +40,15 @@ switch ($mode) } if (!IS_ADMIN) { + // Ограничение по ипу + if($bb_cfg['user_unique_ip']) + { + if($users = DB()->fetch_row("SELECT user_id, username FROM ". BB_USERS ." WHERE user_reg_ip = '". USER_IP ."' LIMIT 1")) + { + bb_die('С вашего IP-адреса уже зарегистрирован пользователь '. $users['username'] .'.

Если Вы ранее не регистрировались на нашем трекере, обратитесь к Администрации'); + } + } + // Отключение регистрации if ($bb_cfg['new_user_reg_disabled'] || ($bb_cfg['reg_email_activation'] && $bb_cfg['emailer_disabled'])) { @@ -66,7 +75,8 @@ switch ($mode) 'username' => true, 'user_password' => true, 'user_email' => true, - 'user_timezone' => true, + 'user_timezone' => true, + 'user_lang' => true, ); $pr_data = array( @@ -74,7 +84,8 @@ switch ($mode) 'username' => '', 'user_password' => '', 'user_email' => '', - 'user_timezone' => $bb_cfg['board_timezone'], + 'user_timezone' => $bb_cfg['board_timezone'], + 'user_lang' => $bb_cfg['board_lang'], 'user_opt' => 0, ); break; @@ -92,7 +103,8 @@ switch ($mode) $profile_fields = array( 'username' => IS_ADMIN, 'user_password' => true, - 'user_timezone' => true, + 'user_lang' => true, + 'user_timezone' => true, 'user_opt' => true, 'user_email' => true, // должен быть после user_password 'user_icq' => true, @@ -300,6 +312,18 @@ foreach ($profile_fields as $field => $can_edit) $tp_data['USER_EMAIL'] = htmlCHR($email); break; + /** + * Язык (edit, reg) + */ + case 'user_lang': + $user_lang = isset($_POST['user_lang']) ? (string) $_POST['user_lang'] : $pr_data['user_lang']; + if ($submit) + { + $pr_data['user_lang'] = $user_lang; + $db_data['user_lang'] = $user_lang; + } + break; + /** * Часовой пояс (edit, reg) */ @@ -310,7 +334,7 @@ foreach ($profile_fields as $field => $can_edit) if (isset($lang['TZ'][$user_timezone]) && $user_timezone != $pr_data['user_timezone']) { $pr_data['user_timezone'] = $user_timezone; - $db_data['user_timezone'] = (int) $user_timezone; + $db_data['user_timezone'] = $user_timezone; } } break; @@ -737,6 +761,7 @@ $template->assign_vars(array( 'SHOW_PASS' => ($adm_edit || ($mode == 'register' && IS_ADMIN)), 'CAPTCHA_HTML' => ($need_captcha) ? CAPTCHA()->get_html() : '', + 'LANGUAGE_SELECT' => language_select($user_lang, 'user_lang'), 'TIMEZONE_SELECT' => tz_select($user_timezone, 'user_timezone'), 'AVATAR_EXPLAIN' => sprintf($lang['AVATAR_EXPLAIN'], $bb_cfg['avatar_max_width'], $bb_cfg['avatar_max_height'], (round($bb_cfg['avatar_filesize'] / 1024))), diff --git a/upload/modcp.php b/upload/modcp.php index 7be2dcff9..03cc6c4a1 100644 --- a/upload/modcp.php +++ b/upload/modcp.php @@ -238,7 +238,7 @@ switch ($mode) { $result = topic_delete($req_topics, $forum_id); - // + //Обновление кеша новостей на главной $news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id'])); if(isset($news_forums[$forum_id]) && $bb_cfg['show_latest_news'] && $result) { @@ -267,7 +267,7 @@ switch ($mode) $new_forum_id = (int) $_POST['new_forum']; $result = topic_move($req_topics, $new_forum_id, $forum_id, isset($_POST['move_leave_shadow']), isset($_POST['insert_bot_msg'])); - // + //Обновление кеша новостей на главной $news_forums = array_flip(explode(',', $bb_cfg['latest_news_forum_id'])); if(isset(($news_forums[$forum_id] || $news_forums[$new_forum_id])) && $bb_cfg['show_latest_news'] && $result) { diff --git a/upload/templates/default/usercp_register.tpl b/upload/templates/default/usercp_register.tpl index e85d48ac1..c4ad21dc8 100644 --- a/upload/templates/default/usercp_register.tpl +++ b/upload/templates/default/usercp_register.tpl @@ -126,6 +126,12 @@ ajax.callback.gen_passkey = function(data){ + + + {L_BOARD_LANG}: + {LANGUAGE_SELECT} + + {L_TIMEZONE}: {TIMEZONE_SELECT}