From 06c4131f72a73597c775ec3075ec7fd539643a7b Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos Date: Fri, 23 Dec 2022 18:39:32 -0500 Subject: [PATCH] LP: Allow set lp_view_settings['add_extra_quit_to_home_icon'] in single LP - refs BT#20399 --- main/install/configuration.dist.php | 4 ++++ main/lp/lp_edit.php | 12 ++++++++++++ main/lp/lp_view.php | 6 ++++++ 3 files changed, 22 insertions(+) diff --git a/main/install/configuration.dist.php b/main/install/configuration.dist.php index 0a7977c3e8..bd5a314e0e 100755 --- a/main/install/configuration.dist.php +++ b/main/install/configuration.dist.php @@ -1031,6 +1031,10 @@ ALTER TABLE skill_rel_course ADD CONSTRAINT FK_E7CEC7FA613FECDF FOREIGN KEY (ses 'add_extra_quit_to_home_icon' => false, ], ];*/ +// To enable the add_extra_quit_to_home_icon feature for single LP, add the following extrafield: +/* +INSERT INTO extra_field (extra_field_type, field_type, variable, display_text, default_value, field_order, visible_to_self, visible_to_others, changeable, filter, created_at) VALUES (6, 13, 'add_extra_quit_button', 'Add extra quit button', '', 0, 1, 0, 1, 0, NOW()); +*/ // Force to hide the invisible course documents in sessions //$_configuration['hide_invisible_course_documents_in_sessions'] = false; diff --git a/main/lp/lp_edit.php b/main/lp/lp_edit.php index 8a7b1ea9c5..286c2e6a70 100755 --- a/main/lp/lp_edit.php +++ b/main/lp/lp_edit.php @@ -326,6 +326,18 @@ $defaults['expired_on'] = (!empty($expired_on)) ? api_get_local_time($expired_on) : date('Y-m-d 12:00:00', time() + 84600); $defaults['subscribe_users'] = $learnPath->getSubscribeUsers(); + +$display = api_get_configuration_value('lp_view_settings')['display'] ?? []; + +if (!empty($display)) { + $addExtraQuitToHomeIcon = $display['add_extra_quit_to_home_icon'] ?? false; + $value = (new ExtraFieldValue('lp'))->get_values_by_handler_and_field_variable($lpId, 'add_extra_quit_button'); + + if (!is_array($value) && $addExtraQuitToHomeIcon) { + $defaults['extra_add_extra_quit_button[extra_add_extra_quit_button]'] = true; + } +} + $form->setDefaults($defaults); Display::display_header(get_lang('CourseSettings'), 'Path'); diff --git a/main/lp/lp_view.php b/main/lp/lp_view.php index 7e880c5c2f..a6c3db57c0 100755 --- a/main/lp/lp_view.php +++ b/main/lp/lp_view.php @@ -566,6 +566,12 @@ if (!empty($display)) { $showMenu = isset($display['show_toolbar_by_default']) && $display['show_toolbar_by_default'] ? 1 : 0; $navigationInTheMiddle = isset($display['navigation_in_the_middle']) && $display['navigation_in_the_middle'] ? 1 : 0; $addExtraQuitToHomeIcon = $display['add_extra_quit_to_home_icon'] ?? false; + + $value = (new ExtraFieldValue('lp'))->get_values_by_handler_and_field_variable($lp_id, 'add_extra_quit_button'); + + if (is_array($value)) { + $addExtraQuitToHomeIcon = $value['value'] !== '0'; + } } $template->assign('show_toolbar_by_default', $showMenu);