1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-03-24 09:30:34 +01:00

Merge pull request #5134 from rubencm/ticket/15553

[ticket/15553] Add method to get direct link
This commit is contained in:
Marc Alexander 2018-06-12 21:48:12 +02:00 committed by GitHub
commit 9b79b56e7e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 41 additions and 4 deletions

View File

@ -85,4 +85,14 @@ interface adapter_interface
* When the file cannot be copied
*/
public function copy($path_orig, $path_dest);
/**
* Get direct link.
*
* @param string $path The file
*
* @return string Returns link.
*
*/
public function get_link($path);
}

View File

@ -57,6 +57,11 @@ class local implements adapter_interface, stream_interface
*/
protected $root_path;
/**
* @var string path
*/
protected $path;
/**
* Constructor
*/
@ -73,12 +78,13 @@ class local implements adapter_interface, stream_interface
*/
public function configure($options)
{
$this->root_path = $this->phpbb_root_path . $options['path'];
if (substr($this->root_path, -1, 1) !== DIRECTORY_SEPARATOR)
if (substr($options['path'], -1, 1) !== DIRECTORY_SEPARATOR)
{
$this->root_path = $this->root_path . DIRECTORY_SEPARATOR;
$options['path'] = $options['path'] . DIRECTORY_SEPARATOR;
}
$this->path = $options['path'];
$this->root_path = $this->phpbb_root_path . $options['path'];
}
/**
@ -331,4 +337,12 @@ class local implements adapter_interface, stream_interface
{
return $this->image_dimensions($path);
}
/**
* {@inheritdoc}
*/
public function get_link($path)
{
return generate_board_url() . $this->path . $path;
}
}

View File

@ -216,4 +216,17 @@ class storage
{
return new file_info($this->adapter, $path);
}
/**
* Get direct link
*
* @param string $path The file
*
* @return string Returns link.
*
*/
public function get_link($path)
{
return $this->get_adapter()->get_link($path);
}
}