Private User Access -Sep 2024
Introduction
jDownloads supports Downloads that have access restricted to 'Named' users. By Single User we mean a specifed logon Name. If several people know that logon Name and its Password then all of those people have access to the 'private' Downloads listed under that logon Name.To demonstrate this facility, Accounts were created for two users, namely Colin Smith and David Jones. The objective is to have Downloads that are restricted to those users indvidually. That is as well as being able to access regular Downloads, Colin Smith and only Colin Smith can access those Downloads whose Access is marked as

Usually these 'private' Downloads are created in the backend by the super user but they maybe created in the front-end by a regular 'uploader'. The 'uploader' could be, for example, a 'supervisor' or 'trainer' who is setting tasks for each individual. Also a private individual may create downloads from the front end into their own private directory. For example a student could be reporting the results of a tasks they have been set.
For the purposes of demonstration a category called 'Commercial' was created. This will hold Downloads that are generally available and those that are restricted to specific users.
There are two aspects to setup:
(i) one a menu suitable 'Create Download' menu item in the Front-end;
(ii) the other is using 'Single User Access' facility.
Setting up Create Download Menu Item
Part of setting the menu item frontend Create Download menu item involves setting up a specific user group, basically to set the View Access. The user group needs to be setup before the menu item..
Private User Groups Settings
To give flexibility it it desiable to create a specific user group for the private users, which here is call PrivateUsersUG. Also to create a specific Access level called say 'private-view'. Creating this is done in the Joomla Users section.
Go to
then
and then
. Set the Group Title to a suitable name such as 'PrivateUsersUG' and make the parent Registered by using the pulldown. This is to ensure the 'private users' will need to login. Use
to exit.
Now click on
next click on
then in tab
give a suitable name such as 'private-view'.






Now click on





Create menu item
Next we will create the menu item.
So go to
and scroll down to
. Now click on the
which opens up the a list of all the existing items in the main menu. As we are adding a new menu item click on the
button at the top left. This shows the first stage in selecting the new menu item. Now use the
button. This shows a list of Components that have Menu Item types as shown opposite.
Obviously Click on 'jDownloads'.

Click on the
tab, select
and use the pulldowns to select Allowed for each permission you wish to grant to your private users.
Initially each permission changed will have a
alongside it. This denotes the the Permission has not been saved yet. So click on the
button and again look at the
-
to confirm they are now fully set. Finally click on
.

Colin M March 2023, September 2024
So go to





Obviously Click on 'jDownloads'.

This then shows another pulldown with a list of the jDownloads specific menu items.
Select the jDownloads Menu Item Type 'Create Download' by clicking on its name.

Ensure it is Published.
Mot importantly set the Access to 'private-view'.
This ensures that only the Private Users will see the menu item in the front end as they are the ony members of the PrivateUsersUG user group.

Select the jDownloads Menu Item Type 'Create Download' by clicking on its name.

Ensure it is Published.
Mot importantly set the Access to 'private-view'.
This ensures that only the Private Users will see the menu item in the front end as they are the ony members of the PrivateUsersUG user group.

Next click on the
tab.
The objective here is to ensure that the 'private Downloads' are in this Category and any of its subcategories. For example each Private User could have their own subcategory.
So set the 'Default category' option to Yes. This shows the 'Choose a category' option
Use the pull down to select the 'Commercial' category so that the private users are confined to that category tree as illustrated opposite.
You could also use the 'Submission/Cancel Redirect' option to say a 'List All Categories' menu item.
This means that categories and Downoads, and also other content such as articles, that have this Access level can only be seen by members of the PrivateUsersUG in the Frontend. Not even the Super User can see these items in the Frontend. But if we stopped at this stage they would be seen by who ever has access to the backend.
This is where the jDownloads 'Single User Access' is needed. So that is the next stage.



The objective here is to ensure that the 'private Downloads' are in this Category and any of its subcategories. For example each Private User could have their own subcategory.
So set the 'Default category' option to Yes. This shows the 'Choose a category' option

