From b41e42b48ba60d0b653fd4a7a74d65b75071f9a2 Mon Sep 17 00:00:00 2001 From: Julio Montoya Date: Thu, 19 Mar 2015 14:52:35 +0100 Subject: [PATCH] Use setCustomElementTemplate() instead of setElementTemplate To manage templates setup by developers instead of default element templates. --- main/admin/class_list.php | 2 +- main/admin/configure_homepage.php | 2 +- main/admin/configure_inscription.php | 2 +- main/admin/course_request_accepted.php | 2 +- main/admin/course_request_rejected.php | 2 +- main/admin/course_request_review.php | 2 +- main/admin/group_list.php | 2 +- main/admin/special_exports.php | 2 +- main/admin/specific_fields.php | 2 +- main/admin/user_fields.php | 4 +-- main/attendance/attendance_sheet.php | 2 +- main/coursecopy/import_backup.php | 2 +- main/exercice/exercise_show.php | 2 +- main/exercice/feedback.php | 2 +- main/gradebook/lib/fe/catform.class.php | 2 +- main/gradebook/lib/fe/dataform.class.php | 2 +- main/gradebook/lib/fe/evalform.class.php | 4 +-- main/gradebook/lib/fe/linkform.class.php | 2 +- main/gradebook/lib/fe/userform.class.php | 2 +- main/group/group_creation.php | 3 +- main/inc/introductionSection.inc.php | 2 +- .../pear/HTML/QuickForm/Renderer/Default.php | 31 +++++++++++++++++-- main/inc/lib/statistics.lib.php | 2 +- main/survey/survey_question.php | 8 ++--- main/tracking/courseLog.php | 2 +- main/tracking/course_log_resources.php | 2 +- main/upload/upload_word.php | 2 +- main/user/subscribe_user.php | 2 +- plugin/before_login/index.php | 4 +-- plugin/ticket/src/myticket.php | 2 +- 30 files changed, 62 insertions(+), 40 deletions(-) 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('{content}
'); - $renderer->setElementTemplate('{element}'); + $renderer->setCustomElementTemplate('{element}'); $renderer->setRequiredNoteTemplate(''); $form->addElement('hidden', 'formSent', '1'); diff --git a/main/admin/configure_inscription.php b/main/admin/configure_inscription.php index fe28bd7230..8ea65fc4b1 100755 --- a/main/admin/configure_inscription.php +++ b/main/admin/configure_inscription.php @@ -353,7 +353,7 @@ switch ($action){ $renderer =& $form->defaultRenderer(); $renderer->setHeaderTemplate(''); $renderer->setFormTemplate('{content}
'); - $renderer->setElementTemplate('{element}'); + $renderer->setCustomElementTemplate('{element}'); $renderer->setRequiredNoteTemplate(''); $form->addElement('hidden', 'formSent', '1'); $default[$name] = str_replace('{rel_path}', api_get_path(REL_PATH), $open); diff --git a/main/admin/course_request_accepted.php b/main/admin/course_request_accepted.php index fef8b349fa..376f8cf249 100755 --- a/main/admin/course_request_accepted.php +++ b/main/admin/course_request_accepted.php @@ -146,7 +146,7 @@ if (!$course_validation_feature) { // Create a simple search-box. $form = new FormValidator('search_simple', 'get', '', '', 'width=200px', false); $renderer = $form->defaultRenderer(); -$renderer->setElementTemplate('{element} '); +$renderer->setCustomElementTemplate('{element} '); $form->addElement('text', 'keyword', get_lang('keyword')); $form->addButtonSearch(get_lang('Search')); diff --git a/main/admin/course_request_rejected.php b/main/admin/course_request_rejected.php index c0c57d3789..8ebd1e74b7 100755 --- a/main/admin/course_request_rejected.php +++ b/main/admin/course_request_rejected.php @@ -179,7 +179,7 @@ if (!$course_validation_feature) { // Create a simple search-box. $form = new FormValidator('search_simple', 'get', '', '', 'width=200px', false); $renderer = $form->defaultRenderer(); -$renderer->setElementTemplate('{element} '); +$renderer->setCustomElementTemplate('{element} '); $form->addElement('text', 'keyword', get_lang('keyword')); $form->addButtonSearch(get_lang('Search')); diff --git a/main/admin/course_request_review.php b/main/admin/course_request_review.php index e1db0a7d98..9f12f6ae18 100755 --- a/main/admin/course_request_review.php +++ b/main/admin/course_request_review.php @@ -227,7 +227,7 @@ if (!$course_validation_feature) { // Create a simple search-box. $form = new FormValidator('search_simple', 'get', '', '', 'width=200px', false); $renderer = $form->defaultRenderer(); -$renderer->setElementTemplate('{element} '); +$renderer->setCustomElementTemplate('{element} '); $form->addElement('text', 'keyword', get_lang('keyword')); $form->addButtonSearch(get_lang('Search')); diff --git a/main/admin/group_list.php b/main/admin/group_list.php index 4ec95ac6e9..a999e6b5d7 100755 --- a/main/admin/group_list.php +++ b/main/admin/group_list.php @@ -377,7 +377,7 @@ if (isset($_GET['search']) && $_GET['search'] == 'advanced') { // 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->addButtonSearch(get_lang('Search')); echo '
'; 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('
{content}
'); - $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',''); if (api_get_setting('search_enabled')=='true') { diff --git a/main/user/subscribe_user.php b/main/user/subscribe_user.php index 52cc4f6fba..9522d5158e 100755 --- a/main/user/subscribe_user.php +++ b/main/user/subscribe_user.php @@ -61,7 +61,7 @@ if (api_get_setting('ProfilingFilterAddingUsers') == 'true') { // Build search-form $form = new FormValidator('search_user', 'get', '', '', null, false); $renderer = $form->defaultRenderer(); -$renderer->setElementTemplate('{element} '); +$renderer->setCustomElementTemplate('{element} '); $form->addText('keyword', '', false); $form->addElement('hidden', 'type', $type); $form->addButtonSearch(get_lang('Search')); diff --git a/plugin/before_login/index.php b/plugin/before_login/index.php index 58b8ddcbb7..7a9e08d1e5 100755 --- a/plugin/before_login/index.php +++ b/plugin/before_login/index.php @@ -36,7 +36,7 @@ if (api_is_anonymous()) { $renderer =& $form->defaultRenderer(); $renderer->setFormTemplate('{content}
'); - $renderer->setElementTemplate('{element}'); + $renderersetCustomElementTemplate->setCustomElementTemplate('{element}'); $form->addElement('html', $option1); $form->addElement('checkbox', 'left', null, get_lang('Yes')); @@ -57,7 +57,7 @@ if (api_is_anonymous()) { $renderer =& $form2->defaultRenderer(); $renderer->setHeaderTemplate(''); $renderer->setFormTemplate('{content}
'); - $renderer->setElementTemplate('{element}'); + $renderer->setCustomElementTemplate('{element}'); $form2->addElement('html', $option2); $form2->addElement('checkbox', 'right', null, get_lang('Yes')); diff --git a/plugin/ticket/src/myticket.php b/plugin/ticket/src/myticket.php index 63a4453ac3..6162684a1e 100755 --- a/plugin/ticket/src/myticket.php +++ b/plugin/ticket/src/myticket.php @@ -252,7 +252,7 @@ if ($isAdmin) { // 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'), 'size="25"'); $form->addElement('style_submit_button', 'submit_simple', get_lang('Search'), 'class="search"'); $form->addElement('static', 'search_advanced_link', null,