Joom-Profile provides custom field sets to enhance Joomla user profile. This article will describe the all available fields in Joom-Profile that can be used to extend the core Joomla profile.

List of all custom fields available for Joomla profile.

 

UserName

UserName field is being used for mapping the core Joomla UserName field with the Joom-Profile. The value entered by user in username field will become username for the Joomla website. Recommended Create a single UserName type field for whole website.

UserEmail

The email entered in UserEmail field by user will be used to as registered email for website. The UserEmail field an accept data as email and purpose of this field is to map the field with core Joomla registration email field. Don't use this field for getting alternate email address for contact purpose, for this we have another field named as Email.

Password

The Password field is used to accept password for your Joomla website. As UserName and UserEmail it is also a core field used for Joomla registration.

Email

The Email type field can be used to accept the data as email type. It is a general field which you can use to accept the alternate email address of you user.

Image

Image field is general field for accepting images from user. This field can also be used to accept image for user profile or avatar.

Parameters for image fields :

Allowed Extension : Here you can specify the allowed extensions for your image to be uploaded. As the image field is technically a file field so restricting only images to upload is a good practice to allow only images. Example .jpg,.jpeg,.png,.tiff etc.

Exclude Extension : Here you must specify to exclude .php,.js,.html,.exe etc. to restrict user so they cannot upload script files on your website.

Default Image : Here you can specify the default image location, this image will be used as default if user doesn't upload any image. The default image at loaction media/com_joomprofile/images/default.png can be replaced to change it.

Width and Height : You can specify the width and height of the uploaded image when it will be displayed on website. You can leave it blank if you don't want to specify. We recommend specify the width and height 140px when you use this field to create an avatar field.

DatePicker

DatePicker is a field type to create date field. You can use this field to accepts the date from users. For example Date-of-Birth, marriage anniversary date, date of joining etc.

Parameters for date-picker :

Display Format : Display format is used to set order or format of display for example

To Display Enter Value
15 Jul 2014 d M Y
Jul, 15 2014 M, d Y
Wed, 15 Jul 2015 D, d M Y

File

Using File field you can create a field that can accept the files from users.

Parameters for files:

Allowed Extension : Here you can specify the extensions allowed to upload. like you want to accept research report from student you can allow .pdf,.doc,docx,.ppt etc. or if you want to accept the code or zip file then can allow .zip,.tar.gz etc

Exclude Extension : Here you must specify to exclude .php,.js,.html,.exe etc. to restrict user so they cannot upload script files on your website.

Text

Text type field can be used to create field that accept value as text, for example Name, Father's Name, Education Qualification, Occupation etc.

Parameters for text:

Default Value : You can provide a default value to the field here.

Minimum Length & Maximum Length : You can specify the number of character a user can enter in minimum and maximum length.

TextArea

TextArea is a field type similar to the Text but the difference is, this field allows user to enter long text like short Bio-info, about me etc. The limitation of textarea field is 255 character. If you want to accept the text more then 255 character then you must consider the below Editor field.

Parameters for textarea:

Default Value : You can provide a default value to the field here.

Minimum Length & Maximum Length : You can specify the number of character a user can enter in minimum and maximum length.

Editor

Editor type field is an extended form of textarea. It allows you to accepts long paragraphic text with your desired maximum character limit. The other important difference is, this field also allows user to enter the HTML tags also, means a user can enter the content in HTML form and this field will accept the content as HTML also.

Address

Address type field is used to create group of fields that accepts address from user. When you create this type of fields it will create a group of input-box that will accept the Address Line, City, Zip Code, State and Country. You can use Google map for this also.You can also select what iformation you want to ask like city, zip code, state etc from users.

Parameteres for textarea:

Google MAP API Key : Enter the Google Map API key, You must use this key if you think your site will request more than 24000 API to Google MAP API. Otherwise leave it empty.

Numeric

Numeric type field will create a native HTML numeric field. Here you can specify the number of digit and maximum, minimum value a user can input. For example to ask mobile number from user you can configure it as Show Fields as : Textbox, and Minimum, Maximum Length to 10 now it will accept the value in 10 digits numeric only.

Select

Select type field is being used to create a drop-down select-box where you can ask user to choose options. Example of select box is

Radio

Radio type field is being used when you want to ask user any question and only one option is to be selected. Like answer in Yes or No. For Example

Gender : Male Female

Checkbox

Checkbox field is similar to select box which allows multiple option selection. You can use this type of field to create ask users about there interest in topics. For example

