MyBB.de Forum

Normale Version: custom profile fields im post-profile ausblenden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
http://www2.lf-empire.de/forum/showthrea...493&page=1

Ich hab einige Custom Profile Fields erstellt und mittels den Postbit-Templates in das Pot-Profil eingebunden. Nun ist es aber so, dass einige User (MH-Razen) nicht kämpfen und somit die Daten dort weniger nützlich sind, andere (Azriel, Post darunter) hingegen sind aktive Fighter und es ist unverzichtbar.

Mein Template Postbit_author_user sieht im mom so aus:

PHP-Code:
<strong><span class="largetext">{$post['profilelink']}</span></strong><br />
<
span class="smalltext">
    {
$post['usertitle']}<br />
    {
$post['userstars']}
    {
$post['groupimage']}<br />
    {
$post['useravatar']}<br />

    {
$lang->postbit_posts} {$post['postnum']}<br />
    {
$lang->postbit_group} {$usergroup['title']}<br />
    {
$lang->postbit_status} {$post['onlinestatus']}{$post['replink']}<br /><br />

<
div align="center" style="border:1px dashed;" width="100">
<
b>Tournaments:</b><br />

  <
table border="0" cellpadding="0" cellspacing="0">
    <
tr>
      <
td><span class="smalltext">Country: </span></td>
      <
td><span class="smalltext">{$post['fid11']}</span></td>
    </
tr>
    <
tr>
      <
td><span class="smalltext">Skill: </span></td>
      <
td><span class="smalltext">{$post['fid4']}</span></td>
    </
tr>
    <
tr>
      <
td><span class="smalltext">Points: </span></td>
      <
td><span class="smalltext">{$post['fid8']}</span></td>
    </
tr>
  </
table>

</
div>
</
span

gibt es eine Möglichkeit dass die gesamte Tabelle im Post-Profil nicht angezeigt wird wenn der Benutzer zb einer Bestimmten Usergroup (bzw secondary group) angehört?
Schau dir mal dieses Thema an, insb. Beitrag #13: https://www.mybb.de/forum/showthread.php?tid=5585
Das geht nur mit Änderungen in der inc/functions_post.php.
hm, hilft bedingt, aber was muss ich tun um nicht nur die felder sondern diesen gesamnmten Bereich:

PHP-Code:
<div align="center" style="border:1px dashed;" width="100">
<
b>Tournaments:</b><br />

  <
table border="0" cellpadding="0" cellspacing="0">
    <
tr>
      <
td><span class="smalltext">Country: </span></td>
      <
td><span class="smalltext">{$post['fid11']}</span></td>
    </
tr>
    <
tr>
      <
td><span class="smalltext">Skill: </span></td>
      <
td><span class="smalltext">{$post['fid4']}</span></td>
    </
tr>
    <
tr>
      <
td><span class="smalltext">Points: </span></td>
      <
td><span class="smalltext">{$post['fid8']}</span></td>
    </
tr>
  </
table>

</
div

zu verstecken? angenommen der user registriert sich, dann ist er (das ganze ist ja für ein Tournament System) nicht automatisch bei den Tournaments dabei. Folglich kann der ganze Block weggelassen werden. Meldet sich der User aber für ein TOurnament an editiert der Admin sein Profil und setzt als Secondary Group "Fighter" (z.B.) und nun erscheint der ganze Block und die Optionen erscheinen im Postprofil.

Wenn fid4 und fid8 im normalen Profil auch nich an gezeigt werden solange man nicht in dieser Usergroup ist wär dass auch spitze...

Edit:
Hab den Code jetzt zumindest so editiert, dass die Felder Skill und Points nicht mehr erscheinen wenn nichts dortdrin steht - hier der Code aus functions_post.php

PHP-Code:
if(!empty($post['fid4'])) {
    
$post['fid4'] = "Skill: ".htmlspecialchars_uni($post['fid4'])."<br />";
} else {
    
$post['fid4'] = "";
}
if(!empty(
$post['fid8'])) {
    
$post['fid8'] = "Points: ".htmlspecialchars_uni($post['fid8'])."<br />";
} else {
    
$post['fid8'] = "";


Da aber das Template (postbit_author_user) folgendermaßen aussieht:
PHP-Code:
<tr>
      <
td><span class="smalltext">{$post['fid4']}</span></td>
    </
tr>
    <
tr>
      <
td><span class="smalltext">{$post['fid8']}</span></td>
    </
tr
und eigentlich am Ende so aussehen sollte:
PHP-Code:
<tr>
      <
td><span class="smalltext">Country: </span></td>
      <
td><span class="smalltext">{$post['fid11']}</span></td>
    </
tr
Möchte ich noch </td><td> mit in den Code einbringen.

Dieser würde also folgendermaßen aussehen:
PHP-Code:
if(!empty($post['fid4'])) {
    
$post['fid4'] = "Skill: </td><td>".htmlspecialchars_uni($post['fid4'])."<br />";
} else {
    
$post['fid4'] = "</td><td>";
}
if(!empty(
$post['fid8'])) {
    
$post['fid8'] = "Points: </td><td>".htmlspecialchars_uni($post['fid8'])."<br />";
} else {
    
$post['fid8'] = "</td><td>";


Dieser Code führt allerdings zu Fehlern - wo liegt mein Fehler hierin?

Edit2:
Ich denk ich kanns auch umformulieren? Besteht die Möglichkeit für Usergroups andere postbut templates zu verwenden?
[close]
Siehe anderes Thema