User Groups Settings Overview [NEEDS REFS]

User Groups Settings Overview
There are a whole variety of additional items of information and attributes that may be associated with a downloadable file to form a Download.  Different websites have different needs dependant upon the purposes and objectives of the site.  It is very rare that a site needs all the possibilities! 

"User Groups Settings" are principly  used to allocate different limits to different User Goups when Downloading, and to allow different User Groups to create or edit Downloads.  For example the Public User Group members might have a time delay imposed before Downloading.  One user Group might only be able to create or edit Downloads in a specified Category whilst another User Group might be able to create a Download in any Category.

The purpose of this article is to show how the User Groups Settings may be used to determine which  'attributes' and 'questions' a site needs when a user is Creating and Editing Downloads from the Front End; and what Limits are to be assigned to particular User Groups.  Basically it is about customising the form used to input the relevant information.  In some instances there is a need for different user groups to setup different information types, and this is supported by having different User Groups.

These facilities are enabled by the jDownloads "User Groups Settings".  Each Joomla! User Group has an associated jDownloads "User Groups Settings" database table entry with the same name as the User Group.  That is for every User Group created in Joomla!, jDownloads automatically creates an associated collection of "User Groups Settings" with known default values.

For the puposes of this article it is assumed that a Joomla! User Group, called here the 'uploaderUG', with Registered as it parent user group, has been created with the appropriate Joomla! Create, Edit and other relevant permissions to allow the creation or editing of Downloads from the Front End..  Another article, Controlled Access to Categories and Downloads (Permissions & Access Levels) [NEEDS REF] deals with those aspects of Permissions settings and how they are applied to categories and downloads for each user group.

Apart from the Public Group all other users, typically the logged in users, automatically belong to more than one user group because of the Joomla! inheritance rules.  Note that users automatically belong to the parent user group, the grand parent user group, and so on.  That is if you create a User Group called say 'UploaderUG' with Registered as it parent user group then any user who is a member of the UploaderUG is also, by inheritance, a member of the Registered and of the Public user groups.

Because a user may belong to several User Groups, either directly or by inheritance, the question arises which "User Group Settings" associated with a user through their membership of multiple User Groups should be used.  It cannot be just the 'most powerful' User Group because, for example multiple User Groups could have Registered as their parent.  This is a many to one problem for which a unique and predictable reseult is required.   jDownloads solves this by having an assignable 'ranking value' attribute for each of the "User Groups Settings".  So of the collection of "User Groups Settings" associated with a user then the one that takes precedence is the one with the highest ranking.

A ranking value is an integer in the range 0 to 32767 with zero as the lowest rank.  When a new User Group is created in Joomla! then, as mentioned earlier, jDownloads automatically  creates the associated "User Group Settings" with Default values, the default for the ranking is zero.  Those "User Groups Settings" with a zero ranking level are ignored by jDownloads.  This is important as the User Group may have been created for purposes that are not related to jDownloads so it avoids the need for the jDownloads 'director' from needing to keep a check on other User Groups.

Basically if a user belongs to multiple user groups then the attributes and facilities used are those set in the relevant "User Groups Settings" with the highest ranking.

By design the attributes and questions selected for a jDownloads User Group Settings do not cascade to other User Groups Settings. 

This allows each group to be customised individually.  The notice opposite appears at the top of the User-Groups Settings page to remind people.
CreateUploads02
To be clear considering the Public, Registered and UploaderUG user groups.  If the Registered user group has a jDownloads ranking value that is greater than that of the UploaderUG then jDownloads will use the settings of the Registered user group.  People are accustomed to the Super Users group being 'king'.  In jDownloads the Super Users usergroup has a default ranking value of 100.  If we set the ranking value of the UploaderUG to say 123  and the User is also a member of the Super Users group then jDownloads will use the UploaderUG "User Groups Settings" for Super Users, not the setting and attributes of the Super Users "User Groups Settings". because it has a lower ranking.

