Beiträge: 39
Themen: 10
Registriert seit: 24.08.2006
09.11.2006, 17:09
(Dieser Beitrag wurde zuletzt bearbeitet: 09.11.2006, 17:11 von MacPri.)
Hallo,
ich möchte unter jedem Post einen weiteren Code einfügen. Das ist das erste Problem.
Das zweite ist, dass dieser je nach Rechten anders sein soll.
Beispielsweise:
Bei Moderatoren soll dieser
PHP-Code:
<a href="http://www.google.de/search?q=Moderator">
lauten.
Bei Gästen soll dieser nicht erscheinen.
Bei normalen Usern soll er lauten
PHP-Code:
<a href="http://www.google.de/search?q=User">
.
Bei Administratoren beispielsweise
PHP-Code:
<a href="http://www.yahoo.de">
Kann mir jemand helfen?[/php]
//Edit: Ich meine damit, dass der Code neben den "Bearbeiten", "Zitieren"-Buttons steht.
Beiträge: 2.769
Themen: 28
Registriert seit: 18.03.2006
Füg in die Datei showthread.php möglichst weit oben folgendes ein:
PHP-Code:
switch ($mybb->user['usergroup']) {
case 4:
$postbitlink = "<a href='http://www.yahoo.de'> ";
break;
case 2:
$postbitlink = "<a href='http://www.google.de/search?q=User'>";
break;
case 6:
$postbitlink = "<a href='http://www.google.de/search?q=Moderator'>" ;
default:
$postbitlink = "";
}
Dann kannst du im Template postbit z.B. nach
Code:
<span class="smalltext">{$post['button_edit']}{$post['button_quickdelete']}{$post['button_quote']}{$post['button_multiquote']}{$post['button_report']}</span>
die Variable {$postbitlink} einbinden.
Beiträge: 39
Themen: 10
Registriert seit: 24.08.2006
09.11.2006, 17:43
(Dieser Beitrag wurde zuletzt bearbeitet: 09.11.2006, 17:48 von MacPri.)
Hmpf, irgendwie zeigt er mir das trotzdem nicht an.
Anfang der showtread.php:
PHP-Code:
<?php
switch ($mybb->user['usergroup']) {
case 4:
$postbitlink = "<a href='http://www.google.de'>Admin!</a> ";
break;
case 2:
$postbitlink = "<a href='http://www.google.de'>User!</a> ";
break;
case 6:
$postbitlink = "<a href='http://www.google.de'>Moderator!</a> ";
case 3:
$postbitlink = "<a href='http://www.google.de'>Supermoderator!</a> ";
break;
default:
$postbitlink = "";
}
/**
* MyBB 1.2
* Copyright © 2006 MyBB Group, All Rights Reserved
*
* Website: http://www.mybboard.com
* License: http://www.mybboard.com/eula.html
*
* $Id: showthread.php 2263 2006-09-26 09:24:25Z chris $
*/
...
Beiträge: 2.769
Themen: 28
Registriert seit: 18.03.2006
09.11.2006, 17:50
(Dieser Beitrag wurde zuletzt bearbeitet: 09.11.2006, 17:51 von Mak.)
Ein bisschen tiefer muss es dann doch sein
. Füg den Code mal vor
Zitat:// Show the entire thread (taking into account pagination).
ein.
Beiträge: 39
Themen: 10
Registriert seit: 24.08.2006
09.11.2006, 18:05
(Dieser Beitrag wurde zuletzt bearbeitet: 09.11.2006, 18:14 von Mak.)
Mag trotzdem nicht funktionieren.
Zitat:// Jump to the unread posts.
if($mybb->input['action'] == "newpost")
{
// First, figure out what time the thread or forum were last read
$query = $db->simple_select(TABLE_PREFIX."threadsread", "dateline", "uid='{$mybb->user['uid']}' AND tid='{$thread['tid']}'");
$thread_read = $db->fetch_field($query, "dateline");
// Get forum read date
$forumread = my_get_array_cookie("forumread", $fid);
// If last visit is greater than forum read, change forum read date
if($mybb->user['lastvisit'] > $forumread)
{
$forumread = $mybb->user['lastvisit'];
}
if($mybb->settings['threadreadcut'] > 0 && $mybb->user['uid'] && $thread['lastpost'] > $forumread)
{
$cutoff = time()-$mybb->settings['threadreadcut']*60*60*24;
if($thread['lastpost'] > $cutoff)
{
if($thread_read)
{
$lastread = $thread_read;
}
else
{
$lastread = 1;
}
}
}
if(!$lastread)
{
$readcookie = $threadread = my_get_array_cookie("threadread", $thread['tid']);
if($readcookie > $forumread)
{
$lastread = $readcookie;
}
else
{
$lastread = $forumread;
}
}
// Next, find the proper pid to link to.
$options = array(
"limit_start" => 0,
"limit" => 1,
"order_by" => "dateline",
"order_dir" => "asc"
);
$query = $db->simple_select(TABLE_PREFIX."posts", "pid", "tid=".$tid." AND dateline > '{$lastread}'");
$newpost = $db->fetch_array($query);
if($newpost['pid'])
{
header("Location:showthread.php?tid={$tid}&pid={$newpost['pid']}#pid{$newpost['pid']}");
}
else
{
header("Location:showthread.php?action=lastpost&tid={$tid}");
}
}
$plugins->run_hooks("showthread_start");
switch ($mybb->user['usergroup']) {
case 4:
$postbitlink = "<a href='http://www.google.de'>Admin!</a> ";
break;
case 2:
$postbitlink = "<a href='http://www.google.de'>User!</a> ";
break;
case 6:
$postbitlink = "<a href='http://www.google.de'>Moderator!</a> ";
break;
case 3:
$postbitlink = "<a href='http://www.google.de'>Supermoderator!</a> ";
break;
default:
$postbitlink = "";
}
// Show the entire thread (taking into account pagination).
if($mybb->input['action'] == "thread")
{
if($thread['firstpost'] == 0)
{
update_first_post($tid);
}
// Does this thread have a poll?
if($thread['poll'])
{
$options = array(
"limit" => 1
);
$query = $db->simple_select(TABLE_PREFIX."polls", "*", "pid='".$thread['poll']."'");
$poll = $db->fetch_array($query);
$poll['timeout'] = $poll['timeout']*60*60*24;
$expiretime = $poll['dateline'] + $poll['timeout'];
$now = time();
// If the poll or the thread is closed or if the poll is expired, show the results.
if($poll['closed'] == "yes" || $thread['closed'] == "yes" || ($expiretime < $now && $poll['timeout'] > 0))
{
$showresults = 1;
}
Beiträge: 2.769
Themen: 28
Registriert seit: 18.03.2006
Das müsste eigentlich funktionieren. Wie genau hast du die Variable denn eingebunden? Poste mal am besten einen Ausschnitt aus dem Template.
Den Code den du geposts hast habe ich etwas verkürzt, da scrollt man sich ja tot
.
Beiträge: 39
Themen: 10
Registriert seit: 24.08.2006
Themplate: postbit
Code:
<tr>
<td class="{$altbg}" width="15%" valign="top" style="white-space: nowrap; text-align: center;"><a name="pid{$post['pid']}" id="pid{$post['pid']}"></a>
{$post['user_details']}
</td>
<td class="{$altbg}" width="85%" valign="top">
<table width="100%">
<tr><td>{$post['posturl']}{$post['icon']}<span class="smalltext"><strong> {$post['subject']}</strong></span>
<br />
<div id="pid_{$post['pid']}">
<p>
{$post['message']}
</p>
</div>
{$post['attachments']}
{$post['signature']}
<div style="text-align: right; vertical-align: bottom;">
{$post['editedmsg']}
{$post['iplogged']}
</div>
</td></tr>
</table>
</td>
</tr>
<tr>
<td class="{$altbg}" height="18" style="white-space: nowrap; text-align: center;"><span class="smalltext">{$post['postdate']} {$post['posttime']}</span></td>
<td class="{$altbg}" width="100%" valign="middle" height="18">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="bottom">
<td align="left" ><span class="smalltext">{$post['button_email']}{$post['button_pm']}{$post['button_www']}{$post['button_find']}</span></td>
<td align="right"><span class="smalltext">{$post['button_edit']}{$post['button_quickdelete']}{$post['button_quote']}{$post['button_multiquote']}{$post['button_report']}{$post['fws_warnlink']} </span>{$postbitlink}</td>
</tr>
</table>
</td>
</tr>
{$seperator}
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
Füge deinen Code in der Datei inc/functions_post.php vor dieser Zeile ein:
PHP-Code:
eval("\$postbit = \"".$templates->get("postbit")."\";");
Gruß,
Michael
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 2.769
Themen: 28
Registriert seit: 18.03.2006
Warum wird denn das Template nicht in der showthread.php geladen?
Beiträge: 39
Themen: 10
Registriert seit: 24.08.2006
Ja, so geht's
Was bewirkt denn die Zeile
PHP-Code:
eval("\$postbit = \"".$templates->get("postbit")."\";");
?