0

I have a function in joomla 1.5

function saveuser($row){
    $db =& JFactory::getDBO();
    $instance = new JUser();
    jimport('joomla.application.component.helper');
    $config   = &JComponentHelper::getParams('com_users');
    if(!isset($row['usertype']))
    $row['usertype'] = $config->get( 'new_usertype', 'Registered' );

    $acl =& JFactory::getACL();
    if(!$row['gid'])
    $row['gid'] = $acl->get_group_id( '', $usertype);

    $instance->set( 'id'            , $row['id'] );
    $instance->set( 'name'          , $row['name'] );
    $instance->set( 'username'      , $row['username'] );
    $instance->set( 'password'      , $row['password'] );
    $instance->set( 'email'         , $row['email'] );
    $instance->set( 'gid'           , $row['gid']);
    $instance->set( 'usertype'      , $row['usertype'] );
    unset($instance->password_clear);
    unset($instance->guest);
    unset($instance->aid);
    $ret = $db->insertObject( '#__users', $instance, 'id' );
    if(!$ret){
        return false;
    }
    $acl->add_object( 'users', $row['username'], $row['id'], null, null, 'ARO' );
    $acl->add_group_object( $row['gid'], 'users', $row['id'], 'ARO' );
    return true;
}

But when run as joomla 2.5 is error is:

Fatal error: Call to undefined method JAccess::get_group_id() in ... on line ...
Fatal error: Call to undefined method JAccess::add_object() in ... on line ...
Fatal error: Call to undefined method JAccess::add_group_object() ... on line ...

How to fix this function to joomla 2.5, How to ideas ?
Hai Truong IT
  • 4,126
  • 13
  • 55
  • 102

1 Answers1

0

The ACL system for Joomla! 2.5 is completely different and there is no simple answer to your question (Joomla! 1.5's attempt at ACL was only half implemted).

You would be best of starting with "Access Control List/1.6-2.5/Tutorial" on the Joomla! doc's site. The reading through 2.5 core components like com_users and com_content.

Craig
  • 9,335
  • 2
  • 34
  • 38