Те, кто ставил ранее R495 выполните запрос к БД: ALTER TABLE `bb_users` CHANGE `user_birthday` `user_birthday` date NOT NULL DEFAULT '0000-00-00' Кто только начал обновляться есть инструкция со скриптом: http://torrentpier.me/threads/r495-Инструкция-по-изменению-даты-ДР-в-движке.2231/ git-svn-id: https://torrentpier2.googlecode.com/svn/trunk@496 a8ac35ab-4ca4-ca47-4c2d-a49a94f06293
This commit is contained in:
gemini_13@torba.su 2013-03-11 00:50:40 +00:00
commit 0ddef30d06
15 changed files with 64 additions and 124 deletions

View file

@ -1443,7 +1443,7 @@ CREATE TABLE IF NOT EXISTS `bb_users` (
`user_avatar` varchar(100) NOT NULL DEFAULT '',
`user_avatar_type` tinyint(4) NOT NULL DEFAULT '0',
`user_gender` tinyint(1) NOT NULL DEFAULT '0',
`user_birthday` date DEFAULT NULL,
`user_birthday` date NOT NULL DEFAULT '0000-00-00',
`user_next_birthday_greeting` int(11) NOT NULL DEFAULT '0',
`user_email` varchar(255) NOT NULL DEFAULT '',
`user_skype` varchar(32) NOT NULL DEFAULT '',

View file

@ -902,6 +902,10 @@ else
$text = sprintf($lang['SEARCH_FOR_USERFIELD_ICQ'],$text);
$field = 'user_icq';
break;
case 'skype':
$text = sprintf($lang['SEARCH_FOR_USERFIELD_SKYPE'],$text);
$field = 'user_skype';
break;
case 'website':
$text = sprintf($lang['SEARCH_FOR_USERFIELD_WEBSITE'],$text);
$field = 'user_website';

View file

@ -83,6 +83,7 @@ class ajax_common
'change_torrent' => array('user'),
'change_tor_status' => array('user'),
'modify_draft' => array('user'),
'view_profile' => array('user'),
'view_post' => array('guest'),
'view_torrent' => array('guest'),
@ -530,13 +531,13 @@ class ajax_common
if(!$bb_cfg['status_of_draft']) $this->ajax_die($lang['MODULE_OFF']);
$tid = (int)$this->request["id_draft"];
$mode = (int)$this->request["mode"];
$tid = (int)$this->request['id_draft'];
$mode = (int)$this->request['mode'];
$sql = "SELECT * FROM ". BB_TOPICS ." WHERE topic_id = {$tid}";
if (!$row = DB()->fetch_row($sql)) $this->ajax_die("Нет такого черновика");
if (!$row = DB()->fetch_row($sql)) $this->ajax_die('Нет такого черновика');
if ($row["topic_poster"] != $userdata["user_id"] && !IS_ADMIN) $this->ajax_die("Нельзя удалять чужие черновики");
if ($row['topic_poster'] != $userdata['user_id'] && !IS_ADMIN) $this->ajax_die('Нельзя удалять чужие черновики');
if (!$mode)
{
@ -546,6 +547,11 @@ class ajax_common
{
DB()->query("UPDATE ". BB_TOPICS ." SET is_draft = 0 WHERE topic_id = {$tid}");
}
$this->response["tid"] = $tid;
$this->response['tid'] = $tid;
}
function view_profile()
{
require(AJAX_DIR .'view_profile.php');
}
}

View file

