Zmiana koloru informacji o prywatnych wiadomościach

Konfiguracja  Założony przez  carrx.

Adres forum:
https://demolka.net/index.php


Wersja silnika:
1.8.24


Opis problemu:
Chciałbym aby przy 1 nieprzeczytanej wiadomości oraz powyżej zmieniało kolor czcionki informacji o prywatnych wiadomościach:

0 nieprzeczytanych wiadomości:
   

1 lub więcej:
   

Z MyAlerts to nie problem, bo już było w pluginie, tak samo z pluginem View Unread Posts. Ale Prywatne wiadomości mają tylko:
header_welcomeblock_member_pms
<li><a href="{$mybb->settings['bburl']}/private.php"><i class='fas fa-envelope'></i> {$lang->welcome_pms} <span class="nav">{$lang->welcome_pms_usage}</span></a> </li>
Hej, najprościej wydaje mi się będzie to zrobić za pomocą JS. Tj. wiedząc, że zmienna $lang->welcome_pms_usage przechowuje liczbę wiadomości nieprzeczytanych możemy ją zapisać do zmiennej w JS, sprawdzić, czy jest większa od 0 (są nieprzeczytane wiadomości) i wtedy nadać kolor danej klasie. 
Przykładowo mój domyślny header_welcomeblock_member_pms może wyglądać tak:
<li class="pms"><a href="{$mybb->settings['bburl']}/private.php" class="pms">{$lang->welcome_pms}</a> {$lang->welcome_pms_usage}</li>

<script>
    const pmsCount = $lang->welcome_pms_usage;
    if (pmsCount>0) {
        $('.pms').css('color','orange');
    }
</script>

Czyli nadaję klasę pms dla całego li (kolor ilości wiadomości - cyfry) oraz dla a (tekst Prywatne wiadomości) a pod spodem dodaję skrypt, który obsłuży zmianę koloru.

P.S.
Najnowsza wersja MyBB to 1.8.29 :)

   
   
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
Dzięki wielkie, działa!
Co prawda ciut zmieniony, ale najważniejsze, że poznałem - jak to zrobić. 
<li class="pms"><a href="{$mybb->settings['bburl']}/private.php" class="pms"><span class="pm2">{$lang->welcome_pms}</span></a> (<span class="pm">{$lang->welcome_pms_usage}</span>)</li>

<script>
   const pmsCount = $lang->welcome_pms_usage;
   if (pmsCount>0) {
       $('.pm').css('color','orange');
$('.pm2').css('color','orange');
   }
</script>
   
   

(24.11.2021, 18:24)Poftorek napisał(a): P.S.
Najnowsza wersja MyBB to 1.8.29 :)

Udało mi się zaktualizować na wersję 1.8.26... Wersja 27 ma pliki, które zmieniałem rok temu pod kątem stylu i najgorsze, że nie pamiętam co tam zmieniałem... Jeśli zaktualizuje po kolei, aż do 29 to zapewne rozwalę jakąś część swojej pracy, a nie było łatwo, gdyż jest to styl robiony pierwszy raz i w wolnym czasie, co naprawdę zajęło mi mnóstwo czasu i nerwów.
(25.11.2021, 21:29)carrx napisał(a): Dzięki wielkie, działa!
Co prawda ciut zmieniony, ale najważniejsze, że poznałem - jak to zrobić.
<li class="pms"><a href="{$mybb->settings['bburl']}/private.php" class="pms"><span class="pm2">{$lang->welcome_pms}</span></a> (<span class="pm">{$lang->welcome_pms_usage}</span>)</li>

<script>
    const pmsCount = $lang->welcome_pms_usage;
    if (pmsCount>0) {
        $('.pm').css('color','orange');
$('.pm2').css('color','orange');
    }
</script>
[attachment=15094]
[attachment=15093]

(24.11.2021, 18:24)Poftorek napisał(a): P.S.
Najnowsza wersja MyBB to 1.8.29 :)

Udało mi się zaktualizować na wersję 1.8.26... Wersja 27 ma pliki, które zmieniałem rok temu pod kątem stylu i najgorsze, że nie pamiętam co tam zmieniałem... Jeśli zaktualizuje po kolei, aż do 29 to zapewne rozwalę jakąś część swojej pracy, a nie było łatwo, gdyż jest to styl robiony pierwszy raz i w wolnym czasie, co naprawdę zajęło mi mnóstwo czasu i nerwów.
Zawsze możesz porównać następne wersje tego pliku (tu 1.8.27) z oryginalnym plikiem ze swojej wersji (tu 1.8.26) i w odpowiednich miejscach w swoim pliku (tu 1.8.26) pododawać lub pousuwać kod. Czyli jakby ręcznie zaktualizować ten plik.
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:

1 gości