Seite 1 von 3

Forenlinks auf neuer PHP-Seite anzeigen ???

Verfasst: 09.04.2003 17:49
von AWSW
Hallo,
gibt es schon einen MOD, der die Forenlinks auf neuer PHP-Seite anzeigen kann ?

Im Prinzip möchte ich folgendes erreichen:

Ich habe z.B. in einem Board 6 Einzelforen:
Forum 1
Forum 2
Forum 3
Forum 4
Forum 5
Forum 6

Forum 4 ist für Administratoren und Moderatoren einsehbar und betretbar.
Forum 5 ist nur für Administratoren einsehbar und betretbar. Moderatoren können das Forum z.B. sehen, aber nicht bereten.
Forum 6 ist nur für Administratoren einsehbar und betretbar. Andere User können es nicht sehen...

Wie kann man bitte in einer neuen PHP-Seite diese Forentitel + das folder_big.gif bzw bei neuen Beiträgen folder_new_big.gif angezeigen. Damit hätte man eine kleine Forenübersicht mit der Info, ob es neue Beiträge gibt oder nicht... Ferner fänd ich es sehr gut, wenn man diese Liste so darstellen könnte, dass wie im Beispiel oben dargestellt, dann ein normaler User und Moderator z.B. das Forum 6 nicht sehen kann, das ganze also Berechtigungsabhängig gestaltet ist...

Gibt es solch einen MOD schon, bzw. wie könnte man das in eine neue php-Seite integrieren ?

Danke für jeden Tipp :D

Verfasst: 09.04.2003 19:59
von Chaze
Gibt es solch einen MOD schon, bzw. wie könnte man das in eine neue php-Seite integrieren ?
Also die Foren-Übersicht habe ich schonmal. Den Rest kriegen wir auch noch hin.

root/summary.php

[SNIP]

Fertiger Code siehe unten...

Verfasst: 09.04.2003 21:42
von AWSW
Hallo Chaze,
sieht schon mal nicht schlecht aus. Allerdings scheint es (noch) alle Foren, die nicht öffentlich zugänglich sind zu filtern...

Werde es mir morgen mal genauer ansehen ;)

Danke & Schönen Abend noch ! :D

Verfasst: 09.04.2003 22:02
von Chaze

Code: Alles auswählen

[...sql...]WHERE auth_view = '0'
Zeigt nur Foren, die jeder anschauen darf, läßt sich aber leicht anpassen.

Ich werd mich morgen damit weiter beschäftigen und versuchen die Neue-Nachrichten-Anzeige mit reinzubringen.

Verfasst: 09.04.2003 22:03
von AWSW
Hi,
alles klar - Danke vielmals für Deine Mühe ;)

Gruß AWSW

Verfasst: 10.04.2003 11:08
von Chaze
So, jetzt haben wir´s:

summary.php

Code: Alles auswählen

<?php 

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

// 
// Start session management 
// 
$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata); 
// 
// End session management 
// 

$page_title = "Forum Summary"; 
include($phpbb_root_path . 'includes/page_header.'.$phpEx); 

         $template->set_filenames(array( 
            'body' => 'summary_body.tpl') 
         ); 


if ( $userdata['session_logged_in'] ) 
{ 
   $sql = "SELECT t.forum_id, t.topic_id, p.post_time 
      FROM " . TOPICS_TABLE . " t, " . POSTS_TABLE . " p 
      WHERE p.post_id = t.topic_last_post_id 
         AND p.post_time > " . $userdata['user_lastvisit'] . " 
         AND t.topic_moved_id = 0"; 
   if ( !($result = $db->sql_query($sql)) ) 
   { 
      message_die(GENERAL_ERROR, 'Could not query new topic information', '', __LINE__, __FILE__, $sql); 
   } 

   while( $topic_data = $db->sql_fetchrow($result) ) 
   { 
      if ( $topic_data[post_time] > $userdata['user_lastvisit'] ) 
         { 
         $neueT_FID[] = $topic_data[forum_id]; 
         }
   } 
} 
else
{
$neueT_FID[] = " ";
}

