Seite 1 von 1

Problem: Latest Post - zeigt nicht alles an

Verfasst: 05.10.2002 00:22
von Wuppi
Hi

der Mod zeigt die BEiträge der letzten X Tage an. Jetzt aber festgestellt das er dies net von allen Foren macht. Einige werden nicht angezeigt.

Ich dachte zu erst das paar Foren nicht angezeigt werden, weil nur für Members ersichtlich sind - aber dem ist nicht so - abere Member-Only Foren stehen da auch drin.

Weiß jemand woran das liegen könnte? Bzw. wonach ich mal suchen könnte? ... hab den Mod vor paar Monaten eingebaut (heute kam Beschwerde nr. 2 deswegen) - hab da net mehr so den überblick ;(

Bis dann
Wuppi

Edit: den Titel geändert: war falscher Mod ;) sorry

Verfasst: 05.10.2002 15:17
von Acid
..zeig ma den Hack.

Verfasst: 05.10.2002 17:48
von Wuppi
Hi

erstmal SORRY ... falscher Mod - hatte die Daten net @home ... jetzt bin ich woanders - hier liegt der Mod noch:

Latest Post heißt der!

latest.php:

Code: Alles auswählen

<?php

/**********************************************************************************
########################################################
## Mod Title:   Latest Post
## Mod Version: 0.1
## Author:      Matt Slovig < matthias@slovig.de >
## Credits:     Philip Mayer for the original phpBB 1.4x-Script I used
########################################################
**********************************************************************************/

define('IN_PHPBB', true);
$phpbb_root_path = "./";
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_admin.' . $phpEx);
include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_latest.' . $phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX, $board_config['session_length']);
init_userprefs($userdata);
//
// End session management
//

