diff --git a/main/admin/class_list.php b/main/admin/class_list.php
index d6151dbb82..60c62105f0 100755
--- a/main/admin/class_list.php
+++ b/main/admin/class_list.php
@@ -102,7 +102,7 @@ if (isset($_GET['action'])) {
// Create a search-box
$form = new FormValidator('search_simple', 'get', '', '', null, false);
$renderer =& $form->defaultRenderer();
-$renderer->setElementTemplate('{element} ');
+$renderer->setCustomElementTemplate('{element} ');
$form->addElement('text', 'keyword', get_lang('keyword'));
$form->addElement('button', 'submit', get_lang('Search'));
$content .= $form->return_form();
diff --git a/main/admin/configure_homepage.php b/main/admin/configure_homepage.php
index da0251c075..fd17e46824 100755
--- a/main/admin/configure_homepage.php
+++ b/main/admin/configure_homepage.php
@@ -923,7 +923,7 @@ switch ($action) {
$renderer =& $form->defaultRenderer();
$renderer->setHeaderTemplate('');
$renderer->setFormTemplate('
';
diff --git a/main/admin/special_exports.php b/main/admin/special_exports.php
index 2d40b11ca4..ee6fd20892 100755
--- a/main/admin/special_exports.php
+++ b/main/admin/special_exports.php
@@ -151,7 +151,7 @@ Display::display_footer();
function form_special_export() {
$form = new FormValidator('special_exports','post');
$renderer = $form->defaultRenderer();
- $renderer->setElementTemplate('
{element}
');
+ $renderer->setCustomElementTemplate('
{element}
');
$form->addElement('radio', 'backup_option', '', get_lang('SpecialCreateFullBackup'), 'full_backup');
$form->addElement('radio', 'backup_option', '', get_lang('SpecialLetMeSelectItems'), 'select_items');
$form->addElement('html','
');
diff --git a/main/admin/specific_fields.php b/main/admin/specific_fields.php
index 3b8273f4c6..603868cdc0 100755
--- a/main/admin/specific_fields.php
+++ b/main/admin/specific_fields.php
@@ -27,7 +27,7 @@ include_once $libpath.'specific_fields_manager.lib.php';
// Create an add-field box
$form = new FormValidator('add_field','post','','',null,false);
$renderer =& $form->defaultRenderer();
-$renderer->setElementTemplate('
{element} ');
+$renderer->setCustomElementTemplate('
{element} ');
$form->addElement('static','search_advanced_link',null,'
'.Display::return_icon('fieldadd.gif').get_lang('AddSpecificSearchField').'');
// Create a sortable table with specific fields data
diff --git a/main/admin/user_fields.php b/main/admin/user_fields.php
index a4a4d0eef9..2da0db8715 100755
--- a/main/admin/user_fields.php
+++ b/main/admin/user_fields.php
@@ -127,7 +127,7 @@ if(1)
// Create an add-field box
$form = new FormValidator('add_field','post','','',null,false);
$renderer =& $form->defaultRenderer();
- $renderer->setElementTemplate('
{element} ');
+ $renderer->setCustomElementTemplate('
{element} ');
//$form->addElement('text','label',get_lang('FieldLabel'));
//$form->addElement('text','type',get_lang('FieldType'));
//$form->addElement('text','title',get_lang('FieldTitle'));
@@ -384,4 +384,4 @@ function delete_user_fields($field_id)
// the field was not deleted so we return false
return false;
}
-}
\ No newline at end of file
+}
diff --git a/main/attendance/attendance_sheet.php b/main/attendance/attendance_sheet.php
index ba0f355747..9234f2f1f7 100755
--- a/main/attendance/attendance_sheet.php
+++ b/main/attendance/attendance_sheet.php
@@ -96,7 +96,7 @@ if (api_is_allowed_to_edit(null, true) ||
}
$renderer = $form->defaultRenderer();
- $renderer->setElementTemplate('{label} {element} ');
+ $renderer->setCustomElementTemplate('{label} {element} ');
$form->setDefaults(
array(
diff --git a/main/coursecopy/import_backup.php b/main/coursecopy/import_backup.php
index 83e4b2e7ca..4886a4efef 100755
--- a/main/coursecopy/import_backup.php
+++ b/main/coursecopy/import_backup.php
@@ -161,7 +161,7 @@ if (Security::check_token('post') && (
);
$form->addElement('header', get_lang('SelectBackupFile'));
$renderer = $form->defaultRenderer();
- $renderer->setElementTemplate('
{element}
');
+ $renderer->setCustomElementTemplate('
{element}
');
$form->addElement('hidden', 'action', 'restore_backup');
diff --git a/main/exercice/exercise_show.php b/main/exercice/exercise_show.php
index 4a29cbe1f3..0fc7112e62 100755
--- a/main/exercice/exercise_show.php
+++ b/main/exercice/exercise_show.php
@@ -542,7 +542,7 @@ foreach ($questionList as $questionId) {
$feedback_form->addElement('html','
');
$renderer =& $feedback_form->defaultRenderer();
$renderer->setFormTemplate('
');
- $renderer->setElementTemplate('
{element}
');
+ $renderer->setCustomElementTemplate('
{element}
');
$comnt = Event::get_comments($id, $questionId);
$default = array('comments_'.$questionId => $comnt);
diff --git a/main/exercice/feedback.php b/main/exercice/feedback.php
index f4421bcf9e..e679872c9b 100755
--- a/main/exercice/feedback.php
+++ b/main/exercice/feedback.php
@@ -52,7 +52,7 @@ Display::display_header($nameTools,"Exercise");
$form = new FormValidator('feedbackform','post',api_get_self()."?".api_get_cidreq()."&modifyQuestion=".$modifyQuestion."&newQuestion=".$newQuestion);
$obj_registration_form = new HTML_QuickForm('frmRegistration', 'POST');
$renderer =& $obj_registration_form->defaultRenderer();
- $renderer->setElementTemplate(
+ $renderer->setCustomElementTemplate(
'
| {label}
*
diff --git a/main/gradebook/lib/fe/catform.class.php b/main/gradebook/lib/fe/catform.class.php
index b24e59d865..cc6c155a2b 100755
--- a/main/gradebook/lib/fe/catform.class.php
+++ b/main/gradebook/lib/fe/catform.class.php
@@ -53,7 +53,7 @@ class CatForm extends FormValidator
protected function build_move_form()
{
$renderer =& $this->defaultRenderer();
- $renderer->setElementTemplate('{element} ');
+ $renderer->setCustomElementTemplate('{element} ');
$this->addElement(
'static',
null,
diff --git a/main/gradebook/lib/fe/dataform.class.php b/main/gradebook/lib/fe/dataform.class.php
index 66c9a58756..7e79e9454a 100755
--- a/main/gradebook/lib/fe/dataform.class.php
+++ b/main/gradebook/lib/fe/dataform.class.php
@@ -42,7 +42,7 @@ class DataForm extends FormValidator
protected function build_pdf_export_form()
{
$renderer =& $this->defaultRenderer();
- $renderer->setElementTemplate('{element}');
+ $renderer->setCustomElementTemplate('{element}');
$this->addElement('header', get_lang('ChooseOrientation'));
$this->addElement('radio', 'orientation', null, get_lang('Portrait'), 'portrait');
$this->addElement('radio', 'orientation', null, get_lang('Landscape'), 'landscape');
diff --git a/main/gradebook/lib/fe/evalform.class.php b/main/gradebook/lib/fe/evalform.class.php
index 1e95c762ea..dfdd285624 100755
--- a/main/gradebook/lib/fe/evalform.class.php
+++ b/main/gradebook/lib/fe/evalform.class.php
@@ -214,7 +214,7 @@ class EvalForm extends FormValidator
protected function build_move_form()
{
$renderer = & $this->defaultRenderer();
- $renderer->setElementTemplate('{element} ');
+ $renderer->setCustomElementTemplate('{element} ');
$this->addElement('static', null, null, '"' . $this->evaluation_object->get_name() . '" ');
$this->addElement('static', null, null, get_lang('MoveTo') . ' : ');
$select = $this->addElement('select', 'move_cat', null, null);
@@ -332,7 +332,7 @@ class EvalForm extends FormValidator
));
$userinfo = api_get_user_info($this->result_object->get_user_id());
$renderer = & $this->defaultRenderer();
- $renderer->setElementTemplate('{element} ');
+ $renderer->setCustomElementTemplate('{element} ');
$this->addElement('label', get_lang('User'), $userinfo['complete_name']);
$this->addText('score', array(get_lang('Score'), null, '/ ' . $this->evaluation_object->get_max()), false, array(
diff --git a/main/gradebook/lib/fe/linkform.class.php b/main/gradebook/lib/fe/linkform.class.php
index 29e66bd5e2..454e11dc97 100755
--- a/main/gradebook/lib/fe/linkform.class.php
+++ b/main/gradebook/lib/fe/linkform.class.php
@@ -57,7 +57,7 @@ class LinkForm extends FormValidator
protected function build_move()
{
$renderer =& $this->defaultRenderer();
- $renderer->setElementTemplate('{element} ');
+ $renderer->setCustomElementTemplate('{element} ');
$this->addElement('static',null,null,'"'.$this->link_object->get_name().'" ');
$this->addElement('static',null,null,get_lang('MoveTo').' : ');
$select = $this->addElement('select','move_cat',null,null);
diff --git a/main/gradebook/lib/fe/userform.class.php b/main/gradebook/lib/fe/userform.class.php
index 7397904934..6a948a324d 100755
--- a/main/gradebook/lib/fe/userform.class.php
+++ b/main/gradebook/lib/fe/userform.class.php
@@ -46,7 +46,7 @@ class UserForm extends FormValidator
));
}
$renderer =& $this->defaultRenderer();
- $renderer->setElementTemplate('{element} ');
+ $renderer->setCustomElementTemplate('{element} ');
$this->addElement('text','keyword','');
$this->addElement('style_submit_button','submit',get_lang('Search'),'class="search"');
}
diff --git a/main/group/group_creation.php b/main/group/group_creation.php
index d3205b0258..97b9221ff6 100755
--- a/main/group/group_creation.php
+++ b/main/group/group_creation.php
@@ -155,7 +155,7 @@ elseif (isset($_POST['number_of_groups'])) {
|
EOT;
- $renderer->setElementTemplate($element_template);
+ $renderer->setCustomElementTemplate($element_template);
$form->addElement('header', $nameTools);
$form->addElement('hidden', 'action');
$form->addElement('hidden', 'number_of_groups');
@@ -163,6 +163,7 @@ EOT;
// Table heading
$group_el = array ();
$group_el[] = $form->createElement('static', null, null, '
'.get_lang('GroupName').'');
+
if (api_get_setting('allow_group_categories') == 'true') {
$group_el[] = $form->createElement('static', null, null, '
'.get_lang('GroupCategory').'');
}
diff --git a/main/inc/introductionSection.inc.php b/main/inc/introductionSection.inc.php
index ac5e003411..a86601503e 100755
--- a/main/inc/introductionSection.inc.php
+++ b/main/inc/introductionSection.inc.php
@@ -50,7 +50,7 @@ if (!empty($courseId)) {
}
$renderer =& $form->defaultRenderer();
-$renderer->setElementTemplate('
{element}
');
+$renderer->setCustomElementTemplate('
{element}
');
$toolbar_set = 'IntroductionTool';
$width = '100%';
diff --git a/main/inc/lib/pear/HTML/QuickForm/Renderer/Default.php b/main/inc/lib/pear/HTML/QuickForm/Renderer/Default.php
index 8f770e9021..57cf2db288 100755
--- a/main/inc/lib/pear/HTML/QuickForm/Renderer/Default.php
+++ b/main/inc/lib/pear/HTML/QuickForm/Renderer/Default.php
@@ -37,6 +37,24 @@
class HTML_QuickForm_Renderer_Default extends HTML_QuickForm_Renderer
{
private $form;
+ private $customElementTemplate;
+
+ /**
+ * @return mixed
+ */
+ public function getCustomElementTemplate()
+ {
+ return $this->customElementTemplate;
+ }
+
+ /**
+ * This template will be taken instead of the default templates by element
+ * @param string $customElementTemplate
+ */
+ public function setCustomElementTemplate($customElementTemplate)
+ {
+ $this->customElementTemplate = $customElementTemplate;
+ }
/**
* The HTML of the form
@@ -277,10 +295,17 @@ class HTML_QuickForm_Renderer_Default extends HTML_QuickForm_Renderer
// Custom template
$html = str_replace('{label}', $nameLabel, $this->_templates[$name]);
} else {
- if (method_exists($element, 'getTemplate')) {
- $template = $element->getTemplate($this->getForm()->getLayout());
+ $customElementTemplate = $this->getCustomElementTemplate();
+ if (empty($customElementTemplate)) {
+ if (method_exists($element, 'getTemplate')) {
+ $template = $element->getTemplate(
+ $this->getForm()->getLayout()
+ );
+ } else {
+ $template = $this->getForm()->getDefaultElementTemplate();
+ }
} else {
- $template = $this->getForm()->getDefaultElementTemplate();
+ $template = $customElementTemplate;
}
$html = str_replace('{label}', $nameLabel, $template);
}
diff --git a/main/inc/lib/statistics.lib.php b/main/inc/lib/statistics.lib.php
index 89712cdfb8..135ad0102b 100644
--- a/main/inc/lib/statistics.lib.php
+++ b/main/inc/lib/statistics.lib.php
@@ -566,7 +566,7 @@ class Statistics
// Create a search-box
$form = new FormValidator('search_simple','get',api_get_path(WEB_CODE_PATH).'admin/statistics/index.php','','width=200px',false);
$renderer =& $form->defaultRenderer();
- $renderer->setElementTemplate('
{element} ');
+ $renderer->setCustomElementTemplate('
{element} ');
$form->addElement('hidden','report','activities');
$form->addElement('hidden','activities_direction','DESC');
$form->addElement('hidden','activities_column','4');
diff --git a/main/survey/survey_question.php b/main/survey/survey_question.php
index 6eace3fb03..cd4fcafec5 100644
--- a/main/survey/survey_question.php
+++ b/main/survey/survey_question.php
@@ -116,15 +116,11 @@ class survey_question
public function renderForm()
{
if (isset($_GET['question_id']) and !empty($_GET['question_id'])) {
- $icon = 'pencil';
- $text = get_lang('ModifyQuestionSurvey');
+ $this->buttonList[] = $this->getForm()->addButtonUpdate(get_lang('ModifyQuestionSurvey'), 'save', true);
} else {
- $icon = 'check';
- $text = get_lang('CreateQuestionSurvey');
+ $this->buttonList[] = $this->getForm()->addButtonSave(get_lang('CreateQuestionSurvey'), 'save', true);
}
- $this->buttonList[] = $this->getForm()->createElement('button', 'save', $text, $icon);
-
$this->getForm()->addGroup($this->buttonList, 'buttons');
}
diff --git a/main/tracking/courseLog.php b/main/tracking/courseLog.php
index ebaf7b1d91..a85f16d920 100755
--- a/main/tracking/courseLog.php
+++ b/main/tracking/courseLog.php
@@ -263,7 +263,7 @@ $form_search = new FormValidator(
FormValidator::LAYOUT_INLINE
);
$renderer = $form_search->defaultRenderer();
-$renderer->setElementTemplate('
{element}');
+$renderer->setCustomElementTemplate('
{element}');
$form_search->addElement('hidden', 'from', Security::remove_XSS($from));
$form_search->addElement('hidden', 'session_id', $sessionId);
$form_search->addElement('hidden', 'id_session', $sessionId);
diff --git a/main/tracking/course_log_resources.php b/main/tracking/course_log_resources.php
index 57cde0c7ac..0913767ba4 100755
--- a/main/tracking/course_log_resources.php
+++ b/main/tracking/course_log_resources.php
@@ -106,7 +106,7 @@ $form = new FormValidator(
false
);
$renderer = $form->defaultRenderer();
-$renderer->setElementTemplate('
{element}');
+$renderer->setCustomElementTemplate('
{element}');
$form->addElement('text', 'keyword', get_lang('keyword'));
$form->addElement('hidden', 'cidReq', api_get_course_id());
$form->addElement('hidden', 'id_session', $session_id);
diff --git a/main/upload/upload_word.php b/main/upload/upload_word.php
index 085cbdb380..88cd47abad 100755
--- a/main/upload/upload_word.php
+++ b/main/upload/upload_word.php
@@ -153,7 +153,7 @@ $user_file_template =
{error}
EOT;
-$renderer->setElementTemplate($user_file_template);
+$renderer->setCustomElementTemplate($user_file_template);
$form -> addElement ('file', 'user_file','