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

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

DVZ Shoutbox | Zmiana tła wiadomości po wzmiance użytkownika (@Nick)

Założony przez Poftorek.

Hej, jeśli posiadacie DVZ Shoutbox to pewnie wiecie, że domyślnie nie ma on funkcji podświetlenia tła wiadomości dla użytkownika, który został w niej wspomniany.

Jest na to sposób! To znaczy, że jeśli masz nick Cyngielek, to jeśli ktoś zawrze w wiadomości "@Cyngielek" - Ty zobaczysz tło tej wiadomości w innym kolorze.

1 Edycja szablonu dvz_shoutbox


Znajdź:
{$javascript}
pod nim dodaj:

<script>
dvz_shoutbox.callbacks['update'].push(function(){
            var textWithMyUserName = document.querySelector("#shoutbox .user ~ .text");

            if (textWithMyUserName.textContent.indexOf(username) !== -1)
               textWithMyUserName.parentElement.style.background = "#0f0f0f";   
})
</script>
Zmiana koloru tła: znajdź i podmień kolor: #0f0f0f

2 Edycja szablonu headerinclude


Znajdź:   
var cookieDomain = "{$mybb->settings['cookiedomain']}";
nad nim dodaj:
var username = "{$mybb->user['username']}";

Efekt z perspektywy użytkownika o nicku Pofciuu:
   
Cytat:w pół dnia stałeś się lepszym pytonistą niż kawenanowo kiedykolwiek programisto :3 ~ Riess 13.11.2018 16:28
Cytat:ale z tą nazwą to fyeem ma racje  ~ Divir 29.07.2019 16:08
W moim przypadku musiałem trochę przerobić by działało.


<script>dvz_shoutbox.callbacks['update'].push(function(){
var username = "{$mybb->user['username']}";
           var textWithMyUserName = document.querySelector("#shoutbox .entry .text h6");

           if (textWithMyUserName.textContent.indexOf("@" + username) !== -1 ) {
              textWithMyUserName.parentElement.style.background = "#4a57ab8f";  }
});</script>
Młody front-end, młody raper. Aktualnie robię sobie forum o rapie.
5!
Rozumiem że edycję przeprowadzamy w ACP ? robiłem wszystko zgodnie z instrukcją i nie działa
Tak w ACP, możliwe że nie wyczyściłeś pamięci podręcznej. Po zmianach w szablonie/stylu powinieneś wejść na stronę (twoje forum) i użyć kombinacji CTRL + F5, wtedy powinno wszystko działać. Jeśli jednak wciąż nie będzie działać to prawdopodobnie zrobiłeś gdzieś błąd.
(21.07.2019, 16:46)pomponik napisał(a): Rozumiem że edycję przeprowadzamy w ACP ? robiłem wszystko zgodnie z instrukcją i nie działa

Odswież ciastka CTRL+F5
I sprawdź jeszcze raz dokładnie czy gdzieś nie popełniłeś błędu.
Niestety coś jest nie tak, nie chce działać. Użyłem kodu od indovsky i też nic się nie dzieje. Możliwe że to przez to iż mam plugin DVZ Mentions?

Tak dodałem:


<div id="shoutbox" class="front{$classes} sbpomponik">

<div class="thead">
<strong>{$lang->dvz_sb_shoutbox}</strong>
<p class="right"><a href="{$mybb->settings['bburl']}/index.php?action=shoutbox_archive">&laquo; {$lang->dvz_sb_archivelink}</a></p>
</div>

<div class="body">

<div class="window" style="height:{$mybb->settings['dvz_sb_height']}px;width: 100%;">
<div class="data">
{$html}
</div>
</div>
{$panel}
</div>

<script type="text/javascript" src="{$mybb->settings['bburl']}/jscripts/dvz_shoutbox.js"></script>
{$javascript}
<script>dvz_shoutbox.callbacks['update'].push(function(){
            var textWithMyUserName = document.querySelector("#shoutbox .user ~ .text");

            if (textWithMyUserName.textContent.indexOf(username) !== -1)
               textWithMyUserName.parentElement.style.background = "#528803";  
}</script>
</div>
(21.07.2019, 18:07)pomponik napisał(a): Niestety coś jest nie tak, nie chce działać. Użyłem kodu od indovsky i też nic się nie dzieje. Możliwe że to przez to iż mam plugin DVZ Mentions?

Tak dodałem:


<div id="shoutbox" class="front{$classes} sbpomponik">

<div class="thead">
<strong>{$lang->dvz_sb_shoutbox}</strong>
<p class="right"><a href="{$mybb->settings['bburl']}/index.php?action=shoutbox_archive">&laquo; {$lang->dvz_sb_archivelink}</a></p>
</div>

<div class="body">

<div class="window" style="height:{$mybb->settings['dvz_sb_height']}px;width: 100%;">
<div class="data">
{$html}
</div>
</div>
{$panel}
</div>

<script type="text/javascript" src="{$mybb->settings['bburl']}/jscripts/dvz_shoutbox.js"></script>
{$javascript}
<script>dvz_shoutbox.callbacks['update'].push(function(){
            var textWithMyUserName = document.querySelector("#shoutbox .user ~ .text");

            if (textWithMyUserName.textContent.indexOf(username) !== -1)
               textWithMyUserName.parentElement.style.background = "#528803";  
}</script>
</div>
Załóż wątek z problemem podając adres forum i konto testowe, możliwe, że Twój shoutbox ma inną strukturę.
Cytat:w pół dnia stałeś się lepszym pytonistą niż kawenanowo kiedykolwiek programisto :3 ~ Riess 13.11.2018 16:28
Cytat:ale z tą nazwą to fyeem ma racje  ~ Divir 29.07.2019 16:08



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