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

Synchronizacja użytkownika w bazie


Rekomendowane odpowiedzi

Witam,

Zacząłem swoją przygodę z tworzeniem aplikacji i same problemy, ale trochę poczytałem, ale i tak nadal trudno ogarnąć początki to szwędam się po innych tematach z problemami i z nich powoli coś ogarniam. Przyszła więc pora już na pierwsze pytanie.

Czy wystarczy w Exstensions włączyć MemberSync, żeby użytkownicy się synchronizowali w bazie? - pytanie dot. poniższej wiadomości przy tworzeniu bazy w aplikacji.

Don't forget if your database table stores member IDs to create a MemberSync extension to handle when members are merged or deleted.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

To nie do tego służy. To pomocna opcja do np. aktualizacji jakiejś wartości czy wykonania pewnej operacji podczas zadanej opcji. Masz dostępne następujące:

	/**
	 * Member account has been created
	 *
	 * @param	$member	\IPS\Member	New member account
	 * @return	void
	 */
	public function onCreateAccount( $member )
	{
	
	}
	
	/**
	 * Member has validated
	 *
	 * @param	\IPS\Member	$member		Member validated
	 * @return	void
	 */
	public function onValidate( $member )
	{
	
	}
	
	/**
	 * Member has logged on
	 *
	 * @param	\IPS\Member	$member		Member that logged in
	 * @param	\IPS\Http\Url	$redirectUrl	The URL to send the user back to
	 * @return	void
	 */
	public function onLogin( $member, $returnUrl )
	{
	
	}
	
	/**
	 * Member has logged out
	 *
	 * @param	\IPS\Member		$member			Member that logged out
	 * @param	\IPS\Http\Url	$redirectUrl	The URL to send the user back to
	 * @return	void
	 */
	public function onLogout( $member, $returnUrl )
	{
	
	}
	
	/**
	 * Member account has been updated
	 *
	 * @param	$member		\IPS\Member	Member updating profile
	 * @param	$changes	array		The changes
	 * @return	void
	 */
	public function onProfileUpdate( $member, $changes )
	{
	
	}
	
	/**
	 * Member is flagged as spammer
	 *
	 * @param	$member	\IPS\Member	The member
	 * @return	void
	 */
	public function onSetAsSpammer( $member )
	{
		
	}
	
	/**
	 * Member is unflagged as spammer
	 *
	 * @param	$member	\IPS\Member	The member
	 * @return	void
	 */
	public function onUnSetAsSpammer( $member )
	{
		
	}
	
	/**
	 * Member is merged with another member
	 *
	 * @param	\IPS\Member	$member		Member being kept
	 * @param	\IPS\Member	$member2	Member being removed
	 * @return	void
	 */
	public function onMerge( $member, $member2 )
	{
		
	}
	
	/**
	 * Member is deleted
	 *
	 * @param	$member	\IPS\Member	The member
	 * @return	void
	 */
	public function onDelete( $member )
	{

	}

	/**
	 * Email address is changed
	 *
	 * @param	\IPS\Member	$member	The member
	 * @param 	string		$new	New email address
	 * @param 	string		$old	Old email address
	 * @return	void
	 */
	public function onEmailChange( $member, $new, $old )
	{

	}

	/**
	 * Password is changed
	 *
	 * @param	\IPS\Member	$member	The member
	 * @param 	string		$new	New password
	 * @return	void
	 */
	public function onPassChange( $member, $new )
	{

	}

 

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

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

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki za odpowiedź, a w środku zamieszczam kod, spoko. A mógłbyś podać link do całej listy tych opcji?

A chciałbym jeszcze wiedzieć, jak sprawdzić w jakim stanie aktualnie działa aplikacja? Trzeba ją wyeksportować czy jak, aby na bieżąco sprawdzać czy działa?

Edytowane przez Marcin Lis
Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager
10 minut temu, Marcin Lis napisał:

A mógłbyś podać link do całej listy tych opcji?

https://invisionpower.com/developers/docs/development/extensions/overview-of-the-extensions-system-r64/

11 minut temu, Marcin Lis napisał:

na bieżąco sprawdzać czy działa

Nie wiem jaką aplikację piszesz. Sam przecież możesz sprawdzać czy działa skoro sam ją robisz. :crazy:

intermedia - profesjonalne rozwiązania Invision Power Board

---

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

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Dodać ją do menu i stworzyć moduł publiczny. Czytałeś to? Dobrą opcją jest też przeglądanie istniejących aplikacji (ich kodu) i nauka na tej podstawie.

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

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

Odnośnik do komentarza
Udostępnij na innych stronach

Aplikacje zostawiłem na później, wziąłem się za prostą wtyczkę (slider), na razie działa i staram się ją rozbudować, na podstawie tego robię
https://invisionpower.com/developers/docs/development/plugins/complete-example-of-a-plugin-in-ips-community-suite-r50

Odnośnik do komentarza
Udostępnij na innych stronach

Napotkałem jeden problem, związany z językiem w ustawieniach.

Mam x8 takich linijek pod ustawienia, i gdzie mogę ustawić uniwersalny tytuł dla pola, bo pisanie x8 w języku to też beznadzieja, albo jak zrobić tablicę i na niej operować, a może jakiś inny sposób? Na razie zostawię to jak jest i poczekam na odpowiedź i przejdę pod podpięcie JS.

$form->add( new \IPS\Helpers\Form\YesNo( 'slide_turn_1', NULL, TRUE, array( 'togglesOn' => array( 'app' => 'core', 'key' => 'Admin', 'autoSaveKey' => 'slide_turn_1' ) ) ) ); 
$form->add( new \IPS\Helpers\Form\Editor( 'slide_title_1', \IPS\Settings::i()->slide_title_1, FALSE, array( 'app' => 'core', 'key' => 'Admin', 'autoSaveKey' => 'slide_title_1' ) ) );
$form->add( new \IPS\Helpers\Form\Editor( 'slide_desc_1', \IPS\Settings::i()->slide_desc_1, FALSE, array( 'app' => 'core', 'key' => 'Admin', 'autoSaveKey' => 'slide_desc_1' ) ) );

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Spróbuj inaczej to zrobić, bardzo fajnym "pomocnikiem":

\IPS\Helpers\Form\Stack()

Więcej info w samym pliku, innych plikach forum. :)

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

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

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • 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ę.