Browse Source

Add proxy_settings configuration see BT#7945

Julio Montoya 9 years ago
parent
commit
99ece09c95
2 changed files with 23 additions and 1 deletions
  1. 16 1
      main/document/create_audio.php
  2. 7 0
      main/install/configuration.dist.php

+ 16 - 1
main/document/create_audio.php

@@ -412,7 +412,22 @@ function downloadMP3_google($filepath, $dir)
 
 	// adding the file
 	// add new file to disk
-	file_put_contents($documentPath, file_get_contents("http://translate.google.com/translate_tts?tl=".$clean_lang."&q=".urlencode($clean_text).""));
+
+	$proxySettings = api_get_configuration_value('proxy_settings');
+	$url = "http://translate.google.com/translate_tts?tl=".$clean_lang."&q=".urlencode($clean_text)."";
+
+	if (empty($proxySettings)) {
+		$content = file_get_contents($url);
+	} else {
+		$context = stream_context_create($proxySettings);
+		$content = file_get_contents($url, false, $context);
+	}
+
+	file_put_contents(
+		$documentPath,
+		$content
+	);
+
 	// add document to database
 	$current_session_id = api_get_session_id();
 	$groupId = api_get_group_id();

+ 7 - 0
main/install/configuration.dist.php

@@ -292,3 +292,10 @@ $_configuration['system_stable'] = NEW_VERSION_STABLE;
 //$_configuration['session_course_ordering'] = false;
 // Unoconv binary file
 //$_configuration['unoconv.binaries'] = '/usr/bin/unoconv';
+// Proxy settings for access external services
+/*$_configuration['proxy_settings'] = array(
+    'http' => array(
+        'proxy' => 'tcp://example.com:8080',
+        'request_fulluri'=>true
+    )
+);*/