Skip to content

Extra fields dictionary v1

Yannick Warnier edited this page Apr 12, 2024 · 30 revisions

Extra fields

This page provides a dictionary of the available extra fields usable in Chamilo 1.*.

Extra fields are a feature of Chamilo that allows the Chamilo administrator to extend the data stored with some of the important resources of Chamilo (users, courses, learning paths, quizzes, etc). You can find a list of all resources that have extra fields enabled by going to your Administration page -> Platform -> Extra fields.

The intention is for this page to be exhaustive, but please note:

  • that they are only all available in the latest of the v1.* versions
  • that they sometimes require the activation of a plugin to provide any useful feature/behaviour
  • that they might disappear or be abandonned over time
  • that they might get integrated into more "solid" table in later major versions (this is why this is a list for v1.* only)

Extra fields' fields naming

There is usually a lot of confusion happening when trying to understand the extra_field table or entity because two names are clashing: extra_field.extra_field_type and extra_field.field_type.

List of known extra fields

Although the following table shows a few exceptions, we recommend extra fields to be named in lower_camel_case (no uppercase, one underscore between each word).

Field's internal name Related resource Field type Purpose Related feature/page/plugin
acquisition learning path view Radio buttons Adds a column "Acquisition" in student LPs table to enable teachers to mark a learning path as acquired and for the student to see which LPs are acquired by the student Learning path tracking
address user text User address Reports plugin
advancedcourselist exercise Multiple selection drop-down Enable to select the list of course to which the learner will be subscribe on exercise validation Automatically created by Remedial and Advance Courses plugin
already_logged_in user checkbox Available by default in Chamilo. Registers if the user already connected to the platform at some point
ask_for_revision forum_post checkbox Enable the possibility to ask for the revision of a post to be translated by others it used in common with revision_language that indicates the language in which it will be translated. // Hide forum post revision checkbox //$_configuration['hide_forum_post_revision_language'] = false;
ask_new_password user checkbox Requires enabling $_configuration['force_renew_password_at_first_login'] to force the user to change his/her password when they first login. This is great for added security when pre-provisioning user accounts
attachment scheduled announcements Enable attachment for scheduled announcements in sessions // Allow scheduled emails to session users. //CREATE TABLE scheduled_announcements (id INT AUTO_INCREMENT NOT NULL, subject VARCHAR(255) NOT NULL, message LONGTEXT NOT NULL, date DATETIME DEFAULT NULL, sent TINYINT(1) NOT NULL, session_id INT NOT NULL, c_id INT DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB; // sudo mkdir app/upload/scheduled_announcement // Uncomment and set the following setting to true before moving on //$_configuration['allow_scheduled_announcements'] = false; // Add "attachment" file upload extra field label in: main/admin/extra_fields.php?type=scheduled_announcement&action=add // Add "send_to_coaches" checkbox options field label in: main/admin/extra_fields.php?type=scheduled_announcement&action=add
authenticationDate user .. CAS authentication
authenticationMethod user .. CAS authentication
azure_id user text User info necessary for Azure ID integration Automatically created by Azure Active Directory plugin
birthday user Stores the birthdate of a user Not really fixed to "birthday", but will appear in user's details
block_category exercise checkbox (Yes) when using categories in an exercise, when finishing all the question of a category the user will be presented with a page that indicates that if he continues to the next category he will not be able to come back to the one he just finished, he will be blocked. Requires enabling $_configuration['block_category_questions']. //ALTER TABLE track_e_exercises ADD COLUMN blocked_categories LONGTEXT; // Requires an exercise extra field "block_category" type checkbox (Yes) //$_configuration['block_category_questions'] = false;
buycourses_company user text Company name to buy a product BuyCourses plugin
buycourses_vat user text VAT number to buy a product BuyCourses plugin
buycourses_address user text Company address to buy a product BuyCourses plugin
categorie user French term for category, representing one of many extra information that can be saved in a user profile at import time through batch imports
captcha_blocked_until_date text user Internal: string holding a date until which the captcha is blocked
cas_user user Stores the CAS user identifier
careerid career integer External ID of career CSV import & careers diagrams
career_urls career text URLs of careers CSV import & careers diagrams
career_diagram career text CSV import & careers diagrams
categoria_profesional user text Professional category of user SEPE plugin
collapsed session Prevents users to see the full details of the session until extended Goes with $_configuration['allow_user_session_collapsable']
comunidad_residencia user select Community of residence of user SEPE plugin
comunidad_trabajo user select Community of residence of user SEPE plugin
ConsideredWorkingTime work / student_publication Stores the amount of hours a user is considered to have worked on an assignment Assignments time tracking
created_by user .. CAS authentication
credentialType user .. CAS authentication
dashboard user text
date_to_send_notification course_announcement date Send announcement by mail at this date (requires $_configuration['course_announcement_scheduled_by_date']) Course announcements
differentiation question checkbox default name "Question used to differentiate users" Indicates if a question is used to differentiate users. For the moment it only acts on the complete exercise report to show the answer selected instead of the score of the user if the checkbox is marked Exercise complete report
disable_emails user checkbox Indicates whether the e-mails from the platform should be held in a training pause Pause Training plugin
disable_import_calendar course checkbox
downloaded_at user_certificate text Holds the time of download of a given certificate for additional reporting Reports plugin
drupal_user_id user text The external user ID in Drupal Create Drupal User plugin
edad user date Birthdate of user SEPE plugin
etat user French term for state or status, representing one of many extra information that can be saved in a user profile at import time through batch imports
end_pause_date user datetime Indicates the date at which the pause ends in a training pause Pause Training plugin
experiencia_anterior user textarea Previous experience of user SEPE plugin
external_*_id * text In the context of automated imports, this can reference an ID from outside the Chamilo system
gdpr user checkbox Whether the user accepted the specific gdpr terms in the inscription form It goes with a configuration option // Show multiple conditions to user during sign up process // Example with a GDPR condition /$_configuration['show_conditions_to_user'] = [ 'conditions' => [ [ 'variable' => 'gdpr', // internal extra field name 'display_text' => 'GDPRTitle', // checkbox title will be translated with get_lang('GDPRTitle') 'text_area' => 'GDPRTextArea', // this will be translated using get_lang('GDPRTextArea') ], [ 'variable' => 'my_terms', 'display_text' => 'My test conditions', 'text_area' => 'This is a long text area, with lot of terms and conditions ... ', ], ], ];/
google_calendar_url user text Links the user's google calendar with Chamilo's account, to export Chamilo events into Google
horario_accion_formativa user text Business hours of training action of user SEPE plugin
image session 16 Image illustrating a session
invisible learning path view Prepend a column in student LPs table to display a checkbox to select the LP category and its LPs
is_mandatory survey checkbox Allows the teacher to indicate if a survey is mandatory or not for the course (will lock the course if mandatory and not completed yet) Course home
isFromNewLogin user .. CAS authentication
language forum_category ..
language forum_post ..
linkedin_url user text By default: stores the URL to the user's linkedin profile Social network
legal_accept user text Whether the user has accepted the terms and conditions User edition or Terms and conditions checkbox
longTermAuthentication RequestTokenUsed user .. CAS authentication
mail_notify_invitation user checkbox Define whether the user wants to be notified of invitations
mail_notify_message user checkbox Define whether the user wants to be notified of messages
mail_notify_group_message user checkbox Define whether the user wants to be notified of group messages
medio_conocimiento user textarea Area of knowledge of training activity of user SEPE plugin
moodle_password user text The password (in encrypted format) used in Moodle when importing a Moodle system to Chamilo Migration Moodle plugin
multiple_language course select multiple Allow multiple languages to a course as a selection bar for languages used in the course. Add another field "multilingual" to be used separately as a true/false field to represent the fact that the course can have content in multiple languages (without precision). // Allow multiple languages to a course //$_configuration['allow_course_multiple_languages'] = false;
multilingual course checkbox Indicates wether the course contains content in multiple languages or not (no code is associated to this yet)
my_terms user The version of the terms and conditions the users saw
new_tracking_system course ..
new_tracking_system session ..
nif user text User's company ID (NIF in Spain) Reports plugin
niveau user French term for level, representing one of many extra information that can be saved in a user profile at import time through batch imports
nivel_formativo user text Training level of user SEPE plugin
no_automatic_validation lp_item checkbox Blocks autocomplete for learnpath assets and expects them to send complete signal through JS - See https://github.com/chamilo/chamilo-lms/commit/89d96ae2596cd848852a742c2a9e0c850dd0f72b for details LP Item edit form
notification_event user Shows notification events top menu bar
notifications quiz Sends a notification to each user with their results when finishing a test (requires $_configuration['exercise_finished_notification_settings'])
number_of_days_for_completion lp text add this extra field for lp option number_of_days_for_completion Learning path reminder progress
oauth2_id user text The OAuth2 ID of the user when using the OAuth2 SSO plugin OAuth2 plugin
office_address course .. Course logs (show as additional columns)
office_phone_extension course .. Course logs (show as additional columns)
organisationemail user text User info necessary for Azure ID integration Azure SSO plugin
pause_formation user checkbox Indicates whether the user is currently in a training pause Pause Training plugin
popular_courses course Allows (with the enabling of $_configuration['popular_courses_handpicked']) the admin to pick the courses that are popular, rather than using the community votes Homepage and admin course edition section
plugin_bbb_course_users_limit course integer Info about limit of users in a conference for a given course BigBlueButton plugin
plugin_bbb_session_users_limit session integer Info about limit of users in a conference for a given session BigBlueButton plugin
provincia_residencia user select Province/Region of residence of user SEPE plugin
provincia_trabajo user select Province/Region of work of user SEPE plugin
qualite user French term for quality, representing one of many extra information that can be saved in a user profile at import time through batch imports
razones_teleformacion user textarea Reasons for online training of user SEPE plugin
remedialcourselist ? text Remedial course plugin
request_for_delete_account user Indicates if the user has requested the deletion of his/her account
request_for_delete_account_ justification user text A text explaining why the request to delete account
request_for_legal_agreement_ consent_removal user Indicates if the user has requested the removal of his/her agreement
request_for_legal_agreement_ consent_removal_justification user A text explaining why the request for the removal of his/her agreement
revision_language forum_post
rssfeeds user Allows the user to attach an RSS feed to his/her profile Social profile (shared) page
ruc user text Company tax ID (Registro único de contribuyente) allowing user progress reports in the admin section to be grouped by company
send_to_coaches scheduled announcements ..
send_notification_at_a_specific_date course_announcement checkbox Send announcement by mail at the given date (requires $_configuration['course_announcement_scheduled_by_date']) Course announcements
send_to_users_in_session course_announcement checkbox Also send announcement by mail to users in sessions (requires $_configuration['course_announcement_scheduled_by_date']) Course announcements
session_courses_ read_only_mode course Allowing setting courses in session in read-only mode
session_career session 1 Links a session to a career during automatic imports
sexo user radio Gender of user SEPE plugin
situacion_laboral user text Work position of user SEPE plugin
skype user text Stores the Skype username for each user Social profile page
special_course course checkbox By default. Indicates whether a course is special and should appear to all, on top of the list of courses Course edit + My courses
start_pause_date user datetime Indicates the date at which the pause started in a training pause Pause Training plugin
successful AuthenticationHandlers user .. CAS authentication
tags course tag Tags about the course Course edition
tags portfolio tag Let users mark their contribution for later categorization Portfolio reports
tags user tag Tags representing interests of the user Social network
tamano_empresa user text Organization size of user SEPE plugin
termactivated user specific implementation related to $_configuration['disable_user_conditions_sender_id']
terms_villedustage user specific implementation related to $_configuration['allow_social_map_fields']
terms_ville user specific implementation related to $_configuration['allow_social_map_fields']
time quiz question Requires enabling $_configuration['allow_time_per_question'] to enable limiting the time per question in a test (rather than time per test)
timezone user text Present by default. Stores the timezone for the user.
uid user .. CAS authentication
update_type user text
use_score_as_progress learning path Adds the possibility for learning paths in SCORM to update progress by receiving a score data. This is useful for mono-SCO elements
user_chat_status user text Internal: serves to hold the online status of the user for the global chat hidden
valoracion_modalidad user textarea Value given to remote training by user SEPE plugin
video_url course 19 A URL representing
whispeak_auth_uid user text External authentication ID of user in Whispeak's system Whispeak plugin
whispeak_lp_item lp_item checkbox Whether this LP item should be signed by a voice signature Whispeak plugin
start_date lp_item datetime If a start date is set then students cannot view this item until the date has arrived. Learnpath
end_date lp_item datetime If an end date is set then students cannot view this item after this date. Learnpath
whispeak_quiz_question quiz question checkbox Whether this quiz question should be signed by a voice signature Whispeak plugin