These notes concentrate on the facilities available in the User-Group settings.  Further aspects on which user-group settings will be applied by jDownloads are dealt with in an additional article - Which User-Group is Used? -[NEEDS REF] that discusses how jDownloads handles the situation when a user belongs to multiple user-groups.

Access is through the jD Control Panel by clicking User Groups Settings. CreateUploads01A
This will then bring up the Overview Page of the Settings in each User Group as illustrated below.  It gives an overview of the major settings applicable to each user group.

To change the setup for a Joomla User Group then first select which user group you wish to modify by clicking on the user group name or by ‘ticking’ in the appropriate checkbox and then clicking on the Update button.
CreateUploads02BExample User Groups Overview
Notes on each column of the Overview
Ranking Column

In Joomla! users that are logged in will belong to more than one User Group (UG).  Membership may not neccessarily have been set explicitly but Joomla! has UG  'inheritance'.  For instance a member of the Registered UG will also inherit membership of the Public UG.  Someone who is a member of the Publisher UG also inherits membership of the Editor, Author, Registered and Public UGs.  To avoid doubt jDownloads, as described earlier, has a unique Ranking value associated with each UG so that jDownloads may unambiguously determine which set of User Group Settings are to apply.  Basically then jDownloads will use the User Group Settings with the highest ranking from all of the UGs that the user is a member. 

Note: jDownloads ignores those UGs with a zero ranking.

It is essential that those user groups that will be used in connection with creating or editing Downloads and those to which limits are applied have a non zero value.   For example in the 'Example User Groups Overview' image above, User Group "Test-group" has a zero ranking so it will be ignored by jDownloads.  But User  Group "UploaderUG" has the highest rank value of 123.  So if a user is a member of "UploaderUG" user group then the "Users Group Settings" of that group will take precedence over those of any other user group where the user is a member, either directly or by inheritance.  

This even includes a user who is a member of both "UploaderUG" and the "Super Users" group because the Super Users  has a  lower ranking (100) than that of the UploaderUG (123).  Of course if a user is just a member of the Super Users group, and by inheritance the Public UG, then they will use the Super Users group settings.
When a new User Group is created in Joomla!, such as the one called 'Test-group', then jDownloads automatically creates a database entry with the default User Group settings, including a ranking of zero.
Users in Group column
This is self expanatory, the number of users entries are copied from the relevant Joomla! database table.
View Captcha
Set to Yes when selected in the User Group settings.  This does not mean that all the other setup items specific to using Captcha have been setup.  It means that if they have been setup then jDownloads will use the Captcha process when downloading files for users in that UG.  There is a separate article on Setting Up Captcha [NEEDS REFERENCE]
View Inquiry Form
This shows that users in that UG will be requested to fill in a Form prior to downloading.  The Inquiry form may include Name, Address and email.  There is separate article on setting up the Inquiry Form.  [NEEDS REFERENCE] The Inquiry form isof course sent to a nominated email address.
The Inquiry Form must be Completed
This shows whether or not filling in the Inquiry form is mandatory.
Show Report Download Link
Set to Yes when the option to show the Report Download Link is selected for that UG.  Note 'reporting' will send a note to the appropriate email address and indicates that a user has found something wrong or objectionable with the Download.
Activate Waiting Time column
This shows that the user will have to wait before downloading is available.  A count down  is shown to the user.
Limits Column
Shows if limits, such as a maximum number of Downloads/day, has been set for this User Group.  If you hover over the CreateUploads02E then it will show a summary of the limits as illustrated opposite.   There is also a specific article on Setting Users Limits [NEEDS REFERENCE] CreateUploads02C
User Group Settings Details
There are four parts to User Group Settings
User Group Ranking
Although there was discussion earlier in this article about User Group Ranking, it is worthwhile to once again reinforce the need as it is one of the commonest mistakes.
Remember that setting up jDownloads limits for one group has no effect on other groups! Each User Group has to be done individually.
CreateUploads04After clicking on a user group name, such as 'uploaderUG', then you are taken to a view like the one shown.  Note that the User Group name and its Ranking value, which had been set previously, are shown together with three tabs that depict the various sections:
  1. Group Settings;
  2. GroupCreation/Editing Settings;
    1. General Configuration - Attributes
    2. General Configuration - User Selectable Fields
  3. Limits.