You could also use the 'Submission/Cancel Redirect' option to say a 'List All Categories' menu item.
This means that categories and Downoads, and also other content such as articles, that have this Access level can only be seen by members of the PrivateUsersUG in the Frontend. Not even the Super User can see these items in the Frontend. But if we stopped at this stage they would be seen by who ever has access to the backend.
This is where the jDownloads 'Single User Access' is needed. So that is the next stage.


The ability to set 'Single User Access' capability is enabled in the User Group Settings. So on the Joomla Control Panel click on
then
and then
. This shows all the User Groups.
Next click on
and then
. Scroll down to the until you see the
in the 'Data Field Section' section.
Typically the view is like the first image opposite. To enable 'Single User Access' ensure that it is 'ticked'.





Next click on



Typically the view is like the first image opposite. To enable 'Single User Access' ensure that it is 'ticked'.


Usually I tick most items as that allows more facilities and flexibility when creating Downloads as in the second image above.
Note: ticking' the 'Single User Access' does NOT mean all registered users will be single access users.
Note: ticking' the 'Single User Access' does NOT mean all registered users will be single access users.
Create Holding Category
There is a considerable advantage in putting all 'private' Downloads in a single category.
Basically one only has to set the appropriate permissions once !!
In this example we create a Category called 'Commercial' as a top level category. Individual 'Private Users' could have their own subcategories. Or all the Private Downloads could be in the top level Category as private users will only see their own Downloads.
Basically one only has to set the appropriate permissions once !!
In this example we create a Category called 'Commercial' as a top level category. Individual 'Private Users' could have their own subcategories. Or all the Private Downloads could be in the top level Category as private users will only see their own Downloads.
In jDownloads backend select
and then click on the
button at the top. This loads the Category Create form.
The Title in this example is set to 'Commercial'.
Ensure the Parent Category option shows 'No parent Category'.
Ensure the Status is 'Published',
And by using the pull-down that the Access is set to 'private-view'.


The Title in this example is set to 'Commercial'.
Ensure the Parent Category option shows 'No parent Category'.
Ensure the Status is 'Published',
And by using the pull-down that the Access is set to 'private-view'.

Allow Frontend Creation etc.
The next action is to set the Permissions so that members of the Private Users group are able to Create, Edit and Download from the Frontend. This involves setting two user group permissions, one for the PrivateUsersUG and the other for the Registered group
Click on the


Initially each permission changed will have a






Click on Registered and set the permissions of the Registered Group appropriately.
This follows the procedure as above but with slightly different settings
It may be unwise to allow Delete and also unwise to allow the general Edit.
NEVER set a permission to 'Denied'. This has widespread ramifications and many unforseen consequences.

This follows the procedure as above but with slightly different settings
It may be unwise to allow Delete and also unwise to allow the general Edit.
NEVER set a permission to 'Denied'. This has widespread ramifications and many unforseen consequences.

Create Private Download
Creating a 'private' Download is just like creating any Download except for one aspect, namely specifying Single User Access.
To specify the single user clicking on the 'Select a User' pulldown button
will show a list of users as illustrated opposite.



The first image opposite shows the Download settings in the General tab before using the Single User Access pulldown.
The second image opposite shows Download settings in the General tab after using the Single User Access pulldown.
Use the pulldown in option 'Single User Access' to select the relevant user.
If jDownloads detects that 'Single User Access' has been set then the Joomla! Access Level is automatically reset during the Save.
This occurs irrespective of which Access Level is selected during either the editing or creation of a Download in both the frontend and the backend.
Remember to Publish!


The second image opposite shows Download settings in the General tab after using the Single User Access pulldown.
Use the pulldown in option 'Single User Access' to select the relevant user.
If jDownloads detects that 'Single User Access' has been set then the Joomla! Access Level is automatically reset during the Save.
This occurs irrespective of which Access Level is selected during either the editing or creation of a Download in both the frontend and the backend.
Remember to Publish!


Change Sole Access User
In the Backend you are able to change the user or set no user. Click on
which brings up a view such as shown opposite.
This allows selecting another user or to revert to a regular Download by clicking on No User.

This allows selecting another user or to revert to a regular Download by clicking on No User.

Colin M March 2023, September 2024