Webboard

Pełna wersja: Carbon Theme [Multi Colour] [a'la IPB] - kod php
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2
wersja skryptu MyBB:
adres forum:
na czym polega problem (screen, opis, komunikaty, nazwa stylu/theme/szablonu):
, warto to wdrożyć do paczki z pluginem
Zaglądam w ten plugin od tej skórki i widzę że "nadal kilka rzeczy jest nie tak"

Proponuje zamienić funkcje last_threads_profile() na moją poprawkę
Zoptymalizowałem kod
Pobieranie tematów wedlug permisji grup, aktywności for

analogicznie mozna poprawić dla postów

Kod PHP:
function ostatnie_tematy()
{
    global 
$mybb$db$templates$theme$ostatnie_tematy$memprofile$parser$forum_cache;
    require_once 
MYBB_ROOT."inc/functions_search.php";
require_once 
MYBB_ROOT."inc/class_parser.php";
    
$altbg alt_trow();
    
$ostatnie_tematy_row "";
    
$memprofileuid $memprofile['uid'];
    
    
$permsql "";
    
$onlyusfids = array();
    
$group_permissions forum_permissions();
    foreach(
$group_permissions as $fid => $forum_permissions)
    {
        if(isset(
$forum_permissions['canonlyviewownthreads']) && $forum_permissions['canonlyviewownthreads'] == 1)
        {
            
$onlyusfids[] = $fid;
        }
    }
    if(!empty(
$onlyusfids))
    {
        
$permsql .= "AND ((t.fid IN(".implode(','$onlyusfids).") AND t.uid='{$mybb->user['uid']}') OR t.fid NOT IN(".implode(','$onlyusfids)."))";
    }

    
$unsearchforums get_unsearchable_forums();
    if(
$unsearchforums)
    {
        
$permsql .= " AND t.fid NOT IN ($unsearchforums)";
    }
    
$inactiveforums get_inactive_forums();
    if(
$inactiveforums)
    {
        
$permsql .= " AND t.fid NOT IN ($inactiveforums)";
    }
    
/*
    $excludeforums = '';
    if(!empty($mybb->settings['portal_excludediscussion']))
    {
        $excludeforums = "AND t.fid NOT IN ({$mybb->settings['portal_excludediscussion']})";
    }
    */

    
$query $db->query("
        SELECT t.tid, t.fid, t.uid, t.subject, t.replies, t.views, t.dateline, t.firstpost, p.pid, p.message
        FROM "
.TABLE_PREFIX."threads t
        LEFT JOIN "
.TABLE_PREFIX."posts p ON (t.firstpost=p.pid)
        WHERE 1=1 AND t.uid=
{$memprofileuid} {$unapproved_where} {$permsql} AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
        ORDER BY t.dateline DESC
        LIMIT 0, 5
    "
);
    while(
$thread $db->fetch_array($query))
    {
        
$thread['subject'] = htmlspecialchars_uni($parser->parse_badwords($thread['subject']));
        
$thread['threadlink'] = get_thread_link($thread['tid']);
        
$thread['dateline'] = my_date('relative'$thread['dateline']);
        
$parser = new postParser;
        
$parser_options = array("allow_html" => 0"allow_mycode" => 1"allow_smilies" => 1"allow_imgcode" => 1"allow_videocode" => 1"filter_badwords" => 1);
        
$thread['message'] = $parser->parse_message($thread['message'], $parser_options); 
        eval(
"\$ostatnie_tematy_row .= \"".$templates->get("ostatnie_tematy_row")."\";");
        
$altbg alt_trow();
    }
//    if(!$ostatnie_tematy_row)
//    {
//        eval("\$ostatnie_tematy_row = \"".$templates->get("ostatnie_tematy_row_empty")."\";");
//    }
    
    
eval("\$ostatnie_tematy = \"".$templates->get("ostatnie_tematy")."\";");
    return 
$ostatnie_tematy;

Dzięki, ciekawy kod, przyjrzę się temu głębiej niebawem i postaram się nanieść poprawki.
nie ma się co przygląddać tylko montować

3 maj następne

Kod PHP:
function member_profile_addinfo()
{
    global 
$cache$db$groupscache$mybb$memprofile$grupa;
    
    if(!
is_array($groupscache))
        
$groupscache $cache->read("usergroups");
        
    
$grupa str_replace('{username}'htmlspecialchars_uni($groupscache[$memprofile['usergroup']]['title']), $groupscache[$memprofile['usergroup']]['namestyle']);



z czasem poprawie całość
Podbije temat wcześniej ale w słusznej sprawie
W załączniku podaje calosc poprawianego pluginu
co do profilu (tematy, posty) można by zrobić stronicowanie i pokazywać więcej tematów - czekam na odzew

a i przy okazji ikona przy szukajce w nagłówku lekko ociekła
Dzięki, wrzucone do paczki.
Supryk napisał(a):co do profilu (tematy, posty) można by zrobić stronicowanie i pokazywać więcej tematów - czekam na odzew
Raczej nie widzę takiej potrzeby - ewentualnie potem dorobię odnośnik do wszystkich postów.
paginacja to tylko jedno zapytanie więcej na profil a będzie fajnie funkcjonować i ładnie wyglądać
IMHO, lepiej juz zostawić bez linku
Skoro tak, to czemu nie, można zrobić, jeśli chcesz, to droga wolna. ;)
zrobione, jest jednak mały problem, w sumie rozwiązałem już go ale
trzeba by przerobić kod w member_profile troche kodu
Obecny js od "tabów" nie zapamiętuje ostatniego taba po odbieżeniu strony - znalazłem inny js działa poprawnie

wyglądalo by to tak

[Obrazek: 1Do8h2O.png]
Supryk napisał(a):trzeba by przerobić kod w member_profile troche kodu
Nie ma problemu; mogę to zrobić jutro (?).
Pewnie, taby wyciągnij z 1point8 IAndrewa, tam zapamiętuje ostatni wybór

edit

wstrzymaj sie z tym
Supryk twój edit zmienia język forum i usuwa ikony działów.
skileczek napisał(a):Supryk twój edit zmienia język forum i usuwa ikony działów.

Nie ma takiej opcji
Na ss jest Angielski bo używam takiej wersji MYBB
Do ikon kod nic nie ma
Wiem że temat stary, ale jeśli ktoś posiada ten plugin ze "stronicowaniem" wątków/postów to bardzo proszę o wrzucenie. Jest to jedyny mankament tego stylu więc będę bardzo wdzięczny ;)
To nie zostało wdrożone, mam pomysł jak to zrobić
pokażcie mi szablon member_profile ze stylu carbon
Proszę
Myślę że autor stylu powinien wykazywać więcej inicjatywy, i sam to reperować. Bo jak wskazują wcześniejsze posty wysługuje się "Suprykiem". Snake_ Dałeś zepsuty styl, podają ci jak na tacy a ty nie możesz wdrożyć. To jest po prostu lenistwo.


Kod PHP:
    <title>{$mybb->settings['bbname']} - {$lang->profile}</title>
{
$headerinclude}
</
head>
<
body>
{
$header}
 <
div class="podglad">
<
h3 class="thead podglad_nazwa_bel"><span class="podglad_nazwa">{$memprofile['username']}</span></h3>
<
div class="info_podglad">
<
div class="calosc_podglad">



<
div class="lewa_podglad">
<
div class="avatar_podglad">
    {
$avatar}
</
div>
<
ul class="tabs">
 
   <li><a href="#tab1">Przegląd</a></li>
 
   <li><a href="#tab3">Posty</a></li>
 
   <li style="border-bottom: none !important;"><a href="#tab4">Tematy</a></li   
</ul>
</
div>





<
div class="prawa_podglad">
<
div class="tab_container">
<
span class="info_top">
<
h1 class="nick_usera">{$formattedname}</h1>
 
       <span class="info_o_userze">
 
       <ul>
<
li>{$lang->registration_date} {$memregdate}</li>
<
li>{$online_status}</li>
 
        </ul>
</
span>
 
 <span style="float: right; margin-right: 120px;">
 
    {$buddy_options}</span><br />
</
span>
 
   <div id="tab1" class="tab_content">

<
div class="podglad_wrapper">

<
div class="lewa_content">




<
div class="tabela_podglad">

<
h3>{$lang->users_forum_info}</h3>

<
ul class="staty_podglad">    

<
li class="clear clearfix">
<
span class="row_title">Grupa:</span>
<
span class="row_data">{$grupa}{$namegroup['groupname']}</span>
</
li>

<
li class="clear clearfix">
<
span class="row_title">{$lang->total_posts}</span>
<
span class="row_data">{$memprofile['postnum']}</span>
</
li>

<
li class="clear clearfix">
<
span class="row_title">Czas online:</span>
<
span class="row_data">{$timeonline}</span>
</
li>

<
li class="clear clearfix">
<
span class="row_title">Tytuł:</span>
<
span class="row_data">{$usertitle}</span>
</
li>

<
li class="clear clearfix">
<
span class="row_title">Wiek</span>
<
span class="row_data">{$membday} {$membdayage}</span>
</
li>

<
li class="clear clearfix">
<
span class="row_title"><strong>{$lang->reputation}</strong></span>
<
span class="row_data">{$reputation}</span>
</
li
<
li class="clear clearfix">
<
span class="row_title">Strona:</span>
<
span class="row_data"><a href="{$website}alt="" title="">przejdź</a></span>
</
li>

</
ul>
    </
div>
 
    
{$contact_details}

{
$profilefields}

 
 {$signature}<!--   <div class="tabela_podglad">

<
h3>Sygnatura</h3>

<
div style="padding: 9px;margin-top: -14px; overflow: scroll;">
{
$signature_info}
</
div>

    </
div>-->
{
$modoptions}

{
$adminoptions}
</
div>
<
div class="prawa_content">
<!--{
$reputacja}
{
$last_visit}-->
 
 {$buddy_list}
</
div>

</
div>

</
div>
<
div id="tab2" class="tab_content">
 <
div class="tabela_podglad" style="margin-top: 95px;">
    <
div>
            <
h3>Friends</h3>
            
                
Lista przyjaciół
            
        
</div>
<
br>
 
       
</div>
 
   </div>
 <
div id="tab3" class="tab_content">
 
       {$lastpost}
 
   </div>
 
   <div id="tab4" class="tab_content">

 
       {$lastthread}

 
   </div>
 <!-- 
 <div id="tab5" class="tab_content">
 
      Reputacja
    
</div>
 
   <div id="tab6" class="tab_content">
 
      Shoutbox
    
</div>-->
 
   </div>

</
div>
</
div>




</
div>
</
div>
 
  
{$footer}
</
body>
</
html
Stron: 1 2