The first thing however was to set the ranking value as the most common mistake is to fail to set the rank!  Initially when the User Group was created the rank was set to the default 0 but, as shown, it is now been set to 123.
  Group Settings CreateUploads04A
The group settings are the general global setting for the selected user group as shown.
  • View Captcha  - If Yes is selected then users from this group must enter the captcha text correctly before they are able to download files, upload files, or report a Download.  Please note that you must activate the Joomla 'CAPTCHA - RECAPTCHA' plugin, not the 'invisible' one, before you can use this feature in jDownloads.   [NEED REFERENCE]
  • Show 'Report Download' link - If Yes is selected then a 'Report Download' Button will appear below each Download so that members of this group may 'report' a Download.  See also the 'E-Mail'  tab in Options for more settings.
  • View Inquiry Form - This facility allows gathering user information when members of this group are Downloading or creating/editing a Download in the front end.  Please see the article Using an Inquiry Form [NEED REFERENCE] for more details
  • Activate Waiting Time - Allows you to set a time delay in seconds before the downloading of a file begins.   The user will see the 'Waiting Time Message' with its countdown timer in the layout Summary page.  The file becomes downloadable when the counter reaches zero. Setting the delay to zero disables the wait timer so there is no delay. Requires 'Summary' view so set Options - Frontend tab -  Activate direct-downloading? to No.

  • Waiting Time Message - The default waiting time message may need changing, especially if you set it up for Registered and above users.  It is really intended for Public and Guests to encourage them to 'join'.  The default message is shown below.  Clearly it may also need changing for other languages.

    "{en-GB}Please wait.  You can download the file in %s seconds.
    Please note that you can only download the file immediately when you are a registered member.{/en-GB}"
  • View User Limits - When this is selected then members from Limits02this group are shown their personal limits about downloading and uploading limitations.  The details are displayed in the 'Summary' view.  The Standard Summary Layout includes the special placeholder {view_user_limits_info} that actions the display.  Alternatively you can also use the jDownloads View Limits module.  Assuming limits have been set - see section 'Setting Limits' for details - then with the default message the user view would look like the picture opposite.  Note also that if a limit has not been set then it would not appear in the view seen by the user.
  • Limits Message - The default Limits message is shown below. It uses all the available placeholders.

    <div class="jd_user_limits">{msg_title}<ul> <li>{files_daily_label} {files_daily_value} {remaining_label} {files_daily_rest_value}</li> <li>{files_weekly_label} {files_weekly_value} {remaining_label} {files_weekly_rest_value}</li> <li>{files_monthly_label} {files_monthly_value} {remaining_label} {files_monthly_rest_value}</li> <li>{volume_daily_label} {volume_daily_value} {remaining_label} {volume_daily_rest_value}</li> <li>{volume_weekly_label} {volume_weekly_value} {remaining_label} {volume_weekly_rest_value}</li> <li>{volume_monthly_label} {volume_monthly_value} {remaining_label} {volume_monthly_rest_value}</li> <li>{upload_daily_label} {upload_daily_value} {remaining_label} {upload_daily_rest_value}</li> </ul></div>
  • Internal Note - the note is only shown in the backend; it is a way of decribing the purpose this particular user group is intended.
Group Creation/Editing Settings
The Group Creation and Editing settings deals with setting up the form and general environment for creating and editing downloads from the Front End.  This section may be considered in two parts:
  • general configuration of the creation/edit form - specifying 'attributes';
  • the specific fields or 'questions' that the creator or editor of a Download in the front end will be asked to complete.
 General Configuration - Attributes
