ok zrobione
otwórz
plusminus.php
znajdx
Kod:
if (!(($_GET['mode']=='view') || ($_GET['mode']=='point') || ($_GET['mode']=='action') || ($_POST['mode']=='give')))
zmien na
Kod:
if (!(($_GET['mode']=='view') || ($_GET['mode']=='point') || ($_GET['mode']=='action') || ($_POST['mode']=='give') || ($_GET['mode']=='viewall')))
znajdx
Kod:
else
{
if ($_POST['mode']=='give')
{
$post_id=intval($_POST['post']);
}
if ($_GET['mode']=='point')
{
$post_id=intval($_GET['post']);
}
$join_sql_table = ( empty($post_id) ) ? '' : ", " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2 ";
wcześniej dodaj
Kod:
elseif($_GET['mode']=='viewall')
{
$userdata = session_pagestart($user_ip, PAGE_PLUSMINUS);
init_userprefs($userdata);
$page_title = $lang['All_pm'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'plusminus_list_all.tpl')
);
$pm_auth=plusminus_auth();
$sort=(isset($_GET['sort']))?$_GET['sort']:'time';
$order=(isset($_GET['order']))?$_GET['order']:'asc';
$start=(isset($_GET['start']))?intval($_GET['start']):0;
$type=(isset($_GET['type']))?$_GET['type']:'all';
if ($sort!='time' && $sort!='user' && $sort!='reason' && $sort!='topic' && $sort!='dostal')
message_die(GENERAL_ERROR,$lang['Plusminus_secure']);
if ($type!='all' && $type!='plus' && $type!='minus')
message_die(GENERAL_ERROR,$lang['Plusminus_secure']);
if ($order!='asc' && $order!='desc')
message_die(GENERAL_ERROR,$lang['Plusminus_secure']);
$pagination = generate_pagination("memberlist.$phpEx?mode=$mode&order=$sort_order", $total_members, $board_config['topics_per_page'], $start). ' ';
$wheretype='';
if ($type=='plus') $wheretype=' WHERE pm.pm_type=1';
if ($type=='minus') $wheretype=' WHERE pm.pm_type=-1';
$sql='SELECT COUNT(*) AS number FROM '.PLUSMINUS_TABLE.' pm '.$wheretype;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, "Plusminus error", '', __LINE__, __FILE__, $sql);
}
$row=$db->sql_fetchrow($result);
$total_pm = $row['number'];
$per_page = $board_config['topics_per_page'];
$pagination = generate_pagination('plusminus.'.$phpEx.'?mode=viewall&type='.$type.'&sort='.$sort.'&order='.$order, $total_pm, $per_page, $start). ' ';
$page_number = sprintf($lang['Page_of'], ( floor( $start / $per_page ) + 1 ), ceil( $total_pm / $per_page ));
$show_all=sprintf($lang['Plusminus_show_all'],append_sid('plusminus.'.$phpEx.'?mode=viewall&type=all&sort='.$sort.'&order='.$order.'&start='.$start));
if ($type=='all') $show_all='<u>'.$show_all.'</u>';
$show_plus=sprintf($lang['Plusminus_show_plus'],append_sid('plusminus.'.$phpEx.'?mode=viewall&type=plus&sort='.$sort.'&order='.$order.'&start='.$start));
if ($type=='plus') $show_plus='<u>'.$show_plus.'</u>';
$show_minus=sprintf($lang['Plusminus_show_minus'],append_sid('plusminus.'.$phpEx.'?mode=viewall&type=minus&sort='.$sort.'&order='.$order.'&start='.$start));
if ($type=='minus') $show_minus='<u>'.$show_minus.'</u>';
//http://localhost/second/plusminus/plusminus.php?mode=view&u=2&type=all&sort=time&order=desc&start=0
$list_hidden_fields=array('mode'=>'viewall','type'=>$type,'start'=>$start);
$hidden_fields='';
foreach($list_hidden_fields as $k=>$v) $hidden_fields.='<input type="hidden" name="'.$k.'" value="'.$v.'" />';
$sort_fields=array('time'=>$lang['Time'],'user'=>$lang['Plusminus_giving_user'],'reason'=>$lang['Plusminus_reason'],'title'=>$lang['Post'], 'dostal'=>$lang['Dostal']);
$sort_field='';
foreach($sort_fields as $k=>$v) $sort_field.='<option value="'.$k.'"'.(($sort==$k)?' selected="selected"':'').'>'.$v.'</option>';
$sort_fields=array('asc'=>$lang['Sort_Ascending'],'desc'=>$lang['Sort_Descending']);
$order_field='';
foreach($sort_fields as $k=>$v) $order_field.='<option value="'.$k.'"'.(($order==$k)?' selected="selected"':'').'>'.$v.'</option>';
if ($pm_auth['auth_remove_points'])
$template->assign_block_vars('delete_point',array());
$template->assign_vars(array(
'L_PM_TITLE'=>$lang['All_pm'],
'L_POST'=>$lang['Post'],
'L_TIME'=>$lang['Time'],
'L_DOSTAL'=>$lang['Dostal'],
'L_REASON'=>$lang['Plusminus_reason'],
'L_GIVING_USER'=>$lang['Plusminus_giving_user'],
'L_DELETE_POINT'=>$lang['Plusminus_delete_point'],
'SHOW_ALL'=>$show_all,
'SHOW_PLUS'=>$show_plus,
'SHOW_MINUS'=>$show_minus,
'PAGINATION'=>$pagination,
'PAGE_NUMBER'=>$page_number,
'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
'L_ORDER' => $lang['Order'],
'L_SORT' => $lang['Sort'],
'S_MODE_ACTION'=>append_sid('plusminus.'.$phpEx),
'S_HIDDEN_FIELDS'=>$hidden_fields,
'S_MODE_SELECT'=>$sort_field,
'S_ORDER_SELECT'=>$order_field
));
$ordersql='';
if ($sort=='user') $ordersql='u.username';
if ($sort=='time') $ordersql='pm.pm_time';
if ($sort=='reason') $ordersql='pm.pm_reason';
if ($sort=='topic') $ordersql='t.topic_title';
if ($sort=='dostal') $ordersql='pm.pm_to';
$ordersql.=' '.$order;
$sql='SELECT pm.pm_id, pm.post_id, t.topic_title, pm.pm_time, u.user_id, u.username, u.user_rank, u.user_posts, pm.pm_type, pm.pm_reason, pm.pm_from, pm.pm_to, u2.user_id AS user_id_to, u2.username AS username_to, u2.user_rank AS user_rank_to, u2.user_posts AS user_posts_to
FROM ((((' . PLUSMINUS_TABLE . ' pm
LEFT JOIN ' . POSTS_TABLE . ' p ON pm.post_id=p.post_id)
LEFT JOIN ' . TOPICS_TABLE . ' t ON p.topic_id=t.topic_id)
LEFT JOIN ' . USERS_TABLE . ' u ON pm.pm_from = u.user_id)
LEFT JOIN ' . USERS_TABLE . ' u2 ON pm.pm_to = u2.user_id)
' . $wheretype . ' ORDER BY '.$ordersql.'
LIMIT ' . "$start, $per_page";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, "Plusminus error", '', __LINE__, __FILE__, $sql);
}
if (($db->sql_numrows($result))==0)
{
$template->assign_block_vars('switch_no_plusminus',array());
}
while ($row=$db->sql_fetchrow($result))
{
$post='<a href="'.append_sid('viewtopic.'.$phpEx.'?'.POST_POST_URL.'='.$row['post_id']).'#'.$row['post_id'].'">'.$row['topic_title'].'</a>';
$class=($row['pm_type']==1)?'plus':'minus';
$time=create_date($board_config['default_dateformat'], $row['pm_time'], $board_config['board_timezone']);
if (defined('COLOR_RANKS'))
{
$giving=color_username($row['user_id'],$row['username'],$row['user_rank'],$row['user_posts']);
$dostal=color_username($row['user_id_to'],$row['username_to'],$row['user_rank_to'],$row['user_posts_to']);
}
else
{
$link=append_sid('profile.'.$phpEx.'?mode=viewprofile&' . POST_USERS_URL . '='.$row['user_id']);
$giving='<a href="'.$link.'">'.$row['username'].'</a>';
$link_to=append_sid('profile.'.$phpEx.'?mode=viewprofile&' . POST_USERS_URL . '='.$row['user_id_to']);
$giving='<a href="'.$link.'">'.$row['username_to'].'</a>';
}
$id=$row['user_id_to'];
$delete='';
if ($pm_auth['auth_remove_points'])
$delete='<a href="'.append_sid('plusminus.'.$phpEx.'?mode=action&u='.$id.'&pm='.$row['pm_id'].'&type=remove').'">'.$lang['Plusminus_delete_point'].'</a>';
$reason = (strlen($row['pm_reason'])>30) ? substr($row['pm_reason'],0,30) . '...' : $row['pm_reason'];
$template->assign_block_vars('plusminus',array(
'ROW_CLASS'=>$class,
'POST'=>$post,
'REASON'=>htmlspecialchars($reason),
'TIME'=>$time,
'GIVING'=>$giving,
'DOSTAL'=>$dostal
));
if ($delete) $template->assign_block_vars('plusminus.delete',array(
'DELETE'=>$delete
));
}
}
otwórz lang_main.php
znajdx
Kod:
?>
wczesniej dodaj
Kod:
$lang['Dostal'] = 'Otrzymał';
$lang['All_pm'] = 'Lista pochwał/ostrzeżeń';
//link jest na koncu strony glównej, moge zmienic jak chcesz
otwórz
index.php
znajdx
Kod:
'L_MARK_FORUMS_READ' => $lang['Mark_all_forums'],
później dodaj
Kod:
'L_ALL_PM' => $lang['All_pm'],
'U_ALL_PM' => append_sid("plusminus.$phpEx?mode=viewall"),
otwórz
index_body.tpl
na samym końcu dodaj
Kod:
<a href="{U_ALL_PM}">{L_ALL_PM}</a>
skopiuj plik plusminus_list_all.tpl do templates/x/
Autor postu otrzymał pochwałę
Załączniki:
plusminus_list_all.rar [797 Bajty]
Ściągnięto 341 razy
AIFM [1%] - kiedyś powstanie