Jump to content

Hosting dHosting.pl - 10% rabat!

Sign in to follow this  
kodif

Promowanie grup - nie działa żaden warunek czasu

Recommended Posts

Posted (edited)

Mam grupę w której są nieaktywni użytkownicy.

W promocjach grup utworzyłem zasadę która powinna wyciągać (tzn przenosić do innej grupy) użytkowników z grupy nieaktywnych gdy napiszą jakiś nowy post ( w innej wersji gdy pojawią się na forum),  - ale to kompletnie nie działa.

Zasada przenosi wszystkich jak leci, wygląda jakby warunek nie był w ogóle sprawdzany. Ustawienia np. takie jak na obrazku.

 

Czy mógłby podać mi ktoś, w którym miejscu w kodzie następuje sprawdzanie tych warunków? Chyba trzeba zacząć w nim ręcznie grzebać.

 

zrzut:

screenshot-localhost-2019.06.24-17-32-16(1).png

Edited by kodif

Share this post


Link to post
Share on other sites

Może bug? Zgłaszałeś?


intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Share this post


Link to post
Share on other sites

Zapewne to bug. Nie, nie zgłaszałem, szkoda mi czasu na jałowe wymienianie wiadomości z nimi, po których, gdy zgłoszenie dojdzie do najwyższego departamentu, zorientują że że to jednak bug - podziękują i przez rok nie zrobią nic. Albo zgłaszasz im buga, a oni ci odpowiadają że twoja licencja wygasła i spadaj. W cudowny sposób bug znika. W skrypcie są nadal bugi które zgłaszałem dwa(!) lata temu.

 

Ponawiam prośbę o podpowiedz gdzie szukać obsługi tych warunków.

Share this post


Link to post
Share on other sites
15 godzin temu, kodif napisał:

Czy mógłby podać mi ktoś, w którym miejscu w kodzie następuje sprawdzanie tych warunków? Chyba trzeba zacząć w nim ręcznie grzebać.

system/Member/GroupPromotion.php

  • Like 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Share this post


Link to post
Share on other sites

I potem: system/Member/Member.php

	/**
	 * Check Group Promotion
	 *
	 * @return	void
	 */
	public function checkGroupPromotion()
	{

 

  • Like 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Share this post


Link to post
Share on other sites

I potem (Twój przypadek): applications/core/extensions/core/MemberFilter/Lastvisit.php

  • Like 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Share this post


Link to post
Share on other sites

Dziękuję

Share this post


Link to post
Share on other sites

Ewidentnie jest błąd. Funkcja matches w applications/core/extensions/core/MemberFilter/Lastpost.php

	public function matches( \IPS\Member $member, $filters, $object=NULL )
	{
	
		/* If we aren't filtering by this, then any member matches */
		if( ( !isset( $filters['range'] ) OR !$filters['range'] OR empty( $filters['range']['end'] ) ) AND ( !isset( $filters['days'] ) OR !$filters['days'] ) )
		{
			return TRUE;
		}

zawsze zwraca w tym miejscu TRUE gdy ustawi się warunek filtrowania "mniej niż x dni temu". Gdy ustawi się warunek "więcej niż x dni temu", przepuszcza kod dalej, do dalszego sprawdzania.

 

teraz mam pytanie, czy jest w IPS4 jakaś zdefiniowana funkcja typu "alert" , żeby wyświetlić zawartość $filters?

Czy może muszę utworzyć coś, co zrzuci te dane do logu na dysk?

Share this post


Link to post
Share on other sites
15 godzin temu, kodif napisał:

teraz mam pytanie, czy jest w IPS4 jakaś zdefiniowana funkcja typu "alert" , żeby wyświetlić zawartość $filters?

 

Chodzi Tobie o zdebugowanie jej?

 

Share this post


Link to post
Share on other sites

Tak, chodzi mi o zdebugowanie, ale już nie istotne, pogrzebałem w kodzie i w zmiennych. Ta funkcja jest spieprzona totalnie, są wysyłane do niej istotne paramenty które ona ignoruje, są w niej jakieś pozostałości po szukaniu konkretnego warunku, itd

Wygląda jakby gimnazjalista-pasjonat zaczął to pisać, ale się znudził w połowie, a IPS zadowolony uważa że ma gotowy produkt.

 

Praktycznie jest do napisania od nowa, to samo jest w Lastvisit.php

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.