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

ROZWIĄZANY: Uprawnienia w publicznych modułach


Rekomendowane odpowiedzi

Nie mogę ogarnąć uprawnień w publicznych modułach. O ile z uprawnieniami w panelu admina sobie poradziłem to mimo analizy kilku modyfikacji nie mam pojęcia jak nadać kilka swoich uprawnień, mieć możliwość ustawiania ich oraz późniejszego sprawdzenia.

Co do sprawdzenia to wydaje mi się że wystarczy:

if( $this->registry->permissions->check( 'view', $calendar ) )
{
// moze cos tam robic
}

Tylko co powinienem dostarczyć w drugiej zmiennej? Nie wiem czy jest ona konieczna bo mam po prostu liste banów AMXBans i chciałbym dać możliwość dawania unbana, edycji i usuwania. Nie jest tu potrzebne konkretne id bana no bo po co? :P

Jakaś rada? Albo chociaż skrawek dokumentacji?

  • Lubię to 1
671762.pnguserbar_php_by_coolpie.jpg
Odnośnik do komentarza
Udostępnij na innych stronach

$this->settings['klucz'] = json_decode( $this->settings['klucz'] ); // musi być array(1, 2, 3)
if( ipsMember::isInGroup( $this->memberData['member_group_id'], $this->settings['klucz'] ) )
{
// moze cos tam robic
}

Coś takiego masz na myśli?

Te wszystkie opcje które chcę to muszę oczywiście w XML'u najpierw stworzyć.

Edytowane przez Fragles
671762.pnguserbar_php_by_coolpie.jpg
Odnośnik do komentarza
Udostępnij na innych stronach

if (ipsMember::isInGroup(IPSMember::load( 1, 'core' ), array(1, 2, 3) ))
{
// moze cos tam robic
}

Do takiego czegoś doszedłem i działa.

No bo w sumie chodziło mi o to żeby później szybko można to na innym forum zainstalować ale do testowania mogę wszystko przez panel dodać.

Chciałem użyć json'a żeby mieć tą tablicę w bazie, a przy odczytywaniu ją zeenkodować i móc użyć w tym przykładzie. Ale w sumie mogę tak jak DawPi w modzie Custom Pages wrzucić je oddzielone przecinkiem i potem użyć explode i in_array.

Edytowane przez Fragles
671762.pnguserbar_php_by_coolpie.jpg
Odnośnik do komentarza
Udostępnij na innych stronach

A co jest złego w dodaniu normalnego ustawienia?

Robisz nową grupę ustawień a w niej dodajesz opcję np. Multi-Select.

Dzięki temu zmieniasz ustawienia bez problemów w ACP(lista wyboru itd) a same ustawienia możesz wyeksportować.

Potem w kodzie standardowe sprawdzenie, np.:

if ( in_array( $this->memberData['member_group_id'], explode(',', $this->settings['klucz'] ) ) )

  • Lubię to 1
Odnośnik do komentarza
Udostępnij na innych stronach

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