This section sets what may be called the jDownloads related 'Attributes' for the User Group.
  • Display add/upload icon  - When selected and the user-group has permission to create a Download then an 'Add' button will be shown in the frontend header area.  Note When CreateUploads05there are a large number of categories, say more than 100, it is recommended that this option is set to No because of the time to search the category permissions.  In this situation it is better to use the 'Create a Download' menu type, ensuring it has a View Access Level specific to the particular user group.
  • May select a different Category -When Yes, the 'Category Selection list box' is available and lists those categories where a user has the relevant permission to create a new download or edit an existing download.  This enables members of this user group to select the category when creating or to change it during editing. When No the user may create in any permitted category but when editing the user cannot change the existing assigned category.
    Note this field is overridden when using menu items type 'Create Download' and the Options tab for that menu item restricts the user to creating in a specified Category.
  • Allow creating tags - When Yes and the 'tags' box is ticked in the 'question setting'  section then the user is able to create new Joomla! tags.  If this field is No then new tags cannot be created and only existing ones may be added to the Download.  Please see documentation for more details.
  • Use Editor for Text Fields - When selected the default system editor is used for entering text fields.  Otherwise plain text, which may include simple html, is used.
  • Use tabs in Frontend Upload Form - Shows Upload details in a tabbed form or as a sequential List.  When in tabbed form there is a common section and then the other 'questions' are in tabs Publishing, Descriptions, Files, Images, Additional Data and Metadata Options.  If there are no selected questions in a tab then that tab is not shown.  A sequential list is useful if the user is only being asked for a few details.
  • Default access view level - When the 'access' field in the 'Questions' section below is not selected then the Access Level given here will be used. If you leave this field 'blank' then the Access Level in the Parent Category is used.
  • Allowed File Types - the permitted file types, often referred to as the file extension, that are allowed to be uploaded by this user group are specified here in a comma separated list.  For example 'doc,docx,pdf,zip'.
  • Allowed Preview File Types - a preview file is either an audio or a video file.  Specify the individual audio and video file types that may be submitted as a comma separated list such as 'mp3,mp4,wav'.  Only the following file types are supported: audio types: mp3, wav, oga  video types: mp4, flv, webm, ogv, ogg  (note ogg type can be audio or video so it is assumed to be video).
  • Maximum File Size in KB - Allows you to specify the maximum size allowed for submitted files in kilobytes (1024 KB = 1 MB). Pre-set value: 5120.
  • How many Images - Allows you to specify how many images may be uploaded as part of a Download. Maximum is 10.
  • Text above the form - Allows you to add a text message that is shown at the very top of the form where you could perhaps give special instructions to those creating or editing a Download.
  General Configuration - User Selectable Fields
CreateUploads07
There are over 40 fields that may be selected to make a custom User Group form when creating or editing a Download.  Essentially these are the 'questions' that a user will be asked during the creation or editing process.  A few of these are illustrated opposite, the fields are selected by ticking the box next to the relevant name.  Some fields may be made mandatory and have a second 'tick box'.
The details about each selectable field are given in the note Using the Front End Upload Form.
When using tabs as set in the  Use tabs in Frontend Upload Form field in the Attributes section above, the questions are grouped into seven parts:
  •  Common
    • Title *;  this becomes the title of the Download, it is a mandatory question as denoted by the *.
    • Alias;   will normally be set from the file name
    • Version;
    • Download Language;
  • Publishing,
    • Category *
    • Access
    • Single User Access
    • Tags
    • Language
    • Published Status
    • Featured
    • Created by
    • Created Date
    • Modified Date
    • Publishing Timeframe (start and end)
    • Views
    • Downloaded
    • Ordering
  • Descriptions,
    • Short Description
    • Long Description
  • Files,
    • Select Main File
    • Orfrom another Download
    • File Size
    • File Date
    • Select Preview File
    • External File Link
    • Mirror Link-1
    • Mirror Link-2
  • Images,
    • Add an Image (allows up to config max)
  • Additional Data
    • Symbol
    • Password
    • Price
    • Language for the Downloadable file
    • Operating System
    • Licence
    • Confirm Licence
    • Website
    • Author Name
    • Author URL or Email
    • Views
    • Downloaded
    • Changelog
  • Metadata Options
    • Meta Description
    • Meta Keywords
    • Robots
  Download Limits
