mirror of
https://github.com/silverstripe/silverstripe-blog
synced 2024-10-22 11:05:58 +02:00
Merge pull request #320 from camfindlay/feature/defaultarchiveyear
ENHANCEMENT Default archive year
This commit is contained in:
commit
dd33bbfa50
@ -727,14 +727,18 @@ class Blog_Controller extends Page_Controller {
|
||||
/**
|
||||
* Fetches the archive year from the url.
|
||||
*
|
||||
* @return null|int
|
||||
* @return int
|
||||
*/
|
||||
public function getArchiveYear() {
|
||||
$year = $this->request->param('Year');
|
||||
|
||||
if(preg_match('/^[0-9]{4}$/', $year)) {
|
||||
if($this->request->param('Year')){
|
||||
|
||||
if(preg_match('/^[0-9]{4}$/', $year = $this->request->param('Year'))) {
|
||||
return (int) $year;
|
||||
}
|
||||
} else {
|
||||
return SS_Datetime::now()->Year();
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
@ -109,8 +109,8 @@ class BlogTest extends SapphireTest {
|
||||
$this->assertEquals(200, $this->getStatusOf($link), 'HTTP Status should be 200');
|
||||
|
||||
$link = Controller::join_links($blog->Link('archive'));
|
||||
|
||||
$this->assertEquals(404, $this->getStatusOf($link), 'HTTP Status should be 404');
|
||||
$this->assertEquals(200, $this->getStatusOf($link), 'HTTP Status should be 200');
|
||||
$this->assertEquals(SS_Datetime::now()->Year(), ModelAsController::controller_for($blog)->getArchiveYear(), 'Defaults to current year');
|
||||
|
||||
$link = Controller::join_links($blog->Link('archive'), 'invalid-year');
|
||||
|
||||
@ -123,6 +123,7 @@ class BlogTest extends SapphireTest {
|
||||
$link = Controller::join_links($blog->Link('archive'), '2013', '10', '99');
|
||||
|
||||
$this->assertEquals(404, $this->getStatusOf($link), 'HTTP Status should be 404');
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user