Pagina 1 van 1

Tread kicker mod hulp

Geplaatst: 29 sep 2006, 17:31
door Niek
Hallo iedereen,

Heb de Tread kicker mod geïnstalleerd.
Verder geen problemen tegen gekomen.

Alleen wat ik niet kan vinden is het volgende:
Het zou mogelijk moeten zijn om in te stellen of de gekickte gebruikers alleen geen berichten meer mogen plaatsen of ook niks meer mogen lezen.
phpBBHacks.com schreef:- Decide whether the kicked user can read the thread or not.
Kan deze optie nergens vinden.
Weet iemand dit misschien?

Geplaatst: 29 sep 2006, 17:32
door Paul
Heb je een link naar de mod?

Geplaatst: 29 sep 2006, 17:33
door Niek
Zie mijn eerste bericht :lol:
http://phpbbhacks.com/download/3887

Geplaatst: 01 okt 2006, 14:23
door Niek
Weet iemand dit misschien??

Geplaatst: 01 okt 2006, 15:12
door svenn
kijk eens bij admin paneel -> user management -> de user. denk dat je daar mss iets kunt vinden.

Geplaatst: 01 okt 2006, 15:21
door Niek
Hier kan ik wel instellen of deze gebruiker de optie mag gebruiken. Maar niet of bij het kicken van een gebruiker hij/zij het topic nog kan lezen.

Dit staat wel in de code van het bestand admin/admin_thread_kicker.php (volgens mij tenminste, in ieder geval de verwijzing van de tekst die er bij zou moeten horen)
maar als ik in het ACP kijk onder Thread Kicker -->Administration staat daar niks.
Ik vermoed dus dat er een fout in de template file zit, maar ik weet hier niet genoeg van op dit zelf op te lossen.

Code van admin/admin_thread_kicker.php

Code: Selecteer alles

<?php
/***************************************************************************
*     begin                : Sun Oct 17 2004
*     copyright            : (C) 2004 Majorflam
*     email                : majorflam@blueyonder.co.uk
*
****************************************************************************/

define('IN_PHPBB', 1);

//
// First we do the setmodules stuff for the admin cp.
//
if( !empty($setmodules) )
{
	$filename = basename(__FILE__);
	$module['Thread Kicker']['Administration'] = $filename;

	return;
}

//
// Load default header
//
$no_page_header = TRUE;
$phpbb_root_path = './../';
require($phpbb_root_path . 'extension.inc');
require('./pagestart.' . $phpEx);

