mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-16 14:33:14 +00:00
Move URL etag from permalinks to media subdef urls
This commit is contained in:
@@ -146,15 +146,14 @@ class media_Permalink_Adapter implements media_Permalink_Interface, cache_cachea
|
||||
{
|
||||
$registry = registry::get_instance();
|
||||
|
||||
return sprintf('%spermalink/v1/%d/%d/%s/%s.%s?token=%s&etag=%s',
|
||||
return sprintf('%spermalink/v1/%d/%d/%s/%s.%s?token=%s',
|
||||
$registry->get('GV_ServerName'),
|
||||
$this->media_subdef->get_sbas_id(),
|
||||
$this->media_subdef->get_record_id(),
|
||||
$this->media_subdef->get_name(),
|
||||
$this->get_label(),
|
||||
pathinfo($this->media_subdef->get_file(), PATHINFO_EXTENSION),
|
||||
$this->get_token(),
|
||||
$this->media_subdef->getEtag()
|
||||
$this->get_token()
|
||||
);
|
||||
}
|
||||
|
||||
|
@@ -364,6 +364,14 @@ class media_subdef extends media_abstract implements cache_cacheableInterface
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function get_url()
|
||||
{
|
||||
$url = parent::get_url();
|
||||
$etag = $this->getEtag();
|
||||
|
||||
return $url . ($etag ? '?etag=' . $etag : '');
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return int
|
||||
|
@@ -57,8 +57,7 @@ class media_Permalink_AdapterTest extends PhraseanetPHPUnitAbstract
|
||||
. static::$records['record_1']->get_record_id()
|
||||
. '/document/' . static::$object->get_label()
|
||||
. '.' . pathinfo(static::$records['record_1']->get_subdef('document')->get_file(), PATHINFO_EXTENSION)
|
||||
. '?token=' . static::$object->get_token()
|
||||
. '&etag=' . static::$subdef->getEtag();
|
||||
. '?token=' . static::$object->get_token();
|
||||
|
||||
$this->assertEquals($url, static::$object->get_url($registry));
|
||||
}
|
||||
@@ -75,8 +74,7 @@ class media_Permalink_AdapterTest extends PhraseanetPHPUnitAbstract
|
||||
. static::$records['record_1']->get_record_id()
|
||||
. '/preview/' . $previewPermalink->get_label()
|
||||
. '.' . pathinfo(static::$records['record_1']->get_subdef('preview')->get_file(), PATHINFO_EXTENSION)
|
||||
. '?token=' . $previewPermalink->get_token()
|
||||
. '&etag=' . $subdef->getEtag();
|
||||
. '?token=' . $previewPermalink->get_token();
|
||||
|
||||
$this->assertEquals($url, $previewPermalink->get_url($registry));
|
||||
}
|
||||
|
@@ -90,6 +90,15 @@ class media_subdefTest extends \PhraseanetPHPUnitAbstract
|
||||
$this->assertEquals(self::$recordonbleu->get_sbas_id(), self::$objectPresent->get_record()->get_sbas_id());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers media_subdef::get_url
|
||||
*/
|
||||
public function testGet_url()
|
||||
{
|
||||
$this->assertEquals('/skins/icons/substitution/image_jpeg.png', self::$objectNotPresent->get_url());
|
||||
$this->assertRegExp('#\/datafiles\/' . self::$objectPresent->get_sbas_id() . '\/' . self::$objectPresent->get_record_id() . '\/preview\/\?etag=[0-9a-f]{32}#', self::$objectPresent->get_url());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers media_subdef::get_permalink
|
||||
*/
|
||||
|
Reference in New Issue
Block a user