Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 3 Gast/Gäste
User CP umgestalten - PNs
#1
Hallo ihr Lieben.
Ich möchte gerne das UserCp menü umgestalten und hänge jetzt gerade an einer Kleinigkeit. Aber eins nach dem anderen Wink
Ich habe vor das Menü ähnlich wie bei wbblite1 zu gestalten.
Heißt:
Ich möchte erst eine quasi Startseite, bei der man den entsprechenden Bereich auswählt, den man ändern will (Profil, Passwort ändern, Avatar, Private Nachrichten) etc.
Alles im großen und ganzen nicht das Problem, was templates ändern angeht bin ich relativ fit, solang es nur mit html, css und ein paar Variablen zu tun hat ^^

Das Problem jetzt ist aber, dass ich keine Ahnung habe, wie ich an den Link für den Pn Eingangsordner komme.

Erst einmal soweit klar 'usercp_nav_messenger'... hier ist der entsprechende Bereich dann eine weitere Variable '{$folderlinks}' mit der Suchfunktion (dieser thread: forum.mybboard.de/search.php?q=pn+ordner ) hier habe ich jetzt schon rausgefunden, dass der entsprechende Teil in der functions_user.php ist. Und zwar dieser Abschnitt:
Code:
/**
* Constructs the usercp messenger menu.
*
*/
function usercp_menu_messenger()
{
    global $db, $mybb, $templates, $theme, $usercpmenu, $lang, $collapsed, $collapsedimg;

    $foldersexploded = explode("$%%$", $mybb->user['pmfolders']);
    foreach($foldersexploded as $key => $folders)
    {
        $folderinfo = explode("**", $folders, 2);
        $folderinfo[1] = get_pm_folder_name($folderinfo[0], $folderinfo[1]);
        if($folderinfo[0] == 4)
        {
            $class = "usercp_nav_trash_pmfolder";
        }
        else if($folderlinks)
        {
            $class = "usercp_nav_sub_pmfolder";
        }
        else
        {
            $class = "usercp_nav_pmfolder";
        }

        $folderlinks .= "<div><a href=\"private.php?fid=$folderinfo[0]\" class=\"usercp_nav_item {$class}\">$folderinfo[1]</a></div>\n";
    }
    
    eval("\$usercpmenu .= \"".$templates->get("usercp_nav_messenger")."\";");
}

Mein Problem jetzt.. ich hab kaum Ahnung von php ^^ wie komme ich jetzt davon ausgehend an den Link für den PN Ordner dran?
Das ich es irgendwie über 'class' und css an sich umgestalten kann weiß ich schon, aber ich will ja prinzipiell gerade einfach nur den Link für den Eingangsordner

mir ist schon klar, dass es sich aus dem Bereich zusammensetzt
Code:
$folderlinks .= "<div><a href=\"private.php?fid=$folderinfo[0]\" class=\"usercp_nav_item {$class}\">$folderinfo[1]</a></div>\n";
    }

aber weiter komme ich leider nicht, vielleicht hab ich gerad auch einfach ein brett vorm kopf, aber ich find gerad weder mit google was, noch hier mit der suchfunktion. also hoffe ich, dass ihr mir vielleicht helfen könnt, das wäre sehr lieb.

ach ja MyBB Version ist 1.6.8.

Liebe Grüße und schon einmal lieben dank ^^
Zitieren
#2
Bin mir nicht ganz sicher, ob ich Dich richtig verstanden habe, aber sieh mal in der crossreference nach dieser Funktion: get_pm_folder_name(). Je nach fid müsstest Du damit den Namen zu dem jeweiligen Folder heraus bekommen.

Das könnte Dir evtl. weiterhelfen.
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#3
Was genau möchtest Du machen ?
Mit freundlichen Grüßen

MrBrechreiz
Zitieren
#4
hey, danke schonmal für den versuch mir zu helfen... ^^

oke... also crossreference heißt:
https://crossreference.mybb.de ??
dann wenn ich danach suche.. krieg ich ein paar Ergebnisse... ja und was fang ich mit denen an? ^^ ich sag ja php is... bisher nicht meins, ich sollte mal anfangen mich reinzulesen ^^
ich vermute mal du willst mir sagen dass ich das aus dem hier rauslesen kann?
Code:
581  /**
582   * Return the language specific name for a PM folder.
583   *
584   * @param int The ID of the folder.
585   * @param string The folder name - can be blank, will use language default.
586   * @return string The name of the folder.
587   */
588  function get_pm_folder_name($fid, $name="")
589  {
590      global $lang;
591  
592      if($name != '')
593      {
594          return $name;
595      }
596  
597      switch($fid)
598      {
599          case 1;
600              return $lang->folder_inbox;
601              break;
602          case 2:
603              return $lang->folder_sent_items;
604              break;
605          case 3:
606              return $lang->folder_drafts;
607              break;
608          case 4:
609              return $lang->folder_trash;
610              break;
611          default:
612              return $lang->folder_untitled;
613      }
614  }

oder?


oke, also mal ganz einfach ausgedrückt was ich will. einen button auf den man klickt und dann in den Eingangsordner von den privaten nachrichten kommt.
nicht mehr nicht weniger.
und jetzt gerade bin ich einfach zu blöd zu kapieren, was ich dann für ne linkadresse habe muss.
Code:
<a href=""><img src="button.png"></a>

quasi... meine frage was muss ich um die user in den eingangsordner zu leiten zwischen die "" eintragen.
und wahrscheinlich ist die lösung so einfach, dass ich mir gleich irgendwann noch blöder vorkomme ^^


*dush* Bearingteeth ja zu einfach... ich hab den link jetzt einfach aus dem header_welcomeblock... zu einfacher link, ich hab viel zu kompliziert gedacht... sry -.- ^^ Rolleyes
Zitieren
#5
Den Weg zu der Funktion in der Crossreference habe ich oben ja verlinkt. Du musst danach nicht suchen... Wink

Ein Blick in die Funktion get_pm_folder_name() zeigt Dir, dass die Inbox die fid=1 hat.

Der Link zu dem Eingangsordner würde dann so aussehen
Code:
<a href="private.php?fid=1"><img src="button.png"></a>


(07.09.2012, 17:51)Risu schrieb: ich hab den link jetzt einfach aus dem header_welcomeblock... zu einfacher link
oder so... Wink
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Menü umgestalten BlaueElise79 11 3.654 15.06.2018, 19:01
Letzter Beitrag: Jockl
  Theme umgestalten Desaster 5 2.645 04.01.2009, 19:00
Letzter Beitrag: Michael