// Get language Variables
include_once($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_admin_thread_kicker.' . $phpEx);

//
// Output the authorisation details
//
$template->set_filenames(array(
	'body' => 'admin/admin_thread_kicker.tpl'
	)
);

// pagination
$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0; 

$pagination = ''; 
$total_pag_items = 1;

// are we kicking all
$submit_all=$HTTP_POST_VARS['unkick_all'];
if ( $submit_all )
{
$sql=" DELETE FROM " . THREAD_KICKER_TABLE;
if ( !($result = $db->sql_query($sql)) ) 
		{ 
			message_die(GENERAL_ERROR, 'Error in unkicking all users', '', __LINE__, __FILE__, $sql_z); 
		}
	}

// Build Kicker Table
$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;

if ( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
{
	$mode = ( isset($HTTP_POST_VARS['mode']) ) ? htmlspecialchars($HTTP_POST_VARS['mode']) : htmlspecialchars($HTTP_GET_VARS['mode']);
}
else
{
	$mode = 'date';
}

if(isset($HTTP_POST_VARS['order']))
{
	$sort_order = ($HTTP_POST_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
}
else if(isset($HTTP_GET_VARS['order']))
{
	$sort_order = ($HTTP_GET_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
}
else
{
	$sort_order = 'DESC';
}

$mode_types_text = array( $lang['tk_date'], $lang['tk_thread'], $lang['tk_kicked'], $lang['tk_kicked_by']);
$mode_types = array('date', 'thread', 'kicked', 'kicked_by');

$select_sort_mode = '<select name="mode">';
for($i = 0; $i < count($mode_types_text); $i++)
{
	$selected = ( $mode == $mode_types[$i] ) ? ' selected="selected"' : '';
	$select_sort_mode .= '<option value="' . $mode_types[$i] . '"' . $selected . '>' . $mode_types_text[$i] . '</option>';
}
$select_sort_mode .= '</select>';

$select_sort_order = '<select name="order">';
if($sort_order == 'ASC')
{
	$select_sort_order .= '<option value="ASC" selected="selected">' . $lang['Sort_Ascending'] . '</option><option value="DESC">' . $lang['Sort_Descending'] . '</option>';
}
else
{
	$select_sort_order .= '<option value="ASC">' . $lang['Sort_Ascending'] . '</option><option value="DESC" selected="selected">' . $lang['Sort_Descending'] . '</option>';
}
$select_sort_order .= '</select>';

switch( $mode )
{	case 'date':
		$order_by = "kick_time $sort_order LIMIT $start, " . $board_config['topics_per_page'];
		break;
	case 'kicked':
		$order_by = "kicked_username, kick_time $sort_order LIMIT $start, " . $board_config['topics_per_page'];
		break;
	case 'thread':
		$order_by = "topic_title, kick_time $sort_order LIMIT $start, " . $board_config['topics_per_page'];
		break;
	case 'kicked_by':
		$order_by = "kicker_username, kick_time $sort_order LIMIT $start, " . $board_config['topics_per_page'];
		break;
	default:
		$order_by = "kick_time $sort_order LIMIT $start, " . $board_config['topics_per_page'];
		break;
}

$sql = "SELECT * FROM " . THREAD_KICKER_TABLE . "
ORDER BY $order_by";
if ( !($result = $db->sql_query($sql)) ) 
		{ 
			message_die(GENERAL_ERROR, 'Error in building list of kicked users', '', __LINE__, __FILE__, $sql); 
		}
		$x=1;
		while ( $row = $db->sql_fetchrow($result) )
		{
		$tk_kick_id=$row['kick_id'];
		//has this user just been kicked
		$submit=$HTTP_POST_VARS['unkick_marked'];
		if ( $submit )
		{
		$check=$HTTP_POST_VARS[$tk_kick_id];
		if ( $check == 1 )
		{
		$sql_z=" DELETE FROM " . THREAD_KICKER_TABLE . "
		WHERE kick_id=$tk_kick_id";
		if ( !($result_z = $db->sql_query($sql_z)) ) 
		{ 
			message_die(GENERAL_ERROR, 'Error in unkicking user', '', __LINE__, __FILE__, $sql_z); 
		}
		}
		}
		if ( $check != 1 )
		{
		$tk_user_id=$row['user_id'];
		$tk_topic_id=$row['topic_id'];
		$tk_kicker=$row['kicker'];
		$tk_post_id=$row['post_id'];
		$tk_kick_time=$row['kick_time'];
		$tk_kicker_status=$row['kicker_status'];
		
		$sql_d=" SELECT topic_title FROM " . TOPICS_TABLE . "
		WHERE topic_id=$tk_topic_id";
		if ( !($result_d = $db->sql_query($sql_d)) ) 
		{ 
			message_die(GENERAL_ERROR, 'Error in retrieving username', '', __LINE__, __FILE__, $sql_d); 
		}
		$row_d = $db->sql_fetchrow($result_d);
		$topic_title = $row_d['topic_title'];
		
		$thread='<a href="' . $phpbb_root_path . append_sid("viewtopic.$phpEx?t=$tk_topic_id") . '" target="_blank">' . $topic_title . '</a>';
		
		// Convert date to viewable format
		$kick_time = create_date( $board_config['default_dateformat'], $tk_kick_time, $board_config['board_timezone'] );
		
		$row_color = ( !($x % 2) ) ? $theme['td_color1'] : $theme['td_color2']; 
		$row_class = ( !($x % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
		
		// Get usernames from userids
		$sql_a = "SELECT username FROM " . USERS_TABLE . " WHERE user_id=$tk_user_id";
		if ( !($result_a = $db->sql_query($sql_a)) ) 
		{ 
			message_die(GENERAL_ERROR, 'Error in retrieving username', '', __LINE__, __FILE__, $sql_a); 
		}
		$row_a = $db->sql_fetchrow($result_a);
		$kicked_username = $row_a['username'];
		
		$sql_b = "SELECT username FROM " . USERS_TABLE . " WHERE user_id=$tk_kicker";
		if ( !($result_b = $db->sql_query($sql_b)) ) 
		{ 
			message_die(GENERAL_ERROR, 'Error in retrieving username', '', __LINE__, __FILE__, $sql_b); 
		}
		$row_b = $db->sql_fetchrow($result_b);
		$kicker_username = $row_b['username'];
		
		$tk_mark = '<input type="checkbox" name="' . $tk_kick_id . '" value="1" />';
		
		$template->assign_block_vars('kicker', array(
			'ROW_COLOR' => '#' . $row_color, 
			'ROW_CLASS' => $row_class,
			'KICK_ID' => $tk_kick_id,
			'KICKED' => '<a href="' . $phpbb_root_path . append_sid("profile.$phpEx?mode=viewprofile&u=$tk_user_id") . '" target="_blank">' . $kicked_username . '</a>',
			'KICKED_BY' => '<a href="' . $phpbb_root_path . append_sid("profile.$phpEx?mode=viewprofile&u=$tk_kicker") . '" target="_blank">' . $kicker_username . '</a>',
			'THREAD' => $thread,
			'DATE' => $kick_time,
			'CHECKBOX' => $tk_mark,
			)); 
		$x++;
		}
		}
// Pagination output
$sql = 'SELECT count(*) AS total 
   FROM ' . THREAD_KICKER_TABLE . " ORDER BY kick_time DESC"; 

if ( !($result = $db->sql_query($sql)) ) 
{ 
   message_die(GENERAL_ERROR, 'Error getting total for pagination', '', __LINE__, __FILE__, $sql); 
} 

if ( $total = $db->sql_fetchrow($result) ) 
{ 
   $total_pag_items = $total['total'];
   if ( !empty($total_pag_items) )
   {
   $pagination = generate_pagination("admin_thread_kicker.php?mode=$mode&order=$sort_order", $total_pag_items, $board_config['topics_per_page'], $start). '';
   $page_number = sprintf($lang['Page_of'], ( floor( $start / $board_config['topics_per_page'] ) + 1 ), ceil( $total_pag_items / $board_config['topics_per_page'] )); 
	}
}
// end pagination output
	
// Set template Vars
$template->assign_vars(array(
'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
'S_MODE_SELECT' => $select_sort_mode,
'L_ORDER' => $lang['Order'],
'S_ORDER_SELECT' => $select_sort_order,
'L_SUBMIT' => $lang['Sort'],
'KICKER_HEADER' => $lang['tk_kicker_heading'],
'KICKER_TABLE' => $lang['tk_kicker_table'],
'UNKICK' => $lang['tk_unkick'],
'KICKED' => $lang['tk_kicked'],
'THREAD' => $lang['tk_thread'],
'DATE' => $lang['tk_date'],
'KICKED_BY' => $lang['tk_kicked_by'],
'KICKER_SET_HEAD' => $lang['tk_kicker_set_head'],
'KICKER_SET_EXPLAIN' => $lang['tk_kicker_set_explain'],
'KICK_MARKED' => $lang['tk_kick_marked'],
'UNKICK_ALL' => $lang['tk_unkick_all'],
'KICKER_SET_CURRENT' => $current_setting,
'KICKER_SET_CHANGE_BUTTON' => $lang['tk_kicker_set_change'],
'PAGINATION' => $pagination, 
'PAGE_NUMBER' => $page_number,
'VIEW_SET_HEAD' => $lang['tk_view_set_head'],
'VIEW_SET_EXPLAIN' => $lang['tk_view_set_explain'],
'VIEW_SET_CHANGE_BUTTON' => $lang['tk_view_set_change_button'],
'VIEW_SET_CURRENT' => $current_view_setting,

));

include('./page_header_admin.'.$phpEx);

$template->pparse('body');

include('./page_footer_admin.'.$phpEx);

?>
code van templates/GEBRUIKTE TEMPLATE/admin/admin_thread_kicker.tpl

Code: Selecteer alles

<form action="{S_THREAD_KICKER_ADMIN}" method="post">
	<h1>{KICKER_HEADER}</h1>
	<h1>{KICKER_TABLE}</h1>
<table width="100%" cellspacing="0" cellpadding="3" border="0"> 
<tr> 
<td><span class="gen">{PAGE_NUMBER}</span></td> 
<td align="right" nowrap="nowrap"><span class="genmed">{L_SELECT_SORT_METHOD}:&nbsp;{S_MODE_SELECT}&nbsp;&nbsp;{L_ORDER}&nbsp;{S_ORDER_SELECT}&nbsp;&nbsp;
<input type="submit" name="submit" value="{L_SUBMIT}" class="liteoption" />
</span></td>
<td align="right"><span class="gen">{PAGINATION}</span></td> 
</tr> 
</table> 
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="forumline">	
<tr>
		<th height="25" class="thCornerL" nowrap="nowrap">{UNKICK}</th>
		<th class="thTop" nowrap="nowrap">{KICKED}</th>
		<th class="thTop" nowrap="nowrap">{THREAD}</th>
		<th class="thTop" nowrap="nowrap">{DATE}</th>
		<th class="thCornerR" nowrap="nowrap">{KICKED_BY}</th>		
	</tr>

	<!-- BEGIN kicker -->
	<tr> 
		<td class="{kicker.ROW_CLASS}" align="center" valign="middle"><span class="gen">{kicker.CHECKBOX}</span></td>
		<td class="{kicker.ROW_CLASS}" align="center" valign="middle"><span class="gen">{kicker.KICKED}</span></td>
		<td class="{kicker.ROW_CLASS}" align="center" valign="middle"><span class="gen">{kicker.THREAD}</span></td>
		<td class="{kicker.ROW_CLASS}" align="center" valign="middle"><span class="gen">{kicker.DATE}</span></td>
		<td class="{kicker.ROW_CLASS}" align="center" valign="middle"><span class="gen">{kicker.KICKED_BY}</font></span></td>
		</tr>
	<!-- END kicker -->
	<tr>
		<td width="100%" class="catBottom" align="left" colspan="5">
			<table>
				<tr>
					<td><input type="submit" name="unkick_marked" value="{KICK_MARKED}" class="mainoption" /></td>
					<td><input type="submit" name="unkick_all" value="{UNKICK_ALL}" class="mainoption" /></td>
				</tr>
			</table>
		</td>
</tr>
</table>
<!--
</table>
<br />
	<h1>{KICKER_SET_HEAD}</h1>
	<p>{KICKER_SET_EXPLAIN}</p>
	<p>{KICKER_SET_CURRENT}</p>
	<div align="left"><input type="submit" name="kicker_set_change" value="{KICKER_SET_CHANGE_BUTTON}" class="mainoption" /></div>
<br />
	<h1>{VIEW_SET_HEAD}</h1>
	<p>{VIEW_SET_EXPLAIN}</p>
	<p>{VIEW_SET_CURRENT}</p>
	<div align="left"><input type="submit" name="view_set_change" value="{VIEW_SET_CHANGE_BUTTON}" class="mainoption" /></div>
<br />
-->
<table width="100%" cellspacing="0" cellpadding="3" border="0"> 
<tr> 
<td><span class="gen">{PAGE_NUMBER}</span></td> 
<td align="right"><span class="gen">{PAGINATION}</span></td> 
</tr> 
</table> 
		<div align="center"><span class="copyright">Thread Kicker Mod 1.0.4 by Majorflam &copy 2004 <a href="http://www.majormod.com" class="copyright">Major Mod - Software Modifications For phpBB2</a></span></div>