List Manager Forum

Can I restrict fields/columns OR rows?

User Porter 2024-11-04 07:48:40

QUESTION:

If there are certain columns or entire rows that I don't want everyone to view, is there a way to manage access rights for this?
My guess would be NO, so do you have any plans for introducing such a possibility?

Cheers,
Patrick

Moonsoft support 2024-11-04 09:35:26

Hi,
yes, you can restrict either columns or rows, depending on the conditions you want to apply, you would need to use different configuration options, here some settings available:

- Flag 'show only user records': This is a very specific condition to restrict the rows only to the user that has added them, you need a column 'userID' in order to have this working.

- For each column you have the setting 'visible in table'. So you can create different configurations for different user groups, for ex, let's say you want the super admin to see all columns, while the public will only see a couple of them. You should create a list with all columns enabled, publish as a module but restricted only for super admin. Then use the clone/copy option, disable the required columns, and publish this module restricted only for the public.

- Fixed custom filter (menu 'display'): with this setting you can create complex filters that will hide/show specific rows. Here you can build conditions based on any value of the row.

All these options can be combined, so you have many different ways to restrict your content, if you can't get the right configuration you can send us more details about what you're trying to achieve and we'll try to help.

Regards
Silvia Martín
Moonsoft Team

User Porter 2024-11-04 17:15:41

Hm, how do I get the 'user' into the table (using backend)? Don't really understand what data to submit...

Moonsoft support 2024-11-05 09:28:34

Hi,
the 'user' column contains the Joomla user id of the logged in user who inserts the record. If you plan to fill your table manually attaching each record to your users, then you can set this input field as 'number', or, in order to have a more user-friendly form, you can set it as a combobox(option list), so you can choose among your user names. Something like

select id,name from #__users

at the field->data/values->SQL query

would do the work.

Then you can set this field with type 'user' (in this view or in another list that will be published for your users) with the flag 'show only user records' so it will filter them according to the current logged user.

Hope this helps, regards
Silvia Martín
Moonsoft Team

User Porter 2024-11-13 19:11:58

Super, it did the trick...
However, I believe what I'm really after is that if I'm logged in as a Super User, and my friend is logged in as Registered... I should be able to see ALL 'Super User / Registered' records but my friend shall only see his/her 'Registered' records.

Moonsoft support 2024-11-14 09:21:25

Hi,
the user column can help for having the 'registered' user see his own records. For the other profile, you can duplicate the LM list (still they will be working agaist same db table), set it with no restriction, and publish it only for the super user profile so you will be granting full access to all records only that group. That could give you the combination of permissions you need.

Regards
Guillermo V.
Moonsoft Team

User Porter 2024-11-15 17:01:38

Accepted workaround!

...
CalcBuilder

Create dynamic calculators

Buy now!
...
Support/development 10 hours

Get a bigger amount of hours for more complex tasks and get a 10% discount

Buy now!