@ -56,8 +56,8 @@ $domain_name = (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : $do
// Increase number of revision after update
$bb_cfg['tp_version'] = '2.5 pre-stable';
$bb_cfg['tp_release_date'] = '20-02-2013';
$bb_cfg['tp_release_state'] = 'R495';
$bb_cfg['tp_release_date'] = '11-03-2013';
$bb_cfg['tp_release_state'] = 'R496';
// Database
$charset = 'utf8';

View file

@ -275,7 +275,7 @@ $template->assign_vars(array(
'READONLY' => HTML_READONLY,
'SELECTED' => HTML_SELECTED,
'U_SEARCH_SELF_BY_LAST' => "search.php?uid={$userdata['user_id']}&o=5",
'U_SEARCH_SELF_BY_LAST' => "search.php?uid={$userdata['user_id']}&o=5",
));
if (!empty($page_cfg['dl_links_user_id']))

View file

@ -8,7 +8,7 @@ if (!$profiledata = get_userdata($_GET[POST_USERS_URL])) bb_die($lang['NO_USER_I
if (!$userdata['session_logged_in']) redirect("login.php?redirect={$_SERVER['REQUEST_URI']}");
if ($profiledata["user_id"] != $userdata["user_id"] && !IS_ADMIN) bb_die("Ты ноги мыла, Дездемона? :)");
if ($profiledata['user_id'] != $userdata['user_id'] && !IS_ADMIN) bb_die('Ты ноги мыла, Дездемона? :)');
$sql = "
SELECT t.*, f.forum_name, f.cat_id, f.forum_parent AS parent_id, f2.forum_name AS parent_name, c.cat_title
@ -16,7 +16,7 @@ $sql = "
LEFT JOIN ". BB_FORUMS." f ON (f.forum_id = t.forum_id)
LEFT JOIN ". BB_CATEGORIES." c ON (f.cat_id = c.cat_id)
LEFT JOIN ". BB_FORUMS." f2 ON (f.forum_parent = f2.forum_id)
WHERE t.topic_poster = ". $profiledata["user_id"] ."
WHERE t.topic_poster = ". $profiledata['user_id'] ."
AND t.is_draft = 1
";
@ -28,28 +28,28 @@ if(!$rows = DB()->fetch_rowset($sql))
$i = 0;
foreach ($rows as $row)
{
$category = '<a href="'. CAT_URL . $row["cat_id"] .'">'. $row["cat_title"] .'</a>';
$forum = '<a href="'. FORUM_URL . $row["forum_id"] .'">'. $row["forum_name"] .'</a>';
$topic = '<a href="'. TOPIC_URL . $row["topic_id"] .'">'. $row["topic_title"] .'</a>';
$category = '<a href="'. CAT_URL . $row['cat_id'] .'">'. $row['cat_title'] .'</a>';
$forum = '<a href="'. FORUM_URL . $row['forum_id'] .'">'. $row['forum_name'] .'</a>';
$topic = '<a href="'. TOPIC_URL . $row['topic_id'] .'">'. $row['topic_title'] .'</a>';
if($row["parent_id"] != 0) $forum .= '&nbsp;<em>&raquo;</em>&nbsp;<a href="'. FORUM_URL . $row["parent_id"] .'">'. $row["parent_name"] .'</a>';
if($row["parent_id"] != 0) $forum .= '&nbsp;<em>&raquo;</em>&nbsp;<a href="'. FORUM_URL . $row['parent_id'] .'">'. $row['parent_name'] .'</a>';
$template->assign_block_vars("DRAFT", array(
$template->assign_block_vars('DRAFT', array(
"ROW_CLASS" => ($i % 2) ? 2 : 1,
"TOPIC_ID" => $row["topic_id"],
"TOPIC_ID" => $row['topic_id'],
"TOPIC" => $topic,
'FORUM' => $forum,
"CATEGORY" => $category,
"DT_CREATE" => bb_date($row["topic_time"], "Y-m-d H:i"),
"EDIT_POST" => make_url('posting.php?mode=editpost&p='. $row["topic_first_post_id"])
"DT_CREATE" => bb_date($row['topic_time'], 'Y-m-d H:i'),
"EDIT_POST" => make_url('posting.php?mode=editpost&p='. $row['topic_first_post_id'])
));
$i++;
}
$template->assign_vars(array(
"PAGE_TITLE" => $lang["DRAFTS"],
"USERNAME" => $profiledata["username"],
"PROFILE" => profile_url(array('username' => $profiledata["username"], 'user_id' => $profiledata["user_id"])),
"PAGE_TITLE" => $lang['DRAFTS'],
"USERNAME" => $profiledata['username'],
"PROFILE" => profile_url(array('username' => $profiledata['username'], 'user_id' => $profiledata['user_id'])),
));
print_page('usercp_viewdraft.tpl');

View file

@ -191,13 +191,6 @@ else if (IS_MOD)
));
}
if (!bf($profiledata['user_opt'], 'user_opt', 'allow_dls') || (IS_AM || $profile_user_id))
{
// Show users torrent-profile
define('IN_VIEWPROFILE', TRUE);
include(INC_DIR .'ucp/torrent_userprofile.php');
}
// Ajax bt_userdata
if (IS_AM || $profile_user_id)
{

View file

@ -181,7 +181,7 @@ if (!empty($mod))
{
foreach ($user_ids as $user_id)
{
$moderators[$forum_id][] = '<a href="'. (PROFILE_URL . $user_id) .'">'. $mod['name_users'][$user_id] .'</a>';
$moderators[$forum_id][] = '<a href="'. PROFILE_URL . $user_id .'">'. $mod['name_users'][$user_id] .'</a>';
}
}
foreach ($mod['mod_groups'] as $forum_id => $group_ids)

View file

@ -36,6 +36,10 @@ $lang['MESSAGE'] = 'Message';
$lang['TORRENT'] = 'Torrent';
$lang['PROFILE'] = 'Profile';
$lang['PERMISSIONS'] = 'Permissions';
$lang['TYPE'] = 'Type';
$lang['SEEDER'] = 'Seeder';
$lang['LEECHER'] = 'Leecher';
$lang['RELEASER'] = 'Releaser';
$lang['1_DAY'] = '1 Day';
$lang['7_DAYS'] = '7 Days';
@ -1339,6 +1343,7 @@ $lang['ONLY_1_TOR_PER_POST'] = 'You can register only one torrent in one post';
$lang['ONLY_1_TOR_PER_TOPIC'] = 'You can register only one torrent in one topic';
$lang['VIEWING_USER_BT_PROFILE'] = 'Viewing torrent-profile :: %s'; // %s is username
$lang['CUR_ACTIVE_DLS'] = 'Currently active torrents';
$lang['CUR_ACTIVE_DLS_ERROR'] = 'User does not download and seeding';
$lang['TD_TRAF'] = 'Today';
$lang['YS_TRAF'] = 'Yesterday';

View file

@ -54,6 +54,7 @@ $lang['SEARCH_FOR_POSTCOUNT_LESSER'] = 'Searching for users with a post count le
$lang['SEARCH_FOR_POSTCOUNT_RANGE'] = 'Searching for users with a post count between %d and %d';
$lang['SEARCH_FOR_POSTCOUNT_EQUALS'] = 'Searching for users with a post count value of %d';
$lang['SEARCH_FOR_USERFIELD_ICQ'] = 'Searching for users with a ICQ address matching %s';
$lang['SEARCH_FOR_USERFIELD_SKYPE'] = 'Searching for users with an Skype matching %s';
$lang['SEARCH_FOR_USERFIELD_WEBSITE'] = 'Searching for users with an Website matching %s';
$lang['SEARCH_FOR_USERFIELD_LOCATION'] = 'Searching for users with a Location matching %s';
$lang['SEARCH_FOR_USERFIELD_INTERESTS'] = 'Searching for users with their Interests field matching %s';

View file

@ -38,6 +38,10 @@ $lang['HOURS'] = 'Часы';
$lang['MESSAGE'] = 'Сообщение';
$lang['TORRENT'] = 'Торрент';
$lang['PERMISSIONS'] = 'Права доступа';
$lang['TYPE'] = 'Тип';
$lang['SEEDER'] = 'Сидер';
$lang['LEECHER'] = 'Личер';
$lang['RELEASER'] = 'Релизер';
$lang['1_DAY'] = 'за последний день';
$lang['7_DAYS'] = 'за последние 7 дней';
@ -1342,6 +1346,7 @@ $lang['ONLY_1_TOR_PER_POST'] = 'Вы не можете зарегистриро
$lang['ONLY_1_TOR_PER_TOPIC'] = 'Вы не можете зарегистрировать еще один торрент для этого топика';
$lang['VIEWING_USER_BT_PROFILE'] = 'Торрент-профиль'; // %s is username
$lang['CUR_ACTIVE_DLS'] = 'Текущие активные торренты';
$lang['CUR_ACTIVE_DLS_ERROR'] = 'Пользователь ничего не скачивает и не сидирует';
$lang['TD_TRAF'] = 'Сегодня';
$lang['YS_TRAF'] = 'Вчера';

View file

@ -54,6 +54,7 @@ $lang['SEARCH_FOR_POSTCOUNT_LESSER'] = 'Поиск пользователей с
$lang['SEARCH_FOR_POSTCOUNT_RANGE'] = 'Поиск пользователей с количеством сообщений от %d до %d';
$lang['SEARCH_FOR_POSTCOUNT_EQUALS'] = 'Поиск пользователей с количеством сообщений %d';
$lang['SEARCH_FOR_USERFIELD_ICQ'] = 'Поиск пользователей с адресом ICQ %s';
$lang['SEARCH_FOR_USERFIELD_SKYPE'] = 'Поиск пользователей с логином в Skype %s';
$lang['SEARCH_FOR_USERFIELD_WEBSITE'] = 'Поиск пользователей, чей веб-сайт %s';
$lang['SEARCH_FOR_USERFIELD_LOCATION'] = 'Поиск пользователей из %s';
$lang['SEARCH_FOR_USERFIELD_INTERESTS'] = 'Поиск пользователей с интересами %s';

View file

@ -4,7 +4,7 @@
<div>
<h3>BitTorrent клиенты</h3>
<ul>
<li><a href="http://www.utorrent.com/" class="med"><b>uTorrent</b></a> <span class="med nowrap">(рекомендуемый: <b>3.1.3</b>)</span></li>
<li><a href="http://www.utorrent.com/" class="med"><b>uTorrent</b></a> <span class="med nowrap">(рекомендуемый: <b>3.3</b>)</span></li>
</ul>
</div>
@ -13,8 +13,8 @@
<div>
<h3>FAQ</h3>
<ul class="med">
<li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', InfoWinParams); return false;"><b>Правила пользования данным ресурсом</b></a></li>
<li><a href="faq.php?mode=bbcode" class="med" >Руководство по BBCode</a></li>
<li><a href="misc.php?do=info&show=user_agreement" class="med" onclick="window.open(this.href, '', InfoWinParams); return false;"><b>Правила пользования данным ресурсом</b></a></li>
<li><a href="faq.php?mode=bbcode" class="med">Руководство по BBCode</a></li>
</ul>
</div>

View file

@ -81,7 +81,7 @@
<td class="row3"><img src="{SPACER}" width="1" height="1" alt="."></td>
</tr>
<tr>
<td class="row1" nowrap="nowrap"><span class="gen"><b>{L_USERFIELD}:</b>&nbsp;<select name="userfield_type"><option value="icq" selected="selected">{L_ICQ}</option><option value="website">{L_WEBSITE}</option><option value="location">{L_LOCATION}</option><option value="interests">{L_INTERESTS}</option></select>&nbsp;<input class="post" type="text" name="userfield_value" maxlength="25" size="25" />&nbsp;<input type="submit" class="post2" name="search_userfield" value="{L_SEARCH}" /> {L_REGULAR_EXPRESSION} <input type="checkbox" name="search_userfield_regex" value="true" /></span></td>
<td class="row1" nowrap="nowrap"><span class="gen"><b>{L_USERFIELD}:</b>&nbsp;<select name="userfield_type"><option value="icq" selected="selected">{L_ICQ}</option><option value="skype">{L_SKYPE}</option><option value="website">{L_WEBSITE}</option><option value="location">{L_LOCATION}</option><option value="interests">{L_INTERESTS}</option></select>&nbsp;<input class="post" type="text" name="userfield_value" maxlength="25" size="25" />&nbsp;<input type="submit" class="post2" name="search_userfield" value="{L_SEARCH}" /> {L_REGULAR_EXPRESSION} <input type="checkbox" name="search_userfield_regex" value="true" /></span></td>
</tr>
<tr>
<td class="row2"><span class="small">{L_SEARCH_USERS_USERFIELD_EXPLAIN}</span></td>

View file

@ -155,6 +155,19 @@ ajax.callback.gen_passkey = function(data){
</script>
<!-- ENDIF / SHOW_PASSKEY -->
<script type="text/javascript">
ajax.view_profile = function(mode) {
ajax.exec({
action : 'view_profile',
mode : mode,
user_id : {PROFILE_USER_ID}
});
}
ajax.callback.view_profile = function(data) {
$('#active_torrents').html(data.active_torrents);
}
</script>
<style type="text/css">
#traf-stats-tbl { width: 468px; background: #F9F9F9; border: 1px solid #A5AFB4; border-collapse: separate; }
#traf-stats-tbl th, #traf-stats-tbl td { padding: 2px 10px 3px; text-align: center; white-space: nowrap; font-size: 11px; }
@ -316,6 +329,7 @@ ajax.callback.gen_passkey = function(data){
<td>
<b>{LAST_ACTIVITY_TIME}</b>
<!-- IF TRAF_STATS --><span id="traf-stats-span">[ <a href="#" id="traf-stats-btn" class="med" onclick="ajax.index_data('get_traf_stats'); return false;">{L_VIEWING_USER_BT_PROFILE}</a> ]</span><!-- ENDIF -->
[ <a href="#torrent" class="med" onclick="ajax.view_profile('active_torrents'); return false;">{L_CUR_ACTIVE_DLS}</a> ]
</td>
</tr>
<tr>
@ -478,96 +492,7 @@ ajax.callback.gen_passkey = function(data){
</table><!--/user_profile-->
<a name="torrent"></a>
<div class="spacer_8"></div>
<!-- IF ALLOW_DLS -->
<table class="bordered w100">
<tr>
<th colspan="4" class="thHead">{L_CUR_ACTIVE_DLS}</th>
</tr>
<tr>
<td {RELEASED_ROWSPAN} class="row1 tCenter dlComplete lh_150 pad_4">{L_RELEASINGS}</td>
<!-- BEGIN switch_releasing_none -->
<td colspan="3" class="row1 w100 tCenter pad_8">{L_NONE}</td>
</tr>
<!-- END switch_releasing_none -->
<!-- BEGIN released -->
<td class="row3 tCenter">{L_FORUM}</td>
<td colspan="2" class="row3 tCenter">{L_TOPICS}</td>
</tr>
<!-- BEGIN releasedrow -->
<tr class="row1">
<td class="tCenter pad_4"><a class="gen" href="{seed.releasedrow.U_VIEW_FORUM}">{seed.releasedrow.FORUM_NAME}</a></td>
<td colspan="2" class="pad_4"><a class="med" href="{seed.releasedrow.U_VIEW_TOPIC}">{seed.releasedrow.TOR_TYPE}<b>{seed.releasedrow.TOPIC_TITLE}</b></a></td>
</tr>
<!-- END releasedrow -->
<!-- END released -->
<tr>
<td colspan="4" class="row2 pad_0"><div class="spacer_4"></div></td>
</tr>
<tr>
<td {SEED_ROWSPAN} class="row1 tCenter dlComplete lh_150 pad_4">{L_SEEDINGS}</td>
<!-- BEGIN switch_seeding_none -->
<td colspan="3" class="row1 w100 tCenter pad_8">{L_NONE}</td>
</tr>
<!-- END switch_seeding_none -->
<!-- BEGIN seed -->
<td class="row3 tCenter">{L_FORUM}</td>
<td colspan="2" class="row3 tCenter">{L_TOPICS}</td>
</tr>
<!-- BEGIN seedrow -->
<tr class="row1">
<td class="tCenter pad_4"><a class="gen" href="{seed.seedrow.U_VIEW_FORUM}">{seed.seedrow.FORUM_NAME}</a></td>
<td colspan="2" class="pad_4"><a class="med" href="{seed.seedrow.U_VIEW_TOPIC}">{seed.seedrow.TOR_TYPE}<b>{seed.seedrow.TOPIC_TITLE}</b></a></td>
</tr>
<!-- END seedrow -->
<!-- END seed -->
<tr>
<td colspan="4" class="row2 pad_0"><div class="spacer_4"></div></td>
</tr>
<tr>
<td {LEECH_ROWSPAN} class="row1 tCenter dlDown lh_150 pad_4">{L_LEECHINGS}</td>
<!-- BEGIN switch_leeching_none -->
<td colspan="3" class="row1 w100 tCenter pad_8">{L_NONE}</td>
</tr>
<!-- END switch_leeching_none -->
<!-- BEGIN leech -->
<td class="row3 tCenter">{L_FORUM}</td>
<td class="row3 tCenter">{L_TOPICS}</td>
<td class="row3 tCenter">%</td>
</tr>
<!-- BEGIN leechrow -->
<tr class="row1">
<td class="tCenter pad_4"><a class="gen" href="{leech.leechrow.U_VIEW_FORUM}">{leech.leechrow.FORUM_NAME}</a></td>
<td class="pad_4"><a class="med" href="{leech.leechrow.U_VIEW_TOPIC}">{leech.leechrow.TOR_TYPE}<b>{leech.leechrow.TOPIC_TITLE}</b></a></td>
<td class="tCenter med"><b>{leech.leechrow.COMPL_PERC}</b></td>
</tr>
<!-- END leechrow -->
<!-- END leech -->
<tr class="row2 tCenter">
<td class="catBottom pad_6" colspan="4">
<!-- IF SHOW_SEARCH_DL -->
<a href="{U_SEARCH_DL_WILL}" class="med">{L_SEARCH_DL_WILL_DOWNLOADS}</a>
::
<a href="{U_SEARCH_DL_DOWN}" class="med">{L_SEARCH_DL_DOWN}</a>
::
<a href="{U_SEARCH_DL_COMPLETE}" class="med">{L_SEARCH_DL_COMPLETE}</a>
::
<a href="{U_SEARCH_DL_CANCEL}" class="med">{L_SEARCH_DL_CANCEL}</a>
<!-- ELSE -->
&nbsp;
<!-- ENDIF -->
</td>
</tr>
</table>
<!-- ENDIF -->
<div id="active_torrents"></div>
<!--bottom_info-->
<div class="bottom_info">