$page_title = $lang['latest_posts'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

if (!isset($selorder)) $selorder = "las24";
if (!isset($nodays)) $nodays = 3;

$template->assign_vars(array(
	"L_MATCHES" => $lang['matches'],
	"L_TOPIC" => $lang['Topic'],
	"L_FORUM" => $lang['Forum'],
	"L_AUTHOR" => $lang['Author'],
	"L_POSTED" => $lang['Posted'],

	"FORM_ACTION" => $PHP_SELF,
	"L_LAS24_MSG"   => $lang['last_24h'],
	"L_TODAY_MSG"   => $lang['today'],
	"L_YESTR_MSG"   => $lang['yesterday'],
	"L_LWEEK_MSG"   => $lang['last_week'],
	"L_LADAY_MSG"   => $lang['last_xdays'],

	"L_SHOW"        => $lang['show_posts'],
	"L_SHOWING"     => $lang['showing_posts'],
	"L_DAYS"        => $lang['day_posts'],
	"L_LAST"        => $lang['last_posts'],

	"NODAYS"      => $nodays,
	"PAGE_NAME" => $lang['latest_posts'],

	)
);

$template->set_filenames(array(
	"body" => "latest.tpl")
);

// SQLs:

$part1 = "
SELECT from_unixtime(p.post_time, '%d.%m.%y %H:%i:%s') as topic_time,
       f.forum_name as forum_name,
       f.forum_id as forum_id,
       u.username as username,
       p.poster_id as poster_id,
       p.post_id as post_id,
       t.topic_id as topic_id,
       t.topic_title as topic_title
FROM   ".TOPICS_TABLE." t,
       ".POSTS_TABLE." p
       LEFT OUTER JOIN ".FORUMS_TABLE." f on p.forum_id = f.forum_id
       LEFT OUTER JOIN ".USERS_TABLE." u on p.poster_id = u.user_id
WHERE  p.post_id = t.topic_last_post_id and f.auth_view = 0 and ";

$part2 = " ORDER BY p.post_time desc";

$showdays = 86400 * $nodays;

$lastweeksql  = $part1."UNIX_TIMESTAMP(NOW()) - p.post_time < 691200".$part2;
$yesterdaysql = $part1."FROM_UNIXTIME(p.post_time,'%Y%m%d') - FROM_UNIXTIME(unix_timestamp(NOW()),'%Y%m%d') = -1".$part2;
$todaysql     = $part1."FROM_UNIXTIME(p.post_time,'%Y%m%d') - FROM_UNIXTIME(unix_timestamp(NOW()),'%Y%m%d') = 0".$part2;

$last24hsql   = $part1."UNIX_TIMESTAMP(NOW()) - p.post_time < 86400".$part2;
$lastXdsql    = $part1."UNIX_TIMESTAMP(NOW()) - p.post_time < $showdays".$part2;

switch ($selorder) {

 case "las24" : $sql = $last24hsql; $template->assign_vars(array("MSG" => $lang['last_24h'])); break;
 case "today" : $sql = $todaysql; $template->assign_vars(array("MSG" => $lang['today'])); break;
 case "yestr" : $sql = $yesterdaysql; $template->assign_vars(array("MSG" => $lang['yesterday'])); break;
 case "lweek" : $sql = $lastweeksql; $template->assign_vars(array("MSG" => $lang['last_week'])); break;
 case "laday" : $sql = $lastXdsql; $template->assign_vars(array("MSG" => $lang['last_xdays1'].$nodays.$lang['last_xdays2'])); break;

}

$style = 0;

$result = $db->sql_query($sql)
					or message_die(GENERAL_ERROR, "Couldn't retrieve data", "", __LINE__, __FILE__, $sql);
while( $row = $db->sql_fetchrow($result) ) {
	$style++;
	(!($style% 2) ) ? $class = 'row2' : $class= 'row1';
		$template->assign_block_vars("posts", array(
		"TOPIC_TITLE" => $row["topic_title"],
		"TOPIC_TIME" => $row["topic_time"],
		"TOPIC_URL" => "viewtopic.".$phpEx."?p=".$row["post_id"]."#".$row["post_id"],
		"FORUM_NAME" => $row["forum_name"],
		"FORUM_URL" => "viewforum.".$phpEx."?f=".$row["forum_id"],
		"USERNAME" => $row["username"],
		"USER_URL" => "profile.".$phpEx."?mode=viewprofile&u=".$row["poster_id"],
		"POST_ID" => $row["post_id"],
		"FORUM_ID" => $row["forum_id"],
		"CLASS" => $class,
			)
		);
}

  // all data ready, displaying...

$template->pparse("body");

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>

latest.tpl

Code: Alles auswählen

<form name="form1" method="get" action="{FORM_ACTION}">
<table align="center" width="100%">
<tr>
    <td class="genmed" style="text-align: center">
        <p><br>{L_SHOWING} <strong>{MSG}</strong></p>
          {L_SHOW}
          [ <a href="{FORM_ACTION}?selorder=lweek">
          {L_LWEEK_MSG}
          </a> ] [ <a href="{FORM_ACTION}?selorder=yestr">
          {L_YESTR_MSG}
          </a> ] [ <a href="{FORM_ACTION}?selorder=las24">
          {L_LAS24_MSG}
          </a> ] [ <a href="{FORM_ACTION}?selorder=today">
          {L_TODAY_MSG}
          </a> ] [
          {L_LAST}
          <input type="text" name="nodays" size="2" value="{NODAYS}" maxlength="3">
          <input type="hidden" name="selorder" value="laday">
          <a href="javascript:document.form1.submit();">
          {L_DAYS}
          </a> ] <br>          
      </td>
    </tr>
  </table>
</form>

<table class="forumline" align="center" width="100%">
<tr>
	<td class="catHead" align="center" colspan="4"><span class="cattitle">{L_MATCHES}</td>
</tr>
<tr>
	<td class="row2" align="center" width="20%"><span class="cattitle"><strong>{L_TOPIC}</span></strong></td>	
	<td class="row2" align="center" width="20%"><span class="cattitle"><strong>{L_FORUM}</span></strong></td>	
	<td class="row2" align="center" width="20%"><span class="cattitle"><strong>{L_AUTHOR}</span></strong></td>	
	<td class="row2" align="center" width="20%"><span class="cattitle"><strong>{L_POSTED}</span></strong></td>	
</tr>

<!-- BEGIN posts -->
        <TR BGCOLOR="<? echo $color2; ?>">
        <TD class="{posts.CLASS}" ALIGN="CENTER" WIDTH="50%"><span class="genmed"><a href="{posts.TOPIC_URL}">{posts.TOPIC_TITLE}</a></span></TD>
        <TD class="{posts.CLASS}" ALIGN="CENTER" WIDTH="15%"><span class="genmed"><a href="{posts.FORUM_URL}">{posts.FORUM_NAME}</a></span></TD>
        <TD class="{posts.CLASS}" ALIGN="CENTER" WIDTH="15%"><span class="genmed"><a href="{posts.USER_URL}">{posts.USERNAME}</a></span></TD>
        <TD class="{posts.CLASS}" ALIGN="CENTER" WIDTH="20%"><span class="genmed">{posts.TOPIC_TIME}</span></TD>
        </TR>
<!-- END posts -->

</table>
Mehr ist das net - also weniger nen Hack, eher nen Addon.
Wenn ich so rüber gucke, seh ich net wo spezifiziert wird was angezeigt werden darf. Der muß auf irgendwas von phpbb zugreifen. Beiträge im Mod/Admin-Only bereich werden auch Mods/Admins nicht angezeigt.

Die Adresse des Boards steht in der Sig. Euroforum is memberonly und wird angezeigt, Tauschforum ist memberonly und wird nicht angezeigt.

Bis dann
Wuppi

Verfasst: 03.06.2003 19:38
von spritzkuchen
Das Problem habe ich auch, kann sich das mal bitte wer anschauen ? Bei dem Mod werden auch Beiträge aus geschützten Bereichen angezeigt :cry: Wie kann ich das lösen ?

Verfasst: 19.10.2006 12:51
von dreirad
habe ähnliches Problem wie spritzkuchen...

aber ich glaube dasich einen anderen mod habe...
##############################################################
## MOD Title: Latest Topic Mod
## MOD Author: Sebastian Ruhleder < sebastian@rayloaded.de > (Sebastian R.)
## MOD Description: Fügt eine Scrollbox mit den letzten Topics dem Forum hinzu.
## MOD Version: 1.1.0
##
## Installation Level: Easy
## Installation Time: 5 minutes
## Files To Edit: includes/page_header.php
## templates/your_template/overall_header.tpl
##############################################################
Bislang werden alle Topics angezeigt, ob eingelogt oder nicht.. und da ich einen geschützten bereichhabe, der nur für Admin und mods zugänglich ist ist es unvorteilhaft das diese beiträge auch in der Laufschrift erscheinen.... ich suche mal weiter, aber hilfe wäre nett wenn jemand was weiß..

DANKE

Verfasst: 04.11.2006 19:33
von berlusconi
den mod hab ich ja jetzt:)
hat vielleicht noch jemand die fehlenden langugae dateien?