Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

XThreads - Problem z wyświetlaniem po aktualizacji

Błąd   Założony przez  Axboard.

Witam ,
Po dość długiej przerwy z Mybb , postanowiłem wrócić do niego ponownie . 
Mybb wykorzystuje do trochę innych zadań niż domyślnie zostało zaprojektowane . Służy mi jako kartoteka w firmie. Wykorzystałem do tego wtyczkę XThreads ,  bez jakiś dodatkowych szablonów tylko zwykłe pola . Po aktualizacji  z wersji 1.6.8 na wersje 1.8.7 mam kilka problemów z prawidłowym wyświetlaniem.
Z racji tego że dawno nie pracowałem na mybb , moja wiedza jest już trochę ograniczona. Dlatego proszę Was o pomoc , może ktoś spotkał się już z takim problemem. 
Sprawa dotyczy rozjeżdżania się forum w dość dziwny sposób , 
[Obrazek: 98554974369374397201.jpg]
Problem znika jeśli odinstalujemy i ponownie zainstalujemy wtyczkę . Jednak wtedy wszystkie dane w niej wprowadzone znikają. 
Ma ktoś może na to jakieś rozwiązanie .
Zainstalowałem dwie kopie forum i sprawdziłem te same szablony. Problem po imporcie bazy występuje , a po nowej instalacji wtyczki jest już poprawnie.
[Obrazek: 56128431447625295806.jpg]
Pewnie rozwiązaniem byłaby ponowna instalacją wtyczki i import starych plików do bazy. Niemniej jednak chciałbym poznać przyczynę problemu . 

Szablon : showthread   
{$threadfields_display} 
<html>
<head>
<title>{$thread['subject']}</title>
{$headerinclude}
<script type="text/javascript">
<!--
    var quickdelete_confirm = "{$lang->quickdelete_confirm}";
    var quickrestore_confirm = "{$lang->quickrestore_confirm}";
    var allowEditReason = "{$mybb->settings['alloweditreason']}";
    lang.save_changes = "{$lang->save_changes}";
    lang.cancel_edit = "{$lang->cancel_edit}";
    lang.quick_edit_update_error = "{$lang->quick_edit_update_error}";
    lang.quick_reply_post_error = "{$lang->quick_reply_post_error}";
    lang.quick_delete_error = "{$lang->quick_delete_error}";
    lang.quick_delete_success = "{$lang->quick_delete_success}";
    lang.quick_delete_thread_success = "{$lang->quick_delete_thread_success}";
    lang.quick_restore_error = "{$lang->quick_restore_error}";
    lang.quick_restore_success = "{$lang->quick_restore_success}";
    lang.editreason = "{$lang->postbit_editreason}";
// -->
</script>
<!-- jeditable (jquery) -->
<script type="text/javascript" src="{$mybb->asset_url}/jscripts/report.js?ver=1804"></script>
<script src="{$mybb->asset_url}/jscripts/jeditable/jeditable.min.js"></script>
<script type="text/javascript" src="{$mybb->asset_url}/jscripts/thread.js?ver=1804"></script>
</head>
<body>
    {$header}
    {$threadnotesbox}
    {$pollbox}
    <section class="float_left">
        {$multipage}{$mysupport_jumpto_bestanswer}{$mysupport_form}
    </section>
    <section class="float_right">
        {$newreply}
    </section>
    {$ratethread}
    <table style="border: none;" class="tborder tfixed clear">
        <tr>
            <td class="thead">
                <section class="float_right">
                    <span class="smalltext" style="font-weight: bold;"><a href="javascript:;" id="thread_modes">{$lang->thread_modes}</a>{$threadnoteslink}</span>
                </section>
                <section>
                    <span style="font-weight: bold;">{$thread['threadprefix']}{$thread['subject']}</span>
                </section>
            </td>
        </tr>
{$threadfields_display}<tr><td id="posts_container">
    <section id="posts">
        {$first_post}{$posts}
    </section>
