mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-09 19:13:26 +00:00
Fix github comments
This commit is contained in:
@@ -61,43 +61,4 @@ class StaticMappingGenerator extends Command
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function computeMapping($paths)
|
|
||||||
{
|
|
||||||
$paths = array_unique($paths);
|
|
||||||
|
|
||||||
$ret = array();
|
|
||||||
|
|
||||||
foreach ($paths as $path) {
|
|
||||||
$ret[$path] = $this->pathsToConf($path);
|
|
||||||
}
|
|
||||||
|
|
||||||
return $ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
private function pathsToConf($path)
|
|
||||||
{
|
|
||||||
static $n = 0;
|
|
||||||
$n++;
|
|
||||||
|
|
||||||
return array('mount-point' => 'mp4-videos-'.$n, 'directory' => $path, 'passphrase' => \random::generatePassword(32));
|
|
||||||
}
|
|
||||||
|
|
||||||
private function extractPath(\appbox $appbox)
|
|
||||||
{
|
|
||||||
$paths = array();
|
|
||||||
|
|
||||||
foreach ($appbox->get_databoxes() as $databox) {
|
|
||||||
foreach ($databox->get_subdef_structure() as $group => $subdefs) {
|
|
||||||
if ('video' !== $group) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
foreach ($subdefs as $subdef) {
|
|
||||||
$paths[] = $subdef->get_path();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return array_filter(array_unique($paths));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@@ -13,6 +13,7 @@ namespace Alchemy\Phrasea\Http\StaticFile;
|
|||||||
|
|
||||||
use Alchemy\Phrasea\Http\AbstractServerMode;
|
use Alchemy\Phrasea\Http\AbstractServerMode;
|
||||||
use Alchemy\Phrasea\Http\StaticFile\Symlink\SymLinker;
|
use Alchemy\Phrasea\Http\StaticFile\Symlink\SymLinker;
|
||||||
|
use Guzzle\Http\Url;
|
||||||
|
|
||||||
abstract class AbstractStaticMode extends AbstractServerMode
|
abstract class AbstractStaticMode extends AbstractServerMode
|
||||||
{
|
{
|
||||||
@@ -25,7 +26,22 @@ abstract class AbstractStaticMode extends AbstractServerMode
|
|||||||
parent::__construct($mapping);
|
parent::__construct($mapping);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function ensureSymlink($pathFile)
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function getUrl($pathFile)
|
||||||
|
{
|
||||||
|
$this->ensureSymlink($pathFile);
|
||||||
|
|
||||||
|
return Url::factory(sprintf('%s/%s', $this->mapping['mount-point'], $this->symlinker->getSymlinkBasePath($pathFile)));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a link if it does not exists
|
||||||
|
*
|
||||||
|
* @param $pathFile
|
||||||
|
*/
|
||||||
|
private function ensureSymlink($pathFile)
|
||||||
{
|
{
|
||||||
if (false === $this->symlinker->hasSymlink($pathFile)) {
|
if (false === $this->symlinker->hasSymlink($pathFile)) {
|
||||||
$this->symlinker->symlink($pathFile);
|
$this->symlinker->symlink($pathFile);
|
||||||
|
@@ -12,8 +12,6 @@
|
|||||||
namespace Alchemy\Phrasea\Http\StaticFile;
|
namespace Alchemy\Phrasea\Http\StaticFile;
|
||||||
|
|
||||||
use Alchemy\Phrasea\Exception\InvalidArgumentException;
|
use Alchemy\Phrasea\Exception\InvalidArgumentException;
|
||||||
use Alchemy\Phrasea\Http\AbstractServerMode;
|
|
||||||
use Guzzle\Http\Url;
|
|
||||||
|
|
||||||
class Apache extends AbstractStaticMode implements StaticFileModeInterface
|
class Apache extends AbstractStaticMode implements StaticFileModeInterface
|
||||||
{
|
{
|
||||||
@@ -35,16 +33,6 @@ class Apache extends AbstractStaticMode implements StaticFileModeInterface
|
|||||||
$this->mapping = $mapping;
|
$this->mapping = $mapping;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
public function getUrl($pathFile)
|
|
||||||
{
|
|
||||||
$this->ensureSymlink($pathFile);
|
|
||||||
|
|
||||||
return Url::factory(sprintf('%s/%s', $this->mapping['mount-point'], $this->symlinker->getSymlinkBasePath($pathFile)));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
*/
|
*/
|
||||||
|
@@ -12,8 +12,6 @@
|
|||||||
namespace Alchemy\Phrasea\Http\StaticFile;
|
namespace Alchemy\Phrasea\Http\StaticFile;
|
||||||
|
|
||||||
use Alchemy\Phrasea\Exception\InvalidArgumentException;
|
use Alchemy\Phrasea\Exception\InvalidArgumentException;
|
||||||
use Alchemy\Phrasea\Http\AbstractServerMode;
|
|
||||||
use Guzzle\Http\Url;
|
|
||||||
|
|
||||||
class Nginx extends AbstractStaticMode implements StaticFileModeInterface
|
class Nginx extends AbstractStaticMode implements StaticFileModeInterface
|
||||||
{
|
{
|
||||||
@@ -35,16 +33,6 @@ class Nginx extends AbstractStaticMode implements StaticFileModeInterface
|
|||||||
$this->mapping = $mapping;
|
$this->mapping = $mapping;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
public function getUrl($pathFile)
|
|
||||||
{
|
|
||||||
$this->ensureSymlink($pathFile);
|
|
||||||
|
|
||||||
return Url::factory(sprintf('%s/%s', $this->mapping['mount-point'], $this->symlinker->getSymlinkBasePath($pathFile)));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
*/
|
*/
|
||||||
|
@@ -35,7 +35,7 @@ class SymLinker
|
|||||||
$app['phraseanet.thumb-symlinker-encoder'],
|
$app['phraseanet.thumb-symlinker-encoder'],
|
||||||
$app['filesystem'],
|
$app['filesystem'],
|
||||||
$app['phraseanet.registry'],
|
$app['phraseanet.registry'],
|
||||||
isset($app['phraseanet.configuration']['static-file']['symlink-directory']) ? $app['phraseanet.configuration']['static-file']['symlink-directory'] : null
|
isset($app['phraseanet.configuration']['static-file']['symlink-directory']) ? $app['phraseanet.configuration']['static-file']['symlink-directory'] : $app['root.path'] . '/symlinks'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -43,10 +43,6 @@ class SymLinker
|
|||||||
{
|
{
|
||||||
$this->encoder = $encoder;
|
$this->encoder = $encoder;
|
||||||
$this->fs = $fs;
|
$this->fs = $fs;
|
||||||
|
|
||||||
if (!$symlinkDir) {
|
|
||||||
throw new InvalidArgumentException("Symlink directory is not defined");
|
|
||||||
}
|
|
||||||
$this->symlinkDir = rtrim($symlinkDir, '/');
|
$this->symlinkDir = rtrim($symlinkDir, '/');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -55,6 +55,7 @@ class patch_385alpha1a implements patchInterface
|
|||||||
$config['static-file'] = array(
|
$config['static-file'] = array(
|
||||||
'enabled' => false,
|
'enabled' => false,
|
||||||
'type' => '',
|
'type' => '',
|
||||||
|
'symlink-directory' => '',
|
||||||
);
|
);
|
||||||
|
|
||||||
$app['phraseanet.configuration']->setConfig($config);
|
$app['phraseanet.configuration']->setConfig($config);
|
||||||
|
Reference in New Issue
Block a user