From 90337c8ef46e319da29e035b72a71ca52becabbf Mon Sep 17 00:00:00 2001 From: Ramon Novoa Date: Wed, 24 Sep 2008 09:35:26 +0000 Subject: [PATCH] 2008-09-24 Ramon Novoa * extensions/update_manager/sql/update_manager.sql, extensions/update_manager/lib/libupdate_manager_client.php, extensions/update_manager/settings.php: Added proxy support to update manager. git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1111 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f --- pandora_console/ChangeLog | 7 +++++++ .../update_manager/lib/libupdate_manager_client.php | 12 ++++++++++-- .../extensions/update_manager/settings.php | 12 ++++++++++++ .../extensions/update_manager/sql/update_manager.sql | 2 +- 4 files changed, 30 insertions(+), 3 deletions(-) diff --git a/pandora_console/ChangeLog b/pandora_console/ChangeLog index 9ea8fc07d6..1206de7e05 100644 --- a/pandora_console/ChangeLog +++ b/pandora_console/ChangeLog @@ -1,3 +1,10 @@ +2008-09-24 Ramon Novoa + + * extensions/update_manager/sql/update_manager.sql, + extensions/update_manager/lib/libupdate_manager_client.php, + extensions/update_manager/settings.php: Added proxy support to + update manager. + 2008-09-23 Jorge Gonzalez * include/languages/es.po: Updated Spanish translation, fixes a bug. diff --git a/pandora_console/extensions/update_manager/lib/libupdate_manager_client.php b/pandora_console/extensions/update_manager/lib/libupdate_manager_client.php index 1bb6891c07..6e6b0e4843 100644 --- a/pandora_console/extensions/update_manager/lib/libupdate_manager_client.php +++ b/pandora_console/extensions/update_manager/lib/libupdate_manager_client.php @@ -23,9 +23,9 @@ unset ($prev_level); define ('XMLRPC_DEBUG', 0); -function um_xml_rpc_client_call ($server_host, $server_path, $server_port, $function, $parameters) { +function um_xml_rpc_client_call ($server_host, $server_path, $server_port, $proxy, $proxy_port, $proxy_user, $proxy_pass, $function, $parameters) { $msg = new XML_RPC_Message ($function, $parameters); - $client = new XML_RPC_Client ($server_path, $server_host, $server_port); + $client = new XML_RPC_Client ($server_path, $server_host, $server_port, $proxy, $proxy_port, $proxy_user, $proxy_pass); if (defined ('XMLRPC_DEBUG')) $client->setDebug (XMLRPC_DEBUG); $result = $client->send ($msg); @@ -91,6 +91,10 @@ function um_client_check_latest_update ($settings, $user_key) { $result = um_xml_rpc_client_call ($settings->update_server_host, $settings->update_server_path, $settings->update_server_port, + $settings->proxy, + $settings->proxy_port, + $settings->proxy_user, + $settings->proxy_pass, 'get_latest_package', $params); if ($result === false) { @@ -115,6 +119,10 @@ function um_client_get_package ($settings, $user_key) { $result = um_xml_rpc_client_call ($settings->update_server_host, $settings->update_server_path, $settings->update_server_port, + $settings->proxy, + $settings->proxy_port, + $settings->proxy_user, + $settings->proxy_pass, 'get_next_package', $params); if ($result === false) diff --git a/pandora_console/extensions/update_manager/settings.php b/pandora_console/extensions/update_manager/settings.php index 3fa27e4c58..1028d27eee 100644 --- a/pandora_console/extensions/update_manager/settings.php +++ b/pandora_console/extensions/update_manager/settings.php @@ -64,6 +64,18 @@ $table->data[4][1] = print_input_text ('keys[updating_binary_path]', $settings-> $table->data[5][0] = ''.__('Keygen path').''; $table->data[5][1] = print_input_text ('keys[keygen_path]', $settings->keygen_path, '', 40, 255, true); +$table->data[6][0] = ''.__('Proxy server').''; +$table->data[6][1] = print_input_text ('keys[proxy]', $settings->proxy, '', 40, 255, true); + +$table->data[7][0] = ''.__('Proxy port').''; +$table->data[7][1] = print_input_text ('keys[proxy_port]', $settings->proxy_port, '', 40, 255, true); + +$table->data[8][0] = ''.__('Proxy user').''; +$table->data[8][1] = print_input_text ('keys[proxy_user]', $settings->proxy_user, '', 40, 255, true); + +$table->data[9][0] = ''.__('Proxy password').''; +$table->data[9][1] = print_input_text ('keys[proxy_pass]', $settings->proxy_pass, '', 40, 255, true); + print_table ($table); echo '
'; print_input_hidden ('update_settings', 1); diff --git a/pandora_console/extensions/update_manager/sql/update_manager.sql b/pandora_console/extensions/update_manager/sql/update_manager.sql index 55e35c254e..ab9279ed82 100644 --- a/pandora_console/extensions/update_manager/sql/update_manager.sql +++ b/pandora_console/extensions/update_manager/sql/update_manager.sql @@ -1,5 +1,5 @@ CREATE TABLE `tupdate_settings` ( `key` varchar(255) default '', `value` varchar(255) default '', PRIMARY KEY (`key`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -INSERT INTO `tupdate_settings` VALUES ('current_update', '0'), ('customer_key', 'PANDORA-FREE'), ('keygen_path', '/usr/share/pandora/util/keygen'), ('update_server_host', 'www.artica.es'), ('update_server_port', '80'), ('update_server_path', '/pandoraupdate/server.php'), ('updating_binary_path', 'Path where the updated binary files will be stored'), ('updating_code_path', 'Path where the updated code is stored'), ('dbname', ''), ('dbhost', ''), ('dbpass', ''), ('dbuser', ''); +INSERT INTO `tupdate_settings` VALUES ('current_update', '0'), ('customer_key', 'PANDORA-FREE'), ('keygen_path', '/usr/share/pandora/util/keygen'), ('update_server_host', 'www.artica.es'), ('update_server_port', '80'), ('update_server_path', '/pandoraupdate/server.php'), ('updating_binary_path', 'Path where the updated binary files will be stored'), ('updating_code_path', 'Path where the updated code is stored'), ('dbname', ''), ('dbhost', ''), ('dbpass', ''), ('dbuser', ''), ('proxy', ''), ('proxy_port', ''), ('proxy_user', ''), ('proxy_pass', ''); CREATE TABLE `tupdate_package` ( id int(11) unsigned NOT NULL auto_increment, timestamp datetime NOT NULL, description mediumtext NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `tupdate` ( id int(11) unsigned NOT NULL auto_increment, type enum('code', 'db_data', 'db_schema', 'binary'), id_update_package int(11) unsigned NOT NULL default 0, filename varchar(250) default '', checksum varchar(250) default '', previous_checksum varchar(250) default '', svn_version int(4) unsigned NOT NULL default 0, data LONGTEXT default '', data_rollback LONGTEXT default '', description TEXT default '', db_table_name varchar(140) default '', db_field_name varchar(140) default '', db_field_value varchar(1024) default '', PRIMARY KEY (`id`), FOREIGN KEY (`id_update_package`) REFERENCES tupdate_package(`id`) ON UPDATE CASCADE ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `tupdate_journal` ( id int(11) unsigned NOT NULL auto_increment, id_update int(11) unsigned NOT NULL default 0, PRIMARY KEY (`id`), FOREIGN KEY (`id_update`) REFERENCES tupdate(`id`) ON UPDATE CASCADE ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;