1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-03-25 01:51:21 +01:00

[ticket/15553] Add method to get direct link

PHPBB3-15553
This commit is contained in:
Rubén Calvo 2018-02-17 19:15:54 +01:00
parent 1c9798320e
commit 9cb6d1bf13
3 changed files with 35 additions and 4 deletions

View File

@ -85,4 +85,11 @@ interface adapter_interface
* When the file cannot be copied
*/
public function copy($path_orig, $path_dest);
/**
* Get direct link.
*
* @param string $path The file
*/
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->root_path . $path;
}
}

View File

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