Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Kohana] Moduł Auth :: Role
Damiankossek
post
Post #1





Grupa: Zarejestrowani
Postów: 118
Pomógł: 8
Dołączył: 10.12.2009

Ostrzeżenie: (0%)
-----


Witam, mam problem z modułem auth, może w zasadzie nie problem ale chciałbym rozwiązać to troszke inaczej bo np. :
  1. <?php defined('SYSPATH') or die('No direct script access.');
  2.  
  3. class Controller_Admin extends Controller_Layout {
  4.  
  5. public $auth_required = array('login','admin'); //Auth is required to access this controller
  6.  
  7.  
  8. function action_index(){
  9. $this->template->content = View::factory('adminindex');
  10.  
  11. }


No i właśnie interesuje mnie $auth_required, ponieważ tworze CMSa to chciałbym aby to było jakoś bardziej elastyczne i była możliwość edycji tego za pomocą odpowiednio stworzonej strony, no i w zasadzie moje pytanie brzmi czy mogę jakimś sposobem wrzucić w zmienną $auth_required tablice z np. innej funkcji ?

Jeżeli tak się nie da to oczywiście mógłbym stworzyć jeszcze inny moduł sprawdzający uprawnienia i stosować go w konstruktorze no ale może macie jakiś pomysł o ile się w ogóle da wrzucić w zmienna $auth_required tablice z innej funkcji/pliku (IMG:style_emoticons/default/winksmiley.jpg)

Chciałbym zaznaczyć że podobne pytanie zadałem w dziale OOP lecz myśle że jednak te pytanie bardziej tutaj pasuje ze względu na to że może ktoś z was ma jakieś ciekawe rozwiązanie do Kohany.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Możliwe, że to Ci zadziała:
  1. <?php defined('SYSPATH') or die('No direct script access.');
  2.  
  3. class Controller_Admin extends Controller_Layout {
  4.  
  5. public $auth_required = array(); //Auth is required to access this controller
  6.  
  7. public function __construct() {
  8. parent::__construct();
  9.  
  10. $roles = ... // pobierasz tablicę z bazy danych
  11.  
  12. $this->auth_required = $roles;
  13. }
  14.  
  15. function action_index(){
  16. $this->template->content = View::factory('adminindex');
  17.  
  18. }

Zależy w którym miejscu sprawdzane są uprawnienia. Jeżeli w konstruktorze nadrzędnym to musisz przenieść parent::__construct() za $this->auth_required = $roles. Generalnie chodzi o to, że możesz tą tablicę zaktualizować danymi poprzez $this->auth_required = array(...);
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 02:08