+ Antworten
Ergebnis 1 bis 4 von 4

Thema: getUser()

  1. #1
    Neu an Board
    Registriert seit
    01.07.2009
    Beiträge
    3
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard getUser()

    Hallo zusammen!

    ich bin gerade dabei das backend der joomgallery zu ändern, dass nur mehr Administratoren aufwärts zugriff auf gewisse funktionen haben, z.b. Konfiguration

    lösen würd ich es einfach über:

    <?php
    $user=& JFactory::getUser(); ?>

    und dann eine if abfrage ob die gid die richtige ist, hab das so schon bei einigen komponenten modulen gemacht und da hat das immer gut geklappt nur hier nicht

    hab dann mit dem einachen Echo festgestellt, dass getUser keinen wert liefert

    echo "<p>Your usertype is {$user->usertype} which has a group id of {$user->gid}.</p>";

    hab jetzt festgestellt, dass es außerhalb der Function geht aber nicht innerhalt, gibt es eine möglichkeit auf die user id oder group id innerhalb der function zuzugreifen?

    Code:
    <?php
    // $HeadURL: http://joomlacode.org/svn/joomgallery/JG-1.5/JG/trunk/administrator/components/com_joomgallery/admin.joomgallery.html.php $
    // $Id: admin.joomgallery.html.php 502 2009-11-09 18:26:36Z mab $
    /******************************************************************************\
    **   JoomGallery  1.5.0.4                                                     **
    **   By: JoomGallery::ProjectTeam                                             **
    **   Copyright (C) 2008 - 2009  M. Andreas Boettcher                          **
    **   Based on: JoomGallery 1.0.0 by JoomGallery::ProjectTeam                  **
    **   Released under GNU GPL Public License                                    **
    **   License: http://www.gnu.org/copyleft/gpl.html or have a look             **
    **   at administrator/components/com_joomgallery/LICENSE.TXT                  **
    \******************************************************************************/
    
    defined('_JEXEC') or die('Direct Access to this location is not allowed.');
    
    /******************************************************************************\
    *                            Functions / Menu                                  *
    \******************************************************************************/
    ?>
    <?php
      $user =& JFactory::getUser();
    
    //Hier geht es
    
        echo "<p>Your usertype is {$user->usertype} which has a group id of {$user->gid}.
    
    </p>";
     ?>
    <?php
    function Joom_ShowMenu_HTML() {
    
      $database = & JFactory::getDBO();
      $document = & JFactory::getDocument();
      $config   = Joom_GetConfig();
      jimport('joomla.html.pane');
    
      $document->addStyleDeclaration('
    .joom_cpanel img {
      padding:21px 0px !important;
    }');
    
      $database->setQuery("SELECT id
          FROM #__components
          WHERE link = 'option="._JOOM_OPTION."' AND parent=''");
      $id = $database->loadResult();
    
      $database->setQuery("SELECT *
          FROM #__components
          WHERE parent='".$id."' ORDER BY id ASC");
      $rows = $database->loadObjectList();
    ?>
    <table border="0" cellpadding="10" style="margin-right:auto; margin-left:auto;" class="adminform">
      <tbody>
        <tr>
          <td width="55%" valign="top">
            <div id="cpanel" class="joom_cpanel">
    <?php
    
    //Hier nicht mehr
    
    echo "<p>Your usertype is {$user->usertype} which has a group id of {$user->gid}.</p>";
    
    
    
      foreach($rows as $row) {
        Joom_QuickIconButton($row->admin_menu_link, $row->admin_menu_img, $row->name);
    Angehängte Grafiken

  2. #2
    Wohnt hier Avatar von Kubik-Rubik
    Registriert seit
    20.10.2005
    Ort
    Kubik-Rubik.de
    Beiträge
    2.737
    Bedankte sich
    177
    Erhielt 1.058 Danksagungen
    in 792 Beiträgen

    Standard

    Du musst den Aufruf

    PHP-Code:
    $user =& JFactory::getUser(); 
    in der Funktion durchführen, sonst geht es nicht!

    Gruß
    Geändert von Kubik-Rubik (09.04.2010 um 01:02 Uhr)
    Joomla! Extensions by Kubik-Rubik.de
    Keine Beantwortung von Supportanfragen per PN

    Joomla! braucht Dich!

  3. Erhielt Danksagungen von:


  4. #3
    Neu an Board
    Registriert seit
    01.07.2009
    Beiträge
    3
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Danke schön!!

    was ich nicht schon alles Probiert habe War wohl schon zu spät gestern

    LG

  5. #4
    Neu an Board
    Registriert seit
    31.08.2009
    Beiträge
    36
    Bedankte sich
    6
    Erhielt 4 Danksagungen
    in 4 Beiträgen

    Standard

    Wenn du es sauber machen willst solltest du die acl api verwenden.
    Schau dir mal das an:
    http://api.joomla.org/__filesource/f...n.php.html#a28
    Hier kannst du für einzelne Bereiche, Actions und Usergruppen Rechte vergeben und dann mit:
    http://api.joomla.org/Joomla-Framewo...html#authorize
    jeweils prüfen.

    Vielleicht wurde dies in der Komponente auch schon verwendet, dann musst du nur die Datei finden in der die acl Objekte erstellt wurden und dort die rechte anpassen. Dadurch bleibt dein Code einfacher wartbar und du musst bei einem update der Komponente nur die entsprechende acl Datei wieder anpassen.

    Referenz zur api gibt es hier:
    http://phpgacl.sourceforge.net/manual.pdf
    Wichtig für dich wäre nur zu verstehen was ACO AXO und ARO Objecte sind, da die Api in joomla etwas umgebogen wurde.

+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein