Joomla!
http://forum.joomla.org/

backend user to access certain components...
http://forum.joomla.org/viewtopic.php?f=34&t=69154
Page 1 of 1

Author:  areba [ Wed Jun 14, 2006 2:28 pm ]
Post subject:  backend user to access certain components...

o have this prob that i cant seem to hack as at now, but am hoping this able community will have something for me.
I need to create a user with sufficient permissions to administrate a component, but the problem is, i just need to give her access to only one component. (so the drop down foe the components wont do.
i thought of creating a backend temp, pur buttons with only the links to the partivular component, but am scared i might enable it and when i log in, cease to have access myself. (cause i havent seen abiliry to assign templates to joomla. Os there a hack to this?

Author:  Noddegamra [ Wed Jun 14, 2006 2:57 pm ]
Post subject:  Re: backend user to access certain components...

As far as I know the permissions system to Joomla is pretty limited. One way round it is to create your own control pannel in php which allows certain logins to manipulate certain data in the joomla database. This could take some time and you will need to be careful with how you code it (including security measures etc).

If your not confident in php then I advise that you fisrt try http://www.google.com to search for your solution. Hopefully there will be a hack out there for you.

Author:  areba [ Thu Jun 15, 2006 12:14 pm ]
Post subject:  Re: backend user to access certain components...

um a bit not aure about what to do here, any other ideas?

Author:  duvien [ Fri Jun 16, 2006 9:42 am ]
Post subject:  Re: backend user to access certain components...

Noddegamra is right, Joomla has a very limiting ACL (access control level). So you will need to install a component called JACLplus to extend the ACL. It allows you to setup custom groups, so what you need to do is setup your custom goup and give this group access to the component you want and assign the user to it.

Obtain JACLplus here: http://extensions.joomla.org/component/ ... Itemid,35/

thanks and good luck,

Author:  areba [ Fri Jun 16, 2006 2:06 pm ]
Post subject:  Re: backend user to access certain components...

looks like a component you have to pay for, isnt there a "free" solution. cause if the worst comes to the worst, ill just code something for the moment.

Author:  Websmurf [ Fri Jun 16, 2006 2:08 pm ]
Post subject:  Re: backend user to access certain components...

JACLplus is open source and freely available.

Author:  duvien [ Fri Jun 16, 2006 2:15 pm ]
Post subject:  Re: backend user to access certain components...

It is free but charted members (paid) gets new updates a month before they are released to the general public.

Author:  areba [ Thu Jun 29, 2006 11:06 am ]
Post subject:  Re: backend user to access certain components...

tanks, i had a look at it and looks like its what i could just do with.

Author:  kmchen [ Mon Oct 23, 2006 1:54 pm ]
Post subject:  Re: backend user to access certain components...

I had the same problem and got scared when I saw the jaclPlus install process so I changed code directly in Joomla and it's very simple to add acces to "com_componentYouWant" to group "manager", for example:

in includes/gacl.class.php > function gacl

add a line to open access to install component (users will not really have install access but you need it to get edit access):
$this->_mos_add_acl( 'administration', 'install', 'users', 'manager', 'components', 'all' );

and just add a line for the component you want to add:
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_componentYouWant' );

Hope this will save time to next readers of that topic ;)

Author:  dhuelsmann [ Mon Oct 23, 2006 2:45 pm ]
Post subject:  Re: backend user to access certain components...

See this article http://www.webpr.gr/joomla/2006/07/give-joomla-backend-managers-access-to.html for a complete discussion of the changes that you could make.

Regards

Dave

Author:  MrTeroo [ Sun Oct 29, 2006 3:45 pm ]
Post subject:  Re: backend user to access certain components...

I've tried both of these methods but neither of them makes the relevent component icon appear in the control panel? Am I missing something?

I'm on ver 1.0.11

If I comment out one of the default components - Media Manger for example, then the icon still appears but I get access denied, so I know it is working.

How can I give a manager access to the coponents after editing gacl.clas.php?

Wayne

Author:  dhuelsmann [ Sun Oct 29, 2006 3:50 pm ]
Post subject:  Re: backend user to access certain components...

MrTeroo wrote:
I've tried both of these methods but neither of them makes the relevent component icon appear in the control panel? Am I missing something?

I'm on ver 1.0.11

If I comment out one of the default components - Media Manger for example, then the icon still appears but I get access denied, so I know it is working.

How can I give a manager access to the coponents after editing gacl.clas.php?

Wayne


Unless I am missing something in your question, the users you grant access to components would not see a new icon added to the admin home page but would go through the menus at the top of tha admin page - components for instance and select the one they have been given access to - the rest of them should give the access denied message if attempted.

Regards

Dave

Author:  MrTeroo [ Sun Oct 29, 2006 4:56 pm ]
Post subject:  Re: backend user to access certain components...

Thanks for the quick reply, Dave.

I don't expect to see anything on the front page.

When I log in using a manager a/c in the backend, there is no components on the top menu and no icons other than the default ones in the control pane.

So my question, I suppose, is how do I make components appear on the top menu for a manager a/c.

(BTW I have tried both methods described earlier in this post. I suspect that they are both working, but I don't see an icon or menu item to try them out)

Wayne

Author:  dhuelsmann [ Sun Oct 29, 2006 6:40 pm ]
Post subject:  Re: backend user to access certain components...

I was not referring to the front page but rather the admin home page. Perhaps this link will help you understand the user level you need to assign http://forum.joomla.org/index.php/topic,26169.0.html. If you want to limit a backend person to certain content functions, you make them a manager, if it is for components, you make them an administrator.

Regards

Dave

Author:  MrTeroo [ Sun Oct 29, 2006 6:47 pm ]
Post subject:  Re: backend user to access certain components...

Yes, I understand the user level permissions, but as described in this thread, I want to give a manager level user, access to one component only.

I followed the instructions below, but I don't know how to either

a: Make the components menu item appear for the manager level user
and/or
b:Make a QuickIcon appear for the one component the manager level user should have access to?

Wayne


kmchen wrote:
I had the same problem and got scared when I saw the jaclPlus install process so I changed code directly in Joomla and it's very simple to add acces to "com_componentYouWant" to group "manager", for example:

in includes/gacl.class.php > function gacl

add a line to open access to install component (users will not really have install access but you need it to get edit access):
$this->_mos_add_acl( 'administration', 'install', 'users', 'manager', 'components', 'all' );

and just add a line for the component you want to add:
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_componentYouWant' );

Hope this will save time to next readers of that topic ;)

Author:  dhuelsmann [ Sun Oct 29, 2006 10:27 pm ]
Post subject:  Re: backend user to access certain components...

See this thread for a possible solution http://forum.joomla.org/index.php/topic,62880.0.html

Regards

Dave

Author:  MrTeroo [ Mon Oct 30, 2006 8:44 am ]
Post subject:  Re: backend user to access certain components...

Thanks Dave,

But if you read the last post in the thread you will see that I am already trying that, but I can't change the access level of the component from administrator to manager.

Wayne

Author:  kmchen [ Mon Oct 30, 2006 8:48 am ]
Post subject:  Re: backend user to access certain components...

Hi teroo

A copy of your includes/gacl.class.php > function gacl would probably help.

Author:  MrTeroo [ Mon Oct 30, 2006 9:29 am ]
Post subject:  Re: backend user to access certain components...

Dave & Kmchen

Thanks for your help & support.

I've gone back to the beginning and I have it working now.

No idea what I was doing wrong. Here is the block of code I ended up with:
\includes\gacl.class.php - starting at line 152

// Standard Access - Start
$this->_mos_add_acl( 'administration', 'install', 'users', 'administrator', 'components', 'all' );
$this->_mos_add_acl( 'administration', 'install', 'users', 'super administrator', 'components', 'all' );

$this->_mos_add_acl( 'administration', 'edit', 'users', 'super administrator', 'components', 'all' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'administrator', 'components', 'all' );
// Standard Access - End

// Custom Access - Start
// added for managers' access

$this->_mos_add_acl( 'administration', 'install', 'users', 'manager', 'components', 'all' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_massmail' );
$this->_mos_add_acl( 'administration', 'manage', 'users', 'manager', 'components', 'com_massmail' );
$this->_mos_add_acl( 'administration', 'manage', 'users', 'manager', 'components', 'com_trash' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_banners' );

$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_events' );
$this->_mos_add_acl( 'administration', 'edit', 'users', 'manager', 'components', 'com_facileforms' );
// Custom Access - End

Author:  jodancer [ Mon Oct 30, 2006 11:08 am ]
Post subject:  Re: backend user to access certain components...

Thanks for this thread, I spent many hours trying and this mad things simpler. I have managed to give manager access to 2 components with no problems but I would like to remove the Menu option  for the manager to prevent any changes to the menus (main, user and top menus) Any ideas.

Thanks!

Author:  jan32 [ Mon Nov 27, 2006 12:16 am ]
Post subject:  Re: backend user to access certain components...

Thank you for posting this.

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/