Interest : Business Technology Sports

TermsofService

Terms-of-Service field is a field which allows you to ask users to accept your website Terms of Services policies before proceeding next. You can write your policies in an article and can choose that article during creation of field. This will create a field that user has to check-mark before registering on your website.

reCaptcha

reCatcha field is being used to allow secure and spam free registration on Joomla website. reCaptcha is a Google project which is used for spam protection. Joom-Profile 1.2.5 now has ability to use this feature for securing registration process.

Parameters for reCaptcha:

Site Key : The site key is used to display the widget on your site.

Secret Key : The secret authorizes communication between your application backend and the reCAPTCHA server to verify the user's response. The secret needs to be kept safe for security purposes.

Generate the Site and Secure Key for reCaptcha

Timezone

Timezone can used to set the timezone for the user. This field is directly connected with Joomla, so when user makes change to this field, user's timezone will be changed in Joomla as well.

Display

Display type field can be used to display some content to all users who can view it. This is not editable field, only admin user can add the default value at the time of creating the field.

Link type field can be used to display link on his profile. Title of link can be configured by admin and value can be set by user. Admin can set the target of the link as well.

Divider

Using Divider field you can add a horizontal rule (a line) between two rows of fields to give it a look of multiple sections in same fieldgroup.

Joomla Language

Joomla Language fields allows you create a field for Front-end language selection. It is connected with Joomla user manager’s Front-end Language.

Joomla Last Login Date

Using Joomla Last Login Date field you can show user’s last visit date on Front-end. This field is not editable but searchable. User can search for the users who logged in between the range of date selected by user.
Display Format : Display format is used to set order or format of display for example

To Display Enter Value
15 Jul 2014 d M Y
Jul, 15 2014 M, d Y
Wed, 15 Jul 2015 D, d M Y

Joomla Register Date

With Joomla Register Date field, you can show user’s date of registration on Front-end. This field is not editable but searchable. User can search for the users who registered in between the range of date selected by user.
Display Format : Display format is used to set order or format of display for example

To Display Enter Value
15 Jul 2014 d M Y
Jul, 15 2014 M, d Y
Wed, 15 Jul 2015 D, d M Y

Video

When you create a Video type field, user can add either Youtube or Vimeo video link and we will show it as embedded iframe. You can search by who has added the Video.

 

Here we completes the all available fields in Joom-Profile. We would like to add more fields. Please suggest us or post your requirement on our  or contact-us.

There are two options available for usergroup assignment to your site users. First, let your user choose the usergroup from the available usergroups at the time of registration and second, you can create different registration link for different usergroup and provide those link to your users, so upon registering from that link, associated usergroup will be assigned to user automatically.

For first option, configuration is as follows :

In JoomProfile >> Config :

  1. Set Usergroup Selection to Yes, so user will be able to select Usergroup at registration time.
  2. Set Multi Usergroup Selection to Yes, if you want user to have multiple Usergroups.
  3. In Allowed Usergroups, add Joomla Usergroups that will be available to user.
    Usergroup selection in JoomProfile Config
  4. On registration page, user will see usergroup selection option.
    Usergroup selection in JoomProfile Registration

In second option, you can create different registration link for each usergroup.

In Menus >> Main Menu :

  1. Create New menu link for JoomProfile.
  2. In Details tab, select Registration in Create menu for ?
  3. In Options tab, add UserGroup you want to assign to user, when registering with this link. You will be able to add only those usergroups that are Allowed Usergroups in JoomProfile >> Config.
  4. When using this option to assign usergroups, set Usergroup Selection to No in JoomProfile >> Config, since this option will automatically assign the associated usergroup to user on registration.
    Create menu item for registration
    Usergroup selection in registration menu

 

 

Joom Profile has some accessibility option for each field and these  options are

  1. Registration : This setting allows you to display any field in registration process or not.
  2. Visible : Through this option you can hide the value of any field on any user, when his/her profile is being used by any other user.
  3. Editable : You can set, if any field is editable by the user or not. Off-course admin will alway be able to fill the detail in that field from admin panel.
  4. Required : If field is required to fill, then you can set this option to Yes. Otherwise put it off.

Above options can be used to configure how a field will be displayed. Let discuss the step to do this.

Accessibility Control Configuration

  1. Go to Joomla Administrator => components => Joom Profile => Fieldgroups.
  2. Edit the fieldgroup for which you want to configure accessibility of fields.
  3. Go to "Fields" tab, here all the field will be listed (added fields) and you can add more fields. After adding field, accessibility options are displayed against each field. You can opt the setting as you want.
  4. And its done. Go to front-end and check the result of respective configuration.

 

