Multiple URL settings can be changed to the "children" portals see BT#4201

skala
Julio Montoya 14 years ago
parent b03c847141
commit f11b1c52f4
  1. 10
      main/admin/settings.lib.php
  2. 29
      main/admin/settings.php
  3. BIN
      main/img/shared_setting_na.png
  4. 23
      main/inc/ajax/admin.ajax.php
  5. 9
      main/inc/lib/main_api.lib.php

@ -1059,8 +1059,14 @@ function generate_settings_form($settings, $settings_by_access_list) {
$i++;
if ($row['access_url_changeable'] == '1' && $_configuration['multiple_access_urls']) {
$form->addElement('html', '<div style="float: right;">'.Display::return_icon('shared_setting.png', get_lang('SharedSettingIconComment')).'</div>');
if ( $_configuration['multiple_access_urls']) {
if (api_is_global_platform_admin()) {
if ($row['access_url_changeable'] == '1') {
$form->addElement('html', '<div style="float: right;"><a class="share_this_setting" data_status = "0" data_to_send = "'.$row['id'].'" href="javascript:void(0);">'.Display::return_icon('shared_setting.png', get_lang('ChangeSharedSetting')).'</a></div>');
} else {
$form->addElement('html', '<div style="float: right;"><a class="share_this_setting" data_status = "1" data_to_send = "'.$row['id'].'" href="javascript:void(0);">'.Display::return_icon('shared_setting_na.png', get_lang('ChangeSharedSetting')).'</a></div>');
}
}
}
$hideme = array();

@ -254,6 +254,35 @@ if (!empty($_GET['category']) && !in_array($_GET['category'], array('Plugins', '
}
}
$htmlHeadXtra[] = '<script>
var hide_icon = "'.api_get_path(WEB_IMG_PATH).'shared_setting_na.png";
var show_icon = "'.api_get_path(WEB_IMG_PATH).'shared_setting.png";
var url = "'.api_get_path(WEB_AJAX_PATH).'admin.ajax.php?a=update_changeable_setting";
$(function(){
$(".share_this_setting").on("click", function() {
var my_img = $(this).find("img");
var link = $(this);
$.ajax({
url: url,
data: {changeable: $(this).attr("data_status"), id: $(this).attr("data_to_send") },
success: function(data) {
if (data == 1) {
if (link.attr("data_status") == 1) {
my_img.attr("src", show_icon);
link.attr("data_status", 0);
} else {
my_img.attr("src", hide_icon);
link.attr("data_status", 1);
}
}
}
});
});
});
</script>';
// Including the header (banner).
Display :: display_header($tool_name);

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

@ -0,0 +1,23 @@
<?php
/* For licensing terms, see /license.txt */
/**
* Responses to AJAX calls
*/
require_once '../global.inc.php';
api_protect_admin_script();
$action = isset($_REQUEST['a']) ? $_REQUEST['a'] : null;
switch ($action) {
case 'update_changeable_setting':
if (api_is_global_platform_admin()) {
if (isset($_GET['id']) && !empty($_GET['id'])) {
$params = array('id' =>$_GET['id'], 'access_url_changeable' => $_GET['changeable']);
api_set_setting_simple($params);
echo '1';
}
}
break;
}

@ -3970,6 +3970,15 @@ function api_set_setting_option($params) {
}
}
function api_set_setting_simple($params) {
$table = Database::get_main_table(TABLE_MAIN_SETTINGS_CURRENT);
if (empty($params['id'])) {
Database::insert($table, $params);
} else {
Database::update($table, $params, array('id = ? '=> $params['id']));
}
}
function api_delete_setting_option($id) {
$table = Database::get_main_table(TABLE_MAIN_SETTINGS_OPTIONS);
if (!empty($id)) {

Loading…
Cancel
Save