Added the proxy configuration in the update manager.

This commit is contained in:
mdtrooper 2015-02-10 16:40:44 +01:00
parent 2cb4e4c200
commit 6c1d958f73
3 changed files with 75 additions and 2 deletions

View File

@ -16,14 +16,36 @@
global $config;
$url_update_manager = get_parameter('url_update_manager',
$config['url_update_manager']);
$action_update_url_update_manager = (bool)get_parameter(
'action_update_url_update_manager', 0);
$url_update_manager = get_parameter('url_update_manager',
$config['url_update_manager']);
$update_manager_proxy_server = get_parameter('update_manager_proxy_server',
$config['update_manager_proxy_server']);
$update_manager_proxy_port = get_parameter('update_manager_proxy_port',
$config['update_manager_proxy_port']);
$update_manager_proxy_user = get_parameter('update_manager_proxy_user',
$config['update_manager_proxy_user']);
$update_manager_proxy_password = get_parameter('update_manager_proxy_password',
$config['update_manager_proxy_password']);
if ($action_update_url_update_manager) {
$result = config_update_value('url_update_manager',
$url_update_manager);
if ($result)
$result = config_update_value('update_manager_proxy_server',
$update_manager_proxy_server);
if ($result)
$result = config_update_value('update_manager_proxy_port',
$update_manager_proxy_port);
if ($result)
$result = config_update_value('update_manager_proxy_user',
$update_manager_proxy_user);
if ($result)
$result = config_update_value('update_manager_proxy_password',
$update_manager_proxy_password);
ui_print_result_message($result,
__('Succesful Update the url config vars.'),
@ -40,6 +62,22 @@ $table->data[0][0] = __('URL update manager:');
$table->data[0][1] = html_print_input_text('url_update_manager',
$url_update_manager, __('URL update manager'), 40, 60, true);
$table->data[1][0] = __('Proxy server:');
$table->data[1][1] = html_print_input_text('update_manager_proxy_server',
$update_manager_proxy_server, __('Proxy server'), 40, 60, true);
$table->data[2][0] = __('Proxy port:');
$table->data[2][1] = html_print_input_text('update_manager_proxy_port',
$update_manager_proxy_port, __('Proxy port'), 40, 60, true);
$table->data[3][0] = __('Proxy user:');
$table->data[3][1] = html_print_input_text('update_manager_proxy_user',
$update_manager_proxy_user, __('Proxy user'), 40, 60, true);
$table->data[4][0] = __('Proxy password:');
$table->data[4][1] = html_print_input_text('update_manager_proxy_password',
$update_manager_proxy_password, __('Proxy password'), 40, 60, true);
html_print_input_hidden('action_update_url_update_manager', 1);
html_print_table($table);

View File

@ -1289,6 +1289,23 @@ function config_process_config () {
json_encode(array()));
}
if (!isset($config['update_manager_proxy_server'])) {
config_update_value ('update_manager_proxy_server',
"");
}
if (!isset($config['update_manager_proxy_port'])) {
config_update_value ('update_manager_proxy_port',
"");
}
if (!isset($config['update_manager_proxy_user'])) {
config_update_value ('update_manager_proxy_user',
"");
}
if (!isset($config['update_manager_proxy_password'])) {
config_update_value ('update_manager_proxy_password',
"");
}
/* Finally, check if any value was overwritten in a form */
config_update_config();
}

View File

@ -235,6 +235,15 @@ function update_manager_check_online_free_packages_available() {
curl_setopt($curlObj, CURLOPT_POST, true);
curl_setopt($curlObj, CURLOPT_POSTFIELDS, $params);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, false);
if (issset($config['update_manager_proxy_server'])) {
curl_setopt($curlObj, CURLOPT_PROXY, $config['update_manager_proxy_server']);
}
if (issset($config['update_manager_proxy_port'])) {
curl_setopt($curlObj, CURLOPT_PROXYPORT, $config['update_manager_proxy_port']);
}
if (issset($config['update_manager_proxy_user'])) {
curl_setopt($curlObj, CURLOPT_PROXYUSERPWD, $config['update_manager_proxy_user'] . ':' . $config['update_manager_proxy_password']);
}
$result = curl_exec($curlObj);
$http_status = curl_getinfo($curlObj, CURLINFO_HTTP_CODE);
@ -292,6 +301,15 @@ function update_manager_check_online_free_packages ($is_ajax=true) {
curl_setopt($curlObj, CURLOPT_POST, true);
curl_setopt($curlObj, CURLOPT_POSTFIELDS, $params);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, false);
if (issset($config['update_manager_proxy_server'])) {
curl_setopt($curlObj, CURLOPT_PROXY, $config['update_manager_proxy_server']);
}
if (issset($config['update_manager_proxy_port'])) {
curl_setopt($curlObj, CURLOPT_PROXYPORT, $config['update_manager_proxy_port']);
}
if (issset($config['update_manager_proxy_user'])) {
curl_setopt($curlObj, CURLOPT_PROXYUSERPWD, $config['update_manager_proxy_user'] . ':' . $config['update_manager_proxy_password']);
}
$result = curl_exec($curlObj);
$http_status = curl_getinfo($curlObj, CURLINFO_HTTP_CODE);