Skocz do zawartości

Hosting dHosting.pl - 10% rabat!

cin34

Podczepianie się pod moduł klubu

Rekomendowane odpowiedzi

Czy jest możliwość uniknięcia edycji oryginalnych modułów IPS? Dokładnie chodzi mi o moduł klubu "applications/core/modules/front/clubs/directory.php"

W 329 linijce mam dodane:

	protected function create()
	{
		try
		{
			$points = \IPS\Db::i()->select( 'points', 'points_members', array('member_id=?', \IPS\Member::loggedIn()->member_id), NULL, 1)->first();
			if($points < 10)
				\IPS\Output::i()->error( \IPS\Member::loggedIn()->member_id ? 'no_module_permission' : 'no_module_permission_guest', '2C349/1', 403, '' );
		}
		catch( \UnderflowException $ex )
		{
			\IPS\Output::i()->error( \IPS\Member::loggedIn()->member_id ? 'no_module_permission' : 'no_module_permission_guest', '2C349/1', 403, '' );
		}
              
        //Tu dalsza część kodu

Chciałbym sprawdzanie, czy użytkownik ma wymaganą ilość punktów przenieść do hooka osobnej aplikacji, niestety nie wiem jak to powinno wyglądać i czy w ogóle jest możliwe.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Problem rozwiązałem, do kosza.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Utworzenie hooka do klasy \IPS\core\modules\front\clubs\directory

I do klasy w hooku wstawić funkcję:

protected function create()
	{
		try
		{
			try
			{
				try
				{
					try
					{
						//I TU WŁASNY KOD, KTÓRY SIĘ WYKONUJE PODCZAS TWORZENIA KLUBU
		
						parent::create();
					}
					catch ( \RuntimeException $e )
					{
						if ( method_exists( get_parent_class(), __FUNCTION__ ) )
						{
							return call_user_func_array( 'parent::' . __FUNCTION__, func_get_args() );
						}
						else
						{
							throw $e;
						}
					}
				}
				catch ( \RuntimeException $e )
				{
					if ( method_exists( get_parent_class(), __FUNCTION__ ) )
					{
						return call_user_func_array( 'parent::' . __FUNCTION__, func_get_args() );
					}
					else
					{
						throw $e;
					}
				}
			}
			catch ( \RuntimeException $e )
			{
				if ( method_exists( get_parent_class(), __FUNCTION__ ) )
				{
					return call_user_func_array( 'parent::' . __FUNCTION__, func_get_args() );
				}
				else
				{
					throw $e;
				}
			}
		}
		catch ( \RuntimeException $e )
		{
			if ( method_exists( get_parent_class(), __FUNCTION__ ) )
			{
				return call_user_func_array( 'parent::' . __FUNCTION__, func_get_args() );
			}
			else
			{
				throw $e;
			}
		}
	}

 

  • Lubię to 1

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Problem ROZWIĄZANY. Jeśli są jakiekolwiek wątpliwości, pytania proszę o założenie nowego tematu.

Wszelkie uzasadnione reklamacje/pretensje/sugestie/rady przyjmuje ekipa forum.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×

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