Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

Witam,

Planuję wprowadzić czasową metodę do blokady konta. Jak to rozwiązuje IP.Board, że zawieszając konto potem je odblokowuje usuwając wartości? Ja np. nadaję czas restrykcji w innej tabeli niż members i jeżeli dobiegnie końca powinien usuwać flagę w members o blokadzie i ustawiać flagę w tabeli tej logów, że wszystko jest już OK. Jak to rozwiązać po stronie serwera?

Pozdrawiam,

Largo

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano

Hej,

napisz odpowiedni task, uruchamiany co X czasu i sprawdzający:

( $czas_blokady > time() ) ? 'odblokuj' : 'nic_nie_rob' ;

Witaj,

IP.Board tak tego nie rozwiązuje ( możliwe, że się mylę ), więc jak oni tego dokonują? Zawieszenie jest czasowe, aktualizowany jest rekord temp_ban z parametrami:

  • Czas startu
  • Czas zakończenia
  • Typ jednostki czasowej
  • Jednostka czasowa

Możesz mi to wyjaśnić? I przeszukiwać co chwilę użytkowników z blokadą to z lekka bezsens...

Pozdrawiam,

Largo

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Opublikowano

Rozwiązuje. Nie ma crona przecież wbudowanego. Namiastką są taski.

Witaj,

Tak jak myślałem - nie do końca :-)

Otwórz: admin/sources/base.php

Znajdź:

			/* Check temporary ban status */
		if( self::$handles['member']->getProperty( 'temp_ban' ) )
		{
			$ban_arr = IPSMember::processBanEntry( self::$handles['member']->getProperty( 'temp_ban' ) );

			/* No longer banned */
			if( time() >= $ban_arr['date_end'] )
			{
				self::DB()->update( 'members', array( 'temp_ban' => '' ), 'member_id=' . self::$handles['member']->getProperty( 'member_id' ) );
			}
			/* Still banned */
			else
			{
				self::getClass('output')->showError( array( 'account_susp', self::getClass( 'class_localization' )->getDate( $ban_arr['date_end'], 'LONG', 1 ) ), 1001 );
			}
		}

Każdorazowo podczas uruchamiana rejestru odbywa się taka akcja i tak myślałem to rozwiązać :-)

Pozdrawiam,

Largo

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

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ę.