There are three initial aspects about setting user group Limits.
  • Limits01The first one is to ensure you set up the jDowloads logging option.  If logging is inactive then the Limits function cannot work.  The image opposite appears at the top of the Logging  Settings view as a reminder.  For reference the Downloads logging option is activated in jDownloads Options - Global Settings tab - field 'Activate log function for Downloads'.
  • Remember that, like all other parts of the User Groups Settings, the limits are individual to each usergroup.  That is setting up jDownloads limits for one group has no effect on other groups!
  • Because the Downloads log includes the user login name, the Limits are applied on an individual user basis. This does not of course apply to the Public or Guest User Groups.
There are eight actual limits and two restrictions that may be set up but the the Public and Guest User Groups only support the two restrictions.  All limits are evaluated independently for the current user, the first limit that exceeds its setting inhibits further downloads for that user.  For example a if the weekly limit is reached but say the daily limit still has some left then downloads will be inhibited until the start of the next week.
There are three time based limits which limit the number of Downloads over a specific time period :  the Daily Download Limit, Weekly Download Limit and Monthly Download Limit.  The daily limit resets every midnight, the weekly limit resets at midnight on the first day of the week, and the monthly limit resets at midnight on the first of each month.

There are three total size limits based on the same time periods as above: the Daily Megabyte Limit, the Weekly Megabyte Limit and the Monthly Megabyte Limit.

There is an absolute total limit for Downloads, the Number of Downloads Limit.  This limit is unusual in that it does not reset automatically.

The Daily Creation Limit restricts the number of Downloads that are created by members of the user group each day.  Of course for this to apply then the user needs to belong to a User Group which has create permission.

The Download Duration Restriction setting is a specialised restriction for use where the internet connection is 'poor' and multiple attempts may be required.  Also applies to Public and Guest UGs. The duration, which is in minutes, is the time in which a new download of the same file, and from the same user, is not counted as a 'new' Download. This is important for instance with paid Downloads.  The value is also important when Download manager software is being used, and also for the resuming interrupted Downloads. Change this value only if you are sure of the consequences! The default value is 60 minutes. 
Note: If the user switches to a different window then that terminates the duration!

The Transfer Speed Restriction artificially slows down the transfer rate.  It is helpful where there are many users and available bandwidth is limited.  The limit is set in kb/s (kilo bits/second) so if the value is 1024, then the downloading transfer speed is limited to a maximum of 1Mb/sec. If you set it to 0 there is no limit. Note that this limit does not apply if the user is downloading from a Download where the file is located on another site, that is the file is an "external file".

Apart of course for the Download Duration and Transfer Speed restrictions, each of the other limits has its own associated User Message that will be displayed when the limit is exceeded.  For example  the message setup when the Daily limit expires is shown below.  Note the language support.
As an example if your site is multilingual and supports English, French and German then the message for the daily limit would be  like below.

{en-GB}You have reached your daily limit for the allowed number of Downloads.<br />You can resume downloading tomorrow. A new day starts when the Server time has passed the time 00:00:01.{/en-GB}{de-DE}Sie haben Ihr Tageslimit für die zulässige Anzahl von Downloads erreicht. <br /> Sie können den Download morgen fortsetzen. Ein neuer Tag beginnt, wenn die Serverzeit die Zeit 00:00:01 überschritten hat.{/de-DE}{fr-FR}Vous avez atteint votre limite quotidienne de nombre de téléchargements autorisés. <br />Vous pouvez reprendre le téléchargement demain. Un nouveau jour commence lorsque l'heure du serveur est passée à 00:00:01.{/fr-FR}


Colin Mercer July 2019

Print Email

This site uses cookies. By continuing to browse the site, you are agreeing to our use of cookies.