</td></tr>
        <tr>
            <td class="tfoot">
                {$search_thread}
                <section>
                    <span style="font-weight: bold;">&laquo; <a href="{$next_oldest_link}">{$lang->next_oldest}</a> | <a href="{$next_newest_link}">{$lang->next_newest}</a> &raquo;</span>
                </section>
            </td>
        </tr>
    </table>
    <section class="float_left">
        {$multipage}{$mysupport_jumpto_bestanswer}{$mysupport_form}
    </section>
    <section style="padding-top: 4px;" class="float_right">
        {$newreply}
    </section>
    <br class="clear" />
    {$quickreply}
    {$threadexbox}
    {$similarthreads}
    <br />
    <section class="float_left">
        <ul class="thread_tools">
            <li class="printable"><a href="printthread.php?tid={$tid}">{$lang->view_printable}</a></li>
            {$sendthread}
            <li class="subscription_{$add_remove_subscription}"><a href="usercp2.php?action={$add_remove_subscription}subscription&amp;tid={$tid}&amp;my_post_key={$mybb->post_code}">{$add_remove_subscription_text}</a></li>
            {$addpoll}
        </ul>
    </section>

    <section class="float_right" style="text-align: right;">
        {$moderationoptions}
        {$forumjump}
    </section>
    <br class="clear" />
    {$usersbrowsing}
    {$footer}
    <section id="thread_modes_popup" class="popup_menu" style="display: none;"><section class="popup_item_container"><a href="showthread.php?mode=linear&amp;tid={$tid}&amp;pid={$pid}#pid{$pid}" class="popup_item">{$lang->linear}</a></section><section class="popup_item_container"><a href="showthread.php?mode=threaded&amp;tid={$tid}&amp;pid={$pid}#pid{$pid}" class="popup_item">{$lang->threaded}</a></section></section>
    <script type="text/javascript">
    // <!--
        if(use_xmlhttprequest == "1")
        {
            $("#thread_modes").popupMenu();
        }
    // -->
    </script>
    <script type="text/javascript">
        $(".author_avatar img").error(function () {
            $(this).unbind("error").closest('.author_avatar').remove();
        });
    </script>
</body>
</html>


Screeny ze względu na dość poufne dla mnie dane zostały trochę zmodyfikowane . Myślę że jednak przyczyna problemu powinna być widoczna .
Problem właśnie w tym, że zmodyfikowałeś screeny. Opis na zasadzie rozjeżdża się można dopasować do setek tematów, a nie mając dostępu do forum - localhost + z screenami zmodyfikowanymi w niewiadomy sposób nie wiem co jest efektem zamierzonym a co błędem.

Treść na screenie urywa się w taki sposób jak jest pokazane czy jest to raczej twoja modyfikacja i w efekcie pola wydają się ucięte i rozjechane.
Nie korzystałem nigdy z tej wtyczki i nie bardzo wiem, które zmienne odpowiadają za jej wyświetlanie w szablonie, który wkleiłeś. Zgaduje jednak, że wtyczka tworzy też własne szablony, do których wypadałoby zajrzeć.

Czy chodzi tylko o belkę, że pokrywa tylko jedną kolumnę zamiast obu To byłoby tylko odpowiednie dodanie colspan=2 do tabeli.
Gdyby chodziło o coś więcej poza belką - napisz co konkretnie i daj pełnego screena (dane przecież możesz podmienić w konsoli przeglądarki). Zawsze możesz też porównać obecne szablony wtyczki z tymi z działającej wersji po nowej instalacji.
"Try not. Do... or do not. There is no try."
Poświęć 5 minut. Nie bądź ignorantem!  -  Jak zbadać element?
[Obrazek: 55241869393211328237.jpg]
POPRAWNIE

[Obrazek: 50268656233893645660.jpg]
Zle



Nie udało mi się znaleźć szablonów wtyczki ani w szablonach stylu ani w globalnych szablonach, wtyczka to dość rozbudowane narzędzie i sama w sobie po części służy właśnie do dodawania szablonów do wątku. Lecz ja pozostawiłem w niej wartości domyślne. Korzystałem tylko z domyślnych pół które wyświetlały się w formie tabeli.
Jak dobrze rozumiem wtyczka pobierała je stosując
{$GLOBALS['threadfields']['key']}

gdzie key to była treść dodanej pozycji.
za to {$threadfields_display} odpowiada za wyświetlanie całości w widoku wątku.
Rzecz w tym że problem nie leży raczej w szablonach stylu, postawiłem sobie drugą kopie forum , odinstalowałem i zainstalowałem wtyczkę raz jeszcze , wtedy forum zaczęło wyświetlać pozycje poprawnie lecz zapamiętane dane zniknęły , zaimportowałem szablon stylu który wyświetla forum poprawnie na kopie która posiada błąd , nie dało to jednak żadnych zmian . 

Na forum Mybb Pl też zastosowane jest podobne rozwiązanie z nr wersji forum .  Nie wiem czy to dokładnie XThreads , czy jakieś autorskie rozwiązanie ale zasada działania jest raczej identyczna .
---------------------------------------------------------
EDIT: Problem profilaktycznie naprawiony stosując
<table>{$threadfields_display}<table/>



Użytkownicy przeglądający ten wątek:

1 gości