Skip to content
Snippets Groups Projects
Commit 0a34bffb authored by Laurent's avatar Laurent
Browse files

dev #72285 keep relative URLS in record link zones

parent d3de24a6
Branches
Tags
4 merge requests!2660Master,!2625Master,!2624Hotline,!2622dev #72285 keep relative URLS in record link zones
Pipeline #3983 failed with stage
in 35 minutes and 30 seconds
- ticket #72285 : correction: si une zone de lien contient une URL relative, le lien reste relatif
\ No newline at end of file
......@@ -146,6 +146,9 @@ class Class_Notice_Urls {
protected function _ensureHttp($link) {
if (substr($link, 0, 1) === '/')
return $link;
return (substr(strtoupper($link), 0, 4) != 'HTTP') ?
'http://' . $link : $link;
}
......
......@@ -97,7 +97,7 @@ class RecordCustomLinksRechercheControllerTest extends RecordCustomLinksTestCase
/** @test */
public function linkToPageDesLibrairesFrShouldBePresent() {
$this->assertXPathContentContains('//a[contains(@href, "www.pagedeslibraires.fr/livre-6236/la-terreur.html")]',
$this->assertXPathContentContains('//a[contains(@href, "http://www.pagedeslibraires.fr/livre-6236/la-terreur.html")]',
'Voir la chronique de Page des libraires',
$this->_response->getBody());
}
......@@ -105,7 +105,7 @@ class RecordCustomLinksRechercheControllerTest extends RecordCustomLinksTestCase
/** @test */
public function linkToLePointFrShouldBePresent() {
$this->assertXPathContentContains('//a[contains(@href, "www.lepoint.fr/livres/la-terreur-cinq-meurtres-de-trop")]',
$this->assertXPathContentContains('//a[contains(@href, "http://www.lepoint.fr/livres/la-terreur-cinq-meurtres-de-trop")]',
'Voir la chronique du Point',
$this->_response->getBody());
}
......@@ -140,5 +140,37 @@ class RecordCustomLinksRechercheControllerWithBrazilTest extends RecordCustomLin
public function onlyOneLinkShouldContainsFragile() {
$this->assertXPathCount('//dd//a[contains(text(), "Fragile")]', 1, $this->_response->getBody());
}
}
class RecordCustomLinksRechercheControllerWithBackToFutureTest extends RecordCustomLinksTestCase {
public function setUp() {
parent::setUp();
$record = $this->fixture('Class_Album',
['id' => 1,
'titre' => 'Back to future',
'visible' => 1,
'type_doc_id' => 100,
'status' => Class_Album::STATUS_VALIDATED,
'notes' => [['field' => '933',
'data' => ['a' => 'external pdf',
'3' => '/userfiles/back.pdf']]]])
->index()
->getNotice();
Class_Profil::getCurrentProfil()
->setCfgModules(['recherche' => ['viewnotice100' => ['links_zones' => '933-3-a']]]);
$this->dispatch('/opac/noticeajax/detail/id_notice/' . $record->getId(), true);
}
/** @test */
public function linkExternalPDFShouldBeRelative() {
$this->assertXPathContentContains('//a[@href="/userfiles/back.pdf"]',
'external pdf',
$this->_response->getBody());
}
}
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment