Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Forum przekierowujące dla danych grup, a zwykłe dla innych grup


Przejdź do rozwiązania Rozwiązane przez semenedar,

Rekomendowane odpowiedzi

Opublikowano

Czy istnieje jakaś modyfikacja lub czy da radę przerobić to i owo żeby:

 

Dział "Dla Vipów" zwykłych Użytkowników (określone grupy) przekierowywał na konkretną stronę (stronę zakupu Vipa) gdy będą chcieli wejść w dział/temat w dziale, a Grupy Vipowskie mogły korzystać z forum normalnie jak z każdego innego działu?

 

Mam nadzieje że zrozumiecie o co mi chodziło :)

admin4YSh2.png


 

Opublikowano

A mógłbyś pomóc z przekierowaniem?

 

Do przekierowania konretnych grup z konretnego działu mam taki kod:

<if test="$cat_data['id'] = 66"> <php>$groups = array(1, 2, 3);
     </php> <if test="in_array($this->memberData['member_group_id'],  $groups)"> 

</if> </if>

ale nie wiem jak te grupy przekierować na inny adres niż adres błędu. Przeszukałem bity w nadziei że znajdę jakąś podpowiedź z przekierowaniem, ale niestety nie znalazłem nic prócz forum przekierowującego :/

Szukałem tez w plikach, ale nic pomocnego również nie znalazłem :|

admin4YSh2.png


 

Opublikowano

Próbowałem w ten sposób:

<if test="$cat_data['id'] = 66"> <php>$groups = array(1, 2, 3);
     </php> <if test="in_array($this->memberData['member_group_id'],  $groups)"> 
<if test="ipsRegistry::getClass('output')->redirect( 'http://ipslink.pl' );"></if>
</if> </if>

W ten:

<if test="$cat_data['id'] = 66"> <php>$groups = array(1, 2, 3);
     </php> <if test="in_array($this->memberData['member_group_id'],  $groups)"> 
ipsRegistry::getClass('output')->redirect( 'http://ipslink.pl' );
</if> </if>

W ten:

<if test="$_data['cat_data']['id'] == 66">
   <php>$groups = array(1, 2, 3);</php> 
<if test="in_array($this->memberData['member_group_id'],  $groups)">
ipsRegistry::getClass('output')->redirect( 'http://ipslink.pl' );
</if> </if>

I ten:

<if test="$_data['cat_data']['id'] == 66">
<php>$groups = array(1, 2, 3);</php>
<if test="in_array($this->memberData['member_group_id'], $groups)">
<if test="ipsRegistry::getClass('output')->redirect( 'http://ipslink.pl' );"></if>
</if> </if>

I sytuacja ma się tak: Grupy o ID 1, 2, 3 są nigdzie nie przekierowywane, za to te grupy które powinny korzystać z tego forum normalnie (prócz 1, 2 i 3) przy pierwszym i ostatnim kodzie widać pustą stronę, a przy kodach w środku jest bez żadnego przekierowania.

 

Likwidowałem też spacje tutaj: ( 'http://ipslink.pl' ) ale to samo :sq_yellow_unhappy:

admin4YSh2.png


 

Opublikowano

Teraz dla grup vipowskich jak i dla zwykłych nie ma żadnej reakcji przy kodzie:

<if test="$cat_data['id'] = 66"> <php>$groups = array(1, 2, 3);
     </php> <if test="in_array($this->memberData['member_group_id'],  $groups)"> 
<php>ipsRegistry::getClass('output')->redirect( 'http://ipslink.pl' );</php>
</if> </if>

I tym:

<if test="$_data['cat_data']['id'] == 66">
<php>$groups = array(1, 2, 3);</php>
<if test="in_array($this->memberData['member_group_id'], $groups)">
<php>ipsRegistry::getClass('output')->redirect( 'http://ipslink.pl' );</php>
</if> </if>

PS. Czy oby dwa kody są poprawne (chodzi o część z grupami i działem)?

admin4YSh2.png


 

  • Rozwiązanie
Opublikowano (edytowane)

ale nie wiem jak te grupy przekierować na inny adres niż adres błędu.

 

A to ja Ci pokażę jak i nie potrzebujesz do tego żadnych modyfikacji kodu. Zapomniałeś o jednej opcji, jaką jest możliwość stworzenia WŁASNYCH stron błędu w przypadku gdy jedni mają uprawnienia do czytania zawartości działu a inni nie. Zapomniałeś, że można tam używać HTML. A więc w edycji forum które masz na myśli zrób tak:

 

post-13563-0-84613200-1374184278_thumb.p

 

Rzecz jasna zamiast:

<META HTTP-EQUIV="refresh" content="2;URL=http://www.gogle.pl">

to wpisz wyznaczony przez siebie czas content="?

 

 

Przekierowanie może przecież nastąpić od razu więc wpisz content="0

 

Resztę załatwisz uprawnieniami grup. Te które mogą przeglądać dział (zakładam że to Twoja grupa VIP) no to w uprawnieniach pozostawiasz im wszystkie "ptaszki" zaznaczone, zaś Ci którzy nie mogą, no to ustaw im tak:

 

post-13563-0-83058500-1374184632_thumb.p

 

Efekt końcowy będzie taki:

Uprawnieni Użytkownicy będą mogli wejść normalnie w dział. Ci zaś którzy uprawnień nie mają, będą widzieli listę tematów, ale nie będą mogli ich czytać, ponieważ przy próbie wejścia w temat, nastąpi przekierowanie na tę stronę, którą sobie określisz w URL= i zakładam że będzie to temat/dział gdzie są zawarte informacje o zakupie VIP. Sprawdziłem to na potrzeby tego tematu na własnym forum i działa. Po co Wy sobie utrudniacie żywot, jak można prościej?

Edytowane przez semenedar
  • Lubię to 3
Opublikowano

Teraz dla grup vipowskich jak i dla zwykłych nie ma żadnej reakcji przy kodzie:

Sprawdź czy działa z silentRedirect.

ipsRegistry::getClass('output')->silentRedirect( 'http://ipslink.pl' );
  • Lubię to 1
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.