Moodle 3.7 - user profile custom field - custom validation - validation

I need to add validation with regular expression against user profile custom field. Do I need to write some plugin or add additional code to moodle core ?
I am using Moodle 3.7. I have searched for it in documentation. But, Nothing found.
In my case I need to have 'mobile #' field with valid mobile number format. Mobile # format needs to be validated from regular expression I use.

One way to solve this is to create a new "profile field plugin" based in the existing "text" plugin (for generic text inputs) and override the validation methods to implement your custom validation.
More examples of this kind of plugin: https://moodle.org/plugins/browse.php?list=category&id=27
After your plugin is written and installed, you will be able to add your new custom field as an admin from /user/profile/index.php.

Related

How to add user custom fields to the edit profile form?

I had to add a series of custom fields to the joomla registration form. Thanks to the guide I managed to do it, both for the registration form and for the administrator form.
The process I followed for this are the following:
Added the fields to the users table
Added the fields in joomla user entity /library/src/user/user.php
Added the fields and definition to /components/com_users/model/forms/registration.xml file to update the registration form
Added the fields and definition to administrator/components/com_users/model/forms/user.xml file to update the user edition form for user with administrator role
Now I require the user to be able to change their profile data with the inthe fields that were created manually. To do this I added a link to the menu
form to edit profile, here I expected to see all user fields, both native and custom created, but instead I obtain only the native fields, although upon inspecting the object (user) I can access all the user fields.
I created the fields by hand and then I expected that when they were saved they would persist, but it is not, when sending the form only the native data is updated and not the custom fields.
When I inspect, I see that a component named k2 is the one that facilitates this profile editing form, I am new to joomla and its ecosystem
Could you please give me guidance on how to implement this task?
Greetings and thanks in advance
Do not edit core components.
There is a way to do the same using Profile plugin.
https://docs.joomla.org/Creating_a_profile_plugin
Go through above link and create a new profile plugin.
This is not the way to add extra user fields. What will you do if you need to update Joomla. Joomla releases security updates at regular intervals. First you need to create a user plugin and then you add whatever user fields you need. I found a detailed description here, you also can have a look. if still you get any doubts you can ask me here in comments.
https://smartyblog.com/adding-custom-fields-to-joomla-registration-using-profile-plugin/

Add an additional field for creating an article (Joomla)?

I would like to expand the standard component for creating a new article (com_content) in Joomla with an additional field.
I did an template override and added the field in the UI. But I do not know how I can add the value to the database. Which file do I have to change? Is this possible with an template override?
You should create a content plugin and catch onContentPrepareForm() event.
There is a step by step tutorial for that: Adding custom fields to the article component.
A more general tutorial for adding fields to core components could be found at: Adding custom fields to core components using a plugin.

joomla add custom tab and custom fields to article

first i show image: http://www.upload.ee/image/4675395/Untitled.png , to understand my idea better
I am using joomla 2.5.14 and I want to add another menu option for Extra Fields (It would have 10 fields - ID, Picture URL, Video URL, etc).
The new menu would be saved as vod_items table. The menu would be added where are the Publishing Options, Configure Edit Screen, etc.
That option should be available in every article.
Is there a simple way to add that option to Joomla or is there any kind of a code or plugin to do that?
Kind regards,
Aimar.
You can create a custom plugin to add more custom fields on Article manager or any other core component of Joomla.
You can follow following link for creating a plugin for adding custom fields to Article manager.
Reference : Adding custom fields to core components using a plugin
Note : Don't edit the core component as all changes will be lost in future update of Joomla.

How to override registration form in joomla 3.3 such as adding custom fields for example without hacking the joomla core files?

I am having a problem with overriding the registration form in joomla 3.3, I need to add some extra fields such as mobile number, please if any one have an idea about this, please reply the question .
thanks
In the Joomla backend, go to the Plugin Manager and open a plugin called User - Profile. This contains some additional fields that will appear on the default Joomla registration form. The fields it provides are:
Address 1
Address 2
City
Region
Country
Postal / ZIP Code
Phone
Web site
Favourite Book
About Me
Terms of Service
Select TOS Article
Date of Birth
Select which fields you wish to use and enable the plugin.
Hope this helps

Change Registration form in Joomla 1.5

I am developing a website where I need to create two user types. One is "member" and the other is "merchant". Both have different areas to be accessed. I am really confused on how can I achieve this.
Also I am trying to add my custom fields of First name and Password in the default Joomla registration form. As soon as I add a new TR with field first name the registration form stops working.
Can you guys help me in doing this?
If you have some troubles with default Joomla registrtion, you could use Community Builder. It is pretty easy to add fields to users profile and users registration. To separate members and merchants you could add field to the registration form called for example Account type. And then according to its value assign new user as registered(members) or author(merchant).
First, adding user types in 1.5 is not going to accomplish the access requirements you have described. You would need to install an access control component to control different user types accessing different content.
Next, Joomla 1.5 is nearing end of life, April 2012 to be exact. Version 1.7.x released last week so you should very seriously consider moving the site to the latest version. An added bonus is that Joomla 1.7.x has built in access control levels that would accomplish what you are trying to do.
Regarding different access levels best thing to do would be upgrade to Joomla 1.6/1.7 It has this functionality built in. It may be possible to achieve this in 1.5 with third party components, but I don't have any experience with this.
Regarding custom registration fields, again, if you upgrade to 1.6/1.7 it has User - Profile plugin which allows to add additional fields to your registration form.
In 1.5 you can use third party components such as ExtendedReg (commercial).
Or alternately edit core files: http://www.mysysadmintips.com/index.php/web/100

Resources