|
|
|
@ -95,68 +95,13 @@ $form_search_html = $form_search->returnForm(); |
|
|
|
|
$url_id = api_get_current_access_url_id(); |
|
|
|
|
|
|
|
|
|
$settings = null; |
|
|
|
|
/** |
|
|
|
|
* @param string $category |
|
|
|
|
* @return array |
|
|
|
|
*/ |
|
|
|
|
function get_settings($category = '') |
|
|
|
|
{ |
|
|
|
|
$url_id = api_get_current_access_url_id(); |
|
|
|
|
$settings_by_access_list = array(); |
|
|
|
|
|
|
|
|
|
if ($url_id == 1) { |
|
|
|
|
$settings = api_get_settings($category, 'group', $url_id); |
|
|
|
|
} else { |
|
|
|
|
$url_info = api_get_access_url($url_id); |
|
|
|
|
if ($url_info['active'] == 1) { |
|
|
|
|
$categoryToSearch = $category; |
|
|
|
|
if ($category == 'search_setting') { |
|
|
|
|
$categoryToSearch = ''; |
|
|
|
|
} |
|
|
|
|
// The default settings of Chamilo |
|
|
|
|
$settings = api_get_settings($categoryToSearch, 'group', 1, 0); |
|
|
|
|
// The settings that are changeable from a particular site. |
|
|
|
|
$settings_by_access = api_get_settings($categoryToSearch, 'group', $url_id, 1); |
|
|
|
|
|
|
|
|
|
foreach ($settings_by_access as $row) { |
|
|
|
|
if (empty($row['variable'])) { |
|
|
|
|
$row['variable'] = 0; |
|
|
|
|
} |
|
|
|
|
if (empty($row['subkey'])) { |
|
|
|
|
$row['subkey'] = 0; |
|
|
|
|
} |
|
|
|
|
if (empty($row['category'])) { |
|
|
|
|
$row['category'] = 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// One more validation if is changeable. |
|
|
|
|
if ($row['access_url_changeable'] == 1) { |
|
|
|
|
$settings_by_access_list[$row['variable']][$row['subkey']][$row['category']] = $row; |
|
|
|
|
} else { |
|
|
|
|
$settings_by_access_list[$row['variable']][$row['subkey']][$row['category']] = array(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset($category) && $category == 'search_setting') { |
|
|
|
|
if (!empty($_REQUEST['search_field'])) { |
|
|
|
|
$settings = searchSetting($_REQUEST['search_field']); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return array( |
|
|
|
|
'settings' => $settings, |
|
|
|
|
'settings_by_access_list' => $settings_by_access_list |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Build the form. |
|
|
|
|
if (!empty($_GET['category']) && |
|
|
|
|
!in_array($_GET['category'], array('Plugins', 'stylesheets', 'Search')) |
|
|
|
|
) { |
|
|
|
|
$my_category = isset($_GET['category']) ? $_GET['category'] : null; |
|
|
|
|
$settings_array = get_settings($my_category); |
|
|
|
|
$settings_array = getCategorySettings($my_category); |
|
|
|
|
$settings = $settings_array['settings']; |
|
|
|
|
$settings_by_access_list = $settings_array['settings_by_access_list']; |
|
|
|
|
$form = generateSettingsForm($settings, $settings_by_access_list); |
|
|
|
@ -206,7 +151,7 @@ if (!empty($_GET['category']) && |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
//Reload settings |
|
|
|
|
$settings_array = get_settings($my_category); |
|
|
|
|
$settings_array = getCategorySettings($my_category); |
|
|
|
|
$settings = $settings_array['settings']; |
|
|
|
|
$settings_by_access_list = $settings_array['settings_by_access_list']; |
|
|
|
|
$form = generateSettingsForm( |
|
|
|
|