Note :  You can configure different accessibility for one field for different fieldgroup. Like field A can have different accessibility for fieldgroup A and fieldgroup B.

 

<< Intro to Joom Profile Joom Profile : Searching>>

Registration validation is a joomla plugin which validates user credentials while registering at your site. The default joomla validation is not sufficient enough to handle various cases and also it does not validate all the data prior to form submission.

What data does this plugin validates?

This plugin mainly validates the basic fields of the registration form that are username, email and password.

In current joomla registration process the validation is very limited and even some of the validation takes place after registration form submission. For user this becomes very tedious to fill the form again and again.

1. Validation on Username

  1. User must fill this field since it is a required field.
  2. Provided username must follow the alphanumeric standard and does not contains any symbol.
  3. Provided username must not exist in the system. This is completely ajaxified.

2. Validation on Email

  1. User must fill email field.
  2. Provided email is a valid email address
  3. Provided email must not exist in the system. This is ajaxified.
  4. Check confirm email field for correctness.

3. Validation on Password

  1. User must fill password field.
  2. Checks the password strength of the provided password. This plugin does not apply any extra password strength to the registration system. Default password strength of Joomla registration is considered here.
  3. Check confirm password field for correctness.

How to use registration validation

This plugin is very easy to use as there are no extra configuration needed to run the basic validation.

  1. Download this plugin from URL
  2. Install the downloaded plugin to your Joomla site and enable this from plugin manager.
  3. Now check the registration process.

On every validation error user will see proper error messages.

Like on providing existing username below message will appear.

When incorrect password filled in confirm password field :

Registration Validation Pro

This enhanced version will allow you to place custom validations in the registration process. Like apart from checking required and valid email you would like to allow registration for selected domain only say gmail and yahoo then you can impose this restriction in the registration using using the regular expression feature.

How to inject custom validation

  1. Go to plugin manager and open registration validation pro in edit mode.
  2. In this screen you will find three parameters which you can use to apply your custom validations on username, email and password. Here you need to put the regular expression for your validation.

    plugin-params

Suppose you would like to allow the registration only for gmail email address or yahoo then in the Email Regex field place this regular expression (gmail.com$|yahoo.com$) to apply this validation.

After this, when any user tries to register with email of any other domain (other than gmail or yahoo ) then proper error message will be displayed.

confirm-email

Similarly you can apply custom validation on username and password.

How to change error messages?

All the error messages that registration validation and registration validation pro plugin displays to user can be changed by overriding its language file.

All the language tokens of Registration Validation plugin are available in the file en-GB.plg_system_f90_registration_validation.sys.ini and of Registration Validation Pro plugin are in the file en-GB.plg_system_f90_registration_validation_pro.sys.ini located at administrator/language/ directory.

For language overriding you can refer Joomla Documentation.

Joom Profile is the best tool for managing users' profile and as well as for searching them. You need to use following steps to enable user searching at your site. Let discuss them.

Configure Searchable Fields

  1. Goto Joomla admin panel => components => Joom Profile => Usergroups.
  2. All the usergroups will be listed there. You need to edit all the usergroups for which you want to setup searchable fields. So click on any usergroup.
  3. There is a field Not Searchable Usergroup. you can select usergorup(s) here, so that users of these usergroup will not be listed in search result if any user from editing usergroup makes any search. Like in the below screenshot Public users will not be able to see users from Super User and Administrator usergroup. You need to cross check your setting when any user can have multiple usergroup. In this case if any usergroup allows user to view users, then users will be listed.
  4. There is a select box displayed which will list all the fields you created. You can add the field(s), which should be searchable for that usergroup. You can also set which fields need to be shown on mini profile of user in search result.

    Searchable field configuration for Joomla

 

Front-end Searchability

  1. Create a menu link for Search, so that user can search by going through that link. You can apply the access level to menu as you want. Like you want to allow only registered user can search, then you can ass access level "Registered" to this menu and do not configure any field for "Public" and "Guest" usergorups.
  2. List of searchable fields will be displayed here. All the fields are calculated according to user's usergroup who is visiting, whether user is logged in or not. If user is not logged in then usergroup "Public" and "Guest" (if available) will be considered. If user is logged in then user's usergroup will be considered.

Search result with mini profile in JoomProfile

 

<< Intro to Joom Profile  Joom Profile : Field Accessibility>>

Subcategories