/var/www/vhosts/nabawater/common/helpers
Edit: /var/www/vhosts/nabawater/common/helpers/Aws.php (5762B)
'jpg',
'tiff' => 'tif',
);
$extension = '.' . str_replace(array_keys($known_replacements), array_values($known_replacements), $extension);
return $extension;
}
private function pathinfo_filename($file)
{ //file.name.ext, returns file.name
if (defined('PATHINFO_FILENAME')) {
return pathinfo($file, PATHINFO_FILENAME);
}
if (strstr($file, '.')) {
return substr($file, 0, strrpos($file, '.'));
}
}
private function domainName($string)
{
$string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens.
return strtolower(preg_replace('/[^A-Za-z0-9]/', '-', $string)); // Removes special chars.
}
/**
* @param $path
* @param bool $echo
* @return mixed
*/
public function s3Upload($upload, $folderName = '')
{
if ($upload !== null) {
$imageName = $upload->name;
$imageTempUrl = $upload->tempName;
$domainName = $this->domainName(Configuration::get(Configuration::APP_NAME));
// Connect to AWS
try {
$s3 = S3Client::factory(
array(
'credentials' => array(
'key' => self::IAM_KEY,
'secret' => self::IAM_SECRET
),
'version' => 'latest',
'region' => 'us-east-1'
)
);
} catch (Exception $e) {
return "";
}
// Add it to S3
try {
// Uploaded:
$keyName = sprintf('%s%s%s%s%s%s', $domainName, '/', $folderName, '/',
$this->pathinfo_filename($imageName), $this->gd_extension($imageTempUrl));
$result = $s3->putObject(
array(
'ACL' => 'public-read',
'Bucket' => self::BUCKET_NAME,
'Key' => $keyName,
'SourceFile' => $imageTempUrl,
'StorageClass' => 'REDUCED_REDUNDANCY'
)
);
return $result['ObjectURL'];
} catch (S3Exception $e) {
return "";
} catch (Exception $e) {
return "";
}
} else {
return "";
}
}
/**
* @param $path
* @param bool $echo
* @return mixed
*/
public function s3UploadContent($name, $folderName = '', $path)
{
if ($path !== null) {
$imageName = $name;
$imageTempUrl = $path;
$domainName = $this->domainName(Configuration::get(Configuration::APP_NAME));
// Connect to AWS
try {
$s3 = S3Client::factory(
array(
'credentials' => array(
'key' => self::IAM_KEY,
'secret' => self::IAM_SECRET
),
'version' => 'latest',
'region' => 'us-east-1'
)
);
} catch (Exception $e) {
return "";
}
// Add it to S3
try {
// Uploaded:
$keyName = sprintf('%s%s%s%s%s%s', $domainName, '/', $folderName, '/',
$this->pathinfo_filename($imageName), $this->gd_extension($imageTempUrl));
$result = $s3->putObject(
array(
'ACL' => 'public-read',
'Bucket' => self::BUCKET_NAME,
'Key' => $keyName,
'SourceFile' => $imageTempUrl,
'StorageClass' => 'REDUCED_REDUNDANCY'
)
);
return $result['ObjectURL'];
} catch (S3Exception $e) {
return "";
} catch (Exception $e) {
return "";
}
} else {
return "";
}
}
}