diff --git a/storage-s3/config.php b/storage-s3/config.php index e6e8779..7b2a4cd 100644 --- a/storage-s3/config.php +++ b/storage-s3/config.php @@ -31,10 +31,40 @@ function getOptions() { 'us-west-2' => 'US West (Oregon) Region', 'us-west-1' => 'US West (Northern California) Region', 'eu-west-1' => 'EU (Ireland) Region', + 'eu-north-1' => 'Europe (Stockholm) Region', 'ap-southeast-1' => 'Asia Pacific (Singapore) Region', 'ap-southeast-2' => 'Asia Pacific (Sydney) Region', 'ap-northeast-1' => 'Asia Pacific (Tokyo) Region', 'sa-east-1' => 'South America (Sao Paulo) Region', + 'US East (Ohio)' => 'us-east-2', + 'US East (N. Virginia)' => 'us-east-1', + 'US West (N. California)' => 'us-west-1', + 'US West (Oregon)' => 'us-west-2', + 'Africa (Cape Town)' => 'af-south-1', + 'Asia Pacific (Mumbai)' => 'ap-south-1', + 'Asia Pacific (Osaka-Local)' => 'ap-northeast-3', + 'Asia Pacific (Seoul)' => 'ap-northeast-2', + 'Asia Pacific (Singapore)' => 'ap-southeast-1', + 'Asia Pacific (Sydney)' => 'ap-southeast-2', + 'Asia Pacific (Tokyo)' => 'ap-northeast-1', + 'Canada (Central)' => 'ca-central-1', + 'China (Beijing)' => 'cn-north-1', + 'China (Ningxia)' => 'cn-northwest-1', + 'Europe (Frankfurt)' => 'eu-central-1', + 'Europe (Ireland)' => 'eu-west-1', + 'Europe (London)' => 'eu-west-2', + 'Europe (Milan)' => 'eu-south-1', + 'Europe (Paris)' => 'eu-west-3', + 'Europe (Stockholm)' => 'eu-north-1', + 'Middle East (Bahrain)' => 'me-south-1', + 'South America (São Paulo)' => 'sa-east-1', + ), + 'default' => '', + )), + 'version' => new ChoiceField(array( + 'label' => $__('AWS SDK version'), + 'version' => array( + 'latest' => 'latest', ), 'default' => '', )), @@ -79,7 +109,7 @@ function pre_save(&$config, &$errors) { ); if ($config['aws-region']) $credentials['region'] = $config['aws-region']; - + if (!$credentials['secret']) $this->getForm()->getField('secret-access-key')->addError( $__('Secret access key is required')); diff --git a/storage-s3/storage.php b/storage-s3/storage.php index c6770d8..e5dcef0 100644 --- a/storage-s3/storage.php +++ b/storage-s3/storage.php @@ -34,6 +34,9 @@ function __construct($meta) { ); if ($config['aws-region']) $credentials['region'] = $config['aws-region']; + + if ($config['verion']) + $credentials['verion'] = $config['verion']; $this->client = S3Client::factory($credentials); }