Miscellaneous references

In app/config/configuration.php (or if you are upgrading from an older Chamilo, in main/install/configuration.dist.php for the template), you may find a series of settings that are dependent on arbitrary named extra fields, or that apply to all extra fields of a particular type of resource. These sometimes require to be combined with database changes to be enabled (if so, those changes are documented in configuration.php):

// Allow to show users in a map, users need to have a coordinates extra field BT#15176
//$_configuration['allow_social_map_fields'] = ['fields' => ['terms_villedustage', 'terms_ville']];

// Allow add one column by each user extra field indicated to the Gradebook Flatview for each user.
// $_configuration['gradebook_flatview_extrafields_columns'] = ['variables' => []];

// In Scorm comunication use a specific extra field instead of the user_id
//$_configuration['scorm_api_extrafield_to_use_as_student_id'] = '';

// Search user by extra field in the user list.
//$_configuration['user_search_on_extra_fields'] = ['extra_fields' => ['variable1', 'variable2']];

// Course catalog show extra fields (visible and filtered)
//$_configuration['allow_course_extra_field_in_catalog'] = false;

/*
$_configuration['course_catalog_settings'] = [
    'link_settings' => [
        'info_url' => 'course_description_popup', // course description popup page
        'title_url' => 'course_home', // Course home URL
        'image_url' => 'course_about', // Course about URL
    ],
    'hide_course_title'
    'redirect_after_subscription' => 'course_home', // or 'course_catalog' to stay in the page
    'extra_fields_in_search_form' => ['variable1', 'variable2'],
    'extra_fields_in_course_block' => ['variable3', 'variable4'],
    'standard_sort_options' => [
        //  1 means allow sorting in ascending order
        // -1 means allow sorting in descending order
        'title' => 1,
        'creation_date' => -1,
        'count_users' => -1, // subscription count
        'point_info/point_average' => -1, // average score
        'point_info/total_score' => -1, // score sum
        'point_info/users' => -1, // vote count
    ],
    'extra_field_sort_options' => [
        'variable5' => -1,
        'variable6' => 1,
    ],
];
*/

// Page "My Courses" shows specific course extra fields (CourseManager::getExtraFieldsToBePresented)
/*$_configuration['my_course_course_extrafields_to_be_presented'] = [
    'fields' => ['mots_cles', 'duree_en_min', 'format'],
];*/

// After a user updates his profile, send notifications.
/*$_configuration['user_notification_settings'] = [
    'notification1' => [ // Notification label
        'email' => 'admin1@example.com,admin2@example.com', // multiple emails allowed
        'sender_email' => 'sender@example.com',
        //'if_extra_field_changes' => ['variable1', 'variable2'],
        'if_field_changes' => ['phone', 'email'],
        'subject' => 'User profile update',
        'content' => '/mail/user_profile_update.dist.tpl',
    ],
];*/

// Block question categories BT#17789
//ALTER TABLE track_e_exercises ADD COLUMN blocked_categories LONGTEXT;
// Requires an exercise extra field "block_category" type checkbox (Yes)
//$_configuration['block_category_questions'] = false;

// Allow time per question. BT#17791
// Requires a question text extra field called "time", value in seconds.
// ALTER TABLE track_e_attempt ADD COLUMN seconds_spent INT;
//$_configuration['allow_time_per_question'] = true;
Clone this wiki locally