$sql = "SELECT forum_id, forum_desc, forum_name, auth_view FROM " . FORUMS_TABLE . " WHERE auth_view = '0'"; 
        if ( !($result = $db->sql_query($sql)) ) 
        { 
                   message_die(GENERAL_ERROR, 'Could not obtain user information', '', __LINE__, __FILE__, $sql); 
        } 

      while($row = $db->sql_fetchrow($results)) 
               { 
               $forum_id = $row[forum_id]; 
               $forum_name = $row[forum_name]; 
               $fdesc = $row[forum_desc]; 
               $auth = $row[auth_view]; 

				if(in_array($forum_id,$neueT_FID)) 
					{ 
					$f_image = $images['folder_new']; 
					} 

				if(!in_array($forum_id,$neueT_FID)) 
					{ 
					$f_image = $images['folder']; 
					} 

               $template->assign_block_vars("summary_body", array( 
                     'F_ID' => $forum_id, 
                     'F_NAME' => $forum_name, 
                     'F_DESC' => $fdesc, 
                     'NEWT' => $f_image ) 
               ); 

               } 
               $lforum = $lang['Forum']; 
                $title = $lang['Forum_Index']; 

               $template->assign_vars(array( 
                     'TITLE' => str_replace ("%s ", "", $lang['Forum_Index']), 
                     'L_FORUM' => $lang['Forum'], 
                     'L_DESC' => $lang['Group_description']) 
               ); 



$template->pparse('body'); 

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

Code: Alles auswählen

<br /> <br /> 
    
   <table width="70%" cellpadding="6" cellspacing="1" border="0" align="center" class="forumline"> 
   <tr> 
     <th class="thHead" colspan="6"><font size="4"><b>{TITLE}</b></font></th> 
   </tr> 
   <tr> 
      <td class="row1" align="center"><b>&nbsp;</b></td>
      <td class="row1" align="center"><b>{L_FORUM}&nbsp;</b></td> 
      <td class="row1" align="center"><b>{L_DESC}</b></td> 
   </tr> 
    
   <tr> 
      <td class="row2" align="center">&nbsp;</td>
      <td class="row2" align="center">&nbsp;</td> 
      <td class="row2" align="center">&nbsp;</td> 
   </tr> 
   <!-- BEGIN summary_body --> 
   <tr>
      <td class="row2" align="left"><img src="{summary_body.NEWT}"></td>
      <td class="row2" align="left"><font size="2"><a href="viewforum.php?f={summary_body.F_ID}">{summary_body.F_NAME}</a></font><br></td> 
      <td class="row2" align="left"><font size="1">{summary_body.F_DESC}</font></td> 
   </tr> 
   <!-- END summary_body --> 
</table> 
<br><br> 

Verfasst: 10.04.2003 15:49
von AWSW
Danke - wird gleich probiert !

Verfasst: 10.04.2003 15:59
von Schumi
Sieht ganz gut aus, bis auf das hier:

Code: Alles auswählen

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 64

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 69

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 64

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 69

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 64

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 69

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 64

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 69

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 64

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 69

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 64

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 69

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 64

Warning: Wrong datatype for second argument in call to in_array in /www/htdocs/v033658/summary.php on line 69

Verfasst: 10.04.2003 16:07
von AWSW
Hallo,
japp selbes Ergebnis oberhalb der Ausgabe der Liste der öffentlichen Foren bei mir auch :D

Verfasst: 10.04.2003 16:15
von Chaze
Mein Fehler. Ich habe mein Posting um ca. 15:30 nochmal editiert und gehofft, dass es keiner merkt :oops:

Kopiert Euch den Text für die summary.php nochmal in Eure Datei...

Das Problem lag an dieser IF-Schleife:

Code: Alles auswählen

if ( $userdata['session_logged_in'] ) 
Wenn man eingeloggt ist funktioniert das ganze, wenn ausgeloggt, dann nicht. Das "else..." unter der IF-Schleife ist neu.