classes/Tools/Storage/StorageTool.php
public function uploadUrlForFile($filename) {
	    $prefix = StorageSettings::prefix(null);
        $parts = explode('/', $filename);
        $bucketFilename = array_pop($parts);

		if($this->client && $this->client->enabled()) {
			try {
				return $this->client->uploadUrl($prefix.$bucketFilename, StorageSettings::privacy(), StorageSettings::cacheControl(), StorageSettings::expires());
			}
			catch(StorageException $ex) {
				Logger::error('Generate File Upload URL Error', ['exception' => $ex->getMessage()]);
			}
		}

		return null;
	}
public function uploadUrlForFile($filename) {
	    $prefix = StorageSettings::prefix(null);
        $parts = explode('/', $filename);
        $bucketFilename = array_pop($parts);

		if($this->client && $this->client->enabled()) {
			try {
				return $this->client->uploadUrl($prefix.$bucketFilename, StorageSettings::privacy(), StorageSettings::cacheControl(), StorageSettings::expires());
			}
			catch(StorageException $ex) {
				Logger::error('Generate File Upload URL Error', ['exception' => $ex->getMessage()]);
			}
		}

		return null;
	}
public function uploadUrlForFile ( $ filename ) { $ prefix = StorageSettings :: prefix ( null ) ; $ parts = explode ( '/' , $ filename ) ; $ bucketFilename = array_pop ( $ parts ) ; if ( $ this -> client && $ this -> client -> enabled ( ) ) { try { return $ this -> client -> uploadUrl ( $ prefix . $ bucketFilename , StorageSettings :: privacy ( ) , StorageSettings :: cacheControl ( ) , StorageSettings :: expires ( ) ) ; } catch ( StorageException $ ex ) { Logger :: error ( 'Generate File Upload URL Error' , [ 'exception' => $ ex -> getMessage ( ) ] ) ; } } return null ; }
Gets a pre-signed URL for uploading directly to the storage backend

@param string $filename

@return array|null
Gets a pre - signed URL for uploading directly to the storage backend